每週分享第 51 期

阮一峰發表於2019-04-12

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

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

一個程式設計師的 Macbook 送修了,他只好重新使用10年前的膝上型電腦(上圖)。結果意外地發現,雖然有點慢,但是不影響使用。10年前的電腦依然能夠滿足日常工作。

如果2009年的時候,讓你去使用1999年的電腦,那是不可想象的,根本沒有實用性。但是,2019年的時候,去使用2009年的電腦,卻是完全可行的。

這說明,過去十年的硬體進展不太大,導致10年前的硬體不是那麼過時。過去十年,進展主要體現在軟體上面:軟體功能更強大、使用更友好、介面更美觀。

經濟有一個定理,叫做"邊際收益遞減",意思是,發展到比較成熟的階段以後,以後每一步的進展會越來越小。硬體就是如此,摩爾定理到了盡頭以後,就已經開始慢下來了。我估計,硬體之後就是軟體,隨著軟體開發技術的成熟,以後軟體的進展也會放緩,總有一天,我們使用十年以前的軟體,也會覺得還可以接受,當然現在還沒到這一步。

軟體之後的發展重點,我認為將是演算法和資料,以後的進步更多會體現在演算法最佳化和資料訓練上面。

新聞

1、程式設計師的專用座椅

美國一家創業公司推出了程式設計師專用座椅,可以躺著使用三塊螢幕,還有按摩功能,可以一邊敲程式碼,一邊按摩。由於這個椅子可以140度斜躺,還有腳凳和椅燈,所以也可以在上面睡覺。它的售價是3600美元。

2、世界上最短的高速公路

世界最短的高速公路就在羅馬尼亞,長度為1米。當地的一個快餐店老闆自費4500歐元,建造了這條1米的四車道高速公路。他是為了抗議政府忽視公路建設,"他們說這個地區不適合建設高速公路,我就造1米給他們看看。"羅馬尼亞的面積與英國相當,但是高速公路只有806公里,大約是英國五分之一。

3、海上隔離

美國海軍軍艦麥克亨利號(US McHenry)在波斯灣執行任務時,全艦700多名官兵中有25人感染了腮腺炎。結果,全艦就被隔離在海上,整整兩個月不得靠岸,所有人都沒法下船,補給由其他船隻運送過來。看上去,以後對於那些高傳染性的疾病,海上隔離似乎是一個可行的方案。

4、發光滑雪板

美國一家公司推出了會發光的滑雪板,售價500美元。不過,該公司沒說,這是白天用的,還是夜晚用的。如果是夜晚使用,是為了觀眾能看清楚滑雪的軌跡嗎?

5、刷臉乘地鐵

3月8日,深圳地鐵公司在福田站,開通了"刷臉乘地鐵"的測試通道。乘客可以先在地鐵公司登記,然後進站時,不需任何動作,只需將臉正對一個平板電腦的攝像頭,就能刷臉扣款。目前還不知道,該服務何時會在深圳地鐵的其他站點使用。

6、柔軟的機器手

機器手臂通常都是鋼鐵材質,牢牢抓取物體的時候,很容易造成物體損傷。為了解決這個問題,麻省理工學院的科學家發明了柔軟的機器手。它是一個橡膠做的套子,可以像花朵一樣開啟和關閉。

當它套住物體的時候,會泵出裡面的氣體,透過氣密性,使得大氣壓將套子牢牢壓在物體上面,從而能夠在不損傷物體的情況下,拾取精細的物品。它能夠抓起自身重量100倍的物體。

7、雨傘發電

臺灣和美國的科學家研發出一種可以發電的雨傘。這種雨傘利用雨和風與傘面產生的摩擦電能,進行發電。傘和雨衣上的奈米發電機可以收集水滴的衝擊能量,將其轉化為電能。

這種面料可用於開發自供電的照明雨具,以幫助防止雨天發生交通事故。在125毫升/秒的降雨量下,奈米發電機在5分鐘內將 1μF 電容充電至 9V 左右。重複洗滌也不會降低這種面料的效能。

8、環衛工人的手環

