色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Max Howell因為不會翻轉一棵二叉樹,被Google拒絕

算法與數據結構 ? 來源:是不是很酷 ? 2020-09-03 10:52 ? 次閱讀

2015 年 6 月 10 日,Max Howell 發表了一篇推特:

簡單翻譯:Google 說,我們 90% 的工程師都使用你寫的軟件——Homebrew,但是因為你不能在白板上翻轉一棵二叉樹,所以,滾蛋。

這條 Twitter 在當年引發了不小的爭論。

Homebrew 是 MacOS 上的一款非常著名的軟件,它極大地簡化了在 macOS 上的軟件安裝和管理流程,所以使用者眾多,相當有業界影響力。如這條推特所說:Google 里 90% 的工程師都使用這款軟件。

Max Howell 就是 Homebrew 的創作者,也是一名業內知名的 MacOS / iOS 工程師。他曾經是著名的網絡電臺 Last.fm 的首席客戶端開發者,后來是 Twitter 的客戶端 TweetDeck 的首席移動開發者。

2015 年,Max Howell 決定加入 Google。但是,根據 Max Howell 的敘述,他去 Google 面試,作為一名 iOS 業界專家,面試官沒有問任何和 iOS 相關的問題。

Max Howell 的面試進行到第七輪,在一道算法題上出了問題。這個算法問題就是:翻轉一棵二叉樹。

這其實是一個很簡單的算法問題。相信對很多還沒有畢業的計算機專業的同學,都是很容易的。

其實,如今我們也已經很難判斷 Max Howell 到底是不是真的不會這個算法問題?還是只是對這樣的面試流程抗議?

我們也很難分辨,Google 不聘請 Max Howell 的真實原因,到底是因為他沒有解答出這個問題?還是有其他原因?

對這些問題的分析,在當年很流行。有業內人士指出,Google 出這么簡單的算法問題,顯然已經是在放水了。而 Google 決定不招聘 Max Howell 的真實原因,很有可能不是能力問題,而是在面試過程中認為,Max Howell 的個人性格不適合 Google 的文化。

畢竟,面試不是考試,不是把問題回答正確就可以了。很多時候,面試的過程,是面試官在看,和候選人共事,共同探討一個問題,共同解決一個問題,是怎樣的體驗。

還有很多人據此吐槽硅谷大公司的招聘方式。

有的人說:Facebook 不要我,因為我解不出八皇后問題。

有的人說:曾經 Amazon 讓我翻轉一個鏈表,當時我的靈魂就已逃離了那個房間。

有的人說:如果問我如何翻轉一棵二叉樹,我會當場把那個白板翻過來,然后說,看,我完成了。

還有人說:1997 年,Google 面試了我 6 個小時。最后一個問題是:為什么我們要聘用你?我的回答是:你們 TM 自己想吧。最后我拿到了 offer。

對于當代計算機行業,算法是不是一定這么重要?我的回答是,不一定。為此,我寫過一篇文章:算法到底有什么用?對你來說可能真的沒用。

那大公司面試為什么總要考算法?對此,我寫過一篇文章,叫:大廠面試為什么總考算法?以及如何避開算法面試。

但如今,5 年時間過去了,這一切爭論,對于當事人來說,或許都不重要了。無論是 Max Howell,還是 Google,都在這五年間,做出了不錯的成績。

大家雖然沒有合作,但都有很好的未來。

而就在最近,我無意中翻到了 Quora 上對這個問題討論的一個“老帖子”。

這個問題在 Quora 上是這樣的:Homebrew 的作者 Max Howell 因為不會翻轉一棵二叉樹,被 Google 拒絕,這背后的邏輯到底是什么?

沒想到兩年以后,在 2017 年的 12 月份,Max Howell 自己親自回答了這個問題。

Max Howell 的這個回答,我今年才看到。說實話,我讀了好幾遍。語言并不多,但卻讓我感觸頗深,以至于我想逐句翻譯,和大家分享。

以下是 Max Howell 的回答。

