對,標題沒寫錯,我是認真的。給高級 Android 工程師的進階手冊。git
這件事的準備工做,我作了整整一年。程序員
決定作這件事,源於一年前我和老婆的一次對話。github
我:「又拒了個技術分享邀請。」 微信
老婆:「爲何?」 markdown
我:「不知道講什麼。」 oop
老婆:「江郎才盡了?」 學習
我:「才盡了。真的不知道講什麼好,選題太難了。關鍵是選不到對聽衆有用的題。其實說實話,讓我選一個你們關心的技術話題,上臺去逼逼幾十分鐘,讓你們聽得熱血沸騰鼓掌叫好,這一點都不難。可是這種分享大多數時候對聽的人並無什麼幫助,雖然他們在聽的時候會以爲受益不淺。」 動畫
老婆:「你連粉絲都黑。」 網站
我:「我說的是真的。他們雖然會以爲,哇塞講得好牛逼啊,我還要學習一個啊,但其實一個分享聽下來或者讀下來,他們的技術並無獲得任何長進。我以爲技術分享這種事,應該是聽者獲取知識、講者獲取聲望的共贏的事,而假如受益者只有我本身,聽者得不到實質性的收穫,我寧願不講。因此我不是不肯分享,而是不知道分享什麼。」 spa
老婆:「偉大。」
我:「我真這麼想的。」
老婆:「我沒諷刺你。你上次跟我說最近寫不出技術文章了也是這個緣由嗎?」
我:「對。不知道寫什麼能真正幫人進步。我如今不太想寫技術熱點了。倒不是說熱點沒用,而是我以爲如今多數人最須要的不是這些前沿技術的追新,而是一些相對基礎的東西。尤爲是不少高級工程師,更須要基礎。」
老婆:「高級的不會基礎?上了大學還不會 1+1=2 ?」
我:「1+1=2 可不是基礎,那叫入門知識,和基礎是兩回事。就好比你說的數學吧,小學學 1+1=2,中學學拋物線,大學學微積分,這都是必備知識,不叫基礎。可是基礎差的人,就有可能由於不知道括號裏面的應該優先計算而致使微積分算錯。括號是小學就學的東西,但它會影響到你之後的各個階段,這個就叫基礎。」
老婆:「沒據說誰上了大學還不知道括號裏的應該先算的。」
我:「我這不是舉例嘛,你領會精神。作到了高級的,基礎確實不會太差,但不少人的基礎知識都是在工做中慢慢補起來的,不夠系統。」
老婆:「基礎知識不是大學就學過了嗎?」
我:「還真不是。這幾年中國的軟件發展太快了,學校教育跟不上。你看我當時就是咱們學校第一屆軟件工程專業的,老師們都是摸索着教的,能教得多系統?」
老婆:「你連母校都黑。」
我:「其實咱們學校算好的了。」
老婆:「那你爲何不講基礎?教教高級工程師怎麼用括號。」
我:「這就是關鍵所在啊,基礎超級難講明白的。基礎的東西每每成體系,並且既晦澀又難理解,要想講得通俗易懂,我光準備就得花很長時間。」
老婆:「多長時間?」
我:「不知道。不過怎麼着也得半年到大半年吧,並且還得是全職作它的前提下。可是全職作明顯不現實啊,全職作就得辭職,辭職就沒工資了。」
老婆:「哦。」
我:「嗯。」
老婆:「你說的這個基礎,真的頗有用嗎?」
我:「真的。基礎至關於武俠小說裏的內功,看起來你覺得沒用,可是已經內化到骨頭裏了,基礎好的人作起事來很是妥當,並且再學別的什麼也會很快。而你基礎若是很差,工做頭兩年可能還好,慢慢你就會發現,你的技術提高不動了。其實你們作到必定水平以後,都有各自擅長的東西,你別看我在網上有點小名,真論技術他們未必就比我弱。但長期來看,基礎是每一個人都須要的,若是我能把我花了不少時間學到的這些基礎給他們講出來,讓他們輕輕鬆鬆就能學會,不用和我同樣花費大量的時間在這上面,你說這事棒不棒?」
老婆意味深長地看着我:
而後她說:「我贊成你辭職。」
我:「我沒,我沒說要辭職啊。」
老婆:「咱家又不缺你掙的那點錢。」
我:「……你這麼揭穿我考慮過個人感覺嗎?」
注:出於篇幅考慮,談話內容已通過精簡。
次日,我提了辭職。
去年 7 月 1 日,離職後的我回到鄭州,開始了本身的「高級 Android 括號裏優先計算技術分享」的準備工做。
說一下「高級」這個詞。一樣的一個詞,不一樣的人有不一樣的理解,不一樣的位置和環境有不一樣的定義。A 公司的「高級」,在 B 公司也許叫「中級」,到了 C 公司可能又成了「資深」。想來我最後一次換工做時,薪資漲了很多,職位倒是從 「高級 Android 工程師」「降級」成了 「Android Engineer」。因此爲了理解的統一,我先明確一下我所指的「高級 Android 工程師」的具體是誰:我這裏說的「高級 Android 工程師」,主要指的就是國內大多數小型和微型公司裏的 Android 骨幹或 Android Leader。這些人在公司的職位一般叫作「高級 Android 工程師」,技術也很不錯,但和一些有技術積澱的大公司中的高級工程師相比,他們中的多數人每每(注意是「多數人」「每每」,不是所有,謝絕學我老婆擡槓)底子不夠紮實,基礎相對薄弱,因此很容易在到達一個還不算很高的技術水平以後,就感到難以繼續提高了。他們並非不想上進,而是不知道應該怎麼上進,不少人都已經嘗試過不少學習方法,但都好像沒有剛入行時那樣進步神速,感受天天都是一個全新的本身了。據我瞭解,如今中國的程序員中,這樣的人很是多。他們是每一個公司的骨幹,但技術水平卻沒有達到本身指望的高度(甚至有很多人,也沒有達到公司同事覺得的高度)。我在這裏所說的「高級」,指的就是這些人。
而我作這件事但願能夠幫到的,也是這些人。
在作以前,只以爲這會是一件有點麻煩的事;然而作了才漸漸發現,這件事真是太太太麻煩了。本來覺得半年就能作成,沒想到卻作了整整一年。這一年裏,我學了不少,作了不少,也走了不少的彎路。
還好,今天我終於可以宣佈,個人技術分享項目「HenCoder」面世了!
從今天起,我將會持續地在個人知乎專欄、掘金專欄、微信公衆號(HenCoder)、以及網站 HenCoder 同步發佈個人每一期的分享。頻率大約會是每週一更。
第一階段首先是 Android 的 UI 基礎中的自定義 View,下面這段視頻是一個對此簡要的介紹:
正式的技術內容將會從下週開始。若是感興趣,能夠先來關注一波。
在這一年裏,朋友和內測讀者們跟我提了很多問題,我把其中問得最多的幾個拿出來統一回答一下:
你的目標是什麼?
答:經過補足技術短板,幫助國內的小型和微型公司的 Android 開發主力突破技術瓶頸,讓他們的技術提高得以持續而不是停滯不前,從而讓這些小微型公司 Android 主力的技術水平總體提高一個層次。固然若是能幫到更多範圍的人羣,我會更開心。
你以爲你作的這件事意義大嗎?
答:大。如今國內其實特別缺高級的 Android 開發。據我從各類渠道瞭解到的信息,目前國內的狀況是:在程序員方面,不少 Android 開發找不到好工做,而在公司方面,也有不少高級的 Android 職位招不來優秀的人才。由於如今國內公司對 Android 開發的要求是比程序員們的實際水平要總體高一些的,這中間有一道溝。而若是國內的 Android 開發可以總體提高一個層次,這道溝就被填上了,那麼對於程序員們和公司們來講,都是有利的。喜大普奔啊。
你打算用什麼形式來分享?
答:錄播的視頻 + 文字 + 練習項目。視頻負責打通概念,文字負責闡述細節,練習項目負責最後一千米,讓你從「我懂了」變成「我會了」。
爲何準備工做會花了一年這麼久?
答:由於要想作到高質量,須要學習不少以前沒有接觸過的東西。好比這一年裏,我把我打算講的那些東西所有從頭從新學了一遍,保證我講出來的東西是絕對準確無誤的;另外,爲了視頻的製做,我還學了拍照、視頻拍攝、視頻製做、動畫製做、錄音、鏡頭表現。除此以外,還走了不少彎路,學了和作了不少最終沒有被我採用的技能和事情。
收費嗎?
答:不收。收費的話不少人就不看了,我但願更多的人能看到。
那你的盈利模式是什麼?
答:這個問題讓我以爲本身瞬間成了一名創業公司的 CEO。賺錢的事不是沒想過,但確實沒有太多想,我如今就是一心的想把這件事作好。
你會堅持作下去嗎?
答:只要有足夠多的人喜歡,我必定會繼續作的。
最後,感謝這一年以來給了我各類支持和幫助的各位:
你給不給我錢,我都會認真作、全心作。因此給錢以前請慎重考慮,肯定你是要讚揚,而不是購買服務。