有訊息稱,南京市河西區的環衛工人被要求佩戴 GPS 跟蹤智慧手環,這會隨時監控他們的位置,而且如果他們停止移動超過20分鐘,手環就會發出提醒"請繼續工作"。

報導披露後,公眾壓力使得當地環衛公司決定稍微讓步,現在如果環衛工人留在一個地方,手環不再發出提醒"請繼續工作",但仍然會跟蹤工人的移動。

9、787 飛機的 GPS 授時錯誤

GPS 衛星傳送的資訊包含時間欄位,其中表示"週數"的欄位只有10個二進位制位,導致該欄位每20年會發生一次溢位,自動歸零。2019年4月6日,該欄位就發生了本世紀第一次溢位。

所有依賴 GPS 授時的裝置,都可能因此發生計時錯誤。波音公司的噴氣式飛機就是這樣,現在已經出現多架 787 客機的系統時間回到了20年前的1999年(上圖紅框處)。

10、一句話新聞

  • 華納音樂簽約了一個音樂演算法,將發行該演算法生成的五張唱片。它主要生成輕音樂,供睡前播放,itunes 上面有試聽。

  • IBM 公司在過去6年中,已經解僱了超過2萬名40歲以上的美國員工。報導稱,該公司有內部政策,更嚴厲地評估長期服務的員工,使用負面評估對他們進行裁員。

  • 人的大腦儲存的資訊,研究認為,以英語表示的話大約是 1.5MB。

  • 英國和加拿大決定,不再新建任何燃煤電廠,現有的燃煤電廠也將逐步放棄。因為燃煤會產生大量二氧化碳。

文章

1、劉慈欣:釋放想象力(中英對照)

2018年11月,劉慈欣在克拉克想象力服務社會獎頒獎儀式上的演說。

2、Java 開發者需要知道的20個庫(英文)

本文介紹 Java 語言20個常用的庫,比如 log4j、JUnit、JSoup 等。

3、與死亡一線之隔的完美(中文)

Free Solo 是一部《國家地理》雜誌拍攝的紀錄片,講述了徒手獨攀優勝美地國家公園內、全世界最難攀爬的酋長巖的故事。它得到了 2019奧斯卡最佳紀錄片獎。本文講述了這部紀錄片背後的故事,為什麼有人願意冒著生命危險去攀巖,他又是怎麼爬上去的。

4、再見 Docker(英文)

作者認為,Docker 作為一家公司已經失敗,作為一種技術,也即將被其他容器技術取代。

5、關於 EOF(英文)

EOF 是一個很容易混淆的概念。Windows 系統的文字檔案,結尾可以有 EOF 終止符;C / C++ 語言有一個表示讀取終止的特殊值 EOF,還有測試讀取是否終止的 eof()feof() 函式。

6、使用 AV1 編解碼器(英文)

AV1 是一個新的開源的影片編碼和解碼標準,本文介紹 AV1 的基本知識,以及如何把影片壓縮成 av1 格式。

7、無 JavaScript 的前端(英文)

作者呼籲 HTML 語言內建更多的功能,從而使得只用 HTML 就可以寫出可互動的頁面,減少 JavaScript 的使用。

8、執行緒的基本知識(英文)

一篇寫得非常好的科普文章,通俗地詳盡解釋了程式和執行緒的相關知識。

9、如何使用 React Hooks 獲取資料?(英文)

本文由淺入深一步步介紹,如何使用 React Hooks 的 useEffect 從遠端伺服器獲取資料。

10、瀏覽器內建的 KV Storage(英文)

瀏覽器提供的鍵值對儲存 localStorage API 是同步操作,有時候很慢。為了解決這個問題,Chrome 瀏覽器開始提供非同步鍵值對儲存的 API。

11、瀏覽器原生的圖片懶載入(英文)

Chrome 75 將原生支援圖片的懶載入,寫成 <img loading=lazy> ,就可以滾動到視口載入圖片。

軟體

1、node-five

一個基於 QT 的 Nodejs 框架,用於開發 Node 應用的圖形介面。

