科技愛好者週刊:第 86 期

阮一峰發表於2019-12-13

本雜誌開源(GitHub: ruanyf/weekly),歡迎提交 issue,投稿或推薦你的專案。

週刊討論區的帖子《誰在招人?》,提供大量就業資訊,歡迎訪問或釋出工作/實習崗位。

封面圖:Pixel4 XL 夜拍模式樣張(出處)。

刊首語

最近,我看到一個心理測試《你是不是一個完美主義者?》,題目還挺有意思的。

(2)當一件事件做得不夠好時,你是否有再試一次的想法?

(3)你是否休息時仍想著學習、工作、或者其他還沒有解決的事?

(4)如果遇到別人說話或打岔,破壞了你的注意力,你是否覺得不太高興?

(5)你是否常常會在事後想,如果當時能換成另一種方式來解決,也許會更加理想?

如果上面的問題,你的回答全是肯定的,那麼你就有完美主義傾向。

簡單說,完美主義就是追求一個較高水平的目標,不接受一個較低水平的、但可用的結果。這是不好的。我就一直告誡自己,千萬不要追求完美。就像一篇文章說的,完美主義的最大問題是,它實際上讓你追求高成本。

完美主義消耗了我們最寶貴的資源和時間,讓你將注意力從真正的優先事項上移開。

我在以前的週刊裡也寫過,"做得快"比"做得好"更重要。我們需要的是,低成本地做出儘量多的成果,而不是高成本地創造一件精品。完美主義會妨礙我們"做得快"。

另外,完美主義帶來的高壓力,也不利於身心健康。不要追求完美,要隨心所欲地生活。

人工智慧學習大禮包

人工智慧是 IT 領域最熱的熱點,人才相對稀缺,薪酬待遇上升得很快。我遇到的在校生,大部分都希望往這個方向發展,學習相關知識。但是,人工智慧不太容易自學,涉及的理論知識太多了,需要閱讀大量專業書籍,不斷動手編碼實踐。

現在有一個 200GB 的人工智慧學習大禮包,內容針對學習者的實際需要,與企業招聘和崗位要求結合緊密,包括以下幾個部分:(1)Python 學習資料,(2)人工智慧數學基礎,(3)資料處理與框架技術,(4)機器學習與深度學習。

各種形式的檔案都有:影片課程、專業書籍 PDF 版、知識圖譜、專案實戰。其中的影片課程,是由前谷歌資深機器學習與深度學習科學家秦老師主講。他一直研發搜尋引擎的相關演算法,在這個領域已經十餘年,專案經驗非常豐富。下面是課程相關的人工智慧學習路徑(點選看大圖)。

這些資料由咕泡學院向週刊讀者提供。該學院成立於2016年,目前和騰訊課堂聯合運營,線上學習人數突破40萬人次,已經向一線網際網路大廠輸送了18000多名高薪程式設計師,其中不乏阿里P7、百度、騰訊、科大訊飛、深藍科技等大公司。所有課程均由技術專家研發設計,保證全程直播授課,課程原始碼全部共享 。優秀學員可獲得阿里、華為、騰訊、螞蟻金服、位元組跳動、大眾點評等知名網際網路企業的內推機會。

微信掃描下方二維碼(手機端長按識別兩次),就可以免費獲得這個 200GB 的人工智慧學習大禮包。名額只有199個 ,感興趣的朋友不要錯過。

資訊

1、機器人輔助的遠端手術

11月1日,加拿大多倫多的醫生在電腦上指導一個機器人,對一個64歲女性進行大腦手術,在大腦內放置一個支架和線圈治療腫瘤。醫生在病人床邊幾米外的控制檯上,操縱系統的機械臂。整個手術花費2.5個小時。患者於第二天出院,情況良好。

以前,外科手術機器人通常用於膝關節置換、前列腺和心臟手術,還沒有用於腦部手術,因為大腦中有數千個主要血管,對手術的精度要求非常高。研究小組表示,可能會在明年進行完全遠端的手術,如果成功,醫生以後完全可以進行異地、甚至跨國的大手術。

2、猛獁淘金熱

