我們如何在矽谷建立公司

我們如何在矽谷建立公司從海灣東側看舊金山

你好哈布爾,

在這篇文章中,我將討論我們如何在矽谷建立一家公司。 在四年的時間裡,我們從一家位於舊金山一棟大樓地下室的兩人新創公司發展成為一家知名的大公司,擁有來自知名基金(包括 a30z 等巨頭)的投資超過 16 萬美元。

剪輯下面有很多關於Y Combinator、風險投資、團隊搜尋以及矽谷生活和工作的其他方面的有趣故事。

2011年我來到矽谷,加入了MemSQL,一家剛從Y Combinator畢業的公司。 我是 MemSQL 的第一位員工。 我們在我們居住的門洛帕克市的一套三居室公寓裡工作(我和妻子住在一個房間,首席執行官和他的妻子在另一個房間,公司的首席技術官 Nikita Shamgunov 睡在沙發上)在客廳)。 時光飛逝,如今的 MemSQL 已成為一家擁有數百名員工、數百萬美元交易額並在舊金山市中心設有辦事處的大型企業公司。

2016 年,我意識到公司已經無法滿足我的需求,並決定是時候開始一些新的事情了。 尚未決定下一步該做什麼時,我坐在舊金山的一家咖啡店裡,閱讀那一年有關機器學習的文章。 另一個年輕人坐在我旁邊說:“我注意到你正在閱讀有關打字機的文章,我們來認識一下吧。” 這樣的情況在舊金山很常見。 咖啡館、餐廳和街上的大多數人都是新創公司或大型科技公司的員工,因此遇到這樣的人的可能性非常高。 在咖啡館與這位年輕人又進行了兩次會面後,我們決定開始建立一家開發智慧助理的公司。 三星剛剛收購了 VIV,Google發布了 Google Assistant,未來似乎正朝著這個方向發展。

作為舊金山有多少人在IT 領域工作的另一個例子,一兩週後,同一個年輕人和我坐在同一個咖啡店裡,我正在對我們未來的網站進行一些更改,而他沒有什麼可做的做。 他只是轉向坐在我們桌子對面的一個隨機年輕人,問道:“你會打字嗎?”,年輕人驚訝地回答:“是的,你怎麼知道?”

2016年XNUMX月,我們決定開始籌集創投。 我認為與頂級投資者會面會非常困難。 事實證明這是完全錯誤的。 如果投資人對一家公司能否起飛有哪怕一絲懷疑,他們會很樂意花一個小時的時間進行討論。 在一家沒有出路的公司上浪費一個小時的大概率比錯過下一個獨角獸的小概率要好得多。 事實上,我是 MemSQL 的第一位員工,這讓我們能夠在工作一周內與矽谷的六位非常酷的投資者進行會議。 我們受到了啟發。 但是,正如我們輕鬆地接受這些會議一樣,我們也失敗了這些會議。 投資者每天與像我們這樣的團隊會面幾次,並且能夠在最短的時間內了解他們前面的人不知道他們在做什麼。

應用於 Y Combinator

我們需要提高建立公司的技能。 創建公司不是寫程式碼。 這意味著了解人們的需求,進行使用者研究,製作原型,正確決定何時轉向和何時繼續,找到適合市場的產品。 正是在此時,Y Combinator Winter 2017正在進行招募。Y Combinator是矽谷最負盛名的加速器,Dropbox、Reddit、Airbnb、甚至MemSQL等巨頭都經過它。 Y Combinator 和創投家的標準非常相似:他們需要從矽谷大量公司中選擇少數公司,並最大限度地抓住下一個獨角獸的機會。 要加入 Y Combinator,您需要填寫一份申請表。 問卷會拒絕約 97% 的申請,因此填寫問卷是一個非常負責任的過程。 問卷調查結束後,進行採訪,切斷了剩下一半的公司。

我們花了一週的時間填寫表格,重新填寫,與朋友一起閱讀,再次閱讀,再次填寫。 結果,幾週後我們收到了面試邀約。 我們進入了 3%,剩下的就是進入 1.5%。 面試在YC山景城總部(距離舊金山40分鐘車程)進行,長度為10分鐘。 所提出的問題大致相同且是眾所周知的。 網路上有一些網站將計時器設定為 10 分鐘,並隨機選擇並顯示知名手冊中的問題。 我們每天都會在這些網站上待上幾個小時,並邀請幾位曾經訪問過 YC 的朋友來採訪我們。 總的來說,我們比一個月前更認真地對待與投資者的會議。

