每週分享第 36 期

阮一峰發表於2018-12-21

這裡記錄過去一週,我看到的值得分享的東西,每週五發布。

歡迎投稿,或推薦你自己的專案,請前往 GitHub 的 ruanyf/weekly 提交 issue。

(題圖:安吉,浙江,2018)

美國一個程式設計培訓班的老闆,寫了一篇文章。他說自己很擔憂。現在,那麼多人學習程式設計,他的公司全靠培訓賺錢,將來會不會程式設計師過剩?

培訓班的目的,就是讓那些沒有受過四年計算機教育的人,經過四個月的培訓,找到一份軟體開發的工作。某種程度上,這種做法是可行的,大量的程式設計師就是透過這種模式生產出來。

但是,人工智慧正變得越來越強,終有一天,簡單程式碼都會由計算機自已生成,低階程式設計師的需求將會大量減少。另一方面,雲服務的興起,使得很多工不需要自己程式設計,可以購買雲服務,這也減少了程式設計師的需求。

同時,由於不斷的抽象和封裝,應用層的軟體開發正變得越來越簡單,如果只是簡單地遵循線上教程,就能編寫軟體,或者將一系列API混合在一起,就能做出一個服務,有必要向開發人員支付高額薪水嗎?畢竟開發過程是那麼簡單。

他認為,學習程式設計是值得的,它可以幫助你理解世界。但是,夢想僅僅學會軟體開發,就能解決你的人生問題是不現實的。"只是能夠編寫一個安卓程式,不會為你贏得競爭優勢,也沒法在這個超級飽和的科技世界裡,獲得自己的一席之地。這個世界裡,每個想法都已由十位企業家在你前面完成了。"

由於其他行業不景氣,大量年輕人正在轉向軟體業就業。但是,程式設計師的淘汰也很厲害,上車的人多,下車的人也多。大家應該對這一點有清醒的認識。

新聞

1、維珍銀河試飛成功

12月13日,維珍銀河公司(Virgin Galactic)的太空梭試飛成功。它先由一架雙頭的牽引飛機載到半空,在那裡再點燃火箭加速,飛到距地面82.7公里的高空。

維珍銀河是2004年由維珍航空公司的創始人理查德·布蘭森爵士(Sir Richard Branson)建立的,目標是開展太空旅行服務。乘客可以繞地球幾圈,體驗幾分鐘的失重。整個航天過程會持續90分鐘,每次收費25萬美元,已經有超過600人購買了機票或者支付了訂金。

SpaceX 公司和亞馬遜老闆貝佐斯投資的 Blue Origin 公司,也有計劃開展太空旅行服務。維珍銀河將與他們展開競爭。

2、離子風飛機

麻省理工學院的科學家發明了,世界上第一架沒有活動部件並且不依靠化石燃料飛行的"固態"飛機。該飛機利用"離子風"飛行,比傳統飛機更安靜,機械更簡單,並且不會排放燃燒廢物。

這種飛機內部有電池組,機翼下方有一排電線產生2萬伏的電力。這個電場在機翼後部會產生氮離子流,就有足夠的推力以進行持續飛行。研發團隊製造了一個原型飛機,重約5磅,翼展5米,成功飛行了60米。

3、ARM 伺服器

亞馬遜公司開發了一款自己的64位 ARM 伺服器處理器 Graviton,已經用於該公司的網路服務 AWS 的雲主機,並且 ARM 虛擬機器比 x86 虛擬機器價格便宜45%。

由於 ARM CPU 的能耗和成本都較低,所以 ARM 伺服器一直被看好。上個月,ARM 公司聲稱2018年 ARM 伺服器將達到數百萬臺,其中很大部分就屬於亞馬遜公司。微軟 Azure 雲服務也希望至少一半的伺服器是 ARM。這對 x86 晶片的主要生產商 Intel 公司造成了巨大壓力。

4、家庭電池計劃

南澳大利亞州計劃提供7200萬美元,在當地居民家中安裝特斯拉公司的家用蓄電池。每戶居民可以得到4300美元的補助,用於購買電池。

電池可以用太陽能充電,也可以在夜晚從電網充電(因為晚上的電費便宜),然後在白天使用。這樣可以節省能源。

5、機器狗的人造手

波士頓動力公司唯一的公開出售產品是機器狗 SpotMini,現在有一家創業公司為這隻狗加上了一對人造手。這對手目前沒有實際作用,只是 3D 列印模型,售價179美元。但是,如果一旦可以程式設計控制,它就為這隻機器狗帶來了無限的可能。

6、美國汽車公司可能退出轎車生產

有訊息稱,通用汽車公司和福特汽車公司很快將退出美國的轎車市場,專注於生產高利潤的卡車和 SUV。原因是他們的轎車銷量下降得非常厲害,福特福克斯的銷量從2013年的235,000輛降至2018年的115,000輛。通用汽車公司的雪佛蘭科魯茲的銷量從2014年的273,000輛下降到2018年的145,000輛。

消費者更喜歡皮卡和 SUV。2018年美國排名前20位最暢銷的汽車,14種是卡車或SUV。五年前,轎車佔美國市場的50%,今天這個數字下降到三分之一。另一方面,美國轎車與日本轎車相比,也不佔任何優勢,反而成本更高。

7、Instagram 影響自然保護

美國懷俄明州的一個縣旅遊局,要求遊客將照片發到社交媒體時,不得標識地理位置,以保護該州原始森林和偏遠湖泊。

該州的三角洲湖原來是一個偏遠湖泊(上圖),偶爾才有人步行15公里到達。但是,自從這個湖泊上了 Instagram 的熱門照片,現在每天有多達145人在那裡徒步旅行,拍攝訂婚照片等等。鮮為人知的小徑被大量踐踏,對公園資源造成負擔。

8、貧窮的千禧一代

1981年至1997年之間出生的人,在美國稱為"千禧一代"。美聯儲的一項新研究稱,他們的消費比前幾代人同齡時低,原因是他們的資產較少,沒有能力多消費。也就是說,他們是最貧窮的一代人。

研究人員發現,千禧一代的消費比他們的父母、祖父母年輕時都要少。另一方面,他們面臨的大學學費、醫療費用是幾代人裡面最高的。

9、窗戶塗料

很多大樓的夏季空調費非常高,據統計,空調佔美國總電力支出的6%。 如果有其他手段為大樓降溫,就能節省大量能源。

麻省理工學院發明了一種新的窗戶塗料。32攝氏度以下時,這種塗料是透明的,太陽光可以透過。一旦超過32度,這種塗料就會反射70%的太陽光,降低了大樓內部的溫度。

10、一句話新聞

  • 聯合國預計,2019年底,全世界的上網人口將達到50%。也就是說,還有50%的人口沒有網際網路。

  • 美國國家科學院委託一個專家委員會,評估量子計算的前景。委員會的結論是,未來十年內,建造有實用能力的量子計算機的可能性微乎其微。

  • 微軟宣佈,Windows Server 2019 內建 OpenSSH,也就是說可以用 ssh 登陸 Windows 伺服器了。

  • 美國國稅局(IRS)在 Instagram 開了賬戶,專門釋出介紹稅收知識的短影片。

教程

1、 高階 Web 安全主題(英文)

本文收集各種網頁入侵的技術,已經收集了十多種。

2、何時不使用微服務?(英文)

微服務是目前流行的架構,但是會增加複雜性,比如一個 API 變成多個 API(上圖)。本文討論了哪些情況不應該使用微服務。

3、使用 Cloudflare Worker 加速谷歌字型載入(英文)

網頁載入谷歌字型的最大問題是載入速度較慢,會影響網頁體驗。Cloudflare 提供 Worker 方案,可以改寫使用者的字型請求,從而加速字型載入。

4、Vue.js 框架的作者尤雨溪專訪(英文)

介紹了 Vue.js 的發展歷程,以及背後的想法。(@M1seRy_ _投稿)

5、Flutter 框架印象(英文)

作者較深入地評論了目前 Flutter 框架開發手機應用的優缺點,總體上還是鼓勵大家使用它。

6、MVC 框架的誤解(英文)

作者提出,現在那些 MVC 應用其實改叫 MVA 更合適,也就是把 Controller(控制器)改成 Adapter(介面卡)。

7、QUIC 協議的注意事項(英文)

本文介紹了 QUIC 協議的一些優點。作者提出,QUIC 與其稱為 HTTP/3,不如稱為 TCP/2。

8、 target = "_blank" 的危險性(英文)

HTML 網頁的<a>元素開啟的子網頁,可以用window.opener.location.replace()方法替換掉父視窗的網址,這會帶來風險。

9、一個人如何開發遊戲《星露谷》(英文)

