本帖最后由 branchzero 于 2016-3-13 02:23 编辑
(其实是胡说八道,TL;DR)
嗯嗯,话说我貌似半年以前写过说我要开教程坑,但是呢,一直比较忙也没时间开。今天深夜临时接了点委托帮客户改了些东西,然后发现自己精力还够,不太想睡,也不太想再碰代码了,就在今天还要交差两个前端页面委托的单子的情况下胡言乱语一下作为这个系列的开始吧。
话说某俩基友已经用 NextWeek 作为日常调侃我拖延症的梗啦,所以呢,更新速度不要太指望了,有空就写一点吧,关心某站上线时间问题的友人们,因为自己的团队管理问题(第一次带人搞这个项目,对时间和项目规划都没有一个明确要求,导致前面分派下来给队友写的很多代码我后面都回炉重造了。。。),一直在拖延,不过一个好消息是后端全部坑完了,前端播放器的坑也基本完了,前端等这两天委托项目完成之后就开始继续,一向对自己完工作品的要求是比较高的,所以呢,没有半个月大概不会准备上线,期待下旬吧。
正文开始:
[backcolor=darkorange]码农是啥好吃么?[/backcolor]
这大概是我这几年来碰到的最多的问题了。如果作为爱好来发展的话(我的一些朋友虽然点了这个技能,但是从事的是和开发完全风马牛不相及的工作),确实还是比较不错的,锻炼脑细胞(技术经常革新,你得不断 Flash 脑内 ROM 来跟上时代发展),但是作为工作的话,你得衡量你有没有能力去胜任他。
传统行业大部分都是数年不变的流程,但是软件开发业不一样,指不定哪天新出的某个技术就可以改变你的开发流程和习惯。你得不断去学习和吸收新的技术
你想问我不学习最新的技术可以么,当然可以,身边也确实只把这条路点成混饭技能的一些大叔级前同事(比我大十几岁的一批人,叫大叔大概妥吧?嘛,不纠结了),生活稳定,拖家带口,每天就按照上面给的一些业务逻辑,按照自己固有的套路去开发,什么新的技术对于他们而言完全就是空气,毕竟他们的想法是能实现就好,不在乎哪种方式更高效。
只把这项技能当做混饭技能的,或许可以成为能做事的程序猴子,但是永远成不了优秀的猴子。
我接手过一个现有程序的调整项目,里面的代码缩进一塌糊涂,一段相同的业务逻辑代码分布到了三个不同的文件上,既然受了委托,我还是要改完交差了事,如果你想成为这种典型的话还是劝你不要入行来害人了。。。
总的来说呢,想要踩坑的,你需要有足够的自学能力,还有足够的对这块的兴趣度,对自己的要求高,(当然这不是必须的)有不错的英语阅读水平最好不过,没有也不影响。
这行收入参差不齐,相同水平的人在一二线城市和三线城市的能拿到的价码完全不同,有多年开发经验,水平不错的猴子在一二线城市拿个两三万/月还是十分轻松的,刚入行的也可以拿到五六千/月(杭州这边的薪资水平)。
[backcolor=darkorange]想点这个技能怎么入手?[/backcolor]
方向多着呢,你这是想往哪个方向走呢?
移动方向:
Android(Java),iOS(OC、Swift)
Web方向:
Web 后端开发(PHP or 其他的),前端开发(HTML && CSS && JS)
传统的服务/客户端开发:
C、C++、C#、Java ...
选好方向开始去网上找对应的资料,PHP 的话从红本的 《PHP和MySQL 开发》开始(当然我也没啥好的给你推荐的,感觉不是特别好,但也没有其他比较好的选择,先翻翻书了解下PHP基本语法和常用函数吧,顺便点些基础的面向对象知识),然后看常见的一些框架的文档去学习如何使用
前端开发呢,W3School上一页页翻过去先了解基础概念吧(也是没有特别好的选择推荐。。)
当然啊,正因为没啥好的入门资料推荐,就想自己开这个教程坑,让后人少走弯路。学好一个方向的内容,并且深入之后可以点一些相关的技能点,比如点了 Web 后端的知识之后,可以顺路点点前端的东西,多学一点能够胜任的领域就更广。
[backcolor=darkorange]进培训班点技能推荐么?[/backcolor]
极度不推荐。(以下说的东西适用于现在大部分的培训班,如果有部分培训班躺枪,请见谅。)
一、培训班要兼顾所有人的平均进度,而你的个人进步速度可能并不是平均速度,所以如果讲的慢了你会觉得乏味,讲的快了你会感觉跟不上。
二、编程是讲究一定的自学能力的,如果你没有足够的自学能力,就算去培训班学了东西,到后面干活的时候也不一定能够真正适应这份工作,因为真实的工作环境还得适应各种公司自己的业务流,培训班出来的学生不少都局限于培训班教的东西上,工作时委派的任务并不一定能够快速上手(这点我有亲身的观察经历)。
三、培训班往往会设置陷阱吸引你去报名。(报名之前体验班的老师手把手带,而且讲的不错,但是一旦你交了钱,分配到的老师就没有体验班的时候那么好了,甚至让你看视频资料去学习。。。)
四、编程讲究一定的思维能力,通过自学你可以验证你是否胜任这个行业的工作,如果不适应编程的思维方式可以趁早改学别的,而培训班进去之后就是赶鸭子上架了。
五、培训班里学的东西不少是过时的,你学到之后根本用不上,回头还得重新自己学习当前的一些技术。
六、费钱费钱费钱,很重要说三次。
如果非要去培训班,我只建议没有学习规划能力以及没有定力的人去。
[backcolor=darkorange]一般人上手大概需要多久时间?[/backcolor]
这个时间我没办法给出一个确定的时间,这个最主要还是看天赋和你的积累了。(如果学习过其他语言的话,再上手一门新的语言的时间会缩短不少)
我的一个朋友从刚开始学 PHP 到上手只花了很短的时间(一到两周吧),比我当年刚开始折腾的时候快多了。
所以发现同时和你学习的人,上手比你快的时候,千万不要自卑。
这时候你要么可以更勤奋,花更多时间去钻研(勤能补拙),要么就 Follow Your Heart,不在乎别人,按自己的节奏去学。
[backcolor=darkorange]有一些概念性的东西不理解怎么办?[/backcolor]
你首先保证你没有跳掉一些本身你需要先学习的内容,有些知识是需要前面的内容做铺垫的,如果跳了,很容易就会产生坐飞机的感觉~
如果没有跳内容,还是不理解的话,去找老司机学习,方法无非如下几点:
一、Google(什么,你不会艹墙?艹墙是猴子的必备前置技能吧!) or Stackoverflow 去搜对应的概念名词
二、找一个现实/网络上的该方向的老司机去带你上路。
三、暂时标记后搁置,等到以后回过头来再琢磨。
如果是 PHP 相关的知识不理解的话,也十分欢迎来问我。
理论这块如果有补充的我会接着编辑内容,或者有什么想问的问题需要我补充的欢迎回复。