Hi, I’m Max Howell, I’ve spent the last two years not answering this, and many questions like it. Maybe I shouldn’t answer this.

大家好,我是 Max Howell。我嘗試用了兩年時間,不去回答這個問題,或者千千萬萬個和這個問題類似的問題。或許,我不應該回答這個問題。

So, what's the logic? Clearly I wrote something worthy of Google, right?

Google 拒絕我的邏輯到底是什么?很明顯,我寫了一些值得去 Google 的代碼,對吧?

Well, no I didn't. I wrote a simple package manager. Anyone could write one.

其實,不是這樣的。我只寫了一個很簡單的軟件包管理工具。任何人都能寫出來。

And in fact mine is pretty bad. It doesn't do dependency management properly. It doesn’t handle edge case behavior well. It isn’t well tested. It’s shit frankly.

實際上,我寫的非常差。它甚至沒有做好軟件包的依賴管理。它也不能很好地處理很多用戶的邊界行為。它沒有被充分測試。坦白地說,它就是一坨屎。

Is it any surprise I couldn’t answer their heavily computer-science questions well?

所以,如果我不能很好地回答那種“重量級”的計算機科學問題,真的那么驚訝嗎?

On the other hand, my software was insanely successful. Why is that?

但是,另一方面,我的軟件不可思議的成功。為什么?

Well the answer is not in the realm of computer science. I have always had a user-experience focus to my software.

我想,答案和計算機科學無關。或許是因為,我在我的軟件中,總是更關注用戶體驗。

Homebrew cares about the user.

Homebrew 在乎它的用戶。

When things go wrong with Homebrew it tries as hard as it can to tell you why, it searches GitHub for similar issues and points you to them. It cares about *you*.

當軟件發生問題的時候,Homebrew 會盡最大的可能告訴你:為什么?它會在 Github 上搜索類似的 issues,并且將你指向這些可能的問題解決方案。它在乎*你*。

Most tools don’t give a shit about you. If they go wrong, well screw you. Homebrew helps you. And if it can’t help you I made it so, so easy to fix Homebrew (I built a command into the base for editing and fixing Homebrew). You can make Homebrew better.

大多數工具不在乎你。如果事情出現了問題,那么你將一籌莫展。Homebrew 在嘗試幫助你。甚至,如果它無法幫助你,你可以直接修改它!(我創建了一個命令,可以讓你直接去編輯或者修改 Homebrew。)你可以讓 Homebrew 更好。

Homebrew is a shining example of true Open Source.

我堅信:Homebrew 是真正開源世界中一顆閃亮的星。

Maybe Homebrew doesn’t do dependency management well, but it does it in a way you care about.

或許 Homebrew 沒有很好地完成依賴管理,但是,它用一種可能你更關心的方式完成了它。

Unlike the competition at the time Homebrew used the dependencies on your Mac as a base thus saving you intense amounts of time installing software and quite a lot of pain, because practically speaking a large dependency graph breaks.

不像當時的大多數競爭者,Homebrew 直接使用你的 Mac 上的軟件依賴關系作為基礎,從而為你節省了大量安裝軟件的時間,少了很多痛苦。因為,根據我的經驗,使用一個更大的依賴圖,事情總是會出問題。

But that isn't computer science and it didn’t involve any graphs or trees so I guess I suck.

但是,這一點和計算機科學沒有半點關系,也不牽扯到任何圖或者樹這類我完全不擅長的東西。

I want to defend Google, for one I wasn't even inverting a binary tree, I wasn’t very clear what a binary tree was.

在這里,我想為 Google 辯解兩句。我確實不會如何翻轉一棵二叉樹。我甚至不是特別清楚二叉樹到底是什么。

I studied Chemistry not Comp-Sci. Sure, for my masters dissertation I used Mathematica and modeled the quantum mechanical properties of Helium—I did a good job actually—but it wasn’t computer science.

我的專業其實是化學,不計算機科學。當然,我的碩士論文中使用了數學,并且為氦原子的量子學特性進行了建模。我相信我的碩士論文還不錯,但這和計算機科學無關。