暢銷遊戲《星露谷》(Stardew Valley)作者只有一個人埃裡克·巴羅恩,從編碼到美術音樂都靠自己。大學畢業後,他沒找工作,而是待在公寓寫了四年遊戲。唯一收入是晚上打工,在電影院門口收電影票。

上線前,唯一測試就是女朋友玩了幾天。如果賣不出去(絕大多數遊戲的結局),四年就浪費了,幸好成功了。不過,這個遊戲借鑑了任天堂的《牧場物語》,有人認為他抄襲了。

10、如何編寫一個硬碟啟動程式?(英文)

本文教你如何向硬碟的主引導扇區 MBR 寫入程式,使得計算機可以在沒有作業系統的情況下執行程式,顯示 Hello World。

資源

1、Pwned Passwords

該網站收集已經洩漏的密碼。你可以輸入自己的密碼,看看有沒有洩漏。(@DoctorLai_ _投稿)

2、機器學習書籍清單

這份書目的特別之處在於,它是一份樹狀的互動圖表。(@nivance 投稿)

3、3D 病毒瀏覽器

該網站對各種病毒 3D 建模,可以縮放、旋轉觀看病毒模型。

4、Chinese-Podcasts

收集中文播客資源。(@alaskasquirrel 投稿)

5、C ++ Annotations(英文)

C++ 開源教程,主要針對那些瞭解 C 語言,希望學習 C++ 的程式設計師。

6、程式設計師的實用密碼學(英文)

密碼學開源教材,全面介紹的金鑰相關的各種基本知識。

7、DOS 遊戲博物館

該站收集 DOS 遊戲,可以線上遊戲。另外還有一個"中文家用遊戲博物館"。(@Brenner8023 投稿)

8、HelloGitHub

一個分享 GitHub 上有趣的、入門級開源專案的月刊,每個月 28 號釋出。(@521xueweihan 投稿)

10、旅行者二號的海報

1977年發射的旅行者二號(Voyager 2)最近飛出了太陽系,成為飛得最遠的人類飛行器。美國宇航局為了慶祝這個事件,在官網釋出了一系列可以下載的海報。

工具

1、react-text

一個簡單的 React 國際化解決方案。

2、strapi

一個 Node 的圖形介面的 API 生成框架。(@JsonLeex 投稿)

3、snyk

一個線上工具,檢查專案的依賴模組有沒有漏洞。(@Chorola 投稿)

4、q

一個對 CSV 檔案使用 SQL 資料查詢的工具。

5、sr.ht

一個提供程式碼基礎服務(比如 Git 和持續構建)的網站,介面簡單,具有駭客風格。

6、betwixt

一個使用 Chrome 控制檯的網路皮膚,可以檢視命令列 HTTP 請求的工具。

7、Vimium

Chrome 瀏覽器的擴充套件,使用類似 Vim 的快捷鍵,透過鍵盤操作瀏覽器。(@Seven-Steven 投稿)

8、Squoosh

谷歌推出的影像壓縮工具,程式碼開源。官網可以線上壓縮圖片,而且可以轉換圖片格式(比如 webp 轉 jpg)。(@Seven-Steven 投稿)

9、Emoji Builder

自定義 Emoji 圖片。(@kt286_ _投稿)

10、lint-md

Markdown 的 lint 工具,檢查編寫格式是否規範。(@hustcc_ _投稿)

11、Get Github User's Public Events

檢視某個使用者的所有 GitHub 公開活動。(@able8 投稿)

文摘

1、午夜隊長

20世紀20年代,電視機發明以後,電視節目都是免費的。後來,衛星電視出現了,也是免費的,只要買一個衛星天線收到訊號就可以了。

1986年,HBO 公司開始對自家的衛星訊號加密,使用者必須繳納每月12.95美元的訂閱費,購買專用解碼器才能觀看。HBO 成為第一家對使用者收費的衛星電視公司。這引起了很多使用者的不滿。

HBO 對訊號加密四個月後,1986年4月26日的晚上,美國佛羅里達州的一個銷售衛星電視器材的經銷商約翰·邁克道格爾,利用自己商店裡的裝置,在0點32分向 HBO 衛星傳送了干擾訊號,壓過了 HBO 的官方訊號,導致美國東部的所有 HBO 使用者看到了他設定的畫面。

GOODEVENING HBO
晚上好,HBO

FROM CAPTAIN MIDNIGHT
(這條訊息)來自午夜隊長

\$12.95/MONTH ?
每月(要支付)12.95美元?

