博客 / 詳情

返回

2019 節點: Love Wife & Change Life

為什麼你還在 ThoughtWorks?

因為不加班。人生總會有很多的選擇,在決策的那一刻,你不知道對與錯。但是,開心就好。

12 月初,ThoughtWorks 開始了 Annual Review 的 Kick Off,我開始總結這一年的工作,與此同時,我也開始總結我的 2019 節點。今年仍然是『平淡無奇』也過完了重要的一年。

太長不讀版:

  • 愛情上,領證了,和 @ 花仲馬一起來到了杭州;還差好多錢買房,還得考慮辦婚禮的事情。
  • 職業上,從深圳 office 轉到了華東 MU,從華東 MU 轉到了諮詢團隊,開始了在 TW 的出差生涯,還有加班生涯。
  • 設計上,每天畫了一張畫,一年 365 張畫;插畫,作為文章的一部分,已無處不在。
  • 寫作上,出版了《前端架構:從入門到微前端》,印刷量在 7500 左右,有希望在一年內達到 1 萬。
  • 編程上,寫了更多的工具,愈加豐富的重構經驗,順帶深入軟件體系的架構。
  • 斜槓上,嘗試電子產品的評測,寫作相關的收入差不多是前兩年之合。
  • 影響力上,開始了 International 的嘗試 —— 時間仍然是一個限制因素。
  • 社交上,我退出了大量的微信羣,專注於生產內容。

嗯,還有遊戲,文明大法好。

所以,對比一下上一年的目標:

  1. 技術隱私,打造了自己的 Serverless 密碼管理器:https://github.com/phodal/mopass ,作為一個 Chrome 插件,它很好地作為了我的二次管理認證工具。
  2. 非技術寫作。好似沒有一個開始,似乎也不是一個好的目標。借這個名義,我看完了《刺客信條》的小説。
  3. 工具。開發了更多、更有意思的工具,還有更多的 PoC。
  4. 設計。天天練習插畫,更快的畫畫速度,質量上也有所提升。也燒了更多的錢繪畫工具上。
  5. Coach。幸好在上一年裏,它不是一個目標,扶不起的人太多了。對的人,對的事,才能成——藉口。
  6. 影響力。受眾級別比上一年有所提升,還有更深度的內容。

不算太好,也不算太糟糕。

編程:平台 + 工具 + DSL

慣例,依舊是工作 + 業餘。

工作:Platform & Tools

工作上沒有圈,也沒有點,今年的工作簡直是一團糟,還加了人生的第一次班,而明年還會有更多。Work–life balance 不斷被打破,就得尋找一個更合適的地方 —— 如果有的話。

平台

上半年,工作的主要內容是大前端開發框架 / 平台,所以研究了一段時間低代碼編程,寫了那篇《無代碼編程》的文章。一番操作下來,發覺重點在於 AST 和 DSL。因此,除了開發一些日常的工具之外,我開始擼 dilay 框架,創建了 subal 項目……。作為一個苦逼的 Tech Lead,除了項目相關的兩個團隊,還要照顧公司的其它多個團隊。日常不是一般的忙,開會、開會、開會,還得做架構??還要評績效??填別人的坑??還有寫代碼……

一個也不能落下,每個都落下了。

做了一個大前端開發平台,這樣一折騰下來,收穫倒也是挺大的,我對研發體系有了更深入的研究。考慮問題的時候,比以往更加系統,更加全面。文檔、腳手架、示例應用、CLI 工具、IDE / 編輯器集成、售後 Q & A 等等一個都不能少。於是,在項目上寫了對應的 CLI 工具,嘗試把文檔融入了開發工具中……

沒毛病,老子可以各種吹了:不要做平台。我 Phodal 就是……,我也不會……。

工具

下半年,beach 了兩三個月,寫了個重量級應用 Inception,然後,轉到了諮詢團隊。來到了新的 U,有了更多的靈感和時間去寫工具,也從公司大佬新哥那獲得一堆 Todo List。所以,下半年在業餘時間寫了更多的代碼,寫了更多的 DSL。所以,DSL 成為我這一年的一個主要風向。

我有了遺留系統重構工具: Coca,還有了 Badsmell 識別工具:Sprite,以及對應的重構建議工具:fanta ……。

它們都是使用 Go + Antlr 寫的,target 是便宜的後端開發語言 Java。一頓瞎操作下來,除了更懂 Java 語法,我還學會了 Go。明年,我就可以 Rust + WebAssembly 搞 C or TypeScript 的語法分析了,一下子學會好幾種東西的感覺好爽。

卧槽,又要興奮的失眠了。想想,還是很美好的。

業餘:工具 + DSL

2018 年底,我的 GitHub 數逼近 40,000;2019 年底,也有 48,615了,可不敢説逼近了。明年我的目標就是 50,000 star 的時候,發個朋友圈,哦,不對應該是 Twitter。

依舊的 Serverless 仍然是我的後端最佳選擇,我用它寫了我的密碼管理工具:[moPass] https://github.com/phodal/mopass 。繼 ADR 和 Phodit 之後,我的另外一個日常使用工具。我的業餘項目上還上手了 Golang,嗯,真香。

Architecture

今年,有幸可以在項目中引入對於前端架構的探索,進一步地完善了我的前端架構體系,也產生了前端架構守護框架 Dilay,完美的造了個 PPT。

所以,在實踐了 Domain Driven Design 和 Clean Architecture 之後,我開始思考 One Architecture 的可能性,儘管我已經用 JavaScript / TypeScript 證明了它的可能性:https://github.com/phodal/one

然而,Java 仍然是後端的主流語言,一個 Java 轉 JavaScript 的工具不可缺少,而編程語言有那麼多,所以我們需要的一個是 DSL 轉任何語言的工具。也就是我最近在做的 Code 項目: https://github.com/phodal/code ,實踐上還有待完善,只是 hello, world 出來。大抵,還需要半年地時間完善。

基準化

考慮到人總是會老的,Phodal 是人,所以 Phodal 會老的。我繼續寫工具、文章來沉澱知識,以用於以後甩出一個鏈接(裝 x 神器):

  • [Clean Architecture]:https://github.com/phodal/clean-frontend
  • [React Boilerplate]:https://github.com/phodal/react-boilerplate
  • [New Project Checklist]:https://github.com/phodal/new-project-checklist
  • Inception 工具:https://github.com/phodal/inception
  • [Path to Productioon]:https://github.com/phodal/path
  • [Tech Lead Assessment]:https://github.com/phodal/tla

對應的還有一篇相關的文章:《如何創建你的應用腳手架》,年輕就是好,對了,還有 Tech Lead 的基準化:《Tech Lead 的養成》。

Everything as Code:DSL

作為一個 Markdown 資深用户,除了進一步完善我的 Phodit,我還結合 Markdown 寫了很多工具:

  • Markdown 定製文檔工具,見 《【架構拾集】基於 Markdown 文檔展示系統設計》
  • Markdown 轉思維導圖,見 Inception 工具。
  • Markdown 轉 PPT 工具 mdppt

不過呢,定製別人的 DSL 始終是比較一個比較 hack 的方式,所以如何卓有成效地開發一個 DSL,便成為了一件非常有意思的事。所以,公司大佬説的 DSL as Data, Data as DSL 仍然是一個不錯的目標。

在那篇《雲開發:未來的軟件開發方式》中,我提到了在未來幾年,我要做的一些事情:

  • 更易於實踐的微架構
  • 完善的代碼化體系
  • 尋求合適的協作設計

所以,設計和抽象 DSL(Domain Specific Language)將成為了我未來幾年一個重要戰略。也因此,從大體上來説,它仍然是我的下一年目標和計劃。

寫作:100 萬瀏覽量 + International

年初,出現了一個新的里程碑,我的博客 phodal.com 累計訪問量突破了 1,000,000 萬。

考慮到在微前端和 Clean Architecture 的實踐,已經和國外的速度差不多,外加國內的 996 環境。所以在在今年年中,我嘗試將 International 作為 Impact 的一個新方向。因此,在這篇總結裏,我把寫作相關的部分分為了大中華區和 International 區。

“大中華區”

雖然我在寫新書的時候,看了很多小説,試圖去改進,但是依舊在豆瓣上被吐槽『寫出來太理論太像翻譯腔』。沒救了,沒救了,寫過 776 篇博客的我,表達能力依舊還有巨大地提升空間。

出版

今年 5 月出版的《[前端架構:從入門到微前端]》,出版社的總印刷數已經有 7500(並非賣完),豆瓣讀書上的評分也有 7.6 分 —— 比前兩本書多出了一份。瞬間又有動力準備下一本書了,只是怕是沒有那麼多時間了。

頗為遺憾的是,出於字數少的原因,我在『前端架構』 一書中多加了一個章節。而由於出版時間太早,少了後來實踐的『Clean Architecture』——這是另外一個前端所需要的分層架構模式。將它與 Serverless 配合,就形成了我們所需要的 One Architecture。

文章:體系規劃

從內容上來看,我對今年的文章倒是頗為滿意的:

  • 《無代碼編程》
  • 《整潔架構》
  • 《構建可信的軟件架構 10 要素》
  • 《微前端架構》
  • 《管理依賴的 11 個策略》
  • 《雲開發:未來的軟件開發方式》
  • ……

但是如你所料,我創建了一篇又一篇地長文章,手就有點疼,坐久蛋也疼。

只是呢,好像也沒有新的亮點了。

International

今年從我的觀察來看,我在開源領域開始逐步走向非中文世界。Mooa 和 ADR ,迎來了一個又一個的國際友人的支持。我的 GitHub followers 也多了一個又一個的國際友人。

內容國際化,是今年年中開始的一個新的方向 —— 之前的另外一個國際化目標是:開源軟件的國際化

雖然我的英語語法並不是那麼靠譜,但是 Google Translate 也差。我相信同翻譯腔一樣,只要會被人吐槽英語語法不行,説明我已經成功引起大家地注意了。

English Articles

由於種種原因(諸如文章太長懶得翻譯、高質量的文章不夠多),產出仍然相對比較少。

不過,也算還行,我在 Dev.to 上創建了我的賬號,發了一篇微前端相關的文章,還有一篇 Clean Architecture 相關的文章,也產生了一定的影響力。除了幾十個的掌聲,一萬左右的單篇文章瀏覽量,還有 StackOverflow 有相關的問題指向了我的文章,笑而不語~。

所以,繼續翻譯更多的文章吧,是時候依賴反轉一下了。

Review

過去的幾年裏,Review 英文書籍顯然是國際賽道的一部分,只是呢,當時呢,這個 business line 還沒想好,現在也沒想好。

今年還是 Review 了 Packt 出版社的一本書籍《Web Development with Angular and Bootstrap - Third Edition》,遺憾的是近一二年 review 的書,都沒有被引入國內。

不管怎樣,國際化應當成為 2020 的一個繼續前進的方向。

設計

我換了一個又一個的工具:

  • iPad + Apple Pencil。買前生產力,買後愛奇藝
  • Wacom Intuos Pro。專業級手繪板,相當的不錯。
  • 繪王 Kamvas Pro 16。嗯,解控屏,效率就是高。對於我這種非專業級選手,還是非常好用的。
  • Wacom Intuos Mini。出差專用,個小板子雖然不那麼好用,但是我也算是習慣了。

終於,我還是沒畫好畫。

年中的時候,我嘗試錄製繪畫的過程到 B 站、抖音上。但是,畫的時候往往發現,錄視頻的時候,會影響我畫畫,也就作罷了。

畫:365 天

上一年考慮到設計的邊緣化,我開始採用日常練習的方式,來提升這方面的感覺。

Daily

最初設計的目標是每天 0.5 小時,但是受編程狀態的影響,往往會被擠壓到 15分鐘。好在,隨着練習的進一步 一深 深入,我還是能在短暫的時間內,畫出一些不錯的作品。

稍有不同的是,受出差的影響,我有時候不得不在早上畫畫。

Whatever,我已經有一堆畫了。

所以,如果沒有問題的話,它仍將作為我下一年的日常。問題的關鍵在於:如何結合文章的意圖,創建對應的作品?

Design Thinking

尋找更廣泛維度的設計思考。

TBD。

受限於有大量的代碼要寫,以及好像沒有遇到好的設計師。沒有靈感嘛,就先這樣,慢慢來,路子還長着。萬一明年可以遇到可以愉快合作的小夥伴呢。

其它

人生苦短,一點點做

Hello, 2020

嗯,我要登機回杭州了。

咦,2020 呢,要小康。

哦,不對,説好的婚禮呢。

本文參與了 SegmentFault思否徵文「2019 總結」,歡迎正在閲讀的你也加入。
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.