《每週工作四小時》書評

在這篇文章中,我整理了我從《每週工作四小時》這本書中學到的關鍵概念。我加入了一些我個人的觀察和經驗,並快樂地忽略了對我無關的事情。 我會推薦這本書嗎? 是的 書評分數 5/5 市面上有很多好書,《每週工作四小時》是對我影響最大的其中一本書籍。 我記得那應該是在2008年的時候,我在度假的路上從一家沿路的商店買了這本書。十年後我仍然保留著它。每週工作四小時絕對是個吸引人的標題! 當時我是自由工作者,駕駛著我的舊房車,在路上工作,連續1-2個月的旅程。儘管我擁有所有的自由,但我對現狀並不滿意:即使我有所有的自由,我仍然必須為生計而努力工作,作為一名自由工作者,我用我的時間換錢。 必須有更多,而《每週工作四小時》這本書就像一個磁鐵吸引著我。 首先,讓我們明確一件事,這個標題有點誤導。其意思是,花四小時一周在必要和繁瑣的事情上工作,花剩下的時間在你喜歡做的事情上工作。不要把你的一生都花在像機器中的一個齒輪那樣工作,為別人。 這本書敦促你從一個生活方式轉變為另一個生活方式,在那裡你在學校接受教育,獲得好成績,好成績使你能夠進入更好的學校,以後,你會接受一些讓你成為齒輪的系統和觀念的指導。 重要的不是你離開學校後的水平如何,學校是塑造你和讓你能夠適應工作體系的系統的一部分。 你不是被生下來就去適應,而是被培養出來的。 你可能認為“聖杯”就是為自己工作,做自己的老闆,想幾時就幾時,早日退休,買所有你想要的東西,賺很多錢。 “早日退休”這件事特別有趣。我看到很多人試圖存錢,花很少,努力工作,希望在五年內退休。 結果可能只發現退休後無聊死了。 找到你熱愛的工作,花一生去做它並避免燒壞,定期休息2個月出去旅行或者隨意在森林裡閒逛,是不是更好? 傳統的辦公室工作要求人們每天在桌前待上8個小時以上。即使他們在2個小時內完成了一天的工作,他們仍然不能離開並回家。你知道有人將一半的上班時間浪費在臉書或者Reddit上嗎?我就認識這樣的人。 人們可能會以他們工作的時間為榮,但也許他們只是有30%的工作效率。 如果你專注於提高工作效率,而且你的工作給予你想要的自由,你可以在4小時內完成工作然後回家,或者做你喜歡的事情。 要承擔責任。如果你總是對一切事情徵求許可,你永遠不會成長。獲得控制,變得更有價值。 如果你的工作並不給你這些自由,從今天開始努力朝著留下這份工作的一天並轉換工作。 你不需要安於現狀。挑戰現狀。如果你的工作很無聊,並且沒有給你正確的動力,你確定你想花30-40年每天都這麼做嗎? 有一份能讓你滿意並且有自由去追求其他夢想的工作是否更好? 聰明地管理你的時間 有些人如何在和我們一樣的一天內取得這麼多成就?這些人如何在一天內保持高效率,充滿活力,做他們必須做的工作,同時為未來鋪路? 他們並不是工作的時間比你多,他們只是比你更有效率地工作。 你在網上讀報紙嗎?參與討論區?一整天都在聊天室嗎?安裝一個像RescueTime這樣的工具,特別注意你最浪費時間的地方。將這些網站添加到類似SelfControl這樣的阻擋器,如果你是手機控的話,也可以在手機上做同樣的設定。 工作時,在你的手機上關閉數據。 從今天開始便開始限制資訊攝入。停止閱讀報紙,不要再看電視新聞。沒有什麼理由讓你在意、分散你的注意力。如果發生了什麼大事,你終究會知道,因為每個人都會談論它。世界的另一端發生了一場地震,你是否真的需要知道? 培養選擇性無知。你不需要成為所有事情的專家。專注於你應該知道的事情,並在這方面成為最好的人。其他的事情可以等待,或者可能永遠被忽視。少即是多。你不需要知道計算機如何內部運作,只需要能夠用它創造出很棒的東西。 消除所有分散注意力的來源後,你終將擁有大量時間來做更重要的事情。 電子郵件。關閉郵件客戶端。關閉郵件通知。將郵件處理批次化,每天處理郵件2次,最好在下午一次。起床時不檢查郵件。這是一個好習慣,專注於需要完成的工作。打開郵件客戶端,你將讓別人的日程安排主導你的一天。當你讀到一封需要採取行動的郵件時,你會一直在背心裡考慮它,直到你完成它。 刪除浪費你時間的郵件時要毫不留情。除了那些你想幫助的人以外,你不欠任何人你的時間。 合併你的時間,你會發現一次處理所有郵件比在你深入進行其他任務時被打斷要更省時間。 專注,你的工作會做得更好。 更高效地工作 現在的人們只是假設你必須在9點到5點工作,因為有人這樣告訴過他們,這只是一個慣例。但是如果我們遵循80/20原則(帕雷托法則),你的80%工作可以在20%的時間內完成。 與其在8小時內完成你應該做的100%工作,不如在2小時內完成80%的工作。 根據帕金森定律,你可以假設你可以在2小時甚至更短的時間內完成100%的工作。工作的時間會隨著可以完成的時間而擴展。我們說我們要工作8小時,那就是我們要做的!即使這意味著工作時上Reddit。 專注於變得更高效,做能使你更接近目標的事情。 你今天最重要的活動是什麼?專注於那個。忽略其他10個次要的事情,專注於核心任務。 自動化一切可以自動化的事情 擁有世界上所有的自由的目標就是擁有一個自動化的收入生成系統,它可以在沒有人參與的情況下運作。 找到一個好的利基並創建一個產品超出了我想要在這裡強調的範圍,但是在某個時候,如果你找到了合適的事情去做,你會發現在這些可以被委派的任務中花費了大量的時間。 基本上你可以委派給兩件事情:你可以使用技術並建立(或讓某人建立)一個自動化系統來替你工作,或者你可以雇傭一個人,一個虛擬助理。 作為一名開發人員,我更傾向於第一個選項,目前我喜歡完成需要人工干預的小任務,比如回答郵件。我可以看到在將來有一個虛擬助理的選項,但不是現在。 我將告訴你我的業務目前是如何自動化的:在隨機的一天,我早上早起並寫一篇博客文章(一個編程教程)。通常是一篇“快速”博客文章,可能回答了一個具體的問題,十點前完成。 之後,我將在下午寫一篇新的博文,這次是一篇更長的博文。 這兩篇博文完成後,它們被標記為未來的日期,並推送到GitHub。這就是我保持業務運行所需做的一切。 每天在中歐時間的早上8點和下午4點,這些博文將根據我所建立的系統發佈到博客。我可以提前準備好這些博文並抽出一個週(甚至是一個月!)不看屏幕,而博客仍然可以自動運行,每天發布2篇博文。 如果我因某種原因不能寫作,我已經準備好了一系列待發表的博文。 每次我發布一篇新的教程時,我的IFTTT機器人會將其發佈到Twitter上。 此外,還有另一個機器人在我睡覺時在Twitter上發佈我的兩篇舊教程,為我在世界其他地方的粉絲提供服務。這是一個自動化系統,遍歷我每個月寫的新文章列表。 這就是自動化的範圍。我仍然直接做很多工作,包括外展,推廣和創建更深入培訓計劃,如電子書和課程。 自動化可以為你節省很多時間。它也使你能夠做什麼蒂姆所說的迷你退休:幾個月的長假和旅行,做你想做的任何事情。 這是整本書的關鍵。當問到他們如果成為百萬富翁,他們會做什麼,人們經常想像自己在沙灘上待一個月。你不必成為百萬富翁才能做到這一點。退一步,不必先退休。 但在此之前,你的業務需要以一種可以在沒有你的情況下繼續運作的方式進行設置。 結語 《每週工作四小時》是一本了不起的書,創造了歷史。有這麼多人為之所動,你可以聽到它在商業播客中多次被提到-人們發現了另一個世界,並讓一切都成為可能。 如果你還沒有讀過這本書,那絕對是一本必讀的書,即使它已經超過10年,某些實用建議可能不再適用-它的許多概念將永遠不會過時。