採訪的那天非常有趣。 我們的面試是上午10點左右。 我們很早就到了。 對我來說,面試當天提出了一定的挑戰。 由於我的公司顯然還沒有起飛,我透過在 OpenAI 開始試用期來分散我的時間投資。 OpenAI 的共同創辦人之一 Sam Altman 也是 Y Combinator 的總裁。 如果我接受他的面試,並且他在我的申請中看到 OpenAI,毫無疑問他會向我的經理詢問我在試用期間的進展。 如果我不進入Y Combinator,那麼我在OpenAI的試用期也會受到很大的懷疑。

幸運的是,薩姆·奧爾特曼並不在採訪我們的團隊中。

如果 Y Combinator 接受一家公司,他們會在同一天打電話。 如果他們拒絕,他們會在第二天寫一封電子郵件,詳細解釋原因。 因此,如果你到晚上還沒有接到電話,那就代表你運氣不好。 如果他們打電話,那麼無需拿起電話,您就可以知道他們帶走了我們。 我們很輕鬆地通過了面試,所有的問題都是手冊上的。 我們受到啟發,去了北方艦隊。 半小時過去了,距離市區還有十分鐘路程,我們接到了電話。

進入 Y Combinator 幾乎是每個在矽谷創辦公司的人的夢想。 電話響起的那一刻是我職業生涯中最難忘的三個時刻之一。 展望未來,三者中的第二者將在同一天幾個小時後發生。

電話那頭的女孩並不急於告訴我們關於我們接待的消息。 她告訴我們他們需要進行第二次採訪。 這是一個罕見的事件,但網路上也有報導。 有趣的是,根據統計,在要求二次面試的公司中,同樣有50%的人接受,即需要返回的事實給了我們0個關於是否進入YC的新資訊。

我們轉身就回來了。 我們走近房間。 薩姆·奧特曼. 厄運…

我在 Slack 中給 OpenAI 的經理寫信說,就這樣了,我今天要去 Y Combinator 面試,Sam 可能會寫信給你,不要驚訝。 一切都很順利,我在 OpenAI 的經理非常積極。

第二次面試持續了五分鐘,他們問了幾個問題,就讓我們走了。 我們粉碎它們的感覺並不一樣。 面試的過程中,彷彿什麼事都沒發生。 我們去了舊金山,這次靈感較少。 30分鐘後,他們再次打電話。 這次宣布我們已被錄取。

Y組合

在 Y Combinator 的經歷非常有用且有趣。 每週一次,週二,我們必須去他們位於山景城的總部,在那裡我們與經驗豐富的人坐在一起,與他們分享我們的進展和問題,他們與我們討論可能的解決方案。 每週二結束的晚宴上,各路成功創業家紛紛發言,暢談自己的經驗。 Whatsapp 的創始人在最後的晚宴上發表了講話,非常令人興奮。

與同一批人中其他年輕公司的交流也很有趣。 不同的想法,不同的團隊,每個人都有不同的故事。 他們很高興地安裝了我們助手的原型並分享了他們的印象,我們也使用了他們服務的原型。

此外,還創建了一個入口網站,我們可以隨時與在公司建立各個領域(銷售、行銷、用戶研究、設計、用戶體驗)擁有經驗的各種聰明人舉行會議。 我們經常使用它並獲得了很多經驗。 這些傢伙幾乎都在北方艦隊,所以他們甚至不需要走很遠。 通常你甚至不需要汽車。

尋找另一位共同創辦人

你們不能一起創辦一家公司。 但 YC 在計畫開始時提供了 150 萬美元。 我們需要找人。 考慮到我們幾乎不知道自己寫的是什麼,尋找員工仍然是一個失敗的事業,但也許我們會找到另一個想和我們一起成為共同創辦人的人? 我在大學時參加過 ACM ICPC,許多在我這一代參加 ACM ICPC 的人現在都在矽谷取得了成功的職業生涯。 我開始寫信給現在住在舊金山的老朋友。 如果在前五則訊息中我沒有找到想要建立公司的人,那麼這個山谷就不再是一個山谷了。 我的一位 ICPC 朋友的妻子在 Facebook 建立了非常成功的職業生涯,但正在考慮離開並創辦一家公司。 我們見過面。 她也已經在積極尋找共同創辦人,並將我介紹給她的朋友伊利亞·波洛蘇欣 (Ilya Polosukhin)。 Ilya 是建置 TensorFlow 團隊的工程師之一。 經過幾次會面,女孩決定留在Facebook,Ilya作為第三位創辦人來到我們公司。

