跳到主要內容

[科技]Github 用 Ruby 征服全球千萬開發者,讓 60%工程師遠端工作。


  Github 誕生於 2008 年,現在已經是全球最大的代碼託管平台。然而鮮為人知的是,他們使用的技術棧非常簡易,Ruby、Shell 和 C。並且 6 成員工遠程工作,通過 Hubot 協作。


  Sam Lambert 在 2013 年加入 Github 公司,當時的身份是公司的第一名數據庫管理員,現在已經是 Github 的技術總監 。在去年他曾接受 Derrick Harris 的 採訪 ,解釋 作為一家全球性網站,是如何通過簡單便捷的技術棧,成功支撐起超過 1000 萬用戶,超過 2500 萬項目的。

  他還談到 Github 大型的遠程工作團隊,大概有 60% 的員工通過遠程工作,利用一個叫做 Hubot 的自動化工具協作。

  在內部開發產品和各種服務時,Github 特別推崇 Unix 哲學,採用最簡單的技術,實現眾多基礎性功能,對於復雜臃腫的過度工程化深惡痛絕。對於技術和項目的選擇,更講究實用主義。

  很久以來,網站許多關鍵基礎設施,都用的是 Shell 腳本,它們很有效,多年來用著很順利。

  網站創建於 2008 年,至今已經 8 年,最初網站使用 Ruby on Rails 構建,最初的版本是由創始人自己寫的,當然 Git 部分用的是 C 語言,處理 Git 請求,數據合併等事項。

  當初所有的數據都通過 MySQL 存儲,對於臨時性質的數據,也會採用 Redis 或者是 Memcache 做緩存。

  Github 剛成立時,技術棧就這麼簡單:C,Shell,以及 Ruby。並且在做新項目地時候,也不會盲目嘗試新的工具和語言。

  隨著網站規模的壯大,Github 的開發團隊成功吸引到多名 Ruby 的核心開發者,在日後的開發過程中,繼續保持技術棧的精簡和實用。

  對於新技術的態度,Sam Lambert 表示其實工程師在工作中的自由度很高,可以試用各種新技術,只不過在實施項目時偏保守。

  有趣的是,雖然全世界一半的新項目都由 Github 託管,但事實上 Github 僅採用了為數不多的幾個技術棧。

  隨著時間的積累,Github 的用戶量爆炸性增長,後面的技術上也面臨諸多挑戰。其中最複雜的是要處理 Git 的海量請求,Sam Lambert 沒有細說具體的技術細節,但表示依然是最簡原則,不要重新發明輪子。

  一直以來,性能都是工程師不懈的追求,Github 技術團隊也是。除非這個功能足夠快,否則就不要部署。

  對於硬體奢設施,Github 沒有使用任何雲服務,而是自建數據中心,當然,為了滿足龐大的使用量,Github 相當於構建了自己的私有雲平台,Github 擁有自己的基礎設施團隊,人數不多,但可以保障 Github 的正常運行。

  隨著用戶量的增長,團隊規模也隨著擴大。和眾多創業公司一樣,Github 也面臨招聘新員工的挑戰,既要具備足夠的能力,而且要認同 Github 的文化和發展方向,為了招聘到滿足需要的人手,Github 允許員工遠程工作,這樣可以招聘到其他國家和地區的員工。

  在 Github,大概 60% 的員工遠程工作,比如 Sam Lambert 就曾經周遊世界,在不同的地方工作,Github 推崇的正是分佈式遠程工作的文化。

  為了讓世界各地的員工分工協作,Github 使用 Hubot 工具。比如可以通過聊天的方式,詢問 Hubot 現在在哪裡,Hubot 可自動回复某成員當前在世界的哪個城市,或者在辦公樓的哪一層。

  Hubot 支持好幾十個命令,可以查詢 MySQL 狀態,可以做故障切換,可以刪除數據庫表,可以備份文件,可以復制轉移,可以做幾乎所有和運維相關的事。

  除了查詢其他同事的狀態,Hubot 還能實現監控功能,比如當某個服務器出現故障,Hubot 可以自動報警。

  Sam Lambert 認為,Hubot 代表了未來互聯網公司的運作方式,他可以適應性地把服務器等基礎設施以及分佈於世界各地的員工緊密連接到一起,人與機器之間無障礙交流溝通,解決了許多傳統企業未能解決的問題。

這個網誌中的熱門文章