隨著全球氣溫上升,俄羅斯西伯利亞永久凍土帶開始融化,裡面埋葬的數百萬個猛獁遺骸慢慢暴露出來。這吸引了很多象牙淘金者,他們用高壓水龍衝開沼澤,尋找古老的象牙和化石,迅速用保鮮膜包裹它,然後賣掉,可以賺很多錢。

據估計,目前仍然有1000萬猛獁埋在西伯利亞的永久凍土中,遠遠超過現存的35萬頭非洲象。象牙交易時,很難區分猛獁象牙與非洲象牙的差異。

3、腳踩發電的電腦檯

一個美國程式設計師製作了腳踩發電的電腦檯,在底下安裝了腳踏車踏板和發電機。操作電腦的時候,使用者不停地踩踏板,就可以對電腦供電,也可以為手機充電。如果你每天花幾個小時坐在計算機前,這個電腦檯可以讓你保持運動。

作者稱,自己每小時踩踏板,可以產生60瓦的電力。同時,每小時可燃燒300卡路里。電腦檯設定了八個電源插座用於供電,還內建了一個小電腦,透過遠端連線,可以檢視發電統計,以及對電腦檯進行各種操作。

4、大整數分解的新紀錄

美國科學家宣佈,240個十進位制位的整數分解成功(相當於795個二進位制位),找到了它的兩個大質數因子。這是已經公佈的最高紀錄,此前的記錄是768個二進位制位整數。

整數分解是加密學的基石,一旦實現快速的整數分解,現代的公鑰加密就會失效。目前主流的加密強度是2048個二進位制位的金鑰,所以還是安全的。本次分解在 2.1G CPU 上需要4000核年,即單核運算需要4000年,多核運算的總花費大約為十多萬美元。

5、公交車的擁擠程度提示

上海的公交車站正在試點顯示,下一趟公交車的擁擠程度。公交線路名稱後面,會顯示1到3個卡通小人,分別對應"舒適、適中、擁擠"。

這項技術背後使用的是基於影像捕捉的乘客密度分析。每次車輛出站30秒後,多個車載探頭實時拍攝車內畫面,後臺使用空間密度演算法,得出乘客密度,也就是擁擠程度。這樣可以避免乘客過多地集中在一部車,也為排程員調整發車頻次、最佳化平衡車距提供資料參考。

6、石頭紙張

傳統紙張都是使用植物纖維製作,可能會破壞環境。目前,一些製造商正在推出石頭做的紙張,這種紙張防水、耐用,更加環保,不需要樹木,生產過程也不需要漂白劑,使用的水也較少。

這種石頭紙張由大約80%的碳酸鈣製成,碳酸鈣是石灰石和大理石的主要成分,紙公司將建築和採石場遺留的岩石粉碎,再用塑膠將粉末融合在一起,然後用滾筒將其壓扁直至像紙一樣薄。由於這種紙由細小的顆粒製成,而不是較粗糙的植物纖維,因此與傳統紙相比,會感覺更平滑。

這種紙張的一個問題是,不能跟植物紙放在一起回收。現有的紙張回收程式不能處理這種紙,不過石頭紙本身也是可以反覆回收使用。

7、一句話訊息

  • 一份歐盟研究報告稱,依賴物理學專業知識的行業對歐盟經濟的貢獻,要大於金融業或零售業。以物理學為基礎的行業包括電氣、土木、機械工程,計算機等。

  • Instagram 開始隱藏點贊數量,目的是防止無意義的點贊競賽。

  • Intel 公司因為14奈米產能不夠,重啟已經關閉的22奈米生產線,恢復生產低端的奔騰 Haswell CPU。

  • 俄羅斯在北冰洋海域,發現世界最大的甲烷噴泉。海底的甲烷猛烈噴發,湧出成千上萬的氣泡。科學家認為,原因是海水溫度升高,海底凍土融化導致地下甲烷冒出地底。

  • 一個以色列愛好者設計出紙飛機控制器,可以把這個裝置安裝在紙飛機上,然後用手機遙控紙飛機。這個裝置在 KickStarter 眾籌,已經有超過1萬名支持者,認捐了100多萬美元。

  • 樂高推出盲文積木,積木背後有盲文符號可以觸控感知,幫助盲人和視障兒童學習盲文。

