一名七年老安卓的七八月小結

語言: CN / TW / HK

你好,我是 shixin。每兩個月我會做一次總結,記下這段時間裡有意義的事和值得反覆看的內容,為的是留一些回憶、評估自己的行為、沉澱有價值的資訊。

歷史總結:

五六月小結

三四月小結

一二月小結

有意義的事

0.對 APP 動態化的認識更多了一些

過去兩個月圍繞 ReactNative(後面簡稱 RN) 做了一些工作,目前來看進展符合預期。之前在位元組時使用了一年多 React 和 TypeScript,有了這些基礎再來開發 RN 上手很快。這段時間最大的收穫是對動態化的不同實現方案有了更深的理解,也知道了不同場景下該如何選擇。

在業務快速迭代的訴求下,動態化+跨端成為移動開發不可或缺的部分。要實現一套程式碼執行在多個平臺、同時支援動態下發更新,就需要有一套抽象的協議描述佈局、資料和邏輯,然後各端實現這個協議。目前主流的方案有 Native DSL 和 ReactNative。

Native 動態化的好處是輕量,效能和原生差別不大,但缺點是開發語言是自定義的協議學習成本略高,不支援複雜業務,只能用作卡片;ReactNative 的好處是開發語言是前端技術棧、上手成本低,有 JS 引擎支援複雜業務,但缺點是更重一些,效能較 Native DSL 略差。

如果是首頁等效能要求比較高、同時業務沒那麼複雜的場景,Native DSL 比較適合;如果是非首頁且業務複雜,需要處理各種狀態、互動,ReactNative 是不錯的選擇。在使用 Hermes 後開啟速度會有極大的提升,然後再重點優化下記憶體洩漏和主執行緒耗時方法,基本上可以滿足使用。

這件事的收穫:從業務需求出發,對比不同解決方案的優缺點和場景,然後著重學習某個方案的優秀點,可以讓學習的效率最大化。

1.進展不及預期的思考

過去兩個月開展了一些專項優化專案,我的角色是“輔導員”。遺憾的是目前只有部分專案進展符合預期,大多數沒有拿到理想中的結果。有一部分問題是我可以改進的,比如跟進的再主動些,給予更多輔助;但還有一部分問題,可能需要靠參與者自身的積極性。

換位思考一下,如果我在做基本工作的同時被安排了一些額外的專案,什麼情況下才會完成額外專案呢?

1. 基本工作不多,空閒時間多(這點目前不具備,業務很忙)

2. 對額外專案有足夠的認可,認可這個專案的價值,同時知道做了這個會給自己帶來好處(這點始終在強調,對自身技術和後面晉升的好處)

3. 興趣,對這個問題、技術有足夠大的好奇心,想要解決問題、明白原理(因人而異)

如果第一點滿足不了,就得靠第二三點了。越來越察覺出相信的力量和技術好奇心的可貴。

這件事的收穫:當別人給我安排額外的工作時,努力不排斥,多想想可能會給我帶來什麼再決定。

2.換新的記錄方式

之前使用普通的 markdown 筆記,嘗試了好幾種內容格式,始終沒找到舒服的記錄方法:

仔細想想,主要是因為想記錄的內容和工作、生活習慣不夠匹配,需要額外思考很多,有時候比較累就直接放棄了。我每天的習慣是早上起來先定好當天要做的事,哪些依賴別人、哪些被別人依賴,然後排優先順序進行執行。因此我將記錄的內容調整為先記錄當前的計劃,然後在晚上下班前再做一個總結。修改後由於和工作方式高度匹配,果然記錄的頻率就高了起來。

七月開始瞭解到為知筆記也有大綱筆記的功能,可以把筆記轉為腦圖的方式,嘗試了一下,發現效果不錯,兩個月下來基本保證了每天記錄的連續性。

每天我會根據計劃的達成情況打分,整理後才發現,我給自己打的分主要在 60 分。60 表示勉強及格,有努力去做但沒有拿到的好的結果:

回過頭來想想,六十分究竟是否準確?是我對自己過於嚴格了嗎,還是平時的效率真的不高?出於自我辯護,更偏向於前者哈哈。

這件事的收穫:當做一件事很費勁的時候,要及時想想是不是方法、工具不對,多嘗試新的生產力工具。

3.我的效率問題:思維過於發散,注意力不集中

通過記錄,我發現自己最需要改進的 2 個點:熬夜和思維太發散。熬夜的問題老生常談知易行難暫時不提,簡單聊聊我對思維發散這個問題的認識。

我經常出現的問題是列出的中長期計劃沒過多久就擱置一邊,比如某周計劃要學技術 A,結果一週下來 A 沒學多少,反而開啟了技術 B 的大門;還有個問題是本來計劃完成一整件事,結果在其中某個細節花的時間過多。總的來說是注意力不集中,常常由於好奇拐到某條小路里,等想起自己的目的地後已經過去好久。好奇不是問題,不專一是大問題。

俗話說將軍趕路不抓野兔,我需要清楚自己當下究竟要去哪兒,也需要分辨當前要做的究竟是細節還是框架,從大到小做起。

如何解決呢?目前想到的解決辦法:一方面把計劃放到顯眼的地方,經常提醒自己;另一方面也需要把計劃拆解到足夠小、可執行、可衡量,然後每天、每週回顧。疲憊的時候多休息、狀態不好的時候找朋友聊、腦子短路就做些其他的換換思路,總之避免在混沌的狀態下原地打轉。

4.我的性格問題:怕麻煩別人

這兩個月因為裝修的事和老婆鬧了矛盾,主要是因為裝修師傅不敬業,留下不少細節問題。我監工的時候沒有及時發現,在小肉反饋不滿意時也沒有及時思考解決,沒有讓對方嘗試就憑感覺說沒辦法。後來在小肉催促下找了他們幾次,算是解決了問題。

裝修吵架的這件事讓我發現了自己居然這麼害怕麻煩別人,平時生活還好,花錢消費時還這樣實在是不應該。嚴重點說,我這種情況算是“討好型人格”。簡單的說就是太在意別人的感受,害怕衝突和否定,總是期望讓別人喜歡自己。一定程度上和父母的關係和成長環境有關。

大到這次衝突、小到日常和別人合作,我忍不住地會想別人的感受,有時候這種敏感會讓我發現別人沒發現的情況、做一些讓人感覺很細膩的事,但有時候也會給自己帶來不少困擾,比如不願指責別人。

如何解決呢?目前想到的解決辦法:搞清楚人際關係中彼此的角色,做好自己該做的,同時也對別人有該有的要求和最低標準,大不了不歡而散,但不能失去自己的標準和底線。

5.一本不錯的書《蛤蟆先生去看心理醫生》

花一個週末下午看完了這本心理學入門讀物, 強烈推薦!!通過一個輕鬆的抑鬱症諮詢案例,討論了我們終身需要回答的兩個問題:

1. 我是怎麼看自己的?我好嗎?

2. 我是怎麼看別人的?他們好嗎?

我是怎麼看自己的?小的時候我對“正確”的理解完全來自外界,通過觀察父母和周圍人對我行為的反饋來判斷“我好嗎”,久而久之,就養成了適應這種環境的習慣和性格。隨著見識的東西越來越多,內部判斷的權重逐漸高過外部的反饋,我開始從內心裡思考“我好嗎”,從讀書時的迷茫到靠自己努力謀生多年,答案漸漸變得清晰。工作六年多,我發現自己性格上的問題比想象中多好多,但也發現了不少閃光點。通過讀書、反思、記錄,缺點被一點點修復,優秀的點繼續發揚,就目前而言,我覺得我還是蠻不錯的哈哈。

我是怎麼看別人的?年少的時候,世界等於別人,寧願在人群裡發呆也不願意獨自一人,能否得到稱讚、認可決定了我的心情。隨著年紀逐漸增長,慢慢地發現獨處時最自在,能讓自己滿意的才是最重要的。如果說以前“別人”是主食,主要靠別人填滿生活;那現在“別人”成了配菜,好的配菜可以多吃,不好的及時推掉。

感謝這本書,讓我找到了很多共鳴,也推薦給對心理學感興趣的讀者,就像我在【】裡提到的那樣:心理學是值得我們終身學習的方向。

6.回憶我讀書時的正向因素

妹妹來上海住了段時間,由於沒有學習的動力學習成績一般。在規勸她的同時,我也回憶了自己當初讀書時的狀態,是什麼導致學習態度比較積極。總結下來主要有兩點:

1. 正反饋+自我定位

2. 誘惑少

首先是外界給的反饋都比較正向。從小學起我的成績就不錯,父母和老師給的鼓勵很多,因此總覺得自己是“好學生”,偶爾考砸了不用別人多說,自己就會覺得“有失身分”急忙學習補回來。這樣的習慣導致我在上大學後還經常夢到自己考試沒準備好、擔心成績下來後被批評,在醒來後鬆了一大口氣。

另外一點是誘惑少。當初影響注意力的主要是網路小說和網咖,由於網路不發達、手機流量有限,看小說也比較節制,網咖更是最多週末去玩兩天,周內的學習時間可以得到保證,不會像現在一樣短視訊一刷一天。如今因為疫情綠碼和老師微信佈置作業,不給學生手機不行,但給了以後又要面對各種誘惑,難度不可同日而語。

其實不論什麼時候,要保持積極的學習狀態,核心還是需要這幾點:明確自己的定位、定期獲取反饋、隔絕誘惑,才能保證持之以恆,抵達自己的耶路撒冷。

7.其他

還有一些零碎但值得記得的事,記錄在此:

  1. 看完了電視劇《偽裝者》、紀錄片《三和青年》、紀錄片《出路》
  2. 記錄了很多碎片,腦圖也畫了不少,如何把它們關聯起來,在使用到時快速查詢,是個需要解決的問題
  3. 對讀者來說,知道框架的核心功能是第一步,知道它能用來解決什麼問題;然後是學習裡面的典型程式碼,可以用來自己開發;最後是懂底層原理
  4. 參加了公司十週年活動,買了兩本書、贏了兩局拳皇 97,快樂 😄

值得反覆看的內容

1.勸學摘錄

  • 君子博學而日參省乎己,則知明而行無過矣;
  • 君子生非異也,善假於物也;
  • 君子居必擇鄉,遊必就士,所以防邪辟而近中正也;
  • 言有招禍也,行有招辱也,君子慎其所立乎;
  • 無冥冥之志者,無昭昭之明;無惛惛之事者,無赫赫之功;君子結於一也;

2.看書和知識

  • 隨著不斷的學習,我逐漸明白看書只會改變我們的資訊量,卻無法轉化為我們的知識 。
  • 真正的知識,是有機的體系 ,而不是資訊的雜亂堆積 。
  • 就像你從一百萬個零件當中,找到十萬個零件組成一輛汽車,
  • 這個不斷重組的過程就是我們化無機變成有機,“減熵”的過程 。

捲入上海疫情,被封40天,我的幾點心得:

https://mp.weixin.qq.com/s/KTpCkoqO2-z8BeF732smlg

3.關於批評

批評員工要有講究,要對事不對人,批評事,不要打擊人,更不能給人貼標籤。如何批評員工的 AID 批評三步法(也稱為發展性反饋):

  • ACT:指出具體的言行上的問題,而不是人的問題
  • Impact:指出該問題帶來的影響
  • Desired outcome:期待的結果,以及探討取得結果的行動

指出行為的問題,帶來的影響,期待的結果

4.關於管理

  • 管理者要做一個聯結器,自己部門跟外部部門之間的聯結器。走出去是走出「能力陷阱」的第一步。
  • 管理要規模化,要把個體案例(優秀的或者有問題的)抽象為通用情況,從這個角度思考如何處理,就像得到的《得到品控手冊》,把原則,規範列出來。

5.一些不錯的架構圖

6.關於資料庫

  • 歸納一下,資料庫就是要做好五件事,儲存、事務、查詢、複製和其他。
  • 對分散式資料庫來說,不僅要繼續做這五件事,還要多出一件事,分片。
  • 在這六件事中,儲存和其他這兩件事與單體資料庫差不多,難點就在事務、查詢、複製和分片這四件

7.關於 IT 技能和成長

8.關於寫作

如果讓一個平庸作家拿黑暗、火、永恆造句,會寫成黑暗中重生,浴火中永恆這樣的句子,只有海子會寫成:火回到火,黑夜回到黑夜,永恆回到永恆。

  • 第一境界,看黑夜是黑夜,是在地上方的天
  • 第二境界,看黑夜不是黑夜,是從地升到天上的天
  • 第三境界,看黑夜就是黑夜,但通過時空變換,和其他事物關聯

在師法西方平克等人的古典風格時,你不應忘記,中國還有韓愈、桐城派那樣的古典風格,你更不應該忘記,中文還有“卿雲爛兮,糾漫漫兮”、“白雲在天,丘陵自出”那份來自源頭的美好。

《風格感覺》

關於如何寫英文技術文章、文件:https://developers.google.com/tech-writing/

9.YouTuber Joma 的職業規劃

Joma 是 YouTube 上很火的程式設計師 up 主,先後就職於多家網際網路大廠(Facebook, Google 等)。在這個視訊裡他分享了從谷歌離職後準備做的事以及計劃怎樣實現自己的長遠目標:

I quit my job at Google, here's what's next: https://www.youtube.com/watch?v=k9JFitrgGgs

有清晰的規劃,長遠目標和短期麵包:

10.關於資訊傳播的效率

關注資訊傳播的效率:https://mp.weixin.qq.com/s/piJ6zUxT7T3aMCwu890iKA

總結

通過寫這篇總結,我回看了這兩個月中的閃光時刻,對“我的時間都去哪了”有了更具體的答案。

逝者如斯夫,不捨晝夜!在這飛馳而過的時間裡,我能做的,就是時刻警醒,常常回味。

好了,這篇文章到這裡就結束了,感謝你的閱讀,願你平安順遂。