Home  >  Article  >  Backend Development  >  如何选择业余学习编程的方向?

如何选择业余学习编程的方向?

WBOY
WBOYOriginal
2016-06-06 16:21:571690browse

回复内容:

python flask web,别想别的了,三心二意发私信问我的你也不是第一个,认清自己,好好干吧。

别想什么成就感了,你不是说了,是为了钱吗


你就不能直说你都看了什么书?每本书又看了多少?为什么看不下去吗?

藏藏掖掖的,有什么意思,如果你只能问我一个问题,你就希望问这种毫无诚意的低质量问题?

————————

我现在没空,先随便说几句。
(建议你搞个头像,不然都不知道该 @ 谁)


找工作的话,第一步看这本书,把里面的东西消化理解
Flask Web开发:基于Python的Web应用开发实战 (豆瓣)

其中遇到不懂的概念,积极使用搜索引擎,入群和人讨论,知乎提问都可以(只要是你自己思考过的问题,我不回答也会有别人回答的)

可能需要补充的知识有
1,web基础知识(HTTP,HTML等)
2,数据库基础知识

然后,第二步,通读 flask 源代码(理由、方法待补)

这样找工作不成问题,先改变生活再改变人生吧。


其实这段话我说过好几遍了 既然大家都推荐题主写Web,而题主又无从下手的话,跟着我这个练习做起就好了:
简单建模练习:任务管理(task management)
算起来,如果每天都有两个小时的时间的话,就算是新手也能用一个月左右搞定吧。
Rails/Flask随便你来定,可以的话在Github上搭建一个repo,顺便跟大家分享你的进度和成果。

不知道怎么做的话可以先跟着官方的tutorial走一段,熟悉一下概念,有问题多去搜索,实在不行的发到知乎上来讨论也可以。

利益相关:科班出身(然而并没有什么卵用。 我也不太建议题主去c++方向,萧大神言辞犀利,我就告诉你为什么吧。因为需要的基础太多了,你需要好好学数据结构和算法,操作系统,网络什么的,就算除去这些,光一个c艹本身都是个坑。。这显然和你的想尽快找工作的目标是不一样的,而且也容易让人丧失信心。

还是python方向好一点,我同学自己学了python,后面自己做了个网站玩,前后也就差不多两个学期的时间,你有python基础的话会更快。 至于你说能看懂但是不会写代码那肯定是自己写的少了,一定要自己多写才行,很多大神其实刚开始都是用最笨的办法,就是把书上的代码全部自己敲一遍。

至于资源建议看看慕课网的,比较偏实用。还有网易云课堂,比较偏基础理论,类似本科计算机课程。书的话就在知乎和豆瓣看看大家都推荐的,我不怎么用python,所以不熟,还有SICP那种书太难了,并且你现在看了也没什么帮助,留着以后吧。

还有你说的补数学英语什么的我觉得不用急,学编程就学编程,编到需要哪个单词不会就去记住,需要哪些数学就再去学,其实刚入门用python写写网站,爬虫什么的用不了多少数学的。如果你先学数学,再学英语。。还没等你从你的六人间出来自己的信心都被磨掉了。

网上有很多python爬虫的博客教程,百度一下就好了。 最容易入门,需求又非常高的编程手艺,就是写网页。从纯HTML给个别需要渲染的内容贴上常用标签,到添加CSS来统筹渲染,再到添加JS来实现动态页面效果,然后慢慢开始学AJAX与服务器端的程序交流,编程的门路就摸得挺清了。

刚开始编程,最大的坎儿应该就是不会主动去构造抽象。从纯HTML到AJAX这个过程,能帮你从最直白具体的技术一步步走向抽象和强大。

这个过程的一个好处是知识基本上自成一体,不需要什么额外的传统理论和经验。另一个好处则是,编程反馈快;写点东西,不需要写完整,就可以打开浏览器看看效果,特有成就感:) 额外的好处还有一个,你要看到哪个网页有你想实现的漂亮效果,在Chome,Firefox或IE下按F12功能键,就能看到它们是怎么被实现的,所以可用的编程案例触手可及。 看了老萧那指南和答案,虽然写的不错,其实很不适合自学。
作为自学者要先稳定信心。所以从高级语言开始做demo起步,哪怕用php,Java,js写一个注册登陆验证功能都比一开始学编码,计算机构造与解释好。
有成就感后,慢慢做更复杂的功能再深入。多问自己为什么?比如浏览器发个请求他为啥就到你写的的那端后台代码了,而不是跑去别的地方?中间经过了哪些步骤?你追根究底就会学http,IP ,TCP,socket,cdn,域名解析等等,深入一门语言,你深入下去自然会遇到很多疑惑和问题,你会学相关的知识,这时数据结构,算法,计算机网络,基础,你自然感兴趣了,到了这里可以找份不错的工作了。
这时你以为懂得差不多时其实还差的远。还有很多高峰等着去登,你还得学习下软件工程,设计模式,设计原则。设计模式又分宏观和微观,宏观以posa那套书为经典,微观就是设计模式和其他小技巧。要想走的更远更高其实还得深入某方面和行业,比如机器学习,推荐引擎,自然语言处理,搜索引擎,大数据处理与分析,移动开发,每个方向都不错。
如果爱折腾想搞搞圈子,可以学学德鲁克,稻盛和夫,杰克韦尔奇,多读政治经济人文书,这时你发现已经超脱了技术,能有一定的统御力了。江湖就是这些人的 我自学c#了两个月勇敢地去应聘了程序员。我告诉你,只读书没用,把别人的项目完完整整地做,做到熟练,不懂得的地方去书上找答案。
我觉得应试教育让很多人产生了一个非常糟糕的习惯:总要先把所有东西学会,花很多很多时间学基础,然后再出来做事。当然,这个是正确的,也有助于你日后的发展。但是,针对不同情况要有不同的策略。
我认为,人应该是目标导向型的,特别是对于程序员。编程是一个技术更新迭代很快的工作,每天都有新的东西产生,你不可能学会所有的东西。你应该先有一个目标,然后安排需要学的东西。每种东西也不用学透,但是你一定要知道这个干嘛用的能帮你解决什么问题,至于为什么,可以先不管。当你遇到疑惑的时候,和实际情况结合起来去查资料,去思考,往往事半功倍。
比如.net的页面生命周期,不知道大家是如何,反正我光看书是根本不懂,但是它很重要因为涉及到asp.net的底层,可以保证你对页面的控制(不知道我说得对不对,大家可以指正)。我也不怕你们笑我,我当时就上网找资料,然后把整个周期硬背了下来,为什么?是面试用的。现在我工作了一段时间,才明白生命周期的意义。我发现,其实很多人干了很多年,也不懂什么是页面生命周期的意义。
所以你的问题在于,你不知道自己该怎么发展,而不是学习能力差。
你要当什么方向的程序员呢?
前端还是后台,bs还是cs,确定一个方向,再去扩展技能树,把技能先点一级,至少可以用。然后去网络上down项目,好的项目做个几遍,你会明白很多东西。
然后就可以去找工作了。
你不要找那种太牛逼的公司,去找一些创业的公司,做一个初级程序员。面试的时候展现出你的热情和对一些程序的基本了解。反正你进去也是干一些重复性的搬砖活,那些活真的用不到什么太高深的东西。当然,不要乱开薪水,3k,4k可以试着开。
然后在工作里慢慢地磨砺自己,你会发现。
我现在常常在想,当时找工作的勇气哪里来?
现在我明白了,是源于“无知”。
所以,找到一份程序员工作,真的两个月足矣。
但要成为一名优秀的程序员,要一辈子。
希望你谦虚,不浮躁。 如何选择业余学习编程的方向?- 摘自某位「非业余程序员」的回答