首頁 近鄰

在 YC 之後,籌集創投變得容易一些。 在該計劃的最後幾天,Y Combinator 組織了一次演示日,向 100 名投資者進行推廣。 YC 建立了一個系統,投資者在演示過程中表達對我們的興趣,我們在一天結束時表達對他們的興趣,然後在那裡建立加權匹配,我們與他們會面。 我們籌集了 400 萬美元,Ilya 和我並沒有太多參與這個過程,我們編寫了程式碼,所以我無法講述很多有趣的故事。 但有一個。

在行銷方面,我們在舊金山與頂尖研究人員(其中許多人在 Google Brain、OpenAI 工作,在史丹佛大學或柏克萊大學學習,因此地理位置位於山谷中)舉行了機器學習會議,並建立了一個當地社區。 在其中一次會議上,我們說服了該領域絕對頂尖的研究人員之一作為我們的顧問。 當我們幾乎簽署文件時,一週後他意識到他現在的公司不允許他擔任顧問。 但他覺得他讓我們失望了,所以他建議我們不要提供建議,只要投資我們。 公司規模雖小,但聘請該領域的頂尖研究人員不僅作為顧問,而且作為投資者,這非常酷。

已經是2017年10月了,Google Pixel問世並受到歡迎。 不幸的是,與內建的谷歌助理不同。 我從朋友那裡借了 Pixel,按下主頁按鈕,十分之十的我看到「在第一次使用 Google Assistant 之前先設定它」。 三星沒有以任何方式使用購買的VIV,而是發布了帶有硬體按鈕的Bixby,並且用手電筒取代Bixby的應用程式在三星商店中流行起來。

在這一切的背景下,伊利亞和我對助理未來的信心逐漸消失,我們離開了那家公司。 我們立即成立了一家新公司,Near Inc,失去了我們的 Y Combinator 徽章、400 萬美元,以及在此過程中作為投資者的頂級研究員。

那時,我們都對程式綜合的主題非常感興趣 - 當模型本身編寫(或添加)程式碼時。 我們決定深入研究這個主題。 但你根本不能沒有錢,所以首先你需要彌補損失的 400 萬美元。

風險投資

那時,在我和伊利亞的約會圖表中,幾乎所有矽谷的投資者都只有一兩次握手的距離,所以,就像第一次一樣,很容易就能見面。 第一次會議進行得很糟糕,我們多次被拒絕。 據我所知,在這次以及接下來我將參加的兩次籌款活動中,在第一個「是」之前,我需要收到投資者的數十個「否」。 在第一次「是」之後,下一個「是」將在接下來的 2-3 次會議中出現。 一旦有兩三個YES,就幾乎沒有更多的NO了,從所有YES中選擇誰就成了問題。

我們的第一個「YES」來自投資者X。我不會說X的任何好話,所以我不會提及他的名字。 X在每次會議上都會降低公司的評級,並試圖添加對團隊和創始人不利的額外條款。 與我們一起在 X 工作的人在他職業生涯的早期是一家大型基金的投資者,對他來說,完成一筆非常有利可圖的交易是他職業生涯的階梯。 由於除了他之外沒有人告訴我們“是”,所以他可以要求任何東西。

X向我們介紹了一些其他投資者。 投資者不喜歡單獨投資,他們喜歡與他人一起投資。 擁有其他投資者使得他們更有可能不會犯錯(因為其他人認為這是一項很好的投資)並增加了公司的生存機會。 問題是,如果X把我們介紹給Y,之後Y就不會在沒有X的情況下投資,因為這會打X的臉,而且他們還得經常打交道。 在這些熟人之後,第二個「是」來得相對較快,然後是第三個和第四個。 問題是,X想榨乾我們所有的汁液,在最不利的條件下給我們錢,而從X那裡了解我們的其他投資者可能準備好以更好的條件投資我們,但不會這樣做X回來了

