3

HenCoder:给高级 Android 工程师的进阶手册

 3 years ago
source link: https://hencoder.com/overview/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

HenCoder:给高级 Android 工程师的进阶手册

对,标题没写错,我是认真的。给高级 Android 工程师的进阶手册。如果你做 Android 开发,如果你做到了高级但自感遇到了技术瓶颈无法继续提升,可以试试看这里。

这件事的准备工作,我做了整整一年。

决定做这件事,源于一年前我和老婆的一次对话。

我:「又拒了个技术分享邀请。」

老婆:「为什么?」

我:「不知道讲什么。」

老婆:「江郎才尽了?」

我:「才尽了。真的不知道讲什么好,选题太难了。关键是选不到对听众有用的题。其实说实话,让我选一个大家关心的技术话题,上台去逼逼几十分钟,让大家听得热血沸腾鼓掌叫好,这一点都不难。但是这种分享大多数时候对听的人并没有什么帮助,虽然他们在听的时候会觉得受益匪浅。」

老婆:「你连粉丝都黑。」

我:「我说的是真的。他们虽然会觉得,哇塞讲得好牛逼啊,我还要学习一个啊,但其实一个分享听下来或者读下来,他们的技术并没有得到任何长进。我觉得技术分享这种事,应该是听者获取知识、讲者获取声望的双赢的事,而假如受益者只有我自己,听者得不到实质性的收获,我宁愿不讲。所以我不是不愿分享,而是不知道分享什么。」

老婆:「伟大。」

我:「我真这么想的。」

老婆:「我没讽刺你。你上次跟我说最近写不出技术文章了也是这个原因吗?」

我:「对。不知道写什么能真正帮人进步。我现在不太想写技术热点了。倒不是说热点没用,而是我觉得现在多数人最需要的不是这些前沿技术的追新,而是一些相对基础的东西。尤其是很多高级工程师,更需要基础。」

老婆:「高级的不会基础?上了大学还不会 1+1=2 ?」

我:「1+1=2 可不是基础,那叫入门知识,和基础是两回事。就比如你说的数学吧,小学学 1+1=2,中学学抛物线,大学学微积分,这都是必备知识,不叫基础。但是基础差的人,就有可能因为不知道括号里面的应该优先计算而导致微积分算错。括号是小学就学的东西,但它会影响到你以后的各个阶段,这个就叫基础。」

老婆:「没听说谁上了大学还不知道括号里的应该先算的。」

我:「我这不是举例嘛,你领会精神。做到了高级的,基础确实不会太差,但很多人的基础知识都是在工作中慢慢补起来的,不够系统。」

老婆:「基础知识不是大学就学过了吗?」

我:「还真不是。这几年中国的软件发展太快了,学校教育跟不上。你看我当时就是我们学校第一届软件工程专业的,老师们都是摸索着教的,能教得多系统?」

老婆:「你连母校都黑。」

我:「其实我们学校算好的了。」

老婆:「那你为什么不讲基础?教教高级工程师怎么用括号。」

我:「这就是关键所在啊,基础超级难讲明白的。基础的东西往往成体系,而且既晦涩又难理解,要想讲得通俗易懂,我光准备就得花很长时间。」

老婆:「多长时间?」

我:「不知道。不过怎么着也得半年到大半年吧,而且还得是全职做它的前提下。但是全职做明显不现实啊,全职做就得辞职,辞职就没工资了。」

老婆:「哦。」

我:「嗯。」

老婆:「你说的这个基础,真的很有用吗?」

我:「真的。基础相当于武侠小说里的内功,看起来你以为没用,但是已经内化到骨头里了,基础好的人做起事来非常稳当,而且再学别的什么也会很快。而你基础如果不好,工作头两年可能还好,慢慢你就会发现,你的技术提升不动了。其实大家做到一定水平之后,都有各自擅长的东西,你别看我在网上有点小名,真论技术他们未必就比我弱。但长期来看,基础是每个人都需要的,如果我能把我花了很多时间学到的这些基础给他们讲出来,让他们轻轻松松就能学会,不用和我一样花费大量的时间在这上面,你说这事棒不棒?」

老婆意味深长地看着我:

006tNc79ly1fig84lxjaij30d30bs3z7.jpg

然后她说:「我同意你辞职。」

我:「我没,我没说要辞职啊。」

老婆:「咱家又不缺你挣的那点钱。」

我:「……你这么揭穿我考虑过我的感受吗?」

注:出于篇幅考虑,谈话内容已经过精简。

第二天,我提了辞职。

去年 7 月 1 日,离职后的我回到郑州,开始了自己的「高级 Android 括号里优先计算技术分享」的准备工作。

