本篇文章僅為表達自身觀點與想法,對於同行業人員沒有任何批判之意。我認為目前前端領域(此處指網頁開發)逐漸趨於成熟,前端框架採用元件化的中心思想與響應式機制,搭配框架特有的語法、開發手法與哲學,可以應付大部分的使用場景。
心智模型是指我們如何預期事物的發展,或是事物會如何運作的認知過程。聽起來有點學術,舉例來說當我們在畫面上看到一個按鈕的 UI 時,我們會預期這個 UI 是可以點擊的,點擊之後可能會發生一連串的事件。因此當使用者發現這個 UI 不如預期時它會感到困惑。
趁著這個機會試試看鍵盤界的最高峰,同時也是工程師界許多人夢寐以求的鍵盤 - HHKB,購入後使用到現在非常滿意,在這邊分享給大家。這篇除了 HHKB 的心得還會同時介紹無接點靜電容鍵盤的原理。
對於軟體工程師來說,日本特殊的文化、環境、薪水並非首選,不少到日本工作的軟體工程師也都是單純喜歡日本才會到日本工作。因此這邊不討論薪水跟日商文化,單純就日本社會的現況點出我目前最擔心的事情。
我們常說要傾聽基層人員的聲音,因為他們才是真正在做事的人,在開發上也一樣。 不過成為 Tech Lead 除了了解程式碼本身之外,更重要的是必須要對整個專案有通盤性的了解,以下列出幾個我覺得很重要的地方。
在這次的專案開發當中,以往純靜態的 Landing Page 頁面,企劃端有了想要 call API 拿資料動態更新的需求,再加上頁面的互動越來越多,原本 pug+webpack+jQuery 的純靜態頁面不敷使用,我們在新版本的開發中導入了 next.js。並開始了架 Server 踩坑之旅
Google Chrome 89 推出了 Web Serial API 讓外接設備透過瀏覽器 API 直接互動,包含 USB 設備或是有 Serial 介面的藍牙設備。這樣一來瀏覽器就能與硬體直接溝通。
表單在網頁中是相當常見的應用,不只能夠傳輸純文字,也能夠達到檔案上傳的功能。不過也因為 form 的行為跟其他傳輸方式較為不同,有時候也產生疑惑與誤解。 這篇文章試著從閱讀規範理解來龍去脈後,深入理解 form 背後到底做了哪些事情,以及表單與其他傳輸方式的不同之處,最後再提及 HTML 的 form 標籤背後做了哪些事情。
最近兩天心臟的位置一直有著違和感,只要過幾分鐘就有一種心臟被掐住的感覺。不會痛,也沒有其他異常狀況。原本想說只是暫時性的而已,但因為持續了一天多都沒有改善,而且畢竟是心臟,還是決定去看醫生。
從 Svelte 的核心理念可以得知,Svelte 希望從編譯過程中盡可能地獲取必要資訊,減少在動態的 overhead。上一篇文章中說明了 Svelte 從編譯到生成程式碼是如何運作的,今天要來觀察一下 Svelte 生成的程式碼是怎麼運作的。
為了生成最後的程式碼,Svelte 必須將元件編譯一次獲取必要資訊,Svelte 的編譯過程到生成程式碼主要會通過幾個階段,在本篇文章會一一介紹
這一系列的文章以探討 Svelte 原理實作為主,希望能讓讀者對於 Svelte 的編譯機制與程式碼生成有更深入的理解。由於 Svelte 編譯過程涉及程式碼解析,因此這一篇文章主要會先討論抽象語法樹是什麼,並進一步說明抽象語法樹扮演的角色與重要性。
Turbolinks 是一個 JavaScript 套件,通常會搭配 Ruby on Rails 一起使用(單獨當作函式庫使用也可以),主要是透過 fetch HTML 直接抽換的方式來避免直接換頁要重新發送請求、CSS 的成本。其實說「不需要使用 JavaScript」不完全正確,JavaScript 還是在,只是在函式庫那邊已經幫你處理好,所以開發上可以不用寫 JavaScript 而已。
2020 年是個混亂的一年,同時也是讓我重新思考電腦本質的一年。在這一年我做了很多非自己擅長領域的嘗試,基本上都圍繞著一個主題:重新認識底層。 我在高中是念電子科的,在升學為主流的時代,雖然有實習課,但更多的感覺是按表操課,然後大部分的時間都在唸書解題。唯一慶幸的是課業並不像一般高中繁重,不然我可能也考不上台科。
linaria 是一個強調沒有 runtime 的 css-in-js 的函式庫,可以用與 styled-components 類似的語法,但是在編譯時期生成 CSS,進而減少動態修改樣式的 overhead
這篇文章原文是以日文撰寫,不過裡頭有很多我在工作上有共鳴,甚至是可以學習的地方,因此決定在這邊做簡單的引用與自己的心得。這位作者 36 歲,原本還是工程師的他也接下了管理職的職位,原因是因為年紀大了,同時也逐漸失去了對技術的熱情,然後剛好上司說「你就來當當看吧」,薪水也漲了,所以就順勢接下管理職位。 作者很有趣地說「不過有些問題,我最討厭人了,如果可以的話我喜歡一個人,原本好好地幹嘛去管人呢?」,反正也不用管業績,也有薪水可以拿,就好好做吧。
前幾個月剛好是大型功能上線的時間。再接續另外一個專案之前並沒有什麼太大的開發,主要就是修一些小 bug 以及將現有的功能做改善。也因為開發上沒有那麼緊湊,所以這一季有更多的時間可以專注在改善流程上。
在瀏覽器爬取網頁的時候,爬蟲會將網頁的 HTML 內容爬過後產生內容,也會作一份快取在資料庫當中並且定時更新。也就是說如果沒有實作 SSR 的話,那麼 html 檔案本身會是一片空白,需要等到 JavaScript 被解析且執行後才能看到實際頁面
Vue 作者尤雨溪最近提出了一個 RFC,是關於 ref 宣告的語法中可以用 JavaScript 的 label statement 來進一步做簡化。這個語法跟 Svelte 如出一徹,在這邊紀錄一下自己的想法。
時常看到某些被奉為社群大神的人,影片、文章點進去一看發現錯誤百出的時候,難免心裡會覺得怪怪的,怪的是怎麼大神的位置都是這些人在坐,一方面是大家難道都不看細節只看這個人是否在神壇裡頭嗎?這個人有擺在神壇裡,哦哦哦哦先拜這樣?
最近用 Kotlin 開發了一個管理日常任務的小工具,主要是希望 Backend 的同事們也能一起維護,另外則是學習新語言總是可以得到一些新的激盪與想法,還有公司裡頭很多 Java 跟 JVM 大神趁機挖寶。
Svelte 是我相當喜歡的前端框架之一,簡單的語法與彈性,作者的理念,還有各種動畫、過場的使用方式都讓我相當喜歡,之前也有寫過幾篇關於自己對 Svelte 的看法。這次 Svelte Summit 在 2020 年 10 月 18 日舉行,因為疫情的關係是以全程線上直播的形式播出,總共 7 個小時與 17 個演講。在這邊紀錄一些我覺得有趣的演講與自己的心得。
在一般顯示貨幣的時候通常會有一個需求,是將原數字轉成人類比較好看懂的格式,在前端當中我們可以用幾種方式達到,像是 Intl.NumberFormat 或是正規表達式等。
React 17 的發布沒有重大更新或是任何新功能,不過 useEffect 的 clean up 執行時機悄悄改變了。本篇文章不會一一解說每個更新,而是紀錄文章中比較值得關注的地方。
我在大學、甚至到了當兵之前都還沒有健身過,除了印象中健身房的費用很貴之外,也時常覺得在健身房裡面跟巨巨們一起健身很羞恥、很丟臉,會不會被偷偷嘲笑。因此儘管在前一份工作中有健身補助可以申請,卻從來都沒有使用過。
很多人對於直播這個產業一知半解,覺得是低學歷或是傳播妹才會從事的職業。其實直播產業進化到現在也已經有獨特的生態圈,也跟剛起步時的種種亂象有很多差別。不僅在控管上會更加嚴格,直播的類型也越來越豐富了。
對於軟體工程師來說,日本特殊的文化、環境、薪水並非首選,不少到日本工作的軟體工程師也都是單純喜歡日本才會到日本工作。因此這邊不討論薪水跟日商文化,單純就日本社會的現況點出我目前最擔心的事情。