在舊金山的一個陽光明媚的早晨,我收到了 MemSQL 時任首席執行官 Nikita Shamgunov 的一封信,“將 Alex (NEAR) 介紹給 Amplify Partners。” 確切地說,17 分鐘後,完全獨立且純屬巧合,X 收到了一封標題完全相同的信。 Amplify 的成員們都非常酷。 X 提供給我們的條件對他們來說似乎很嚴厲,但他們願意以合理的條件投資我們。 許多投資者願意與 Amplify 一起投資。 在這種情況下,我們放棄了X投資,並以Amplify為領投方進行了一輪融資。 Amplify 也不樂意投資繞過 X,但由於第一個介紹來自 Nikita,而不是 X,所以每個人之間都找到了共同語言,並且沒有人被任何人冒犯。 如果尼基塔那天晚 18 分鐘寄出這封信,事情可能會更複雜一些。

我們現在有了800 萬美元的生活費,並開始了為期一年的PyTorch 硬核建模,與山谷中的數十家公司交談,以了解程序合成可以在實踐中應用的地方,以及其他不是很有趣的冒險。 到 2018 年 XNUMX 月,我們在模型上取得了一些進展,並在 NIPS 和 ICLR 上發表了幾篇文章,但不了解當時可達到的水平的模型可以在實踐中應用到哪裡。

初識區塊鏈

區塊鏈的世界是一個非常奇怪的世界。 我很長一段時間都刻意避開他,但最後我們還是相遇了。 在我們尋找程式綜合應用程式的過程中,我們最終得出的結論是,程式綜合和形式驗證相關主題的交叉點可能對智慧合約非常有用。 我們對區塊鏈一無所知,但如果我的老朋友中沒有至少幾個對這個主題感興趣的話,這個山谷就不是一個山谷了。 我們開始與他們溝通,意識到形式化驗證很好,但區塊鏈有更迫切的問題。 2018 年,以太坊在處理負載方面已經遇到了困難,開發一種運行速度明顯更快的協議是一個非常緊迫的問題。

當然,我們遠遠不是第一個提出這樣想法的人,但對市場的快速研究表明,儘管競爭激烈且激烈,但我們還是有可能贏得競爭的。 更重要的是,Ilya 和我都是非常優秀的系統程式設計師。 當然,我在 MemSQL 的職業生涯更接近開發協議,而不是在 PyTorch 上建立模型,而 Google 的 Ilya 是 TensorFlow 的開發人員之一。

我開始與我以前的 MemSQL 同事和 ICPC 時代的隊友討論這個想法,結果發現,在我交談的五分之四的人中,建立快速區塊鏈協議的想法很有趣。 2018 年 XNUMX 月的某一天,NEAR 從三人增加到七人,並在接下來的一周內增加到九人,當時我們聘請了一名營運主管和一名業務開發主管。 同時,人的水平簡直不可思議。 所有工程師要么來自早期的 MemSQL 團隊,要么在 Google 和 Facebook 工作多年。 我們三個人獲得了 ICPC 金牌。 最初的七名工程師之一曾兩次獲得ICPC。 當時有六位雙料世界冠軍(現在有九位雙料世界冠軍,但現在其中兩人在NEAR工作,所以隨著時間的推移,統計數據有所改善)。

這是爆炸性的增長,但也存在一個問題。 沒有人免費工作,舊金山市中心的辦公室也遠不便宜,一年後剩下的 800 萬美元足以支付 1.5 個人的辦公室租金和谷底工資,這是有問題的。 NEAR 還剩下 XNUMX 個月的時間,銀行的餘額就為零了。

創投再次投資

白板室有8位非常強大的系統程式設計師,平均經驗約為XNUMX年,我們能夠快速為協議提出一些合理的設計,並回去與投資者溝通。 不幸的是,許多投資人迴避區塊鏈。 當時(甚至現在)這個行業裡機會主義者的數量多得令人難以置信,而且很難區分認真的人和機會主義者。 由於一般投資人正在迴避區塊鏈,我們需要去找專門投資區塊鏈的投資人。 矽谷也有很多這樣的投資者,但這是一個完全不同的群體,與不專門從事區塊鏈的投資者幾乎沒有重疊。 不出所料,我們最終在一次握手中與我們的約會專欄中的人和此類基金中的人建立了聯繫。 Metastable 就是這樣的基金之一。

