我的编程成长四步曲

这次我决定不耍流氓的写一篇鸡汤,这篇是以过程到结果的文章——以前老是写结果,总感觉不好~~。

Blabla,群聊的时候,看到一个网站有一个Most active GitHub users的排名,发现我在里面的位置是20——在我前面还有一个台湾的同学。虽然我现在已经超过他了,但是这个榜单没有更新。😊😊😊

Most active GitHub users
Most active GitHub users

而实际上成为最活跃的中国大陆用户,只是有意图的练习的结果。。。

在我找到大四找到工作后,默默制作了一个计划。这个计划大概分为三步,而每一步大概会花一年时间去实践:

  1. 用更好的方法来实现功能
  2. Better Code & Architecture
  3. 运营(Growth Hacker)

所以,其实这也算这篇文章的三个小节。在你跟着这篇文章走之前,你需要具备一个根本的能力:能做到你想做的

能做到你想做的: Tasking与学习能力

虽然这看上去是一件很难的事,但是也不是一件很难的事。这也不依赖于你是否对某一个技术栈的理解,这只实际上只是学习能力的一种体现。

todo-example.png
todo-example.png

在扯这些废话之前,先让我们来看看我们是如何实现一个功能、应用的。这也是在Growth里提到的Tasking:

  1. 有一个明确的实现目标。
  2. 评估目标并将其拆解成任务(TODO)。
  3. 规划任务的步骤(TODO)
  4. 学习相关技能
  5. 执行Task,遇到难题就跳到第二步。

以本文的写作为例,细分上面的过程就是:

  1. 我有了一个中心思想——在某种意义上来说就是标题。
  2. 依据中心思考我将这篇文章分成了四小节。
  3. 然后我开始写四小节的内容。
  4. 直到完成。

而如果将其划分到一个编程任务,那么也是一样的:

  1. 我们想到做一个xxx的idea。
  2. 为了这个idea我们需要分成几步,或者几层设计。
  3. 对于每一步,我们应该做点什么
  4. 我们需要学习怎样的技能
  5. 集成每一步的代码,就有了我们的系统。

所以,实际上这并不是考验你技术能力的点,而是考验你如何划分任务和学习能力的点。在我不断地实现一个个系统的时候,最后我才意识到了这一点——学习能力和Tasking才是最重要的。换句话说,你现在学会什么并不重要,重要的是你以后有没有学习的能力。

有了一直想着过安逸的生活,所以就会安乐的死去。不过反正人生在世,自己开心就行,不要管别人怎么说。随后,我发现大部分我想到的都可以实现。

那么问题来了:

  1. 用铅笔写字也是写,用钢笔写字也是写,用电脑打字也是写——到底要用哪个工具来写。
  2. 用楷体来显示也是显示,用宋体显示也是显示——到底要怎样的实现。

这实际上就是:用更好的方法来实现功能。

用更好的方法来实现功能

对于这一步来说,有太多的东西值得去探索:

  1. 更好的架构
  2. 更好的工具
  3. 更好的语言
  4. 。。。

对于语言这一点上来说,Python和Ruby是两个不同的极端,不过看上Ruby是继承Perl的思想的基础上,就不多说了。Python,一个问题只有一个方法;Ruby,一个问题有几个方法。因而在这两个语言来,想要快感就用Ruby,还有近年来流行的Scala。想要便捷就是Python,不容易出现别的问题。

而这些只是我得到的结论,每个人都会得到不同听结论的。因而,探索是一件很有意思的事~~,如图:

civ5-worst.jpg
civ5-worst.jpg

所以实际上,这一步是去探索一个更广阔的天空。我们需要知道不同的语言和技术栈的一些优势,了解并知道如何去应用即可。

如,以前我用的是Django的RESTful方案Tastypie管理来解决问题。后来,又发现了Django REST Framework,又用它实现了原来的逻辑。大四时,我发现PHP语言中的Laravel在RESTful这件事情上,似乎很有表现力,并且更容易“部署”——LNMP。接着实习时,发现Java在部署上更不错,它只需要一个Java包。而这个过程,只是出自于部署方面来考虑问题的。

即使现在我是一个使用Node.js的人,我还是觉得Java的打包就是优势。

在探索的过程中,我们就知道挖掘技术哪家强

Better Code & Architecture

在实际编程的过程中,我们就会遇到很多代码问题。在这时,我们尽管有好的架构,然而并不能从根本上解决问题。只能保证从蓝图上看是对的,而不能导致质量问题。

better-architecture.jpg
better-architecture.jpg

代码的腐烂都是源自于平时的工作习惯问题,而在很多时候是需求导致的。这些看上去就是噩梦——加班,没有时间学习,效率低。没有时间学习,效率低,加班。

eff-worknight.png
eff-worknight.png

而对于代码质量来说,也是如此的一种循环:

code-time.png
code-time.png

而在这时可以学的东西可多了,如Bad Smell,重构,设计模式,编写测试等等。

最后,我只得到了一个短句:

重构到设计模式

好的代码是重构出来的。

再往深层次之上就是架构,而架构往往是一种不容易得到的。尽管我看了一系列的书:

  • 《领域驱动设计》
  • 《企业应用架构模式》
  • 《领域特定语言》
  • 《恰如其份的软件架构》
  • 《面向模式的软件架构》
  • 。。。

最后,我还是依据一本书的书名,才领悟了一本书的书名《浮现式设计》。也是同样的话:

好的架构是演进出来的。

而这些都依赖于我们的实践,听信别人说的话,并不能让我们学会什么。只有自己做了,才知道什么是好,什么是不好。

Growth Hacking

当我们有了一个好的Idea,一个好的架构以及一份良好的代码,并且我们还能将其执行下去。那么,我们还需要什么?

what-is-growth-hacking.jpg
what-is-growth-hacking.jpg

这也是我现在正在尝试的领域,也是过去我想做的,但是却找不到一个好的方向。后来,想了想就有了Growth这个APP。毕竟从一个领域到一个新的领域,最好是通过现有的领域作为过渡。

自媒体正在最近几年内崛起,同时由于聚合网站的存在,信息在不断地爆炸。一个好的作品、文章要传播起来已经越来越越难了。

在现有的领域里,知乎、微博、公众号已经开始在垄断人们的碎片时间。一个东西可能在火了几天之后,你就很难得到他的信息了。

所以在适当的时候去推销,在适当的时候持续下去。

小结

在那之前你需要明白的一点是,你要成为一个怎样的人?是行业的专家?还是领域的专家?等等!

cat-interest.jpg
cat-interest.jpg

我想的是一直可以做一些有趣的事,单纯深入一个垂直领域对我来说太枯燥了。对于我来说,我只会在造轮子的时候去研究一个轮子。而不是深入研究某个轮子,我会得到造某种轮子的方法。我只会在创造一些有意思的东西的时候,才会深入某个领域去学习。而不是为了深入某个领域,再去学习这个领域的知识 。。

每个人都可以用不同的方式成长,知道自己的喜欢的然后去计划。

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

推荐阅读更多精彩内容