月曜日的憂鬱

本期內容涵蓋:日本開發者寫文章的平台、Isomorphic Development、QB House 體驗、在日本工作的迷思

四零二曜日是由 Kalan 撰寫的電子報,與你聊聊科技、軟體開發、產品跟日本生活相關的大小事,也會分享我的生活與各種雜談。402 是 HTTP 狀態碼的一種,意思是 Payment required。希望內容足夠讓你覺得 payment required。

本期內容

這一期的標題是一首歌,雖然說歌詞是在講一位宅男追偶像的各種心情就是了。

日本開發者都在哪裡發表文章?

說到寫技術文章,大家在哪個平台發表呢?是自己寫部落格、用 Wordpress 還是 Medium?

在日本有幾個蠻有名的平台:

  • Qiita:以技術文章為主,算是日本最大的技術文章聚集地,遇到問題時蠻容易在上面找到解決方法。不過也因為使用者眾多的關係,有些文章的品質並沒有很好,有時會被其他開發者調侃。
  • note:算是日本版的 Medium,活躍程度很高,文章的品質因作者而異。因為 UI 操作簡單,文章可以靠平台推廣又不用自己顧金流,因此常常被創作者使用。像是分享 YouTube 經營技巧等等。
  • Hatena:運作方式跟痞客邦很像,不過體驗好很多,也不會猛塞廣告。
  • zenn:也是以技術文章為主的內容平台,UI 簡潔且有非常多開發者友善的功能。像是從 Github 上寫文章同步到平台上、打賞功能、寫書、Markdown 支援。

每個平台都有他們的特色,也因為使用者的關係凝聚出一種文化,其中我最喜歡的是 zenn,它的 UI 跟排版都很簡潔,沒有多餘的東西,就是讓你專心寫文章。還可以自己將文章撰寫成迷你書在上面發布。推薦大家要用日文寫技術文章的話可以參考參考。


QB House 心得

上個禮拜第一次去 QB House 剪頭髮,非常驚艷!分店很多,在日本各地都有。我這次是去福岡的 LaLaport 裡面的 QB House。

QB House 是日本的快剪服務。一般髮廊要 6000 ~ 7000 日幣左右,但 QB house 只要 1350。

這種破天荒的便宜,背後是怎麼運作的呢?主要有兩點:

  1. 只提供必要的服務:只有剪頭,沒有多餘的服務。剪完後會用一個真空吸頭把雜毛吸乾淨
  2. 販賣機:跟日本拉麵店一樣,首先要在店裡買票。理髮師剪完後會按順序叫人

大概 20 分鐘左右就結束了,非常適合我這種把頭髮長太快有時候不舒服想要快點剪的男生。而且,我覺得其實剪得還不錯,推薦給大家。不知道女生會不會想嘗試。


在日本工作的迷思

在推上有網友分享這篇 [心得] PTT 在日本工作受不了,想回台灣。雖然說 PTT 常常是反指標,時常會有不切實際的幻想,但我覺得在討論一個國家的求職,最優先要認知到的是,個體不等於全部

舉一個例子,聽到到日本工作,有部分人的反應是:「日本很血汗、要穿西裝、加班文化、薪水低」。每一個職種都有不同的樣貌,就以軟體工程師來說,年薪破千萬日幣的台灣人大有人在,公司也不一定需要加班,甚至不需要說日文也可以。

那這些差距是怎麼來的?這邊提供一些想法:

  • 網路上分享的經驗可能只是眾多在日工作的一小部分
  • 有很多沒有分享出來的事情,但是你不知道
  • 對方的職種、年資、經歷、個性都有可能產生影響
  • 對方在台灣的薪水。如果他在台灣的薪水是 50 萬,處於台灣薪資中位數,到日本就是 300 萬日幣,扣完稅之後負擔一定更重。你要怎麼期待他在日本有好的體驗?相反的,你在台灣是拿 120 萬的軟體工程師,屬於前 10% 族群,到日本前 10% 則是 900 萬日幣左右,你的經驗當然會跟其他在日本的人不太一樣
  • 就統計上的結果來看,領中位數薪資的人是大多數,那些不好的經驗當然也就多了
  • 傳統日商文化跟好公司會同時存在
  • 日子過得好的人,分享的機率會相對小一些。同樣是分享,好日子跟壞日子兩者曝光率差很多。你分享你在日本過很好,真心祝福你的人很少,大部分都是眼紅跟網路酸民

一旦認知到這些,你在看到網路上的故事時就更能夠把它當作故事參考。

最近 tokyodev 做了一份調查,意外地發現日文越流利的工程師,他們的薪資越少,因為不要求日文的工作往往需要更高的技術能力來彌補,所以日文相對好的人反而有可能出現技術不夠好進而薪水也變低的情形。雖然說是這樣說,但會不會日文這件事,對於在日本找工作還是天差地別。除非真的很優秀,否則日文(當然英文能力也夠更好)絕對能夠會讓你在找工作的選擇更加寬廣。


Isomorphic Development 技術專區

算是點出我長期以來的看法,就算有 React Server component,還是沒辦法忽略他的執行環境是在伺服器端的事實。當你在寫 getServerSideProps 的時候,為什麼在瀏覽器端不會看到 getServerSideProps 裡的程式碼?

背後是框架在做事,儘管把邏輯寫在同一個檔案,框架還是會把它拆分成伺服器端跟瀏覽器端。認知到兩者的差別還蠻重要的,舉例來說你可能需要考量伺服器的 Scalability,可能要做適當的監控跟日誌紀錄,需不需要另外架設專門回應元件請求的伺服器,這些都是在實際開發中你需要考量的事情。