Metastable 是一家頂級基金,獲得他們的肯定意味著幾乎立即結束本輪融資。 那時我們已經達到了 3-4 個 NO,可以交談的基金數量正在迅速減少,就像 NEAR 失去生計之前的時間一樣。 Metastable 有一些非常聰明的人從事這方面的工作,他們的工作就是分解我們的想法並找到我們設計中最小的缺陷。 由於我們當時的設計已經有幾天了,就像我們當時在區塊鏈方面的經驗一樣,在與 Metastable 的一次集會上,他們摧毀了 Ilya 和我。 存錢筒裡的NO數量又增加了XNUMX個。

在接下來的幾周里,董事會的工作繼續進行,設計開始變得嚴肅。 我們當然很匆忙地與 Metastable 會面。 如果現在召開會議,就不可能如此輕易地摧毀我們。 但僅兩週後,Metastable 就不會與我們見面了。 怎麼辦?

已經找到解決方案。 在 Ilya 生日之際,他在自己家的屋頂上舉辦了燒烤活動(與北方艦隊公寓大樓的許多屋頂一樣,這是一個維護良好的公園),邀請了所有 NEAR 員工和朋友,其中包括 Ivan Bogaty是Ilya當時在Metastable工作的朋友,還有其他一些投資者。 與在會議室向投資者推銷不同,燒烤會為整個 NEAR 團隊提供了一個機會,讓他們可以在輕鬆的環境中,手拿啤酒,與 Ivan 和其他投資者談論我們當前的設計和目標。 燒烤快結束時,伊凡走到我們跟前說,看來我們有機會再見面了。

這次會議進展順利,伊利亞和我能夠保護設計免受潛在問題的影響。 幾天后,Metastable 邀請我們在 Angellist 辦公室會見其創辦人 Naval Ravikant。 辦公室裡空無一人,因為幾乎整個公司的人都去了火人節。 在這次會議上,“否”變成了“是”,NEAR不再處於死亡邊緣。 集會結束了,我們走進了電梯。 Metastable 投資我們的消息很快就傳開了。 電梯還沒到達一樓,第二封同樣來自頂級基金的「是」郵件就到達了我們的郵件,而我們沒有任何參與。 在那次籌款中沒有更多的“否”,一周後我們再次解決背包問題,以將最好的報價納入有限的一輪中。

重要的一點是:在矽谷,個人風格有時比良好的演示或精心設計的設計更重要。 在公司生命的早期階段,投資者了解特定的產品或設計會多次更改,因此更加關注團隊及其快速迭代的意願。 

速度不是最大的問題

2018年底,我們去參加了 ETH 舊金山黑客馬拉松。 這是世界各地致力於以太坊的眾多黑客馬拉松之一。 在黑客馬拉鬆上,我們有一個大型團隊想要建造 NEAR 和 Ether 之間橋樑的第一個版本。

我脫離了團隊,決定走一條不同的路。 我找到了生態系統中的知名影響者Vlad Zamfir,他正在為以太坊編寫自己的分片版本,他走近他說:「嗨,Vlad,我用MemSQL 編寫了分片,讓我們加入同一個團隊吧。” 弗拉德和一個女孩在一起,從他的臉上可以明顯看出我沒有選擇最好的溝通時機。 但女孩說:“這聽起來很酷,弗拉德,你應該帶他加入團隊。” 就這樣,我最終加入了 Vlad Zamfir 的團隊,在接下來的 24 小時裡,我了解了他的設計如何運作,並與他一起編寫了一個原型。

我們贏得了黑客馬拉松。 但這還不是最有趣的事。 最有趣的是,那時我和他幾乎從頭開始寫了 原子事務的原型 在分片之間,我們原本計劃寫橋的主力團隊還沒有開始工作。 他們仍在嘗試為 Solidity 建立本機開發環境。

根據本次黑客馬拉鬆的結果以及隨後進行的大量用戶研究,我們意識到區塊鏈的最大問題不是它們的速度。 最大的問題是區塊鏈應用程式非常難以編寫,對於最終用戶來說使用起來更加困難。 2019年我們的重點擴大了,我們引進了懂用戶體驗的人,組建了一個專注於開發者體驗的團隊,把方便開發者和用戶作為主要關注點。

建立認可

