键盘敲烂,月薪过万作业不做,等于没学
当前系列: 其他 修改讲义

其实我有点担心,这一篇是不是写得太早了一点?

因为这是一个“菜鸟入门”系列。而我接下来要讲的,可能是在你入门以后又过了一个阶段才会发生的事。我以前说过:转行做IT,入门很难,但之后就会轻松一些;接着找工作,第一份工作很难,但难过以后,就会越来越轻松;这种轻松日子过上一段时间,还在上进的同学就会发现再提高很难——好像会的都会了,不会的都不会。而且不会的不会也没啥,不会的会了也没用,有同学形容“感觉失去了那种对技术的热情”,于是又继续,咯,这种状态:( ⊙ o ⊙ )……

除了继续浑浑噩噩混日子的,还有一些狠人,干脆不管三七二十一,继续学!什么难学我学什么,或者什么热门我学什么。

这种思路好不好?(我们不能说“对不对”,因为没有对错,学东西绝对不会有错)


我只是觉得不好。

追热门就不用说了,能追上算你本事,更有本事的是你能每次都追上——飞哥只有一个大写的“服”字。只是这种人我现在还没见着过,半吊子整天哀叹时运不济的倒是不少。

那我学“难学的”呢?

有一句话,叫“会者不难,难者不会”。你觉得难,当然是因为你不会。但你要仔细地思考一下:这里的不会”,是不是因为:你没在这个领域

建议你停下来,仔细的思考这个问题3分钟,然后再继续阅读。


可能是因为我毕业这些年,律师、装修、编程折腾来折腾去,折腾得厉害,所以对这个问题尤其敏感。

“吾生也有涯,而知也无涯”,那接下来怎么办?“学海无涯苦作舟”?原文的作者庄子已经给出了回答:“以有涯求无涯,殆已!”什么意思?就是“你傻呀”!

  (╯°□°)╯︵ ┻━┻

《折腾》大家看得很嗨很开心,那是因为:看的都是别人的故事。如果主人公是你自己,你一定笑不出来。

我有一章《后悔》,我后不后悔?我不知道,我只知道,我不能后悔,不“能”而已。


我们不谈精神世界,什么探索未知世界的乐趣,因为这太主观。如果你学习只是为了精神上的愉悦,我同样无话可说,一样大写的“服”!

我们只能从功利的角度来讲这事,因为这样更客观更好比较一些。

我给大家一个建议:

尽早的划定一个领域,

然后在这个领域深耕,

一直死磕到底!

所谓“这就是我的领域,领域之内,天下无敌”。


骚瑞,稍微的“燃”了那么一点。

客观一点,就是专精于一个方向,深耕自己的领域。

领域之外的东西,我不管;或者我就看看,和我的领域有没有关系,没关系关系不大的,我不管。

当然,这是在有了一定的基础之后。初学者,确立自己的领域,需要一定的时间、经历,额外的试错成本,这都是很正常的。也不需要焦虑,很多时候,这是一个水到渠成自然而然的过程,你现在不知道你的领域,很正常。但你脑子里要有这么一个观念,这有助于你尽早地、有意识地确立你的“领域”。


为了加深大家的理解。我举两个例子,一正一反。


正面的例子当然就是飞哥我了,嘿嘿,大家看看我的目标变化和领域形成过程。

最开始,目标很模糊:学做网站。

然后明白了网站分为界面(样式)和功能,鉴于我色盲且审美能力约等于零,我的目标调整为:能把网站的功能做出来,美工不管。好,这是第一次做减法。

再接着,知道那时候几种主流的动态网站开发技术:PHP,JSP,ASP.NET,我也得选一个,我选了ASP.NET,一直到今天都没变过。

随着学习的深入,知道网站有三大要求:安全、性能和可维护。其实我最开始最喜欢的,是安全和性能,男孩子(孩子,天啊!我说的是那时候,不是装嫩,求放过),谁没有黑客梦?另外,性能啊!风一样的感觉,谁不喜欢?但问题是接下来我发现安全这玩意儿,太复杂了,没个底,而且很多网络攻击,是从底层直接渗透的,人家要攻击,就是攻击你的服务器!代码层面,无非就是一个脚本注入,或者你自己代码的安全漏洞,注意一下就可以了。性能,同样是个无底洞,有一句谚语叫做“任何一个地方都可以优化”,而实际上我们很多时候,是在主动的牺牲性能,以换取代码其他方面的提高——比如说“可维护性”。再加上工作了两年多,确确实实地认识到“可维护性”的重要性。所以,我的目标最终固化成:能独立建成并维护一个灵活的可不断迭代长期使用的ASP.NET网站。

你看,加了这么多的定语,本质上都是在明确我的目标,限定我的领域。

我会很多技术,从html到mysql;但我不会不熟悉的更多,数不胜数,都是我了解之后主动放弃的,不管它们曾经有多火。而且你看我会的,也特别“独”,比如我会mysql,就不会Oracle;会NHibernate,就不会Entity Framework;会JQuery,就不会什么an……an什么玩意儿。照理说,他们都是非常接近的,而且因为工作的原因,我都还是要接触的(比如Oracle),但我的接触,仅限于完成工作,绝不会在8小时之外还自己主动研究一会儿。

我专研的,都是我自己的领域。

不然,我特么一个文科生,一个油腻中年大叔,凭什么用这十年的时间,在编程界站有一席之地?


但我有些同学,有些同事,很有天赋的小伙子,对任何技术,都浅尝辄止,一味的最新,或者什么“底层”,但总是一无所成。

我给大家举个反面例子,我在博客园发表了一篇博客:内功!又是特么的内功?!,有28个赞,8个反对。评论里面有些人是根本没懂我说什么,就略过不表了;有一些同学,我摘录一段,有代表性的:

但我比楼主幸运的是,我有幸参与过一些比crud更有技术含量一点的工作.

比如一个搜索引擎项目,别人名校研究生,玩的就都是算法,倒查表,红黑树,权重计算(向量,矩阵等离散数学),我看到这些人,才知道自己的知识有多贫乏.其实他不比我幸运,我在上海的时候,关系最好的同事就是名校研究生,他毕业论文就是有关“人脸识别”,那时候哟,2011年,够前沿吧。他和我说(当然也可能是谦虚),“其实也没啥,都是调用别人的接口,自己再改改,糊弄一下……”但他接下来这句话很关键,我觉得很有道理:“只是你没接触过。”

“隔行如隔山”,大家不要觉得,只要是程序员,就是“一行”的。这里面的差距太大了,而每一个细分领域,都有它的难度,都有它要攻克的难关。鄙视链是一个很无聊的玩意。这山望着那山高,是人性,但我们要知道,这是一个我们需要克服的人性。

所以给我的这条评论,有以下几个问题:

  1. CRUD其实是非常有技术含量的工作,对代码复杂度的管理是一个世界级的难题
  2. 搜索引擎的开发和CRUD的工作不是同一个领域
  3. 所以未能明白:“这不是我的领域,我不会”和“这问题我一直研究,都不会”,这两者是不一样的。

当然,如果这个同学的领域是“CRUD加搜索引擎”,当我啥都没说。


突然想到有些同学可能不相信“CRUD其实是非常有技术含量的工作”,我建议你看一下Orchard.NET的源代码,就一个简单的CMS开源项目,看看人家的抽象、解耦和系统架构,这些我所专注的领域的大神,他们对于代码的深刻理解,他们美轮美奂的编码艺术。

我以前说,每个人都在自己的一口井里,坐井观天;现在我发现,能看到自己那口井上那块天,也都不是件容易的事啊!

学习笔记
源栈学历
大多数人,都低估了编程学习的难度,而高估了自己的学习能力和毅力。

作业

觉得很 ,不要忘记分享哟!

任何问题,都可以直接加 QQ群:273534701

在当前系列 其他 中继续学习:

多快好省!前端后端,线上线下,名师精讲

  • 先学习,后付费;
  • 不满意,不要钱。
  • 编程培训班,我就选源栈

更多了解 加:

QQ群:273534701

答疑解惑,远程debug……

B站 源栈-小九 的直播间

写代码要保持微笑 (๑•̀ㅂ•́)و✧

公众号:源栈一起帮

二维码