我觉得这是最「中肯」的意见。。

---

黑都看不出来吗。。 我是来灌鸡汤的,题主张嘴来,啊~

我是EE类专业的,我一同学和我一起大学玩war3的,毕业之后由于各种原因(成绩啊,身高相貌啊等等吧)最后去卖电梯,一年多下来托关系卖了一部,拿了奖金跟家里借了点钱报了培训班学编程开发了。

这哥们待过的地方有人民网(邓亚萍那个)、搜房网等等,后来得到个机会从北京转回西安老家,现在任某小公司cto,安卓/ios通吃,自己在开发游戏,房车老婆已有还准备自己创业。

要说旁人看来这哥们的成功转型有什么借鉴之处是说不到点子上的,这只是个案例。我觉得可能是以下几点:
1、性格倔强,这也是我们最烦他的,嘴炮;
2、容易沉迷,也可以说是所谓的专注吧;
3、风太大。

所以题主有心就去干,不要太在意别人说什么,祝好运。 JAVA,C#,PHP,Python任选其一就行。C不容易有成就感,C++过于难了。

JAVA有Android可以依托,C#有桌面软件和windows phone 应用可依托,至于Python和PHP都是学习起来比较顺畅的语言。

请相信我,想要快速入行,他们推荐的那些书目前对你都没什么卵用。最快入门的方法当属看视频,看比较全面的入门视频。现在网上能搜到的教学视频太多了。不要问我怎么搜资源,如果你连这点搜索水平都没有,那就别想做程序员了。

学安卓开发:MSDN李兴华JAVA视频(或者马士兵的JAVA)+黑马Android4.0开发教程
学习周期定位4个月,边看边做笔记边练,以后再花两个月大量练习,之后就可以找工资一般的工作先干了。(都是全脱产学习,也就是一天至少能学8小时的那种)

学C# .net 开发,可先看传智播客的C#基础视频教程,然后看C#的wpf 教程,然后找.net视频教程看。

至于看书,刚开始啥也不懂看书纯属浪费时间,效率太低。以后视频的内容已经不能满足你了,这时候看书提高内功则很有必要。

至于什么算法,什么acm 对你来说没什么卵用。先成为一个新手码农先入行最重要。你要是沉迷于造轮子(研究底层基本原理和算法),以你目前的水平恐怕在造出轮子之前就饿死了。 作为半路出家的非业余程序员来说。
1. 我从买第一本书,到开始真正理解什么是编程,花了6个月时间。
2. 需要大量的阅读。在开始几年,我购买了大量的编程相关书籍,花了绝大部分业余时间去阅读和理解。
3. 不停的写程序。这也占有了我几乎全部的业余时间。
4. 即使如此。8年后的今天,我很多东西也是不会的,水平只能算一般般。
所以,我认为你才刚刚接触,什么都不懂是非常正常的,你欠缺的知识是太多的。并没有什么捷径可以帮助你,无非是大量的阅读理解和编码。
所以我认为,如果不是真爱,不太可能一个人会成为一个真正的程序员。这是一条枯燥的道路,需要不断的学习,那些见钱眼开转行学编程的,我估计大多数在学会之前就放弃了。
**************
顺便吐槽下,你看中国人写的guide、指南什么学了6个月什么也明白是正常的。买本老外写的入门书看看比什么都强。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn