這裡記錄每週值得分享的科技內容,週五釋出。
封面圖
12月23日,中國最西端的機場,新疆塔什庫爾幹機場開通運營,迎來首架航班。它是帕米爾高原(古人說的"蔥嶺")的首個機場,就建在冰川腳下。(via)
本週話題:真實方位是如何暴露的?
很多時候,開發者需要知道使用者的地理方位。
最簡單的方法,就是檢視使用者的 IP 地址,它能夠確定地理方位。
如果你不想暴露真實方位,需要使用技術手段,偽裝自己的 IP 地址。
但是,這個事情不是那麼簡單,真實方位其實很難隱藏。
上週,Hacker News 論壇上,有人發帖,說他想不通,谷歌怎麼知道他的位置。
他從美國去墨西哥出差,為了使用美國的銀行服務,全程都用了 VPN,偽裝後的 IP 地址是在美國。按理說,伺服器根據他的 IP 地址,只會認為他在美國華盛頓州。
但是,等他回到美國,開啟家裡的電腦。(注意,是家裡的電腦,從來沒有離開過美國。)瀏覽器顯示,他的位置在墨西哥,推送給他的廣告都是西班牙語。
他困惑不解,谷歌怎麼會知道,我的真實方位是在墨西哥呢?我沒有暴露真實 IP 地址啊。
帖子的下面就有人指點他了:谷歌判斷你的地理方位,不僅僅看 IP 地址,更重要的看你的路由器的 MAC 地址。
一般來說,路由器很少改變地理方位,買來後放在某個地方,它就會一直放在那裡。很少有人帶著路由器一起出門。
這意味著,只要知道你使用哪個路由器,根據路由器的方位,就可以推斷出你的真實方位。
每個路由器的 MAC 地址都是獨一無二,而且固定不變。因此,對於網際網路公司來說,只要建一個資料庫,收集路由器的 MAC 地址和所在地方位,就能知道使用者的真實方位了。
谷歌、蘋果和很多網際網路公司都是這樣乾的。安卓系統和 Chrome 瀏覽器都有這種機制,獲取使用者正在使用的路由器 MAC 地址,然後呼叫使用者機器的 GPS 判斷方位,再把這些資料發給伺服器。如果本機沒有 GPS 功能,就根據 IP 地址推斷方位。
因為將你的 IP 地址與路由器 MAC 地址相匹配,不是實時的,會有一個時間差,所以有時候你出門旅行,方位變了,但是谷歌還會顯示以前的方位,要過一段時間以後才會糾正。
如果你真的想避免暴露自己的方位,需要使用剝離了谷歌服務的安卓系統(比如 GrapheneOS),或者剝離了谷歌服務的 Chrome 瀏覽器(即 Chromium)。
問題是很多 App 都偷偷收集這些資料,谷歌、蘋果這樣的大公司,至少是明著幹,可能還有辦法關掉。小公司是偷偷做,根本不告訴使用者,完全防不勝防。
所以,在網際網路上,想要隱藏自己的方位,其實非常難。如果電信服務商、作業系統、應用軟體都設定了追蹤機制,它們聯合起來,我覺得幾乎沒有可能隱藏自己。
活動
跨平臺解決方案之中,Flutter 無疑是最受矚目的。它把圖形庫打包進 App,真正做到所有平臺體驗一致。
今年5月,谷歌正式釋出 Flutter 3.0 版,可以一個程式碼庫支援 iOS、Android、Web、Windows、macOS、Linux 六大平臺,這是目前最強大的。
這裡有一個活動訊息,想採用 Flutter 的同學可以關注。兩週後的1月14日(星期六)下午2點,位元組跳動工程師分享 Flutter 開發實踐。
位元組跳動目前有超過70款 App 使用 Flutter 開發,內部開發者累計超過600位,向官方倉庫提交合並了大量 PR。
本次活動以 《深度解析 Flutter 技術探索與實踐》 為主題,一共安排了4個演講,分享他們的一些做法,以及對於 Flutter 開發的體會和認識。點選連結或掃描海報二維碼,瞭解活動詳情,並報名預約直播。活動主辦者準備了精美的禮品福利抽獎,歡迎報名參加。
科技動態
1、浮動城市
國外一家遊艇公司,提出一個設想,要造一個像海龜一樣的浮動城市。
它實際上是一艘巨大的船,做成海龜造型,長550米,寬600米。上面是一個小鎮,有各種建築物。
遊艇公司透過出售船上的房產和經營酒店獲利。這艘船定期在海上航行,停泊各國的港口,船上游客可以周遊世界。
但是,這家遊艇公司沒有透露:這艘船的動力從何而來?怎麼保證船上的物資供應?哪裡去找能夠停泊它的巨大港口?......
這大機率就是一個國外的"PPT 專案",不過要是真能實現海上的浮動城市,可能具有重大意義。
麥迪遜廣場花園是紐約的著名體育館,很多重要的活動都在那裡舉辦。
它歸多蘭家族所有,老闆叫詹姆斯·L·多蘭 (James L. Dolan)。
去年,多蘭家族被告了。結果,對方委託的律師事務所的所有律師,都被列入了多蘭家族的黑名單。
最近,一個律師去麥迪遜廣場花園看比賽,入口處的人臉識別系統(下圖)認出了他。保安就把他趕出去了,理由是黑名單裡的人都不得進入該體育館。
這件事在紐約鬧得沸沸揚揚,律師準備起訴多蘭家族濫用人臉識別,打壓反對他們的人。不過,麥迪遜廣場花園是私人財產,管理者有權擬定黑名單,這個官司並不好打。
這件事的啟示是,雖然美國政府口口聲聲強烈反對人臉識別侵犯個人隱私,但是實際上,人臉識別在美國一直在被廣泛使用。
3、11葉螺旋槳
一家德國公司宣佈,成功完成了世界首個11葉螺旋槳的試飛。
飛機螺旋槳的作用,是將發動機的能量轉化為推力。葉片的面積越大,推力就越大,所以葉片的寬度和長度比數量更重要。這也是為什麼今天很多螺旋槳只有兩葉的原因。
但是,如果發動機的功率特別大,而葉片無法做得更大的時候,就可以透過增加葉片數量提升推力。
2019年,這家德國公司已經創造了9葉螺旋槳的世界紀錄。所以今年他們挑戰11葉螺旋槳。
美國宇航局 NASA 最近向一家建築公司撥款5720萬美元,要後者開發一套可以在月球建造人類建築物的施工系統。
這個專案的目標是找到可行的方法,在月球表面上建造飛船著陸區、人類生活區、道路等基礎設施,以及可以防止宇宙輻射、熱量和微隕石的建築物。
目前的方案是使用月球土壤,進行 3D 列印。這將是人類第一次在另一個天體上進行建築工程。美國宇航局還希望,這套方案未來能夠移植到火星。
文章
1、CSS 父元素選擇器:has()
(英文)
CSS 以前只有子元素選擇器,但是現在有了偽類:has()
,可以透過子元素選中父元素。
2、瀏覽器外掛 Tango(英文)
CSS Tricks 的創始人 Chris Coyier 的文章,介紹瀏覽器外掛 Tango 快速生成操作指南,效果比產品文件好得多。
3、curl 如何構造 URL 查詢引數(英文)
命令列工具 curl 新引入了一個引數--url-query
,用來構造 URL 引數。作者介紹它跟以前的類似引數有什麼區別。
4、Rust 命令列工具總結(英文)
最近有一種趨勢,就是使用 Rust 語言重寫傳統的命令列工具,比如lsd
替代ls
、bat
替代cat
等等。本文介紹這些新引入的工具。
5、Windows 10 的 Intel CPU 為什麼表現不佳(英文)
作者發現,自己的 Windows 10 電腦自從用了英特爾第12代酷睿 CPU,構建速度很慢,16個核心裡面只有4個在跑,這是為什麼?
6、Maui 專案介紹(英文)
Nitrux 是一個新的 Linux 發行版,創造了 Maui Kit 框架,用於編寫應用程式。
Mauri 框架基於 Qt,寫出來的應用程式可以跨平臺,同時執行於 PC 和手機,並且非常美觀易用。
7、巧用版本依賴解決數獨(英文)
版本管理器有一套處理版本依賴關係的語法,作者突發奇想,能不能用 Python 版本管理器 Poetry 來解決數獨問題?
81個方格可以看作81個軟體包,每個包有9個版本(即1-9)。只要給出約束條件,版本管理器會計算應該使用哪個版本,從而解出數獨。
8、"加密貓"面臨崩潰(英文)
加密貓(CryptoKitties)是第一個基於區塊鏈(以太坊)的大型遊戲,2017年釋出。
當年,它曾經轟動一時,甚至造成了以太坊的價格飆升,但是現在已經沉寂了,面臨崩潰。這篇報導就分析,為什麼基於區塊鏈的遊戲可能都不可行。
工具
一個 JS 的全文搜尋庫,支援模糊搜尋等很多功能。
2、YouChat
搜尋引擎 You.com 引入了類似 ChatGPT 的 AI 聊天工具,可以無限制使用。
我試了幾個中文問題,回答都是錯的,現階段看來只能當作聊天玩具。
著名程式設計師 Sindre Sorhus 的作品,將 AI 繪圖引擎 Stable Diffusion 搬到了 Mac 電腦(只支援 M1/M2 CPU)。
這裡另有一個類似的 Mac 應用 Gauss。
Chrome 瀏覽器外掛,在 GitHub 頁面顯示各個提交之間的圖形關係。
5、知了
一個開源的 Web 音樂服務,需要自己架設在伺服器或本地,可供多人使用,參見介紹。(@mebtte 投稿)
6、Linen
一個社群軟體,目標是成為 Slack 和 Discord 的替代品,目前只有 Web 版。
7、V2EX APP
V2ex 論壇的第三方客戶端,支援 iOS 和安卓。(@alaskasquirrel 投稿)
8、創業公司頁面設計
這個頁面提供各種業務元件(公司圖片、FAQ、聯絡方式等等),讓你快速搭建一個創業公司網站的頁面,檢視效果。
9、DevDash
命令列終端的儀表盤生成工具,高度可配置,既可以檢視本機系統狀況,也可以檢視外部服務的狀況。
資源
一個圖片和音訊的搜尋引擎,據說包含超過6億件作品,都可以自由使用,不用付費。
2、中國地鐵資訊概覽
這個網站視覺化顯示全國各個城市的地鐵概況,包括每日的客流量。(@xcuYao 投稿)
這個網站可以檢視某個 GitHub 使用者的歷年活動日曆,程式碼開源。(@Codennnn 投稿)
4、Codenews
一個國人分享技術工具的社群。(@jqsl2012 投稿)
5、ChatBCG
這個網站輸入關鍵詞,自動生成 PPT 模板,號稱使用 AI 把內容要點都填寫好了(下圖)。
它好像可以理解中文輸入,但是生成的 PPT 是英文。以後,PPT 都是 AI 生成的,就更沒有價值了。
圖片
1、密西西比河流域
密西西比河是美國最長的河流。它有三條主要的支流,流經美國32個州和加拿大兩個省。流域面積高達320萬平方公里。
上圖就是密西西比河流域圖,深藍色的線條就是密西西比河。大家可以看看,它的流域有多大,對美國有多重要。
密西西比河的長度略短於長江,但是流域面積是長江的1.8倍。
2、星球大戰油畫
一位土耳其藝術家,專門創作以電影《星球大戰》為主題的油畫。
科幻題材畫成油畫,感覺很有藝術感。
文摘
1、創業是什麼
創業就像遊樂場的擲飛鏢遊戲。
普通人家的孩子買得起一擲。大部分人脫靶了。一些人中靶,贏得了小獎品。極少數人正中靶心,獲得大獎。這被當作白手起家的"美國夢"繼續存在的證據。
富人家的孩子買得起很多擲。如果願意,他們可以一遍又一遍地嘗試,直到中靶並感覺良好為止。有些人一直堅持下去,直到命中靶心,然後他們就會發表演講或寫部落格,介紹創業心得和努力工作的價值。
窮人家的孩子不去遊樂場。他們要工作。
2、藍芽仍然令人痛苦
藍芽協議誕生已經20年了,從智慧手機到冰箱再到燈泡,越來越多的產品透過它進行無線連線。
但是,這個協議依然有著各種令人頭痛的問題,對於消費者來說,並不好用。
藍芽的最大優點是低功耗,缺點就是隨之而來的一些物理限制:連線距離短,頻寬小,容易受干擾,不安全。
藍芽訊號使用非專有的無線頻段進行通訊,這有利於它的開發和推廣,但也意味著必須與大量使用同樣頻段的其他電子產品共享和競爭訊號。這會產生干擾,從而破壞通訊。
藍芽的安全性也是一個問題。當你安裝一個藍芽揚聲器,半徑15米以內的任何人都能看到並連線它。這可能會帶來安全風險。
但是,由於物聯網和智慧裝置的廣泛採用,不同裝置的近距離通訊越來越重要。藍芽可以作為粘合劑,將所有裝置連線在一起,依然是目前的最佳選擇。
可以預料,消費者未來一方面不得不忍受藍芽的各種缺點,另一方面又不得不依賴它,每天在日常生活中使用它。
言論
1、
摩托車的危險性遠高於汽車,前者的駕駛員死亡率是後者的27倍。最危險的事情莫過於夜間騎摩托車,佔所有死亡事故的近一半。
2、
大多數人都喜歡機場,因為我們去機場,往往是因為一些令人高興和興奮的事情。
-- 一位國外 Youtuber
3、
去年,NFT 最瘋狂的時候,我從亞馬遜買了一大堆 NFT 書籍,想搞清楚它到底是什麼。
我很快發現,所有這些書解釋 NFT 為什麼有價值,都說是因為稀缺性會產生價值。我覺得,這完全是胡說八道,我兒子的塗鴉就很稀缺,但根本不會有人想購買它們。
-- 《假書》
4、
沒有什麼比製造電子產品的原材料更能產生廢土和礦渣了。因為電子產品所需的材料必須非常純淨,為了達到這種純度,會產生大量廢棄物。
傳統採礦的礦渣可佔礦石的90%至99%,用於電子產品的採礦礦渣通常是99.9%或更高。
-- 《採礦業的有毒礦渣》
5、
因為有了網際網路,現在最聰明的年輕人比以往任何時候都聰明。
-- David Perell
歷史上的本週
2021年(第189期):下一個內卷的行業
2020年(第139期):生物學的可怕進展
2019年(第87期):新人要為團隊寫文件
2018年(第36期):程式設計師將來會不會過剩?
說明
週刊每週五發布在我的個人網站和微信公眾號《阮一峰的網路日誌》,歡迎訂閱。
週刊是開源的,自由使用,倉庫在 GitHub: ruanyf/weekly,投稿請到倉庫提交 issue。我們還開設了《誰在招人?》服務,歡迎釋出或檢視程式設計師招聘資訊。
商業合作和產品推廣,請郵件聯絡我(Email: [email protected] )。
鳴謝
文件和筆記服務 FlowUs 對週刊提供支援,非常感謝。
FlowUS 是新一代知識管理與協作平臺,整合了"文件+表格+網盤",具有寫文件、製作主頁、管理資料、儲存檔案等多種用途。
週刊開設了 FlowUs 專欄,歡迎大家也去開設自己的專欄和頁面。
(完)