2、Learn anything

一個學習資源的搜尋引擎,可以搜尋各種主題,返回相應的教程。(@Paleless 投稿)

3、Gckit-CLI

命令列下使用一行命令,生成SwiftObjective-C等專案的模板程式碼。(@SeongBrave 投稿)

4、php-lisp

一個使用 PHP 寫的 Lisp 程式碼直譯器。(@wujunze 投稿)

5、Paste to Markdown

貼上到該視窗的任何文字內容,都會自動轉為 Markdown 格式。(@AidySun 投稿)

6、RCT

一個透過解析 rdb 檔案對 redis 記憶體結構分析的一站式平臺。(@TrumanDu 投稿)

7、squoosh

谷歌開源的影像壓縮服務。(@ifrontend-xyz 投稿)

8、Whoer.net

檢視你的 HTTP 請求攜帶多少個人資訊的網站。(@xcuYao 投稿)

9、chunkwm

Mac 電腦的多視窗平鋪式管理器。

10、StreamSaver.js

流媒體儲存成本地檔案的瀏覽器庫。(@ifrontend-xyz 投稿)

11、你的電腦有多快?

一個小遊戲,提供一系列常見任務的 Python 指令碼,讓你猜計算機在1秒內可以執行多少次。(@NeoTse 投稿)

12、morec

一個 Flutter 製作的電影 App,用於學習 Flutter。(@Mayandev 投稿)

資源

1、Generative.fm

該網站專門收集軟體生成的音樂。比較奇特的是,這些音樂可以無限播放,並且每次聽都不一樣。暫停以後重新播放,你會聽到跟前面不同的音樂。

2、Star Wars Asciimation

ASCII 碼的形式演繹整部《星球大戰》,可以使用 telnet towel.blinkenlights.nl 在命令列觀看,也可以在網頁觀看。(@linkoln 投稿)

3、Test-Driven Web Development with Python

免費的英文電子書,介紹如何以 TDD 的方式開發網際網路應用,使用 Django 框架舉例。(@nosarthur 投稿)

4、演算法

開源英文電子書,作者是美國伊利諾伊大學的教師,本書是他的講課筆記,偏重於數學。(@nosarthur 投稿)

5、Killed by Google

該網站收集谷歌關閉的所有自家產品。(@murongsihua 投稿)

6、航班實時追蹤

國內做的全球航班實時位置展示,國內航班的覆蓋是全球最好的。(@cq0206 投稿)

文摘

1、為什麼我放棄 Amazon 年薪50萬美元的工作?

上週,我辭掉了8年的亞馬遜工作。儘管一再得到獎勵和表彰,但我沒有足夠的動力再幹一年。

當年,加入亞馬遜時,我是初級工程師。5年內,我晉升了兩次,現在是高階工程師。如果我留下來,幾乎可以肯定今年會再次晉升,成為首席工程師。我被告知,我在公司有很大的潛力。公司裡,人們對我的尊重不斷增長,我被視為所在領域的專家和領導者。

我在亞馬遜的第一年賺了75,000美元。去年,我賺了511,000美元。如果再呆幾年,我的年薪應該可以到100萬美元。

我的工作不算很忙,也不再需要證明自己。我可以在一週40小時內完成所有工作,而且我的團隊每週一天在家工作。晚上或週末,我很少開啟膝上型電腦。我總共有三位主管,他們人都很好,有很多同理心。

儘管一切都很好,但每天早上,我上班的動機都在減少。

最初的幾年,我主要與另一個同事,一起開發一個內部工具。各種限制很少,我有很大的獨立性,直接與使用者交談,然後釋出更新,開展測試等等。只要我覺得這件事是重要的,通常就可以去做。大多數時候,工作的方向是我們自己控制的。

後面的幾年卻完全不同。我領導著部門歷史上最重要的專案,有許多利益相關者和複雜的目標。我能做的事情受到了很大的限制,通常取決於我能否說服所有相關人員,而我想做的是實現目標的最佳方式,卻不一定能做。

