Stop sucking,Become awesome.这一年我做到了么

简介:

一年前,我因一些原因,工作变动,当时痛下决心,引用了《程序员的呐喊》封面的那句话:
Just stop sucking and become awesome!
一年很快就过去了,最近看了不少大神的博客和Github,也刷了不少Leetcode的题。有感而发。
如何评估一位程序员的技能和水平呢?有太多办法了,但基本上就是项目和算法,更细化一些,可以罗列如下:

  • 对数据结构和算法的掌握和水平, 如各类排序和树算法
  • 对某种底层技术的理解和认识,如TCP/IP
  • 是否对技术有很大的兴趣,如个人项目,博客,自研的类库和软件
  • 项目经历,是否完成过大型系统设计,如海量数据处理经验
  • 对业务是否有自己独特的理解,并如何服务于技术

当然,也要看其他软技能如沟通能力,不过基本上还是看上面这五条。我能占几条呢?大概2.2条的样子。

人和人的能力水平,简直是天上地下,甚至不具备可比性。乃至于,靠一般的努力都无法望其项背!

往上看,看大神的博客和教诲,感受代码看都看不懂的“酸爽”。强者愈强。很多人从中学甚至小学就开始接受编程教育,名校的计算机科班,本硕博每天研究的都是算法理论和优化,之后再工作中又有大量机会去亲身实践。加上这些人既刻苦又聪明,而且那种对问题的兴趣,又极大地加速了他的发展。

强者自然有了更好的平台和工作,接触更牛的人,进而有了更广阔的视野,又进一步强化自身能力,良性循环。

而默默无闻如我者,非科班出身,本科研究生学的都是通信,研究的是信道编码和通信原理,虽然说也是“计算”的某一个分支吧,但这种细分领域的能力和知识迁移起来,是需要不少成本的。大神刷leetcode都那么多遍了,我两年前才知道有这么个东西!一个月前看SICP感觉无比惊艳,之后才知道那本书不过是MIT大一新生的入门教材!

我常常会陷入自己创造的迷宫中沾沾自喜。几年前做的一些项目,当时觉得很赞,到后来才明白那不过是口水代码堆成的不牢靠的土城墙,在时间的腐蚀下慢慢被腐烂。若不是去年研究文本分析tn,接触编译技术,那些概念我抓破脑袋都想不出来。而我开发的爬虫和引以为傲的流技术,不过是SICP里的一个章节而已。

往下看,还有大量初级码农刚走出学校大门,对基本的原理也不甚清楚。不少人编程只是为了养家糊口,连兴趣都谈不上。

有时可怕的不是自己的无能,而是无知。而且是不知道自己无知。觉得自己已经很厉害了,便对别人的工作不care。有多少人很久没看过有深度的技术书籍了,多少人只是在GitHub上star或是fork一个项目,之后就再也没有关注过。

只是,要想进步,谈何容易。有那么多的杂事和其他细节,你努力,别人也在努力。常逛博客或是知乎,会有一种错觉,大神写得东西非常精彩,拍案叫绝。但是只要你点击了关闭按钮,文章里说的东西,就和你没有半毛钱关系了:自己该怎样还怎样。谁都能说出一堆高端名词,分布式,大数据,人工智能,大家都是键盘侠。可是,真正去写个代码啊,不少人就开始抓耳挠腮了。之后那句名言,我也就不需要引用了吧。

只看文章不写代码,就会出现典型的“能力跟不上理想”,每天谈的都是FLAG又出了什么新东西。只写代码不学习,就会陷入自己的世界。忙时晕头转向,闲时不知所措,时间就这么哗啦啦的过去了。

很多人太缺乏专注力,这种专注不是针对他感兴趣的那些事情,而是他不感兴趣或是感到困难的事情。某些宝藏就在视野之外,我们却草草扫了一眼,而忽视了它。比如我,看了那本神作《具体数学》,我深知看完之后我的技能会突飞猛进,然而我却依然在几章之后默默地放弃了它,兵败如山倒。

我之前对“训练”有偏见,觉得我每天都在编程,干嘛还要花那么多时间去刷题呢?这不是浪费时间吗?后来才意识到,开了十年的车,是一位好司机,却不是好车手。想要让技能更上一层楼,就必须对其进行专门的训练。