But well, what the fuck does comp-sci have to do with modern app development? And well, that’s all I want people to take from my tweet.

但是,計算機科學,到底和現代軟件 App 的開發有什么關系?這是我希望大家通過我的推特,去思考的東西。

Google in fact gave me seven interviews and I did well in the software engineering ones, because that is actually my talent.

Google 實際上給了我七輪面試。在軟件工程面試中,我是相當出色的。這是我的天賦所在。

I feel bad about my tweet, I don’t feel it was fair, and it fed the current era of outragism-driven-reading that is the modern Internet, and thus went viral, and for that I am truly sorry.

對于我發的那條推特,我也會覺得它可能不合適。這條推特為很多“憤青”提供了“養料”,并且火了。這就是現代互聯網。對此,我感到抱歉。

But ultimately, should Google have hired me? Yes, absolutely yes.

但如果問我,Google 是不是應該聘用我?我的回答絕對是:是的,Google 絕對應該聘用我。

I am often a dick, I am often difficult, I often don’t know computer science, but. BUT. I make really good things, maybe they aren't perfect, but people really like them.

我承認,我是個混蛋,我很難相處,我不懂那么多計算機科學。但是,但是,我創造了優秀的作品。或許它不完美,但人們喜歡它。

Surely, surely Google could have used that.

其實,Google 本是可以抓住這一點的。

通過這個回答,我相信大家可以看出來,Max Howell 依然是那個“狂妄”的開源作者。我嚴重懷疑我的翻譯讓他謙虛了一些。實際上,上面的翻譯,我修改了一稿,把一些原本我個人習慣使用的“謙虛”的用法去除了。

但這個回答給我感觸最深的,是 Max Howell 描述的關于 Homebrew 的理念。用一個比較俗套的成語總結,就是以人為本。說的不要那么文騶騶,就是尊重你的用戶。

我在國內做 iOS 開發,算比較早的。2011 年開始,陸陸續續上架了幾個小 App,直到大概 2015 年停止維護。

學習 iOS 開發的過程確實極大地拓展了我的技術視野,因為 iOS 開發和我之前接觸的大多數技術棧都極其不同。但是,這么多年過去以后,回頭看,這段經歷讓我收獲了更多和技術無關的東西。

我第一次感受到了:技術和人的距離,竟然如此之近。

有一名老爺爺,在 2017 年給我發來一封郵件,讓我感觸頗深。

郵件中,他給我的 App 提了一些建議,并且告訴我,他已經使用我的這個小 App 三年了。

后來,我跟他隨便聊了兩句,他說他住在美國一個鳥不拉屎的小鎮上,他自稱自己是名藝術家,還出版了一本和藝術相關的圖書。

他給我了一個亞馬遜鏈接,我說我不會買的。他打回一個笑 cry 的 emoji

這是我第一次意識到,冷冰冰的代碼,竟然可以連接無論是年齡,國籍,種族,地理位置,職業,以及性格,都如此遙遠的兩個人。

后來,我在慕課網出了一些課程。

在這個過程中,給我感觸最深的,是在課程的問答區,我和大家的交流。說句實話,我學會了很多東西。很多東西在技術之外,但是,它們被技術,連接在了一起。

所以我決定寫公眾號。我想,對于更加廣泛的技術世界的探討,或許能讓大家帶給我更多的啟發。我的目的是自私的。

有很多同學問我各種問題,但我不是各個領域的專家,對于一些過于細節的問題,也沒有時間精力在非課程的問答區一一解答。所以我又開設了知識星球,大家可以在那里暢所欲言。從技術提問,到發表觀點。

可能并不是所有的觀點我都贊同,但我喜歡這種觀點的碰撞。每次這種碰撞后,都能帶給我更深刻的思考。

我想,這就是“人”的魅力。

我喜歡代碼,喜歡邏輯,喜歡它們的嚴謹,以及這種嚴謹背后,依然可以產生的無限可能。