「我不是專家」

每一位開發人員都應該擁有一個部落格。以下是為什麼以及如何堅持下去的原因。 部落格有許多用途。它可以成為潛在客戶的來源,也可以是未來你可能賣出自己產品的地方,如果你想成為獨立開發者的話,或者它只是一個你有聽眾並表達自己想法的地方。 我已經寫部落格超過11年了,多多少少都保持一致-雖然有時候我停止太久。最近我重新設計了部落格,開始堅持寫文章-非常堅持-以至於我現在每天都寫。我已經見識到了很多好的成果。 我找到了幫助開發人員學習前端開發的使命:我在我的部落格上每天發布教程,解釋我對特定主題的所有了解。 以下是我對撰寫部落格的想法,以及為什麼我認為每個開發人員都應該撰寫部落格並持之以恆的原因。 一些我希望你忘記的事情 「我不是專家」 每個人都有獨特的角度,對某些事情有自己的觀點,值得分享。你可能認為自己不知道像某某人那麼多,但對於比你經驗更少的人來說,閱讀你的想法和學習是有益的。 而且,最好教授別人的時間是在你剛學會的時候,因為你還記得不知道時的感覺。 在這種情況下,你可以用學習者的口吻寫部落格,就像剛學會了什麼一樣。我每天都在學習新的東西。我寫的文章中,有大約50%是在研究某個主題時才剛剛學到的。 「我不是一個好作家」 我也不是,但我不在乎。 請記住:除非你每天實踐寫作多年,否則你永遠不會成為一個好作家。最終你會成為一位出色的作家。 「我害怕批評」 確實,在網路上有一些地方不怕對事物發表尖銳的意見,特別是 Reddit 和 Hacker News— 但這是好事。 記住,如果你不受挑戰的話,你就不會成長。而且,如果你不想,你並不需要在那裡發文。如果你擔心在一個具有爭議性的帖子上有人發表粗魯評論的話,可以直接禁止評論。 為什麼寫作對開發人員很棒 你學得更快 我最好的學習方法之一就是實際動手去做。我通常選擇我認為自己對某個主題有所了解的東西,然後通過無窮迴圈的方式,逐漸深入我所不知道的、或者我從未想過的東西。 他們說,直到你能夠解釋一個主題,你永遠不會完全理解它。寫部落格是一種低成本的解釋事物的方法。 開啟你的職業生涯 我通過寫部落格開啟了我的軟體職業生涯。 那是在2007年,當時我正開始分享一些我在大學課程中構建的網絡應用程序時所學到的一些小東西。 通過這個部落格,我為未來的自由職業者和承包商生涯獲得了很多連結和商機。 那個舊部落格現在已經被淘汰了 - 我很久以前就停止撰寫了,內容現在已經完全過時。但如果沒有它,我想我從來沒有想到大學畢業後就開設自己的業務。 切換方向或技術堆棧 我在我的部落格文章中做過幾次這樣的事情。如果我對一種技術堆棧感興趣,並且發現我對其他事情感興趣,我會寫幾篇關於它的文章。 例如,去年夏天我深入研究了兩個月的 Go 編程。而我真的有在線上分享我的文章,然後有招聘人員向我發送了我從未申請過的工作機會。 成功的技術部落格的一些關鍵方面 在主題上保持一致 我從不訂閱不專注某個主題的部落格的訂閱。在我的情況下,我談論前端開發,因此我會訂閱其他的前端開發部落格。 即使我去年夏天談了很多關於 Go 的事情,這對前端開發者來說仍然很有趣(如果有機會,一定要學習一下 Go,它很讓人耳目一新)。不要只是胡說八道。保持專業。 保持一致,不間斷 如果你打算每週寫一篇部落格文章,就要做到。如果能每週寫兩篇,那就更好了。我每天寫,因為我知道如果我讓某一天放鬆,我會直到不再發文。 預先寫文章 不要在發布當天才寫文章。最好提前一周或更早寫。這樣即使你休息幾天,或者生病,也不太可能錯過發布文章的日子。 提前發佈也是個好主意。WordPress非常容易實現,使用靜態部落格也可以(這是我用 Netlify 和 Hugo 的方法)。定時、定點地撰寫文章。 擁有一個文章創意清單 James Altucher 每天說要寫下10個創意。這一年至少會有3,650個創意。至少其中一些是好主意。 對於部落格文章的標題和主題也是一樣。保持一個部落格中的文章創作清單。當你有靈感時,你就會有適合當天的論點。 閱讀書籍、部落格文章、Twitter. 听播客 讓自己對你想寫的主題保持最新。我寫軟體開發的文章,Twitter 是我找到很多很好主題的不竭來源。書籍和部落格也是一樣。Medium 很棒。 播客則不同,因為你是在聽,我在開車時或者我花半天帶狗在大自然中散步時總是聽著播客。 早起 設定鬧鐘,真的起床,開始寫作。我過去常常早上8點起床-因為我從不需要上班(我只在遠程工作),可以比較輕松。現在我早上6點起床,到了8點我就有下週安排好的新文章。當你在早上8點前完成了一個任務,比如說創作了一篇新的部落格文章,你會感到充滿能量,準備面對剩餘的一天。如果可以的話,早點起床(我不能,否則整天都會處於殭屍狀態)。 阻擋干擾 在病案筆記上進行網路上的研究時,很容易跳到分散注意力的地方。我在Mac上使用 SelfControl 封鎖它們。...

`npm run dev` 是一個長時間執行的程式

我收到了這個問題: 每次運行 npm run dev時,我得到的本地主機端口都不一樣。一開始是 3000,然後再次運行又得到了 3001,再次運行又得到了 3002。我們怎麼強制它使用 3000 端口? 在本地開發網站時,你可以使用 npm run dev 命令來啟動開發伺服器。 這是 Web 開發 中的常見做法,所有工具似乎都會使用這個程式,例如 Astro 和 Next.js 等等。 每次運行這個命令時,它都是一個長時間執行的進程,不會自動結束。 例如你運行 Astro 的開發伺服器,它會在 3000 端口上監聽: 然後你打開另一個終端,再次運行 npm run dev,這次它會在 3001 端口上運行: 現在你的應用程式同時在以下兩個地址上運行: http://localhost:3000 和 http://localhost:3001 你需要在終端中使用 ctrl-c 結束這兩個進程,以確保 3000 端口不被佔用,且在你嘗試打開 http://localhost:3000 時瀏覽器中不會顯示任何內容。 然後你可以再次運行 npm run dev,它會自動在空閒的 3000 端口上啟動。 每當你對項目進行更改(例如因為需要 npm install 某個套件),你需要使用 ctrl-c 結束開發伺服器,然後重新啟動它。

`Secure`

學習HTTP Cookies的工作原理 Cookies是Web的基本組成部分,因為它們允許會話和在導航期間識別用戶 介紹 Cookies的限制 設置Cookies 設置cookie的到期日期 設置cookie的路徑 設置cookie的域 Cookie安全 Secure HttpOnly SameSite 更新cookie的值或參數 刪除cookie 訪問cookie的值 檢查cookie是否存在 抽象庫 在服務器端使用cookie 使用瀏覽器開發工具檢查cookie Chrome Firefox Safari 替代方案 介紹 通過使用Cookies,我們可以在服務器和瀏覽器之間交換信息,以提供一種自定義用戶會話的方式,以及讓服務器在請求之間識別用戶 HTTP是無狀態的,這意味著所有發往服務器的請求都完全相同,服務器無法確定請求是來自之前已經發出請求的客戶端,還是新的客戶端 瀏覽器在開始HTTP請求時將Cookie發送到服務器,而服務器可以將其發送回來並編輯其內容 Cookies主要用於存儲會話ID。 過去,Cookies用於存儲各種類型的數據,因為當時沒有替代方案。但現在,通過Web存儲API(本地存儲和會話存儲)和IndexedDB,我們有更好的替代方案。 特別是因為Cookies對其可以保存的數據有著非常低的限制,因為它們在每次對服務器的HTTP請求(包括對圖片或CSS / JavaScript文件等資源的請求)都需要來回發送。 Cookies有很長的歷史,它們的第一個版本是在1994年,隨著時間的推移,它們在多個RFC修訂中進行了標準化。 RFC代表“請求評論”,是Internet Engineering Task Force (IETF)定義標準的方式,該組織負責設定網絡的標準 最新的Cookie規範在2011年定義在RFC 6265中。 Cookies的限制 Cookies只能存儲4KB的數據 Cookies是特定域的私有,一個網站只能讀取其自己設置的Cookie,不能讀取其他域的Cookie 每個域名下的Cookies數量受限制(但具體數量取決於特定瀏覽器的實現) Cookies的總數量也受限制(但具體數量取決於特定瀏覽器的實現)。如果超過這個數量,新的Cookies將替換舊的Cookies。 Cookies可以在服務器端或客戶端設置或讀取。 在客戶端,通過文檔對象document object公開Cookies,例如document.cookie 設置Cookies 最簡單的例子是設置一個Cookie: document.cookie = 'name=Flavio' 這將在已有的Cookie上添加一個新的Cookie(不會覆蓋現有的Cookie) Cookie的值應該使用encodeURIComponent()進行URL編碼,以確保它不包含任何空格、逗號或分號,這些在Cookie值中是無效的。 設置cookie的到期日期 如果您沒有設置其他內容,該cookie將在瀏覽器關閉時過期。為了防止這種情況,可以添加一個到期日期,以UTC格式表示(Mon, 26 Mar 2018 17:04:05 UTC) document.cookie = 'name=Flavio; expires=Mon, 26 Mar 2018 17:04:05 UTC' 設置一個在24小時內到期的cookie的簡單JavaScript片段如下:...

2020年成為Vue.js開發者的路線圖

這是我根據能使你成為一位熟練的Vue.js開發者所需的技術所製作的圖表。 我在網上找到了一份React開發者路線圖,於是我決定為Vue創建一份。 要成為一位熟練的Vue.js開發者,你需要學習以下知識: 網絡的基本工作原理 HTML,CSS DOM 瀏覽器工作原理 JavaScript的基礎知識,事件處理,最新的ES6-7-8功能 Git 如何使用終端機 Vue基礎知識 webpack 使用npm或yarn安裝包 如何使用npm腳本運行任務 CSS現代工具:SASS,PostCSS 像Tailwind或Bootstrap等CSS框架 如何使用單文件組件中的CSS 如何使用組件狀態或vuex和其相關庫來管理狀態 如何使用prop types或TypeScript檢查類型 如何使用vue-router處理路由 如何使用axios或fetch消耗GraphQL/Apollo/REST API 使用像lodash或moment這樣的實用程序庫 使用Jest和Vue Test Utils進行測試 如何使用Cypress或Puppeteer等進行端到端測試 如何使用Electron構建桌面Vue應用程序 如何使用vue-i18n國際化應用程序 如何實現服務器端渲染 這個清單可以無限增長,但這些是一位熟練的Vue開發者所需的基礎知識 😇

2020年應該使用或學習jQuery嗎?

使用還是不使用?學習還是不學習?讓我們看看如何完全避免使用jQuery,以及保留使用它的原因。 無論你在JavaScript框架和庫方面有什麼偏好,jQuery在JavaScript生態系統中發揮了重要作用。 幾年前它更受歡迎,現在一些jQuery的需求已經被現代瀏覽器替代(幸運的是!),但這個JavaScript庫仍然被許多人使用。 為什麼jQuery一開始會變得如此受歡迎?首先,jQuery誕生於JavaScript應用程序還不是主流的年代。在2000年代初至中期,JavaScript主要用於賦予網頁中出現的幻燈片和其他小工具(如圖片庫、日期選擇器等)功能。如果過於複雜,JavaScript很難進行許多操作(當然,電腦當時也更慢)。 值得一提的是,jQuery並不是唯一的或第一個庫。那個時候其他庫也非常受歡迎,比如Mootools、YUI、Dojo Toolkit、Scriptaculous和Prototype。jQuery後來可能成為了那些庫中最著名的。 當時的瀏覽器存在許多互操作性問題。我們遇到了很多跨瀏覽器的怪異行為和標準化問題,而jQuery通過創建一個抽象層並處理所有解決方案來幫助我們。 jQuery允許你使用CSS選擇器語法來選擇DOM元素,它非常用戶友好且易於擴展。它使JavaScript動畫變得簡單。 同時,它還簡化了使用AJAX(及其跨瀏覽器差異)的操作,這在時下非常流行的術語中也為jQuery帶來了一定的知名度。 如今,我們已經沒有太多的瀏覽器兼容性問題了,Selectors API和Fetch使瀏覽器標準化了jQuery的兩個最佳功能。 jQuery肯定是一個充滿爭議的主題。有些人說jQuery是過時的遺物,有些人仍然每天使用它。有些人花時間撰寫「為什麼我們不需要jQuery」的文章。 在過去幾年中,它的使用率確實有所下降: 如今,JavaScript的面貌已經截然不同。但是,了解jQuery的用途仍然是有用的。 曾經使用jQuery的功能現在已經有了標準化的瀏覽器API 選擇DOM元素 jQuery的用法: $('.button') 現在我們可以使用Selectors API: document.querySelector('.button') 如果需要多個元素: document.querySelectorAll('.button') 等待DOM加載完成 jQuery的用法: $(document).ready(() => { //... }) DOM的做法: document.addEventListener("DOMContentLoaded", () => { //... }) 為DOM元素添加或移除類 jQuery的用法: el.addClass('big') el.removeClass('big') el.toggleClass('big') DOM的做法: el.classList.add('big') el.classList.remove('big') el.classList.toggle('big') 從DOM中移除元素 jQuery的用法: el.remove() DOM的做法: el.remove() (是的,沒有變化) 更改DOM元素的內容 jQuery的用法: el.text('Hello') el.html('Hello') el.text() el.html() DOM的做法: el.innerHTML = 'Hello' el.textContent = 'Hello' el.innerHTML el.textContent 選擇DOM元素的父元素 jQuery的用法: el.parent() DOM的做法:...

2021 MacBook Pro 14\"評論

我已經使用了MacBook Pro 14"幾週了,我想寫一篇小評論。 簡而言之,它非常棒。 這是一台14吋的M1 Max MacBook Pro。 我從來沒有用過這麼強大的電腦。 我一直使用入門級的電腦,對我來說,將規格升級到最高以獲得最強大的移動Mac是一個很好的起點。 也許我再也不會這樣做了,誰知道呢。但在我的職業生涯中,我有機會投資一台機器,這台機器將來可以幫助我更好地完成工作。 我也需要花錢。如果你有一個生意,在現代西方社會,你需要花錢,否則你基本上就是將那筆錢支付給政府作為稅款。 如果你用自己的錢購買,你用的是已經徵稅的錢。如果你用企業資金購買,你用的是未徵稅的(尚未徵稅)錢,你不需要支付22%的增值稅(…)而且你可以從你需要繳稅的總額中減去這筆費用。 簡而言之,一台2000歐元的電腦最終花費大約1000歐元。 每次購買時,我都容易後悔,但這一次我沒有後悔任何事情。這是一台絕對強大的機器。 我選擇了10核心CPU和32核心GPU,以及64GB的內存版本。這台電腦將可以使用很長一段時間。 我喜歡它的哪些方面?我的觀察當然受到我過去使用的三台Mac的影響:一台2010年的13吋MacBook Pro、一台2018年的13吋MacBook Air和一台2019年的16吋MacBook Pro。 比我以前的2019年16吋MacBook Pro更便攜,更輕。非常便攜。我將隨時攜帶這台厚厚的Mac。 比MacBook Air更厚重,但更強大。 讓我想起2010年的MacBook Pro,這台電腦陪伴我度過了9年,並升級了一些內存和SSD(在過去的好多年裡,我們可以升級Mac筆記本電腦)。 與我的2019年MacBook Pro相比,視頻編輯絕對讓人驚訝並且速度超快。 它不會變得熱,不像我2019年的MacBook Pro和2010年的MacBook Pro。它保持超級涼爽。 電池可以運行很多個小時。真不敢相信。2019年的MacBook Pro電池最多只能持續3個小時? 相較於16吋MacBook Pro,我將更頻繁地攜帶它。它可以更輕鬆地放入我的背包,並且不會像磚頭一樣重。 在90%的情況下,我只會注意到電池續航能力更長,鍵盤散熱量更少。這已經很大了。 但對我來說,主要的區別在於視頻編輯。作為"內容創作者"在"創作者經濟"中,這台機器是一個競爭優勢。我不喜歡做視頻編輯,所以如果工具阻礙我,我會變得很緊張。另一方面,如果工具讓事情變得容易,我能夠更快速、更開心地工作。

2022年成為網頁開發者的路線圖

網頁開發一直在不斷演進,每年一月,我都喜歡停下腳步重新評估並觀察這個生態系統。 問題是:2022年初學者應該從哪裡開始學習,才能學到能找到工作的技能呢? 地圖有變嗎?與去年有不同嗎? 變革似乎需要很長的時間,但它們可以很微妙,有時候從一年到另一年事情會徹底變化,你甚至都意識不到。 因此,我開始撰寫這篇文章,指導您如何在網頁開發領域中導航。 對於想要跟上生態系統並保持相關性的開發人員來說,這也是很有用的。有什麼新東西你一定要學嗎? 讓我們開始吧。 先說一下,這是一個高度主觀的路線圖。這不是一個列出了1000種不同技術的路線圖,然後就讓你淚流滿面地愁眉苦臉。 讓我為您挑選最好的技術,相信我,這樣您就可以停止無休止的分析,並繼續前進。 在網頁開發中,我們有3條路線: 前端開發人員 後端開發人員 全棧開發人員 這些角色之間的界線有點模糊。在這篇文章中,我將聚焦於全棧開發人員,這是我最喜歡的專業化領域——在這個領域中,您不需要專攻前端或後端,而是能夠創建出所有展示出來的內容。 積極忽略 首先,讓我們從我們將忽略的內容開始。 在這個路線圖中,我將忽略像UI/UX工程師、可訪問性和其他重要主題這樣更專業的範疇。這些完全是不同的職業,有自己獨特的學習路徑。 您不可能從一開始就假設您需要學習所有東西。 積極排除。 我們將忽略使用Web技術進行移動開發。那是一個完全不同的領域。我們還將忽略一切不屬於網頁開發的趨勢,而是不同類型的開發專業化,比如AI、數據科學、web3等等。 深入研究5個核心技術 我建議深入研究一組核心的5個技術: HTML CSS JavaScript React Next.js 這些5個技術按順序是您需要掌握的5個東西。 您可以用一只手數清楚。 其中3個是基礎。HTML、CSS、JavaScript。您無法避免它們。這些是我們的工具。 HTML定義了內容 CSS定義了我們希望內容呈現的樣子 JavaScript定義了行為 React是我在這裡的首個選擇。 React是一種簡化創建用戶界面的技術。 它以許多不同的方式讓我們的生活更輕鬆。 HTML、CSS和JavaScript沒有其他替代品,但您可以選擇使用其他東西,比如Svelte、Vue、Angular,但我選擇了React。 但是React非常流行,它有一個悠久的歷史和遺產,使它成為事實上的標準。它被使用得如此廣泛,以至於您可以找到一切,每個庫,大量的教程和課程,需要幫助時也不用擔心。 您可以賭一個替代品,但您還可以看看工作市場和React帶來的機會,並選擇它。 現在我們需要最後一個組件。一個網絡應用程序框架。 我們選擇了React,所以我們需要選擇一個與React配合的網絡應用程序框架。 在React和HTML/CSS/JavaScript三者之上,我選擇了Next.js,它可以讓React-based網站和應用程序的服務和前端無縫集成。 所以,我們共同使用的3個核心技術是HTML/CSS/JavaScript,最上面的是非常流行的UI庫React,再加上一個非常流行的框架Next.js。 現在還有更多的東西可以添加到這5個選擇中,但您需要從某個地方開始。 通過這5個選擇,您已經排除了很多其他可能分散注意力、讓您在成為網頁開發者的道路上分心的東西。 讓我再強調一下這個排除。至少在開始時忽略TypeScript。我知道你會一直聽到它,但它對你的旅程並不重要,你可以在未來的任何時候添加它。 JavaScript讓事情變得簡單得多,這對於保持動力至關重要。 從HTML和CSS開始 此時,開始學習並進行實驗。學習HTML,創建網頁。閱讀我的[HTML手冊](https://flaviocopes.com/page/html-handbook/)。多做練習。Codepen是一個很好的工具。 只是不要被“我使用CSS完成了這個”吸引住,有些人用CSS做了一些不可能的事情。我不知道他們是怎麼做到的,這是藝術(如果您喜歡,那很好,但在我們的旅程中不是很有用)。 至於CSS,學習基礎知識。閱讀我的[CSS手冊](https://flaviocopes.com/page/css-handbook/)。並立即開始學習Tailwind,這是一種非常實用且流行的將CSS應用於您的網頁的方法。 CSS可能很復雜,但Tailwind使它變得更簡單。相信我,我從事CSS已有 20 年,使用Tailwind讓我終於能夠在每個項目上都處理好事情。這也是其他很多人的感受。 您應該使用HTML和CSS/Tailwind創建哪些項目呢?嗯,從您的愛好和興趣開始。創建一些隨機的網頁,看看它們在瀏覽器中如何顯示。 創建一個有關狗的網頁,有關足球、橄欖球、棒球的網頁,有關您最喜歡的Netflix系列、最喜歡的音樂家的網頁,等等。重要的是進行實驗。 在HTML和CSS/Tailwind上別太花哨。它們是兔子洞。關於這兩者有很多東西要學。熟悉它們,使用它們來完成任務。 熟悉像VS Code這樣的編輯器,以及終端和Bash shell的基礎知識。學習Git來管理版本。它將為您節省很多時間和麻煩。 添加JavaScript 現在是學習JavaScript的時候了。下載並閱讀我的JavaScript初學者手冊。 HTML和CSS定義了內容和呈現方式,而JavaScript是一門程式語言。 使用JavaScript,我們可以開始玩樂。 基礎知識有點……無聊並且可能會令人困惑,因為有很多理論和新概念。但這是您在網頁開發中最常使用的東西。因此,掌握它是至關重要的。 逐步將JavaScript添加到您的網頁中。 使用JavaScript,您將能夠為您的網頁添加一些互動性。您將探索DOM,這是瀏覽器讓我們與頁面上的元素進行交互的方式。 您將創建您的第一個表單。 在創建第一個表單之後,您將需要將表單數據發送到某個地方。 想像一下,您建立了一個電子報註冊表單。您想要將電子郵件發送到某個地方以便存儲它。...

2023博客重新設計

時不時地,我會覺得我的網站看起來很糟糕,或者我對它感到厭倦,想要重新設計。 這個網站經歷了很多次重新設計。 以下是2018年的截圖 這是2019年 直到昨天,它是這樣的: 從今天起,我們有了一個新的設計,基於WordPress Beaumont 主題,由Anders Norén開發,根據我的Astro代碼庫進行了一些自定義: 以下是暗黑模式的效果: 希望你喜歡!

Airtable API for Developers

Airtable API 開發指南 Airtable 是一個令人驚異的工具。 它結合了試算表和資料庫的功能。 作為一位開發者,你可以使用非常好用的介面創建一個資料庫,同時也可以享受到試算表的編輯和使用便利性,甚至可以從移動應用程式輕鬆更新你的記錄。 適合原型設計 Airtable 不僅僅是一個名不副實的試算表,對於想要原型設計或者建立最小可行性產品(MVP)的開發者來說,它是一個完美的工具。 MVP(Minimum Viable Product)是應用程式或產品的初始版本。 大多數產品的失敗並不是因為技術限制或者“堆棧無法擴展”,而是因為要麼沒有需求,要麼製作者並沒有明確的市場推廣策略。 創建一個MVP可以減小花費數月時間建立完美應用程式而發現沒有人需要的風險。 優秀的 API Airtable 提供了一個非常優秀的 API,可以方便地與 Airtable 資料庫進行程式化的互動。 這正是它相對於一般試算表來說在數據處理和身份驗證方面的優勢。 該 API 每秒的請求限制為 5 個,這還是相當合理的。 優秀的 API 文檔 這是 Airtable API 的文檔頁面:https://airtable.com/api。 作為開發者,我們花了很多時間閱讀文檔,並嘗試弄清楚事物的運作方式。 API 相對複雜,因為你需要與一個服務進行互動,並且希望了解服務提供哪些功能以及如何使用 API 完成你需要的功能。 Airtable API 文檔提供了直接使用你的表中的實際數據的示例。在下面的圖片中,請注意字段示例值是我在表中實際放置的值: 該 API 文檔提供了使用 curl 的示例: 以及官方 Node.js 客戶端的示例: 官方 Node.js 客戶端 Airtable 維護了官方的 Airtable.js Node.js 客戶端庫,這是一個非常易於使用的方式來訪問 Airtable 的資料。 它很方便,因為它內建了處理請求速率限制的邏輯,並在超過限制時自動進行重試。 讓我們來看幾個常見的可以通過 API 執行的操作,但首先我們需要定義一些我們在程式碼中需要參考的值: API_KEY:Airtable 的 API 金鑰 BASE_NAME:你將要使用的的底座(base)的名稱 TABLE_NAME:該底座中表(table)的名稱。 VIEW_NAME:表視圖(view)的名稱。 底座是資料庫的縮寫,它可以包含多個表。...