当年没考上大学,读了自考。
从那之后就开始了自学生涯,第一年还乖乖的去听课,第二年就彻底放弃课堂了。mysql
后来考本,读研,中间穿插学点通讯,画图什么的,所有本身来。linux
仔细想一想,读研的时候第一年是老师讲课,只要老师讲课,我都听不进去。。。。web
高中大概就有这种状况了,最喜欢的就是老师讲课45分钟,我拿出来10分钟左右看他讲的内容。其它时间就是思考人生。算法
而后果断落榜了哈哈。spring
但研二的时候,从写论文开始,对自学能力的培养已经初具雏形了。sql
那时候导师不会教你,第一,给了十几个方向,你本身去选一个。第二,没了。编程
师兄都没有。。。老师也不可能每个方向都特别熟悉。bootstrap
写论文的时候最大的感受就是,nnd,给我留条路好很差,基本上全世界都在作科研,不少问题特别细致,根本找不到优化的空间,就算找到了,只要你认真找论文,总会发现,我靠,几年前他们就想过这种方案了,并且比你作的更好。设计模式
这种感受真是生无可恋。缓存
我选的是基于agent的软件工程,马丹到如今agent都没在工业领域作起来。
学校没项目,只能要求写论文,死要求是必需要核心期刊发表小论文。
咱们是凑齐遇上一个国际会议,被SCI收录。
因此虽然读研,但基本都是自学。
并且,毕业以后我也是一行代码都不会写。
以后来北京找工做,就在自学这条路上一路狂奔了。
从JAVA语法开始,我用了一个月的时间学会了JAVA语法,spring,JSP,mysql,svn,tomcat,jdbc等等。
工做就是解决问题,百度,msn上请教别人,不敢问同事,周末看书,晚上会通宵赶进度。。。
而后换了个环境,学习memcache,maven,linux,webservice,设计模式等,也差很少花了四个月时间,如今想来,就是那个时候本身有了独立完成项目的能力。
跟着进了搜狐,整我的都飞速成长起来了,学习架构,缓存,高并发,分布式,消息队列,代码规范,开发流程,接口设计等等等等。
大概一年的时间,中间又申请作算法,本身花时间从新理解了一下分类聚类。
后来跑到了金融公司,学会了Erlang,comet,分词,词性标注,抓取,去重,索引,高亮,hadoop,Cassandra,es,drools,qpid等等,还会了点股票,期货,研报等等。嗯,还有angular,thrift,bootstrap,微信公众号开发等等。
大概5年的时间,好像学习进度放缓慢了。
跑出来以后彷佛就没再学会多少技术上的事情了,只有支付,电子签章勉强算是新东西,说来惭愧,最近几年应该都没学过什么新技术了,主要精力转成了产品,运营和公司管理,以及各行各业的商业模式,提及来自从本身创办公司以来,我已经接触了100多家不一样的创业团队了,也算是半个创业导师,我不能帮助别人怎么成功,但多数能帮助其它人不要死掉。
嗯,勉强懂点了Android和iOS。
因此,基本我全是自学,也习惯了这种学习方式。
仔细回顾一下,大概有如下几种学习途径。
第一,看书,博客,源码。
第二,身边大牛,群里大牛。
第三,项目
对的,彻底不存在看视频这种东西,看过一点实在看不下去。
我身边的大神们也同样,他们的快速学习能力和阅读文档能力特别强。
在白社会的时候咱们已是微服务了,从框架选型到应用实践到改写源码定制组件,大神们只花了一个月时间。
在他们眼里一个新框架的学习靠看视频?不存在的。先弄明白应用场景,再去猜想实现方案,再看源码对比,更牛逼的事,几乎是看完源码就能动手去改他们以为不爽,或者是要扩展的功能。
所谓厚积薄发,就是这样,你能感觉到这就是在讨论解决问题的方案,不一样人有不一样理念,有不一样的设计哲学,但编程这个世界对他们无秘密可言。
我只能作到能够快速理解思路,作不到看完源码马上改进。曾经看过一个JAVA整站抓取的源码,名字都忘了,3天看下来看的要吐,随便改了点东西就交差了,彻底受不了3级以上继承,根本没有接口这种设计理念。
大概是从那里有心理阴影了,对各类JAVA开源框架的精妙设计理念都一直不敢恭维。
干脆就不看了只懂懂设计思路是什么,惋惜啊,本身当年仍是没人指导,放到如今必定说,必须看,你以为不爽你能够改啊。
但人年龄大了,主要精力真不在编程上了。
总结起来,写代码要培养好的主动学习能力,看视频的方式是我第一个强烈反对的。
我描述的几种方式都比视频高效。
不少人说我没基础 全部的人都是从零基础入门的啊。
因此差异不上有没有基础,而是有没有主动学习能力。
这种能力若是没有,你转到互联网第一很困难,第二成长不起来。
一个更新换代如此频繁的行业,怎么会容纳没有主动学习能力的人呢。
因此,尽快从要别人“教”,转换成本身去“学”。
专栏里整理了一部分,也简单说一下。
1.查找资料的能力,要不要培养?
2.阅读第三方文档的能力,要不要培养?
3.快速定位问题的能力,要不要培养?
4.解决问题的能力,要不要培养?
5.概括总结的能力,要不要培养?
6.高效严谨的能力,要不要培养?
都知道编程要工做经验,某种程度上更看重这些能力。
最近一直在整理关于思惟方式,学习方法的资料,试着去帮助学习慢的人改变学习方法和习惯,培养工程师思惟。
嗯,还没太成体系,但愿对你们有帮助,可是不管如何,请停下来,不要再看视频了~
“咱们相信人人均可以成为一个工程师,如今开始,找个师兄,带你入门,学习的路上再也不迷茫。
这里是技能树.IT修真院:http://www.jnshu.com,初学者转行到互联网行业的汇集地。"
欢迎加IT交流群565734203与你们一块儿讨论交流