我在公司總是處理其他人的要求或條件,開始時很簡單,但隨著時間的流逝而變得越來越複雜,因為必須滿足所有利益相關者。這種情況迫使我做一些不願意做的事情,或者我願意做的事情沒法做。

2、善於銷售

成功需要自信,但是僅有自信是不夠的,你還必須能夠讓別人相信你的主張。

某種程度上,所有偉大的職業都包含銷售工作。您必須向客戶、員工、媒體、投資者宣傳你的計劃。這需要鼓舞人心的願景,強大的溝通技巧,魅力,以及執行能力的證據。

善於溝通,特別是善於書面溝通,是值得培養的一種能力。如果要達到明確溝通,我的建議是,首先要確保你的思路清晰,然後使用簡潔明瞭的語言,表達出你的想法。

銷售的最佳方式是真正相信你所銷售的產品。賣你真正相信的東西感覺很棒,試圖賣自己都不相信的產品,感覺很糟糕。

我的另一個銷售建議是,重要的時候,你最好親自出現。我剛開始做銷售的時候,我總是願意上飛機,自己去一趟。這通常是不必要的,打電話也可以解決。但其中有三次導致了我的職業生涯轉折點,如果我不是親自去,我的人生本來會走另一條路。

3、Youtube 的熱門頻道統計

Youtube 有2000多萬個活躍頻道,2018年底,359個頻道有超過1000萬個訂閱者。其中,87個頻道是2018年建立的,在一年內就達到了1000萬訂閱,相比2017年的47個頻道增長了185%。

這87個頻道平均需要167天才能達到1000萬訂戶。其中,最快的是墨西哥的 Kenia OS 只用了5天,其次是另一個墨西哥頻道 Juki Dog,花了20天。這87個頻道的國籍分佈是,14個墨西哥頻道,12個美國頻道,11個印度頻道,5個土耳其,4個印度尼西亞頻道。

娛樂類頻道(電影和娛樂,音樂)是增長最快的頻道,其次是生活頻道和遊戲頻道。烹飪、健康、體育類頻道也有快速增長。

根據統計,這些熱門頻道在週五和週六上傳了更多影片,這兩天釋出的影片在觀看和訂閱方面,要比其他時間更高。

圖片

1、列印 DNA

有人把 DNA 上面23億個鹼基對,用打孔機列印出來。列印了一個星期,還不到 DNA 的5%。

2、帶名字的手術帽

動手術的時候,醫生戴著口罩,穿著手術服和帽子,很難分清誰是誰。一位澳大利亞醫生正在網際網路上,發起一場運動,倡議醫生在帽子上標識自己的名字。

3、各語言的域名分佈

截止2019年2月,網際網路上共有93,482,546個有內容的域名,其中68%是英文站點,12%是中文站點,3%是西班牙語站點。

言論

1、

隨著線上服務的激增,每個使用者2007年大約有25個密碼,2015年增加到130個,預計到2020年將增長到207個。

-- 《密碼管理器研究》

2、

每家公司都說:"我們非常重視您的隱私和安全。"請不要再說這種話了,大多數公司並不關心資料的隱私或安全,而是為了資料被盜時,他們有一個向客戶解釋的說辭。

-- 《別說"我們嚴肅對待你的隱私和安全"》

3、

最好的故事是不完美的。當一個故事有點奇怪時,它會吸引你,人們會談論那些沒有按照預期發展的事情。那些出乎意料的東西會讓你念念不忘。

-- 《馬爾科姆·格拉德威爾的寫作課》

4、

思考某事和講述某事是不同的事情。我們思考事物的方式很複雜,有時甚至是不連貫的,而且經常是矛盾的。但是講述時,我們必須把某事表達得很清晰,可以在很短的時間內說得出來。

-- 《馬爾科姆·格拉德威爾的寫作課》

5、

過去七年,谷歌平均每週收購兩家公司。

-- Patrick Pichette,谷歌前首席財務官

6、

技術正在發展一定程度的自治,它好像正在以某種方式利用人類來創造它自己。

-- Paul Kingsnorth

訂閱

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

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

(完)