文章

1、QR 碼在中國到處可見(英文)

一個老外來到中國,感嘆 QR 碼在國內的廣泛使用。他在這篇文章裡面,列出了他見到的 QR 碼的16個使用場景。

2、Karatsuba 演算法(英文)

Karatsuba 是1960年發現的一種快速相乘演算法,可以大大減少大整數相乘的計算步驟。

3、日落的幾何學(英文)

如果地球是平的,日落在水中的倒影照片應該像下面這樣。

但是實際上,由於地球是圓的,照片是下面這樣。

本文根據幾何學,推導一個公式,可以根據日落的半徑,算出地球的半徑。

4、WebAuthn 金鑰入門(英文)

WebAuthn 是網際網路金鑰登陸的國際標準,屬於一種雙因素認證的方法。本文對使用者的金鑰硬體和使用方法,進行長篇介紹。

5、git rebase 是有害的(英文)

本文詳細解釋理由,建議不要使用 git rebase 命令,至少不要在多人開發的分支上使用。

6、不要把 DNS 的 TTL 設得過低(英文)

購買域名的時候,都要設定 TTL 引數。它表示 DNS 記錄的快取時間,如果設得過低,瀏覽器就會不停發出 DNS 請求,這完全沒有必要。本文作者建議,TTL 可以設成40分鐘到1小時。

7、使用瀏覽器的 AudioContext API 生成使用者指紋(英文)

很多網站想追蹤使用者,但是瀏覽器對 Cookie 的限制越來越嚴,於是有人想出使用音訊 API,為每個使用者生成一個音訊指紋,透過這個指紋追蹤使用者。本文給出程式碼例項。

8、Firefox 和 Chrome 為何要革 EV 證書的命(中文)

最貴的域名加密證書是 EV 證書,即企業認證證書。但是,新的 Firefox 瀏覽器不再顯示 EV 證書標誌,使得有沒有這個證書在頁面視覺上沒有差異。本文討論背後的原因,認為 EV 證書有可能死掉。這裡還有另一篇文章也可以參考。(@dallaslu 投稿)

9、表格的體驗最佳化

本文采用大量示意圖,展示了表格應該怎麼設計,才能讓使用者獲得最佳的使用體驗。

10、如何編寫一個程式語言的垃圾收集器?(英文)

垃圾收集機制是程式語言的重要特性,有助於程式保持效能,減少記憶體消耗。本文使用簡單的程式碼,介紹如何自己寫一個垃圾收集器。

工具

1、fingerprint.js

一個在瀏覽器生成使用者指紋的 JS 庫,可以識別使用者,不使用 Cookie。

2、carnage3d

3D 遊戲《GTA1》的開源克隆,已經基本可玩。

3、erra

一個 Node.js 的 HTTP 介面除錯工具,可以攔截並修改 HTTP 通訊,也可以 Mock 介面。(@hughfenghen 投稿)

4、a*尋路演算法視覺化演示

本文在網頁上演示a*尋路演算法,可以自己調整引數。(@sbfkcel 投稿)

5、easy-service

一個開源工具,將程式註冊為 Windows 的系統服務。(@pandolia 投稿)

6、劃詞二維碼

Chrome 瀏覽器外掛,為選中的文字生成二維碼,可以用來為網頁提到的網址生成二維碼。(@tanghuibo 投稿)

7、Slate

API 文件的靜態站點生成器。

8、AI 生成的漸變

使用者指定一個顏色,該網站會自動生成基於該顏色的漸變模式。

9、Sketchviz

生成手繪風格的流程圖的線上工具。

10、draw.io

線上圖表工具 draw.io 的原始碼。

資源

1、基礎德語教科書

英語的基礎德語教科書,可以免費閱讀和下載。

2、A* 尋路演算法教程

一個免費的英文教程,介紹 A* 尋路演算法,尋找兩點之間的最短路徑。(@douchuan 投稿)