[娛樂]最終未能「蟻人鑽肛門」,保羅苦笑喊「沒機會」。

  保羅路德最近正在宣傳 Netflix 最新影集「麥斯 2.0」,最近上節目「First We Feasts Hot Ones」時再度提到自己主演的漫威英雄「蟻人」在「復仇者聯盟:終局之戰」當中,未能一如眾多網友開玩笑的傳聞一樣,最後鑽入薩諾斯的肛門內擊倒他,然則保羅路德之前宣傳電影時已經揶揄這個傳聞多遍,如今再提往事,依舊脾氣極好的再度自嘲。   保羅路德在節目上說:「我真的覺得失去了一個機會。」隨後他在說完這句話之後立刻大笑,表態他在開玩笑,不過外界覺得最為誇讚的是他脾氣極好,早從去年宣傳「復仇者聯盟:無限之戰」、「蟻人與黃蜂女」時就不厭其煩想梗回應,如今再度提及此事,相當逗趣。   其實看過「復仇者聯盟:終局之戰」結尾的影迷都知道,最終是「鋼鐵人」犧牲自己來救助全世界,讓所有漫威影迷都非常喜歡這個結局,也有網友開玩笑說,看來保羅路德可以釋懷了。

[動畫]《一拳超人》第三季動畫的埼玉英雄視覺圖、特報影片、製作團隊和聲優情報公開。

  以 ONE 與村田雄介所創作的超級英雄題材動作漫畫《一拳超人》為原作,第三季電視動畫公開了主角埼玉視覺圖、特報宣傳影片、製作團隊和聲優陣容等情報。   《一拳超人》電視動畫第一季由 MADHOUSE 製作,於 2015 年 10 月開播;第二季改由 J.C.STAFF 製作,於 2019 年 4 月開播。2022 年 8 月宣布動畫第三季製作消息。目前已知第三季店是動畫將與第二季同樣由 J.C.STAFF 擔綱製作。   由 ONE 擔任原作、村田雄介負責作畫的漫畫作品《一拳超人》,描述就職過程中找不到出路的主角「埼玉」,遭遇到要奪走一位少年生命的螃蟹異變人後,回憶起年少年時「想要成為英雄」的想法,於是奮起戰鬥並救下了少年。重拾對於成為英雄的志向後,埼玉苦練了三年、以掉光所有頭髮為代價,化身成毫無弱點的超級英雄,只需一拳便能輕鬆地擊敗怪獸。之後他與弟子傑諾斯一起加入了英雄協會,開始了與眾多英雄對抗各種怪物的生活。

[科技]前Google實習生告訴你:如何進入Google實習、面試流程是什麼、實習生每天都在幹嘛?

  去Google工作是很多人的夢想,而大學時期能去Google實習更是為自己鋪平了成功之路。到底什麼樣的人才能進入Google實習?在Google實習是什麼樣子?傳聞中的那些Google福利是真是假?   日前,Fast Company 發表了一篇前 Google 實習生的日記,日記中詳細敘述了自己在Google實習的體驗。日記中說,讓他感觸最大的一點就是:「當 Google 尋找未來的員工時,除了簡歷裡的成就,他們更看重求職者是一個怎樣的人。」   過去二十年,Google 對我們的日常生活產生了巨大的影響——Android系統成為地球上最常用的系統,與此同時,它還不斷地在探索新興的硬體技術,包括 VR 頭戴裝置和無人機。   當人們談及科技行業的工作機會時,Google 總是在他們夢想加入的公司的榜首——這一點兒也不奇怪。根據 Vault 年度排名,在過去兩年,Google 一直是實習生最夢寐以求的公司,沒有之一。可是,怎樣才能得到 Google 的實習機會呢?下面就是去年夏天在 Google 實習過的史丹佛研究生 Kerry Wang 的經驗談。   在Google的角色。   我今年20歲,剛從史丹佛大學畢業。2016 年的夏天,我來到 Google 的新總部——加州山景城,開始了我的實習。實習共10周,從6月持續到8月。   我是「建立領導與發展機會(BOLD)計劃」的實習生。具體來說,我在 Google 的線上合作業務團隊擔任產品銷售負責人,主要工作是與業務團隊和工程團隊合作,在AdSense 平台上開發及推出產品。我喜歡與跨職能團隊合作,更喜歡解決他們提出的獨特問題。這些都得益於我在人類生物學和電腦科學方面的背景。   如何發現 Google 的實習機會?   BOLD 實習的申請是在我大一的時候開始的。當時,我看到一張 BOLD Discovery 的傳單,介紹說這是 Google 專門為本科生而設的計畫,地點在紐約。我決定立即申請。得知申請被透過時我簡直超級激動。在這趟包吃包住的紐約旅行中,我們用了三天時間,在 Google 總部,詳細的去瞭解公司的文化和業務。我喜歡這趟旅程中學到的東西,所以當 BOLD Discover y的招聘人員在兩年後開始招收 BOLD 實習生時,我立即提交了我的簡歷和申請。 ...