銀行裡有足夠的錢,暫時不用擔心下一輪,並且有一支強大的團隊編寫程式碼和進行設計,現在是時候進行識別了。

我們才剛起步,我們的競爭對手已經擁有大量粉絲。 有沒有辦法以某種方式接觸這些粉絲群,讓每個人都受益? 有一天早上,我們一小群人坐在舊金山的紅門咖啡館裡,突然想到了一個驚人的想法。 在數十個協議競相成為下一個大事件的世界中,除了自己的行銷資料之外,人們實際上沒有關於這些協議的資訊來源。 如果有足夠聰明的人能夠站在董事會面前與此類協議的研究人員和開發人員站在一起並拋棄它們,那就太好了。 這些影片對每個人都有好處。 對他們來說(如果他們沒有被撕裂),因為他們的社區可以看到他們的設計不是草。 對我們來說,這是一個被社群關注的機會,也是一個學習好點子的機會。 幾乎所有協議,包括 NEAR,都是公開開發的,因此想法和程式碼作為一個整體並不是隱藏的,但這些想法有時很難找到。 在一個聰明人的指導下,你可以在一小時內學到很多。

山谷再次被證明是有用的。 NEAR 遠非唯一在北方艦隊設有辦事處的協議,錄製此類影片的想法得到了其他協議開發人員的極大熱情。 我們很快就把第一次會議安排在日曆上,以便與同樣在北方艦隊的人們錄製視頻,今天是 這樣的視頻 已經快四十了。

在接下來的幾個月裡,我們在會議上遇到了無數人,他們首先從這些影片中了解了NEAR,並且至少有兩個NEAR 設計解決方案是根據這些影片中的資訊而產生的,因此這個想法非常有效,無論是作為以行銷策略為契機,第一時間了解產業最新突破。

進一步的歷史

團隊正在成長,新創公司生命中最重要的事情就是有足夠的資金來支持成長。 第三次籌款也沒有立即成功,我們收到了幾個“NO”,但一個“YES”又讓一切發生了翻天覆地的變化,我們很快就結束了。 今年年初的第四次融資幾乎是從 YES 就開始了,我們得到了原則上和區塊鏈領域頂級基金 Andreessen Horowitz 的資金,a16z 作為投資者,該輪融資很快就結束了。 在最後一輪 我們籌集了 21.6 萬美元.

冠狀病毒對這一過程做出了自己的調整。 早在疫情爆發之前,我們就開始遠端招募員工,當三月決定關閉總部時,即正式封鎖開始前兩週,我們完全不再優先考慮本地候選人,如今 NEAR 已成為一家大型分散式公司。

今年四月,我們開始了啟動過程。 直到 24 月份,我們自己支援所有節點,並且協議以中心化格式運行。 現在節點逐漸被社區節點取代,XNUMX月XNUMX日我們將消滅所有節點,這實際上將是NEAR自由的一天,我們將失去對它的任何控制。

發展並沒有就此結束。 該協議有一個內建的新版本遷移機制,未來仍有大量工作要做。

總之

這是 NEAR 公司部落格的第一篇文章。 在接下來的幾個月裡,我將告訴您NEAR 是如何運作的,為什麼世界有一個好的方便的區塊鏈協議比沒有它更好,以及我們在開發過程中解決了哪些有趣的演算法和問題:分片、隨機數產生、共識演算法、與其他鏈,所謂的第 2 層協定等等。 我們準備了很好的科普與深度技術結合的帖子。

為那些現在想深入挖掘的人提供的一小部分資源:

1.看看NEAR下的開發是什麼樣子的,可以在在線IDE中進行實驗 這裡.

2.協議代碼公開,可以用鏟子挑 這裡.

3. 如果您想在網路上啟動自己的節點並幫助其去中心化,您可以加入該計劃 權益大戰。 有一個說俄語的 電報社區,人們已經完成了程式並運行了節點,並且可以幫助完成該過程。

4. 提供豐富的英文開發者文檔 這裡.

5. 您可以在前面提到的內容中關注俄語的所有新聞 電報群VKontakte 群組

最後,我們前天發起了一場線上黑客馬拉松,獎金為 50 萬美元,建議使用 NEAR 和以太坊之間的橋樑編寫有趣的應用程式。 更多資訊(英文) 這裡.

待會見!

來源: www.habr.com

添加評論