是啊,我做了一年自由的工作,收获了什么呢?我庆幸自己重新开始更新技术博客,开始更新GitHub;我庆幸自己从C#和Windows的泥潭中跳了出来,拥抱了开源;我庆幸自己学了python,写了tnpy和etlpy。如果没有这些改变,恐怕生活会更加黯淡。

我后悔自己没做什么呢?依然不够开放和专注。对核心和高难度的技术(比如机器学习),没有深入地推导公式而只知皮毛,无法让自己冷静下来认真思考;没有仔细去做leetcode和刷题;没有让更多的代码接受大众的审阅。

人是有局限的,振臂一呼就拿下山头的英雄主义,明显不适应于对智力要求较高的学习任务。我敢打包票,看那本《具体数学》,绝大多数人两个小时以后就看不下去哈欠连连了。如何让自己坚持下来简直也是一门艺术,大部分人,对自己根本不够狠,下不了狠手,更别说想要有多大的提高了。看书,做题,编程,写博客交替进行,效果也许会好很多。

这一年中,我肯定是进步的,但我深深地感觉到,自己学习,每天感叹别人的博客,随手翻一翻书本,再随便敲敲代码是绝对不行的。编程是一种社会活动,是“任务导向”的,需要有团队,有人带,并且包含持续的集成和输出。

这篇文章,权当是我这一年在技术方面的一个简单的总结吧。我期待之后的我,能接触到更好的团队和环境,更踏实稳定的技术,不求成为大神,让自己尽量awesome起来。


作者:热情的沙漠
出处:http://www.cnblogs.com/buptzym/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

分类: 编程感悟

本文转自FerventDesert博客园博客,原文链接:http://www.cnblogs.com/buptzym/p/5416893.html,如需转载请自行联系原作者
目录
相关文章
|
5月前
|
Docker Windows 容器
Containers feature is disabled. Enable it using the PowerShell script (in an administrative PowerShe
Containers feature is disabled. Enable it using the PowerShell script (in an administrative PowerShe
61 0
|
6月前
|
JavaScript
vue @click的stop和prevent
@click.stop 阻止事件冒泡 @click.prevent 阻止事件的默认行为 联合饿了吗UI使用的时候,el-table(主表)包含一个或多个子表时(el-tabs),点击右侧的编辑、删除时会同时触发el-table的current-change(),如果子表过多会,每次点击编辑/删除都会多次同时调用子表的数据查询接口,此时在编辑和删除的click事件加上 @click.stop.prevent会避免多次调用子表的查询接口(如下) ![请在此添加图片描述](https://developer-private-1258344699.cos.ap-guangzhou.myqclo
41 0
vue @click的stop和prevent
|
8月前
|
JavaScript
Vue @click.stop 与 @mousewheel.prevent
Vue @click.stop 与 @mousewheel.prevent
73 0
|
11月前
|
Web App开发 JavaScript 前端开发
Selenium使用中报错:We\'re sorry but hr-frontend-v2 doesn\'t work properly without JavaScript enabled
Selenium使用中报错:We\'re sorry but hr-frontend-v2 doesn\'t work properly without JavaScript enabled. Please enable it to continue 这个错误提示表明目标网页要求启用JavaScript才能正常工作,而默认情况下,Selenium WebDriver是启用JavaScript的。如果遇到此错误,请按照以下步骤尝试解决问题
312 0
Selenium使用中报错:We\'re sorry but hr-frontend-v2 doesn\'t work properly without JavaScript enabled
|
Web App开发 前端开发 搜索推荐
CSS Reset & Modern CSS Reset
CSS Reset & Modern CSS Reset
164 1
CSS Reset & Modern CSS Reset
|
Go
Go get报错:terminal prompts disabled
Go get报错:terminal prompts disabled
421 0
Go get报错:terminal prompts disabled
|
定位技术
Comments on task “Smart Service II: Wrap up and make it ready for Demo“
Comments on task “Smart Service II: Wrap up and make it ready for Demo“
95 0
|
前端开发
SAP Spartacus里的bootstrap button usage
SAP Spartacus里的bootstrap button usage
87 0
SAP Spartacus里的bootstrap button usage
fbh
|
JavaScript
animate stop带参数详解
$(document).ready(function(){ $("#start").click(function(){ $("div").
fbh
904 0