每周分享第 24 期
這里記錄過去一周,我看到的值得分享的東西,每周五發布。
(題圖:浦東濱江,上海,2018。)
Hacker News 上面,有人問:"新人進入軟件行業,應該學什么?"
很多熱心人提供建議。有人說:
"你應該好好學習一門語言。精通一門計算機語言,可以讓年輕工程師脫穎而出。這不僅對日常工作很有幫助,也有利于以后學習其他語言。學習的東西包括:設計模式、調試、性能、生態系統、標準庫等等。"
立刻有人提出相反的建議。
"我建議學習幾種彼此非常不同的語言。例如 Java,Go 和 JavaScript。你要學到精通其中每一種語言,能夠獨立地從頭搭建一個新項目,在該語言的生態系統中完成所有開發工作。"
有人舉出幾種必須掌握的工具。
學習 SQL,你將能夠使用任何與數據庫相關的軟件。
學習 HTML,你將能夠創建一個通用的用戶界面。
學習 GIT,你將能夠與他人分享您的工作。
學習 Unix shell,你將能夠部署所有的東西。
不少人贊同這種說法。
"大多數職業(從醫生到電工),多年的經驗等同于多年的專業知識。但是在軟件開發中,技術變化如此之快,你花費了大量時間學習技術和工具,一旦這些技術被取代,你的知識將變得毫無價值,因為它們大部分都是實施的細節。最終,所有這些年,你確實積累了一些一般性的經驗,但與具體實施相關的知識,你都不再掌握了。
唯一留下的是那些基本的東西,你應該專注于軟件開發的核心知識和數學知識,您的這些技能會不斷增長,而不是隨著技術潮流的變化而消失。"
我最喜歡的是下面這個建議。
"不要讓自己太忙碌。不過,說起來容易做起來難。
我們雇用新畢業的工程師時,會派給他們很多瑣碎的工作,使他們飽和。他們會逐漸忘記大學里學到的課程,全部注意力都集中在手頭的工作。很多人傾向于通過忙碌程度來評價自己,我相信這是一個死亡陷阱。"
新聞
1、3D 金屬打印
以前的 3D 打印,一般都使用塑料。今年,3D 金屬打印機問世了,可以用金屬打印零件,生成更輕、更堅固、更復雜的形狀,而且成本更低、速度更快。這為復雜的金屬模具和金屬部件的生產帶來了前所未有的便利。以后再不擔心老機器的零件停產了,只要把老零件掃描一下,原樣打印可以了。
目前,3D 金屬打印機的價格不到10萬美元。
2、人工胚胎
英國劍橋大學的胚胎學家,只使用干細胞就培育出了一個小鼠胚胎。這里的神奇之處在于,這個胚胎沒有使用卵子,也沒有使用精子,只是一個普通細胞培育出來的。這意味著,只要一個普通的細胞就能創造出生命。
3、傳感器城市
多倫多正在開展一個智能城市項目,在城市中安裝各種類型的傳感器,收集空氣質量、噪聲、人們活動的所有數據。所有數據將開放出來,允許第三方公司在上面開發服務。
以后的城市不僅將布滿攝像探頭,而且布滿傳感器。
4、植物人評估
植物人能不能醒來?中國科學院和中國人民解放軍總醫院開發了一個人工智能系統,評估病人醒來的機會,據說準確率達到90%。
一名19歲的植物人,昏迷六個月,七個神經科醫生評估以后,給出了23分中的7分,這意味著他的家人可以合法拔管。但是這個系統評估腦部掃描結果后,給出了23分中的20分。結果,該青年在12個月內醒來。
5、電動滑板車
越來越多的人使用電動滑板或電動滑板車,受傷的案例不斷增加。鼻子、手腕和肩膀骨折、面部裂傷是常見情況,最糟糕時,摔到頭部,會導致大腦永久性受損。加州的一家醫院在7月的最后兩周,治療了18名在電動滑板車事故中受重傷的病人。舊金山的一家大醫院的急診室醫生說,他每周看到多達10起重傷。
加州正準備立法,要求使用電動滑板車之前,用戶必須接受安全培訓,而且在使用時,必須戴頭盔。
6、動物的對稱性
動物幾乎都是對稱的,左邊的四肢與右邊一樣,這是怎么產生的?
澳大利亞莫納什大學的生物學家,開展了一項試驗。他們在小鼠胚胎的左后腿,注射了一種限制腿部生長的細胞,使得一條腿生長得比另一條腿慢。結果發現,那條長得慢的腿會發出信號,通知其余組織( 包括另一條后腿),以減緩它們的生長。直到受阻的肢體趕上正常生長的腿,才會重新恢復均勻的生長。
7、3D 場景的天氣預報
美國的氣象頻道采用 3D 模擬視頻,播放天氣預報。
主持人在綠幕前錄制天氣預報,后面的背景用游戲引擎 Unreal Engine 4 生成。電視臺將風速、方向、降雨量和無數氣象數據輸入系統,生成 3D渲染圖,以提供準確的可視化效果。看完視頻,我覺得以后電視劇也可以這樣拍。
8、自行車騎得最快的人
美國一個45歲的女自行車手 Denise Mueller-Korenek,騎出了每小時295公里(183.932英里/小時)的世界記錄,成為世界上騎得最快的人。
她必須躲在拖車牽引的整流罩里面,防止這種速度產生的巨大風阻。而且,前1.5公里是拖車拉動前進的,以便產生150公里/小時左右的初速度。
9、一句話新聞
- 加州宣布,2045年淘汰所有化石能源,電力來源都不含碳。
- 特斯拉宣布,今年年底,電池的成本有望降到100美元/千瓦時。目前,頂配的特斯拉汽車是100千萬時的電池,這意味著,電動汽車的成本有望顯著降低。
- 中國在物理、工程、數學方面發表的論文數量,已經成為了世界第一。有研究稱,中國學者參與的論文占到全球論文的三分之一。不過在質量上(引用次數)還是不行,落后美國較多。
數據分析師課程
本期《每周分享》很高興得到了優達學城(Udacity)的支持。優達學城是國際著名的在線教育平臺,中國區對課程進行漢化,并提供中文服務。
今天給大家推薦的,就是他們的《數據分析師》系列課程。數據科學家是現在最熱門的領域,人才缺口極大,就業行情非常好。這個系列課程分成《數據分析(入門)》和《數據分析(進階)》兩個級別。
- 入門課幫助初學者進入這個領域,通過3個月的時間,讓你學會 Python 和 SQL 兩大主流數據分析工具,掌握數據清洗、探索性分析、可視化等基礎分析技能,并且輔導你做完"空氣質量分析"、"氣候是否變暖"、"網站用戶行為分析"等5個實戰項目。
- 進階課適合有一定數學、Python、SQL 基礎的學員,幫助大家成為一個真正的數據工程師。它也是3個月時間,教授高級的數據分析和統計方法,完成4個可以用于生產環境的真實項目。
你可能不確定它們是否適合自己,優達學城為此提供了299元的"七天試學班"。你可以在七天里面,體驗所有服務,并且在助教指導下,自己動手完成第一個項目。到期后,如果想繼續學,再繳納其余的學費。下面是前幾期課程的學員評價摘錄。
掃碼下面海報里面的二維碼,就可獲取詳細的課程大綱,或者咨詢課程,進行選課自測。
教程
1、 <input> 元素的三個屬性(英文)
HTML 網頁的 <input> 元素有幾十個屬性,本文介紹其中三個開發者比較不熟悉的屬性。
2、Cloudflare worker 的一個使用實例(英文)
這篇文章很容易懂,解釋怎么使用 serverless 服務,修改 HTTP 回應。這個服務看起來很好用,缺點好像是只有使用 Cloudflare CDN 的網站才能用。
3、為什么技術有利于暴政?(英文)
《人類簡史》的作者尤瓦爾·赫拉利的最新文章。他提出,人工智能有利于政府,可以將權力集中在少數精英手里。唯一可能的解決方法,是尋找分布式的技術方案,防止資源的集中。
4、命令行腳本的運行原理(英文)
腳本的第一行為什么以 #! 開頭?Shell 內部又是如何處理腳本的?
5、Presentation API(英文)
Chrome 66 支持 Presentation API,這個 API 允許瀏覽器定制投射到第二塊屏幕的內容,使用腳本進行控制。
5、跨站點請求的七種情況(英文)
網頁可以向第三方站點發出請求,這是 CSRF 攻擊的主要原因。這篇文章總結了可能發出第三方請求的七種情況。
6、網絡協議入門(英文)
本文從協議設計的頂層角度,總體上解釋互聯網協議的設計思想。
7、為什么 GraphQL 可以取代 Redux?(英文)
本文解釋了 Redux 想要解決的問題,而 GraphQL 可以解決同樣的問題。但是,該文沒有給出細節。
8、DNS over TLS 的 Node 客戶端(英文)
為了提高安全性,防止監聽,DNS 查詢已經可以在 HTTPS 協議上完成。這篇文章教你怎么寫一個 Node 客戶端,獲取 DNS 信息。
9、戴維·霍夫曼的人生(英文)
本文介紹著名的壓縮算法霍夫曼編碼的發明人戴維·霍夫曼的故事。
10、V8 引擎十周年回顧(英文)
本文是 V8 官方團隊寫的歷史回顧,介紹 V8 每一年在技術上的突破。
資源
1、SQL 開源教程(英文)
這是一本互動書籍,免費,幫助讀者了解如何使用 SQL 對數據集運行查詢。
2、谷歌數據集搜索
大數據研究需要數據集,谷歌推出數據集搜索,根據關鍵詞找出相關的數據集。
3、谷歌放棄的產品
谷歌推出了很多產品,許多后來都放棄了。這個網頁列出所有被谷歌放棄的產品,目前有70個。
4、東京防災手冊
遇到災難(地震、洪水、大雪等等)怎么辦?東京市政府編寫的免費電子書,這里是簡體中文版的下載。
5、代碼行數的可視化
本文給出一個可視化展示,比較不同軟件的代碼行數。
工具
1、nodebook
一般情況下,Node REPL 環境只能在命令行使用。這個工具起了一個服務,讓你在瀏覽器里就能使用 REPL 環境。
2、Kitty
一個使用 GPU 進行渲染的終端模擬器。理論上,視覺效果將非常順滑,尤其是長文本滾動和窗口切換。
3、mdwiki
一個前端腳本,將 Markdown 文件自動轉成靜態網站。
4、PixelPin
誰說密碼一定是字符?這個網站的密碼是圖片。圖片密碼有兩種用法,一種用法是上傳某張圖片作為密碼,另一種是給定一張圖片,你在上面點擊幾個只有自己知道的位置。
5、react-proto
React 應用的原型設計工具。
6、reminiscence
一個架設在本地的網絡書簽管理系統,會自動抓取書簽內容,并生成標簽和摘要,使用 django 框架開發。
7、xsv
一個快速、強大的 CSV 文件的命令行處理工具,使用 Rust 語言開發。
8、Hacklily
一個在線編寫五線譜的工具,可以實時聽到編寫的旋律。
9、LiteraryClockScreenSaver
Mac 的屏保程序,會顯示一段文學作品的段落,里面包含了當前時間。
文摘
1、地圖如何顯示道路的坡度?
有些城市位于山地,平面地圖無法顯示道路的坡度。
設計師希望,地圖能夠顯示道路的傾斜方向和傾斜程度,最初的想法是加上方向箭頭。
箭頭太不直觀,于是改成三角形。
三角形的含義還是不清晰,考慮改成3D。不同的顏色表示不同的坡度。
下面是最后的成品。
2、蟑螂工廠
山東省濟南市章丘區,一家食品垃圾回收廠接收了當地餐館和食堂送來的大量剩飯剩菜,然后使用蟑螂進行無害化處理。剩飯剩菜通過管道注入玻璃容器中,被數百萬只蟑螂吞噬。
對于大多數人來說,蟑螂是傳播病毒和污染食物的害蟲。但是,濟南的技術人員李延榮花了數年時間研究蟑螂后,成功地將它們變成了食品回收工具。
在回收工廠,蟑螂每天食用15噸食物垃圾,占章丘餐廳和食堂產生的食物垃圾的三分之一以上。以前,大部分食物垃圾都會填埋,導致出現環境問題。現在,蟑螂可以分解廢物,留下很少的殘留物。蟑螂死后,它們的身體具有高蛋白質和氮化合物,將被制成蟑螂粉,用作動物飼料的蛋白質來源。
回收工廠同時也是蟑螂養殖基地。養殖人員表示,由于蟑螂的恢復能力和快速繁殖能力,蟑螂的數量呈指數級增長。2014年,工廠只有400公斤的蟑螂。 2015年,這一數字飆升至4噸,而今年預計將在這里生產超過3,000噸的蟑螂。
2008年,李延榮開始研究蟑螂。他讀到,昆蟲(包括蟑螂)是高蛋白質的營養食品的來源。曾經在濟南一家回收公司工作的李延榮很快就有了養蟑螂的想法。他發現山東已有幾家蟑螂養殖場為醫藥公司提供原料,但是成本高昂,因為他們使用谷物喂食蟑螂,每噸蟑螂的繁殖成本可達1萬元人民幣(1,527美元)。然而,零售價有時只有幾十元一公斤。
章丘環境衛生中心主任安峰告訴李延榮,處理食物垃圾非常困難。垃圾填埋后,食物垃圾會污染地下水,給居民帶來健康問題。李延榮很自然想到,那么為什么不用食物垃圾喂蟑螂呢?
為了測試蟑螂的飲食習慣,李延榮開始給蟑螂喂食各種食物 -- 辛辣的,酸的,甚至腐爛的。事實證明,蟑螂根本沒有味覺或氣味。它們還具有強大的免疫系統,可以消化幾乎任何東西。他還對蟑螂粉進行了測試,發現用蟑螂粉喂養的雞不僅更健康,而且比正常雞更強壯,更快。雞蛋也有較厚的殼。
在他研究蟑螂的三年中,李申請了30多項專利,其中兩項獲得批準。 2014年,他找到了安峰,并詢問環境衛生中心是否可以免費為他提供食品垃圾。政府很高興這樣做,因為它是垃圾填埋場的更好替代品。2015年底,李延榮辭去了工作,開辦了自己的公司,全身心地投入到蟑螂和回收工廠。
本周圖片
1、1985年的數據可視化
1985年個人 PC 剛剛誕生,那時報紙上的餅圖都是手繪的。
2、編程小知識
如果變量是一個布爾值,變量名最好加上 is、has 或 can 作為前綴(見下圖)。
3、世界最大的浮動海水浴場
丹麥第二大城市奧胡斯,在海港里建設了一個浮動的海水浴場。
游泳池長50米,還設有兒童游泳池和跳水池,以及日光浴甲板,供人們享受陽光。整個設施一共可以容納650人。
本周金句
1、
作為一個決策者,你的職責不是做出很多決定,而是只需做出幾個高質量的決定。
如果我每天做出三個不錯的決定,就很滿意了。巴菲特說,他的一年就是做對三個投資決定。
-- 貝佐斯,亞馬遜公司創始人
2、
各大網站對用戶的監控無所不在,為了提供服務,它們必須這么做。事實上,如果不提供那些基于用戶數據分析的功能,你還會覺得它們的功能不夠好。
這注定了隱私已經不復存在。唯一的應對方法就是雙向透明,網站可以監控用戶行為,那么用戶也必須能夠監督網站,知道網站怎么使用用戶數據。
-- Tim O'Reilly 《未來地圖》
歡迎訂閱
這個專欄每周五發布,同步更新在我的個人網站、微信公眾號和語雀。
微信搜索"阮一峰的網絡日志"或者掃描二維碼,即可訂閱。
(完)
總結
以上是生活随笔為你收集整理的每周分享第 24 期的全部內容,希望文章能夠幫你解決所遇到的問題。