3、微軟 REST API 設計指南

微軟的官方文件,講解微軟對 REST API 的設計要求。

4、JSLinux

該網站提供 JS 虛擬機器,讓一些 Linux 發行版在瀏覽器中執行。

5、Gravity

這個創業公司發明了飛行揹包,人穿上就能在空中飛行。目前不公開出售,但是可以到官網預約現場體驗。

圖片

1、諾里爾斯克

俄羅斯的諾里爾斯克(Norilsk)是全世界最北方的城市,位於北極圈以北400公里,冬季溫度在零下40多度。

該城市是俄羅斯為了開發石油天然氣而建立的,由於缺乏維護,已經破敗不堪。俄羅斯攝影師 Elena Chernyshova 在2012年至2013年,在那裡待了七個月,拍攝了許多照片。下面就是其中一張,冬天結冰的樓道。

極夜時的街道。

2、無意義的發明

該網站收集一些看似無用的發明。

專門看後方的眼鏡。

帶有太陽能板、可以充電的汗衫。

一次剪四個手指的指甲鉗。

文摘

1、沙皇炸彈

冷戰期間,蘇聯一共製造了兩枚 RDS-202 氫彈。這種氫彈威力巨大無比,被稱為"沙皇炸彈"。"沙皇"一詞在俄語中通常用於形容巨型事物。

其中一枚於1961年10月30日試爆,是迄今為止最大的人造爆炸。在全世界所有已知爆炸事件中排名第二,僅次於導致恐龍滅絕的大爆炸。

它的爆炸當量本來相當於一億噸的TNT炸藥,蘇聯當局憂心試爆後的核落塵對環境的嚴重影響,會導致內政難題與外交風波,因此將核彈減半為5000萬噸的爆炸威力。儘管如此,這枚炸彈的威力依舊是二戰期間廣島原子彈的3800倍,相當於二戰中所有使用的炸彈總量十倍。

爆炸的第一階段以核分裂為主,所產生的能量誘發第二階段的核聚變,聚變釋放出的中子誘發出更劇烈的第三階段核裂變。

試爆地點是北冰洋的一個島嶼,所產生的火球半徑達4600米,將近1000公里外的地方都可看見。爆炸產生的蕈狀雲寬近40公里,高約64公里,相當於珠穆朗瑪峰海拔高度的7倍多;爆炸產生的熱風可以讓遠在170公里以外的人受到3級灼傷,爆炸的閃光能造成220公里以外人的眼睛劇痛與灼傷,甚至造成白內障以及失明。

55公里外的一個村莊所有房屋全毀。數百公里內的木造房屋全毀,只有磚造或石造房屋殘留,但是門窗與屋頂都被強風吹走。

雖然這一次試爆是在空中試爆,但是往地球傳送的震波,被美國儀器偵測到,相當於里氏地震規模5~5.25的地震。

為了保證試爆人員的安全,炸彈上還特別加裝一副重達800公斤的減速傘,以延遲炸彈釋放墜落後的爆炸時間。否則爆炸威力太大,會危機投放炸彈的飛機安全。

當時的蘇共中央第一書記赫魯曉夫,在1961年7月10日批准了這種炸彈的研發,並要求在十月底完成試爆,剛好是第22屆蘇共黨代會會期,赫魯曉夫可以借試爆的成功來鞏固自己在蘇共中央的地位。

這種炸彈體積太大,當時的轟炸機無法攜帶它飛很遠,因此蘇聯軍方並沒有用於實戰的打算,主要用來對西方世界的恐嚇。不過,蘇聯軍方卻有將這枚氫彈以艦船或潛艇運至敵方海岸,在海中引爆引發巨型人工海嘯的規劃。

2、汽車電影院

(摘自《全民蠢萌的美國》,比爾·布萊森著,江蘇鳳凰文藝出版社,2018)

20世紀30年代早期,新澤西州有位名叫理查德·霍林謝德的人,將一臺電影投影機裝在他的車頂上,坐在車裡前排,欣賞投射在他家車庫門上的電影。