我高中畢業后選擇計算機專業,是因為我以為,使用計算機,我可以憑空創造出一個完全屬于我自己的宇宙。

后來,我才慢慢發現,我們的宇宙之所以精彩,不是因為上帝的邏輯有多么嚴謹。而是因為,有我,有他,有她,還有你。

因為人。

或許,這就是我會突然如此崇拜這名,不會翻轉二叉樹的大神,的原因吧。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Google
    +關注

    關注

    5

    文章

    1766

    瀏覽量

    57590
  • 算法
    +關注

    關注

    23

    文章

    4615

    瀏覽量

    93000
  • 二叉樹
    +關注

    關注

    0

    文章

    74

    瀏覽量

    12344

原文標題:不會翻轉二叉樹的大神

文章出處:【微信號:TheAlgorithm,微信公眾號:算法與數據結構】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    adc128s052設備配置,基準電壓不能內核識別是怎么回事?

    這是目前我配置的設備信息,不能通過編譯,原因是無法識別vdd_supply,請問該處該怎么配置才行,我用的是該芯片的VA引腳接 3.3V的基準電壓 compatible = \"ti
    發表于 11-29 16:00

    先進封裝中的翻轉芯片技術概述

    引言 翻轉芯片技術已成為半導體行業中不可或缺的封裝方法,在性能、尺寸減小和功能增加方面具有優勢。本文概述翻轉芯片技術,包括晶圓凸塊制作工藝、組裝方法和進展。 翻轉芯片技術簡介 翻轉芯片
    的頭像 發表于 11-27 10:58 ?458次閱讀
    先進封裝中的<b class='flag-5'>翻轉</b>芯片技術概述

    什么是默克爾(Merkle Tree)?如何計算默克爾根?

    01 默克爾的概念 默克爾(Merkle Tree)是種特殊的二叉樹,它的每個節點都存儲了個數據塊的哈希值。哈希值是
    的頭像 發表于 09-30 18:22 ?964次閱讀
    什么是默克爾<b class='flag-5'>樹</b>(Merkle Tree)?如何計算默克爾根?

    今日看點丨Google面臨美國司法部拆分風險;NVIDIA Blackwell AI服務器遭遇&quot;組件短缺&quot;

    1. Google 面臨美國司法部拆分風險 ? 美國法官裁定 Alphabet 旗下的搜尋引擎龍頭 Google (Google) 存在非法壟斷行為后,消息人士報導,美國司法部考慮尋
    發表于 08-14 11:03 ?776次閱讀

    指電極上覆蓋敏感材料的阻值計算

    覆蓋的敏感材料厚度超出指厚度時計算電阻,是否可以視作指電極指間電阻多個周期串聯后與超出指厚度部分敏感材料電阻并聯
    發表于 07-05 14:48

    EVASH Ultra EEPROM:Google認定為五大硬件廠商之

    EVASH Ultra EEPROM:Google認定為五大硬件廠商之
    的頭像 發表于 07-01 12:47 ?340次閱讀

    使用google-translate和wwe合并后無法使用google-tts怎么解決?

    我打算使用lyrat-mini做個使用喚醒詞喚醒然后后續通過google-sr和google-tts進行交流的聊天機器人,但是當我合并了adf的例子中的wwe和google-tran
    發表于 06-28 06:05

    指MOSFET器件靜電防護魯棒性提升技巧

    柵極接地NMOS是種廣泛應用的片上ESD器件結構,為達到特定ESD防護等級,般會采用多指版圖形式來減小器件占用的芯片面積。但是,多指柵極接地NMOS在ESD應力作用下,各個
    的頭像 發表于 06-22 00:50 ?534次閱讀
    多<b class='flag-5'>叉</b>指MOSFET器件靜電防護魯棒性提升技巧

    以全棧智算擁抱生態,為AIGC種一棵向上生長的巨榕

    以新華三為代表的ICT廠商,將為百行百業提供新質生產力的動能
    的頭像 發表于 04-30 06:47 ?1683次閱讀
    以全棧智算擁抱生態,為AIGC種<b class='flag-5'>一棵</b>向上生長的巨榕

    中國工程師指盜竊Google機密還轉給中國企業 正面臨起訴

    據媒體報道,曾在Google任職的中國人丁林葳指盜竊了Google TPU、GPU等相關技術機密,還轉給中國企業,目前正面臨起訴。
    的頭像 發表于 03-11 14:17 ?823次閱讀
    中國工程師<b class='flag-5'>被</b>指盜竊<b class='flag-5'>Google</b>機密還轉給中國企業 正面臨起訴

    求助,關于STM32F103翻轉使用的疑問求解

    通用定時器輸出比較TIM2,F103.根據參考手冊輸出比較是CNT與CRR比較。CNT=CRR翻轉。程序設置:定時器時鐘72M,預分頻系數71,ARR=999.CRR為499.實際仿真波形和示波器輸出波形1ms翻轉次。為什么不
    發表于 03-11 07:47

    哈夫曼編碼怎么算 哈夫曼編碼左邊是0還是1

    二叉樹,將出現頻率高的字符用較短的編碼表示,而出現頻率低的字符則用較長的編碼表示。通過這種方式,可以實現對數據進行高效的編碼和解碼。 下面我們將詳細介紹哈夫曼編碼的算法過程。 統計字符頻率 在進行哈夫曼編碼前,首先需
    的頭像 發表于 01-30 11:27 ?3095次閱讀

    instance是何時翻轉的?每次有多少instance在翻轉

    在run dynamic vectorless IR時,instance是何時翻轉的?每次有多少instance在翻轉
    的頭像 發表于 01-26 09:31 ?579次閱讀
    instance是何時<b class='flag-5'>翻轉</b>的?每次有多少instance在<b class='flag-5'>翻轉</b>?

    文讀懂:圖像特征檢測算法!

    而斑點與角點是兩類局部特征點。斑點通常是指與周圍有著顏色和灰度差別的區域,如草原上的一棵樹棟房子。它是個區域,所以它比角點的噪能力要強,穩定性要好。而角點則是圖像中邊物體的拐角
    的頭像 發表于 01-18 16:37 ?1577次閱讀
    <b class='flag-5'>一</b>文讀懂:圖像特征檢測算法!

    MCP251X can驅動移植nuc980采樣用設備配置時,中斷如何配置設備?

    MCP251X can驅動移植nuc980 采樣用設備配置時,中斷如何配置設備? spi0: spi@b0061000 { status = \"okay\"
    發表于 01-17 06:43
    主站蜘蛛池模板: 一二三四在线视频社区| 亚洲精品久久久午夜福利电影网| 卫生间被教官做好爽HH视频| 国产精品视频免费视频| 亚洲精品不卡在线| 狂野欧美性猛XXXX乱大交| 99热久久精品国产一区二区| 肉色欧美久久久久久久蜜桃| 嗨嗨快播电影| 99热这里只有精品6| 久久99热狠狠色AV蜜臀| 竹菊精品久久久久久久99蜜桃 | 国产人成无码视频在线观看| 一区二区不卡在线视频| 强行撕开衣服捏胸黄文| 国产精品久久婷婷五月色| 张津瑜的9分58秒7段免费| 日日撸影院在线| 久久99国产综合精品AV蜜桃| 扒开老师大腿猛进AAA片| 亚洲精品一二三| 强壮的公次次弄得我高潮韩国电影| 国产性色AV内射白浆肛交后入| 99精品国产免费观看视频| 亚洲高清国产拍精品影院| 欧美日韩1区| 九热这里只有精品| 动漫美女无衣| 60老妇性xxxxhd| 亚洲国产区中文在线观看| 飘雪在线观看免费完整版| 精品第一国产综合精品蜜芽| 一本到道免费线观看| 日本久久频这里精品99| 九九夜夜妹子| 国产成人无码一区AV在线观看 | 亚洲国产在线视频中文字| 青草伊人久久| 久久免费特黄毛片| 国产精品一区二区三区免费| 99久久婷婷国产麻豆精品电影 |