我的杂而不精的技术学习之旅:

  
  
C: 本科基础课程;
Python: 图书馆的老鼠书开启的 Python 之旅;
PHP: 2天的 w3school 在线教程;
HTML(5)/CSS(3): 同是 w3school,是编码却不算语言;
bash/zsh: 一夜七次的系统重装,Ubuntu;
PHP正则匹配: 爬虫爬虫爬虫;
MySQL/Sqlite: SQL 也是一种语言;
Vim the editor: 翻译变态心理学习得抛弃鼠标与方向键;
Ruby on Rails: 没学会走路(Ruby)去玩追火车,无疾而终的试验品;
心理仿真: 哲学在上,C 语言版数据结构在下;
Js/JQuery: 当年还很流行“瀑布流”布局的时候,一个Jquery插件;
Node.js: 前端的逆袭,竟然还是为了爬虫;
Git/GitHub: 版控之旅的起点,记录、备份和分布式的启蒙;
Django: 因为庞大而失去了灵活性,同样无疾而终的试验品;
R: 高级心理统计课程,为了实验与统计;
OpenCV C/C++/Python: 计算机视觉眼中的图像处理,定位与模式匹配;
Processing/Processing.js: 可视化,想象力的艺术,而非工具;
PHP扩展 C: 模板引擎的优化(失败);OpenCV 的加入,为了面孔识别;
ASSEMBLY: 两次硬啃 CSAPP ;
Matlab: 小星星的实验程序;Psychtoolbox-3;
Octave: 完成 Ng 教授的机器学习课程,开源版的 Matlab;
Lisp: 尚未结束的 SICP 之旅;
Android/Java: 移动移动移动,40w;
Lua: 失败的移动游戏尝试,尚未结束的语言开发学习之旅;
also tried: CI/Phalcon/Flask/Angular.js/Scrapy/Bootstrap/Amaze UI/Cocos2d-x/Pelican
  总结

  前两天又看到有人在知乎问Golang vs Rust vs Dlang效能、前途的问题,类似这样的问题在程序员世界里真是层出不穷且让人乐此不疲,我回想了一下过去的几年,自己从刚刚开始接触编程到现在我认为的“杂而不精”的状态,因为个人兴趣和对新接触技术的好奇,反反复复、曲折前进地学习、尝试了这么多的“技术名词”,接触范围广的优点在于,了解更多的语言、框架、工具的特性,拓展思路,但同时缺点也很明显,浅尝辄止往往没办法真正触及最有学习价值核心特质,如同写作一般,学习了英法德日俄各种语言,可是仍旧写不出一篇精妙的文章。
  过去几年的学习只顾横向扩展,而深度挖掘不够,当然这也与应用场景有关。很多新手觉得入门困难或者在入门前就徘徊在不同的语言选择上举步不前,多数情况下只是因为缺少适当的应用场景。现在我已经没办法像以前那样,听说一个很cool的语言就马上追到官网去看 Start Guide,对于需要学习的新技术更多是从项目需求出发或者说由产品导向的,同时我也需要花更多的时间根据兴趣与对未来的规划进行纵向拓展。
  学习计划 2.0

  
PTB-3 on Matlab/Octave: 编写实验程序与数据分析,顺便加深统计、数据分析与可视化;
ML Python/Octave/R: 毋庸置疑,机器学习就是未来,同时为了科研,需要 ANN与Bayesian;
OpenCV Python: 为了科研,场景识别;Matlab亦可;
并行与数据结构: 这算是心理仿真 2.0;
Python(3/PyPy): 随着时间推移,在众多新秀中,Python 俨然已经成为一名长(老)者,希望可以从 3 和 PyPy 中发现更多生机…;
Lisp & Lua: 我对它们很感兴趣,尴尬的是很难找到合适的应用场景,所以暂时只能当做兴趣玩玩了;
    文/Yushneng(简书作者)