誰也不知道當時他是怎麼想的,或者說這個主意是哪兒來的,可是他的左鄰右舍看到車庫門上的電影畫面都跑過來看。很快,整片小區的人都不請自來,跑到霍林謝德家的車庫門前看電影。

1933年,霍林謝德給這個主意註冊了專利,這年年末,美國第一家免下車電影院在鄰近的小鎮卡姆登誕生了。一開始影院的生意並不太好,然後慢慢地沉寂下去。直到50年代,汽車在美國開始普及起來,這種電影院一下子火爆得不得了。50年代初,美國全國一家免下車電影院都沒有,但在不到10年的時間裡一下子猛增到6000家。

這種電影院有一些好處。有孩子的父母上電影院也不用花錢請保姆照看孩子了,因為孩子們可以穿著睡衣躺在後座上。媽媽們也能給孩子餵奶了。有些免下車電影院甚至還提供洗衣之類的特殊服務。你進去的時候扔下一袋髒衣服,看完出來再把洗好烘乾摺疊好的衣服拿回去。

有一次,我打算鼓動全家,一起去汽車電影院。"很簡單,"我解釋起來,"你把車開進一片帶大螢幕的空地,停在安有小喇叭配有電線的一根金屬柱子旁邊,然後把喇叭掛在你的車門內側聽聲音。"

"那裡有空調嗎?"我小兒子問。

"當然沒有空調了,是露天的。"

"為什麼不去真正的電影院呢?那裡有空調,還有很舒服的椅子。"

我突然明白為什麼這類電影院迅速衰落下去了。首先,坐在汽車裡看電影完全談不上舒服:如果你坐在司機座,你得一直抵著方向盤。如果坐在後座,螢幕也看不清,除非你有先見之明,來看之前就把擋風玻璃擦乾淨,否則你就得透過被壓扁的蟲子和道路上灰塵的汙漬看電影。那小喇叭裡傳出的聲音總是恐怖而又尖細,弄得每個演員都像是在更衣室的衣箱裡說話一樣。新英格蘭地區的夜晚都比較涼爽,如果你關上車窗保暖的話,這整個晚上你就得不停地用胳膊擦去擋風玻璃內側凝結的水汽。有時候還會下雨。

言論與數字

1、

我覺得探索火星很愚蠢,而且真的很可惜。用於太空探索的資金,應被用來拯救我們自己的星球。現在,地球的情況如此嚴峻,全球正在變暖,這是第三次世界大戰,我們卻浪費這些錢去火星,火星上什麼也沒有。

-- Yvon Chouinard,運動服裝品牌巴塔哥尼亞的老闆。他被問到如何看待馬斯克的火星旅行計劃,做了上面的回答。

2、

敏捷開發要求,整個開發過程都始終保持高速度。請問哪一種賽跑選手,可以從頭到尾一直高速?回答是短跑選手,只有短距離才能一直衝刺。

敏捷開發提出的解決方法很簡單,就是把開發過程分成多個100米,每一段都是短跑比賽就可以了。

-- Rich Hickey,Clojure 語言的發明者

3、

儘快將無用的東西部署到生產環境,是啟動新專案的正確方法。它帶來未知的風險,促進專案向前發展,開啟了並行的工作流程,並讓開發者養成良好的習慣。

-- 《你好,生產環境》

4、

1970年,國際電信聯盟想為"世界標準時"定一個縮寫。當時,英語的縮寫是 CUT(Coordinated Universal Time ),法語的縮寫是 TUC (temps Universecoordonné)。

為了避免偏向任何一方,國際電聯決定,國際標準時的縮寫為 UTC。

-- nist.gov

5、

推特的每個推文都有一個唯一 ID。最早,工程師選擇32位整數來儲存推文 ID,這意味著一共可以儲存42.9億條推文。

到了2009年,明顯不夠了,推特只好啟用一個名為" id_str"的新欄位,將推特 ID 儲存成字串。

-- 《面向未來的程式碼》

回顧

去年的本週:《週刊第 34 期》

訂閱

這個週刊每週五發布,同步更新在阮一峰的網路日誌微信公眾號語雀

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

(完)

相關文章