Huli's blog

分類 · 技術白話文

首頁

關於我

文章列表

loading..
技術白話文

為什麼打開檔案時會看到亂碼?跟著小明一起從傳紙條學習編碼

一定許多人都有過這種經驗。 收到朋友傳來的檔案,點開來以後卻顯示一堆看不懂的文字,這就是俗稱的「亂碼」。從亂碼這個問題當作出發點,這篇我想帶大家以比較白話的方式去看為什麼會產生這個問題,以及這個問題該如何解決,目的是想讓沒什麼技術背景的人,也能理解「編碼」到底是什麼,以及一些重要的細節。 我們就從一個小故事開始吧,主角是好久沒出現的小明,地點是學校,時間是 2000 年,一個智慧型手機還沒流..

更多
loading..
技術白話文

為什麼零時差攻擊(zero-day)這麼可怕?為什麼要常常更新軟體?

你有被釣魚信件騙過嗎?許多人有。 舉一個例子好了,假設我知道你有在用 Facebook,於是我就寄了一封內容長得跟 Facebook 超級像的信件給你,信中寫說你的帳號已被盜用,要趕快點進連結修改密碼,這時候有些人就會真的點進去,輸入自己的舊密碼以及新密碼,而這些密碼就發送到了攻擊者的伺服器去。 如此一來,攻擊者僅僅靠著一封郵件,就拿到了受害者的密碼。許多釣魚信件都是大規模發送的,像是臉書上..

更多
loading..
技術白話文

服務對外但需要登入,能有什麼風險嗎?

在開發產品的時候,常常需要搭配各種工具作為輔助,例如說用 GitHub 管理程式碼,或者是用自己架的 GitLab。在專案管理的部分,也有些人會選擇用自己架的 JIRA 或是 Redmine,這些都很常見。 雖然這些服務通常都會有 cloud hosting 的方案,但比較常看到的是自己把服務架起來。畢竟有些是開源的專案,自己架起來省了不少成本,而有些公司的考量則是希望資料掌握在自己這邊,而..

更多
loading..
技術白話文

為什麼忘記密碼時只能重設,不把舊密碼告訴我?

(原文發佈於 Cymetrics Tech Blog:為什麼忘記密碼時只能重設,不把舊密碼告訴我?) 某天小明在整理他的我的最愛(到底誰的),發現了一個以前很常逛,但已經將近半年多沒去的一個論壇。小明想回去看看那邊變得怎麼樣了,於是點進去那個論壇,輸入了帳號密碼,得到了密碼錯誤的回覆。 嘗試了幾次之後,系統提示小明可以使用「忘記密碼」的功能,所以小明填了自己的 email 之後去信箱收信,發..

更多
loading..
技術白話文

從博物館寄物櫃理解變數儲存模型

變數是絕大多數的人在學程式的時候,第一個或是第二個會碰到的東西。變數本身的概念不難,許多書上都拿「箱子」來比喻,就是個放東西的箱子而已。可是當後續講到什麼 call by reference 還是 call by value,或者是 C 語言的指標的時候,變數這東西的難度就突然成指數型增加。 而我認為之所會這樣子,就是因為沒有把「變數的儲存模型」建立起來的關係。所以這個模型至關重要,一旦有了..

更多
loading..
技術白話文

從傳紙條輕鬆學習基本網路概念

每當提到「網路概念」這幾個字,就會想起以前上計算機概論的時候,一大堆名詞排山倒海而來,OSI 七層網路模型、TCP/IP 四層、三次握手…雖然說有個大概的感覺,但還是不知道那些理論到底在幹嘛。 一直到很後來,我看到一篇利用傳紙條來解釋 HTTPS 原理的文章,才被打通任督二脈,並且察覺到利用「傳紙條」這個很生活化的例子,可以很好地去解釋 TCP/IP、HTTP 或甚至是任..

更多
loading..
技術白話文

白話 Session 與 Cookie:從經營雜貨店開始

在 Web 開發裡面有一個歷久不衰的議題,那就是 Session 與 Cookie 的區別。從我剛開始學程式時這一題就常出現在面試考題裡,一直到現在都還是能看見這個問題。 這個問題重要嗎? 我覺得滿重要的。因為 Session 所代表的是「狀態」,如果沒有了狀態,一大堆功能都會失效。對於工程師來說必須去理解什麼是 Session,以及如何實作它,而 Cookie 就是這之中很重要的一環。 因..

更多
loading..
技術白話文

從拉麵店的販賣機理解什麼是 API

API,全名叫做 Application Programming Interface,維基百科上的中文翻譯是:「應用程式介面」。這是一個你可能聽過很多次,但從來沒有理解過的東西,常常聽到工程師說著:「串 API」,但還是不知道 API 到底是什麼。 我原本以為在網路上有關 API 的參考資料已經有很多了,應該可以讓初學者理解什麼是 API。但根據我學生們的心得,好像還是有點困難,只好自己跳下來..

更多
loading..
技術白話文

零基礎的小明要如何成為前端工程師?

如果你是個毫無基礎又想要轉職成前端工程師的迷惘初學者,你腦中浮現的第一個問題有八成會是這個。接下來你會做什麼?你大概會用:「如何成為前端工程師」、「前端 入門」、「前端 轉職」、「前端 非本科」等等的關鍵字來搜尋,然後呢? 然後我希望你能搜尋到我這一篇,讓我來好好告訴你。 有鑒於上一篇(如果你還沒看過的話:跟著小明一起搞懂技術名詞:MVC、SPA 與 SSR)的反應出乎意料的好,因此這次還是由..

更多
loading..
技術白話文

跟著小明一起搞懂技術名詞:MVC、SPA 與 SSR

這篇的靈感來自於 Front-End Developers Taiwan 裡面的一串討論,有人 po 了一個影片是來討論「MVC vs SPA」,這個標題一出來大家都驚呆了,想說怎麼會有這樣的比較,於是下面掀起一波激烈的討論,最後發現原 po 誤用了專有名詞,才導致這樣的結果。 雖然說很多技術名詞本來就是一個名詞各自表述,但基本概念通常都不會相差太遠,只有在細節上會有些許的爭議以及討論而已。 ..

更多