NO WAY !
別想啦!

[SHOWTIME/MOVIE CHANNEL BEWARE!]
[娛樂時間電視網、電影頻道(即美國的兩個付費影影片道),給我小心一點!]

HBO 發現訊號異常以後,試圖加大上傳功率,壓過邁克道格爾的訊號,但是又擔心損壞衛星而放棄了。最後,邁克道格爾自動放棄干擾,整個事件大約持續了四分半鐘。

事後,美國聯邦通訊委員會(FCC)確定美國2,000個登記過的衛星訊號發射裝置之中,有580個有足夠大的天線,能夠覆蓋 HBO 的訊號。透過查閱當天是否開機,將可疑名單減少到12個。現場走訪之後,將嫌疑人縮小到三個,其中就有邁克道格爾。

邁克道格爾迫於壓力而自首,他被判處一年緩刑並被罰款5000美元。由於該事件,美國國會透過了新的法律,規定衛星訊號劫持是聯邦重罪。

2、馬雲如何打敗 eBay

2004年,eBay 在中國擁有85%的網路拍賣市場份額。當時阿里巴巴只有 B2B 業務,很擔心 eBay 影響到 B2B 市場。於是,馬雲開始籌備一個叫做淘寶的網站,作為 eBay 的直接競爭對手。

當時,eBay 基本上是照搬他們在美國的做法,沒有為中國市場定製產品。淘寶上線後,馬雲嘗試了各種創新,試圖將自己與 eBay 區分開來,但是成效不大。

但是,eBay 有一個致命的缺點,就是他們要從交易中收費,這是 eBay 賺錢的方式。為了達到收費的目的,他們想盡辦法,將買家和賣家儘可能分開,防止他們直接接觸,繞過平臺,私下交易。馬雲看到了這點,宣佈淘寶不收費,並且推出了聊天功能,允許買賣雙方直接聊天,這一招讓 eBay 逐漸失去市場份額。

2007年,eBay 終於認輸,開始退出中國市場。但是,阿里巴巴的代價也很高,就是無法從淘寶的使用者交易中直接賺錢,不得不從其他渠道賺錢,比如關鍵詞的競價排名、店鋪裝修等等,後面推出天貓也是這個原因。

本週圖片

1、從地心計算的地球最高點

從海平面開始計算,地球最高點是珠穆朗瑪峰。

但是,地球是一個橢圓,赤道比南北極多出了幾十公里。這導致從地心開始計算,最高點是厄瓜多的欽博拉索山( Chimborazo,海拔6268米),這座山在赤道附近,比珠穆朗瑪峰高出了2公里。

欽博拉索山頂是地球上距離地心最遠的地方。

2、80年代的遊戲背景圖案

上個世紀80年代,電腦遊戲的圖案一般先是手繪,然後再用數字轉換儀轉成畫素圖。

3、歐洲的空氣質量

有人畫了歐洲空氣質量的資料圖,結果發現東歐和西歐的界線,完全可以根據空氣質量劃分。

本週金句

1、

2006年,兩名美國學生完成了一個名為"傳送陽光"的專案。如果手機發現,你的朋友在天氣不好的地方,而你在天氣很好的地方,那麼手機就會提示你,拍一張照片傳送給朋友,讓他們振作起來。

後來,兩人當中的 Mike Krieger 建立了 Instagram。

-- 《經濟學人》

2、

在技術行業,簡歷幾乎已經死了,我都不記得上次傳送簡歷的時間。人們會在網上找到你,瞭解你正在做的事情,然後直接與你聯絡。

-- 《技術部落格的重要性》

3、

最好的學生想要去最好的公司。最終,那些最好的公司有更多的人才、更多的錢、更多的資料,太多的權力將會集中在少數人手中。

-- 《AI 的未來》

4、

34年前,我拿到物理碩士學位以後,就離開了物理,去其他領域工作了。我喜歡理論物理,但是我要說,我覺得自己離開物理學是對的,過去34年中,理論物理的進展很少,遠遠不如其他領域。

理論物理沒有進展的原因,主要是實驗資料枯竭,沒有新的粒子,沒有新的空間維度,沒有新的對稱性。這導致了沒有足夠材料來發展新的物理理論。

-- Robin Hanson

歡迎訂閱

這個專欄每週五發布,同步更新在我的個人網站微信公眾號語雀

微信搜尋"阮一峰的網路日誌"或者掃描二維碼,即可訂閱。

(完)