「高级」?

说一下「高级」这个词。同样的一个词,不同的人有不同的理解,不同的位置和环境有不同的定义。A 公司的「高级」,在 B 公司也许叫「中级」,到了 C 公司可能又成了「资深」。想来我最后一次换工作时,薪资涨了不少,职位却是从 「高级 Android 工程师」「降级」成了 「Android Engineer」。所以为了理解的统一,我先明确一下我所指的「高级 Android 工程师」的具体是谁:我这里说的「高级 Android 工程师」,主要指的就是国内大多数小型和微型公司里的 Android 骨干或 Android Leader。这些人在公司的职位通常叫做「高级 Android 工程师」,技术也很不错,但和一些有技术积淀的大公司中的高级工程师相比,他们中的多数人往往(注意是「多数人」「往往」,不是全部,谢绝学我老婆抬杠)底子不够扎实,基础相对薄弱,所以很容易在到达一个还不算很高的技术水平之后,就感到难以继续提升了。他们并不是不想上进,而是不知道应该怎么上进,很多人都已经尝试过很多学习方法,但都好像没有刚入行时那样进步神速,感觉每天都是一个全新的自己了。据我了解,现在中国的程序员中,这样的人非常多。他们是每个公司的骨干,但技术水平却没有达到自己期望的高度(甚至有不少人,也没有达到公司同事以为的高度)。我在这里所说的「高级」,指的就是这些人。

而我做这件事希望可以帮到的,也是这些人。

Talk is cheap

在做之前,只觉得这会是一件有点麻烦的事;然而做了才渐渐发现,这件事真是太太太麻烦了。原本以为半年就能做成,没想到却做了整整一年。这一年里,我学了很多,做了很多,也走了很多的弯路。

还好,今天我终于能够宣布,我的技术分享项目「HenCoder」面世了!

从今天起,我将会持续地在我的知乎专栏掘金专栏、微信公众号(HenCoder)、以及网站 HenCoder 同步发布我的每一期的分享。频率大约会是每周一更。

第一阶段首先是 Android 的 UI 基础中的自定义 View,下面这段视频是一个对此简要的介绍:

正式的技术内容将会从下周开始。如果感兴趣,可以先来关注一波。

006tNc79ly1figpa2dc9jj30p00bxdhs.jpg

在这一年里,朋友和内测读者们跟我提了不少问题,我把其中问得最多的几个拿出来统一回答一下:

  • 你的目标是什么?

    答:通过补足技术短板,帮助国内的小型和微型公司的 Android 开发主力突破技术瓶颈,让他们的技术提升得以持续而不是停滞不前,从而让这些小微型公司 Android 主力的技术水平整体提升一个层次。当然如果能帮到更多范围的人群,我会更开心。

  • 你觉得你做的这件事意义大吗?

    答:大。现在国内其实特别缺高级的 Android 开发。据我从各种渠道了解到的信息,目前国内的情况是:在程序员方面,很多 Android 开发找不到好工作,而在公司方面,也有很多高级的 Android 职位招不来优秀的人才。因为现在国内公司对 Android 开发的要求是比程序员们的实际水平要整体高一些的,这中间有一道沟。而如果国内的 Android 开发能够整体提升一个层次,这道沟就被填上了,那么对于程序员们和公司们来说,都是有利的。喜大普奔啊。

  • 你打算用什么形式来分享?

    答:录播的视频 + 文字 + 练习项目。视频负责打通概念,文字负责阐述细节,练习项目负责最后一公里,让你从「我懂了」变成「我会了」。

  • 为什么准备工作会花了一年这么久?

    答:因为要想做到高质量,需要学习很多之前没有接触过的东西。比如这一年里,我把我打算讲的那些东西全部从头重新学了一遍,保证我讲出来的东西是绝对准确无误的;另外,为了视频的制作,我还学了拍照、视频拍摄、视频制作、动画制作、录音、镜头表现。除此之外,还走了很多弯路,学了和做了很多最终没有被我采用的技能和事情。

  • 答:不收。收费的话很多人就不看了,我希望更多的人能看到。

  • 那你的盈利模式是什么?

    答:这个问题让我觉得自己瞬间成了一名创业公司的 CEO。赚钱的事不是没想过,但确实没有太多想,我现在就是一心的想把这件事做好。

  • 你会坚持做下去吗?

    答:只要有足够多的人喜欢,我一定会继续做的。

最后,感谢这一年以来给了我各种支持和帮助的各位:

你给不给我钱,我都会认真做、全心做。所以给钱之前请慎重考虑,确定你是要赞赏,而不是购买服务。

52eb2279jw1f2rxyunlh1j20km0d1djg.jpg


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK