如何追求新技术

原文链接:https://blog.simon-frey.eu/how-switching-my-parents-over-to-linux-saved-me-a-lot-of-headache-and-support?utm_source=wanqu.co&utm_campaign=Wanqu+Daily&utm_medium=website

外链无法访问请点击最后 阅读原文。

这篇文章的作者把父母的电脑系统从 windows 切换到了 linux。他解释了为什么这么做以及怎么一步一步的让父母适应新的系统。读完以后我觉得和现在技术人员追求技术进步和技术选型有很多相似的地方。

我总是感觉自己在盲目的学习一些看上去很火热的技术。比如 React Native,Flutter 等等。我家里堆了各种编程语言的入门书籍,有 Go 的,有 Erlang 的,有 c++ 的,还有 JavaScript 和 CSS。

我到现在都搞不懂这个事情。我连主流的 Python 语言都没有掌握清楚为什么要去看这么多语言的入门书呢?我在工作和生活中根本就用不到他们。只是因为在某一篇文章中看到 Go 语言是趋势,Erlang 的稳定性无人能敌,c++ 你永远都让不开等等。这些东西我都研究过,可是到现在为止还没有用他们写过一行有用的代码。

相信很多童鞋都有类似的情况。程序员学习新技术的想法是件大好事,总比不思进取的思想状态要好,可结果却并不一定比原地踏步强,因为不一定有用,会造成技术浪费。

浪费的事情我们生活中做得很多。我们想要买更贵的手机,因为 cpu 更强,可是很多人并不一定需要那么强的 cpu。本来只需要买个上网本看看电视却要买个工作站。我们的理由自然也很充足:万一有一天要用到呢?万一有一天我需要玩游戏呢?万一有一天我要 3D 渲染呢?追求新技术的理由也同样:万一以后它火了,我就走在了时代的前面。

这种情况确实有可能发生,前提是你能将这门新技术研究得很透彻,比别人更懂,否则那些基础更强的能用很短的时间就能超越你。

我想在学习新技术之前应该做几件事情:

先了解自己的需求是什么?在未来 3-5 年内的主要工作是 python 开发,那就应该围绕这个需求来学习。首先是 Python 的高级特性和工程设计思想,这些都落实在具体的实践上,需要积累大量项目经验,可以自己选择一些 side project 练习。自己做的时候还应该参考优秀的开源框架,看看别人的设计思路和实现方式。

需要了解 web 原理。像 HTTP 协议、TCP/IP 协议都需要精通,这样才能站在更基础的层面来进行开发,不是在网上找几套解决方案就能做出一套好的系统。看完基本经典书籍以后,要学会用抓包工具来分析流量走向,定位问题的能力。

需要性能优化。要熟练掌握各种算法和数据结构,知道常用算法的应用场景和复杂度。学好算法基础就要去看 python 的各种内置函数实现他们的性能如何,你写出来的代码性能如何。

性能还需要涉猎并发和异步知识。这些东西往往是操作层面的,可以先熟悉多进程、多线程和协程等在 python 的应用,消息队列等各种异步操作的实现,但是迟早还是要深入研究操作系统是怎么去进行资源调度的,《深入理解计算机系统》就该去看一看了。

在这个过程中,还应该看一看《重构》《程序员修炼之道》这样的方法论书籍,争取能形成一套自己的编码和改进体系。

在工作中应该尽量避免的问题是原地踏步、google 编程,这次搜索完一套方案下次还是不知道,几年做的都是重复的事情。盲目追求新技术,拼命加班改 bug 都是技术领域尽力要避免的陷阱,看起来非常努力,实际上是在原地不动。

学习应该是有目的的,不是看着哪个火就去学哪个。小时候都学过捡了芝麻丢了西瓜的课文,现在正是不停的在重蹈覆辙,学这个,学那个,最后自己的真正专业都没有做好了。一门技术的探究最终都会落到基础知识上,编译原理、操作系统、算法和数据结构。如果学好了一门技术真正落实到了基础上,去学另一门技术不应该是很难的事情。

在确定了方向以后把重心放在自己的方向上,平时可以花少量的时间来关注新技术,看看他们的应用领域和简单实现。喜欢玩手机并不代表每个品牌的手机都要买回来天天使用,那是职业测评师干的事,我们的思路是买一个牌子的当主力机,一个当备用机,其他的偶尔去专卖店感受一下就可以了。

在项目的技术选型上也应该遵循以需求为重心的原则。如果不是高并发的项目为什么要使用热门语言 Go 呢?用 python 快速实现行不行?现在的技术团队有几个人懂这门语言,外面招人好招吗?现有人员培训需要多久呢?一定要用微服务吗?一定要用docker吗?很多都没有必要的!只是自己给自己挖的一个一个陷阱,把整个团队推进去。

接下来是怎么实现的问题。如果要突然去学非常枯燥和底层的操作系统原理,肯定会两眼一抹黑。突然从 windows 系统换到 linux 系统也会让人手足无措。一个可行性很高的方案就是渐进式改变。和菜头在一篇文章中写道:如果一家餐厅几十年的口味都不变,那肯定逃不过关门的命运。那些说自己坚持不变的人或者产品往往在发生悄无声息的改变,他们的变化如此微小,以至于你根本察觉不到,多少年以来,微信添加了多少微小的功能,很多都隐藏在 UI 之下,我们像寻宝一样一点点的发现,用习惯了以后就感觉它们从一开始就被设计出来了一样。

要学好操作系统不一定要全心全意去攻克每一个知识点,在工作中接触到了多线程,先看看线程消耗,锁机制和信号量行不行?一点一点来,每天进步一点。人往往会高估短期能力而低估长期能力,这是思维和眼光的局限性导致的。

学习是个非常讲究方法论的事情,盲目的学习是不行的。都是参加高考,为什么那些看上去努力的学生大多成绩平平,天天打篮球、约会的就考上清华北大呢?智商是一方面,不过我到现在都不相信高考能到达人类平均智商的极限,估计方法是更加重要的一面。

万维钢关于学习的话题我觉得是很有意思的,概括几个要点是:循序渐进、逃离舒适区、重复的基础训练。最重要的是要形成整个体系和思维,不然学到的知识都不是自己的。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,013评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,205评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,370评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,168评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,153评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,954评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,271评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,916评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,382评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,877评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,989评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,624评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,209评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,199评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,418评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,401评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,700评论 2 345

推荐阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,720评论 0 10
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,898评论 2 89
  • 也许因为我送L跨年礼物,她回赠我两盆小多肉,很开心,一直想养些小植物,却没有勇气的我,周末清理了窗台,小心翼翼地把...
    纸烟盒阅读 146评论 0 0
  • 啦啦啦
    a1823e38ffd5阅读 160评论 0 0
  • 认知负荷是指一个人工作记忆中正在使用的注意力或者精神力总量。简而言之,这是您为了完成特定任务而需要锻炼的思想量。 ...
    雨相三千阅读 7,197评论 0 1