开智学堂「编程思维 Python 基础班」三期课程
To Myself Six Month Ago
六个月前,你在新的城市寻找新的工作,从相对大厂的环境中走出来,发现虽然积累了宝贵的经验却疏忽了基础的夯实。于是拿起书来重新认识 JavaScript,走出了一些误区,悟通了初次学习时没有弄懂的点,自信和码力显著提升。
之后的六个月中,你将会在机器人搭载的平板上用 vue 和 React 制作单页应用;用通过 websocket 通信的 JS SDK 作为代理来异步调用 python 写的 api(出于对其实现细节的追求,还重构出一个版本);用 Canvas 和 Audio API 来处理原始的像素列表和音频 PCM 数据;借力开源项目的过程中还为社区回赠了 feature 和 bugfix。(当然你还会通关 「三角力量」,「大逆转」,「FF 15」,「宝可梦 Sun」还孵了两屏的蛋,皇室战争打到 3000+,看二十几部电影、漫画,这也很重要)虽然充实,但你还是觉得不够,因为你对职业未来有着不安,而且你对「世界」的构造和运作方式还充满好奇心,于是想要新开一条技术栈。
Python 印象中是在工业和学术之间取得平衡的编程语言,不缺成熟的应用框架,是快速搭建初始项目的首选之一,并且据说统计和 AI 相关的库类也是最多的。明年你会开始考虑统计和机器学习相关的课程,python 会是不错的工具。在跳出 js 技术栈,尝试新领域时,你的思维定会再一次被磨炼。
六个月前,你不是一个编程小白,被 bug 折磨过,为性能和维护性的取舍挣扎过,熟悉最新的 ES6,git 实践得也不错,也常常为同事解决难题。你曾经说编程好多人学不会是教材写得太差了,那么你需要怎样的教材呢?
- 当遇到一个坑,究其历史和成因和八卦,才能出最短避开方案
- 反直觉的知识点,要理解作者的设计用意,用起来才放心,也方便动手作出改进
- 别吝啬,学到的东西 publish 过才算是自己的
- 做出可用产品来,就算半成品也可以是完美的,这是你继续前进的根基
- 经验教训:别忽视基础,走几步回头看看,总有新发现
- 时间规划:有些障碍可以跳过,但要把它记下来