在 IT 產業的上古時代,流傳着許多獨行俠程序員們徒手寫出操做系統、編程語言、瀏覽器等高難度軟件的傳說。隨着行業的成熟,這些故事大多已經塵埃落定。但今天,咱們有幸見證了一個正在進行中的年輕故事。這個故事的主人公,讓世界上數以百萬的人,用上了昂貴 Photoshop 軟件的免費替代品。前端
家住捷克的伊萬·庫茨基爾 (Ivan Kutskir) 是個 90 後自由職業程序員。雖然伊萬曆來沒有公司的正式工做,但這不是由於他太菜了,而是由於他太強了:他就讀於捷克最好的大學。自學生時代起,他就靠着本身的編程天賦掙零花錢養活本身。他每個月只需工做大約 20 小時,就能賺夠一個月 300 美圓的生活費——這大體已經至關於國內不加班月薪三萬的水平。這樣的自由生活給了他極大的空間作本身喜歡的事。在這期間,他寫了許多試驗性的我的項目,從 Flash 小遊戲到 3D 模型渲染工具等等不一而足。這之中一個名叫 Photopea 的圖片編輯器項目,讓今天的他過上了每個月被動收入上萬美圓的「財務自由」生活。git
咱們都知道,美國 Adobe 銷售的 Photoshop,是圖片編輯領域公認最爲強大的軟件之一。這個龐然大物功能當然強大,但 Adobe 的壟斷地位使它對於普通用戶並不友好:一份正版的 Photoshop CC 軟件國內售價超過 3000 元,對電腦硬件配置有着很高的要求。而且,它的 PSD 格式仍是專有的,通常只能用 PS 打開編輯。因而,伊萬在瀏覽器裏折騰各類 3D 文件格式解析器之餘,有了個大膽的想法:咱們能在網頁裏打開 PSD 文件嗎?程序員
想法當然大膽,但稍有經驗的程序員均可以看出,這個點子絕對比一開始就喊着「我要從新發明一個 Photoshop」要切實可行得多。伊萬最先的規劃是這樣的:github
這麼點需求顯然難不倒伊萬。在 2013 年,伊萬作出了第一個版本,這就是 Photopea 的起點了:面試
伊萬在把這個版本發佈試用以後,得到了出乎意料的好反響。因而,他決定持續維護這個項目,解決用戶的需求,這一維護就作到了今天。一晃六年過去了,如今的 Photopea 是怎樣的呢?算法
這是如今的 Photopea。你能夠看到,最先左側寥寥無幾的工具欄現在已經被填滿了,濾鏡、蒙版、鋼筆、文字、魔棒、曲線等功能更是包羅萬象。除了徹底支持 PSD 文件和 PNG / JPG / RAW / SVG 等圖像格式外,它甚至還能打開編輯 UI 設計師耳熟能詳的 Sketch 文件。這個強大的做品,獲得了全世界用戶的普遍承認。它到底有多受歡迎呢?舉幾個數據吧:編程
別覺得 Photopea 只靠抄抄 PS 的樣子就能這麼火爆。這樣的圖片編輯器,實際上是個很是挑戰 Web 技術極限的產品。它的界面之下,隱藏了許多伊萬的獨門武功,許多技術指標迄今仍然獨步天下。舉幾個容易理解的例子:設計模式
如今的 Photopea 已經徹底是個成熟的商業級產品了。那麼,Photopea 的背後也有一支強大的團隊在維護它嗎?伊萬的故事裏最爲難以想象的一點,在於即使到了今天,全部 Photopea 的工做,包括開發新功能、修復 bug、聽取用戶反饋到發佈官方博客,仍然只由他本身完成!能夠說,他一我的花了幾年,就寫出了 Adobe Photoshop 一大支精英團隊,三十多年來積累出的那些最經常使用的功能。直到如今,他還在會按期在 Photopea 官方博客上發佈更新:瀏覽器
光是單槍匹馬地開發運營 Photopea,就已經夠難以想象了。不只如此,伊萬還開源了很多爲了 Photopea 自研的技術,包括字體解析、PNG 圖片編解碼和 ZIP 壓縮算法等等。因爲工做須要,一樣身爲程序員的筆者,也使用並閱讀過伊萬編寫的代碼。他的代碼是什麼風格的呢?在筆者我的的印象裏,出身烏克蘭的伊萬,寫的代碼體現着一種蘇式的工業美學——既沒有精緻的設計模式,也沒有應用流行的新式語法,更不講究換行縮進等優雅的排版,可代碼自己就是簡單明瞭、一步到位、性能優良且十分耐用。這些開源代碼的許可協議也十分寬鬆,在 GitHub 上得到了上千個 Star。服務器
看到這裏,咱們對伊萬的技術水平應該不用再贅述了吧。不過相信一些同窗確定會問,像他這樣開發徹底免費的軟件,還要開源義務勞動,是怎麼讓本身「財務自由」的呢?這就是個經典的技術商業化問題了。那麼伊萬的策略是怎樣的呢?在發佈 Photopea 的頭三年裏,伊萬沒有用 Photopea 爲本身掙一分錢。到了 2017 年,伊萬開始全職開發 Photopea,在上面投放了廣告,這得到的廣告收入一下就讓他自給自足了。然而不得不說,伊萬的商業化作得很是剋制:廣告只佔很小的頁面空間,你也能夠選擇捐贈開通高級會員來去除廣告。但不論是否付費,用戶能使用的功能都是徹底一致的!即使在這麼「不懂得作生意」的策略下,伊萬的收入也已經很是豐厚了。按照他告訴筆者的說法,他不久就能夠在布拉格全款買房啦。別忘了,他的收入屬於徹底的被動收入,可不須要 996 加班呢。
這麼看來,伊萬已經妥妥地實現了國人求之不得的「財務自由」了。那麼,他過的生活應該是什麼樣的呢?他須要每天本身一我的拼命工做嗎?他有個八臺顯示器環繞滾動着代碼的頂級工做室嗎?他會出手購置豪車一擲千金嗎?就在今年的五一,筆者在出遊歐洲之際有幸在布拉格見到了伊萬。我所看到的他的生活狀態,可能和你想象的截然不同。這是筆者和伊萬在布拉格 Letna 公園的合影:
線下看到的伊萬給筆者的感覺,是他幾乎徹底不追求技術以外的奢侈物質生活。到今天,他仍然和朋友合租、用着平價的安卓手機、還沒買房買車、做息時間規律、坦言一年也極少光顧布拉格的高級餐廳。而他是怎麼開發 Photopea 的呢?沒有頂配的蘋果電腦、沒有低調奢華的機械鍵盤、甚至連一個外接顯示器都沒有——只有普通臥室裏的一臺普通 ThinkPad 筆記本電腦,如此而已。他用來編寫代碼的軟件也是老掉牙的 Notepad++,並無安裝如今前端程序員中流行的各類工具。說實話,若是他來國內的互聯網大公司面試前端開發,以某些面試官對工具苛刻的標準,他說不定連一面都過不了。然而就是在這樣的環境裏,他一我的開發出了 Photopea。看看他的桌子,要不是知道他其實比我不差錢得多,我都想給他贊助點什麼了:
伊萬和 Photopea 的故事夠酷嗎?別忘了,他的工做成果是可以讓咱們每一個人都能享受到的。做爲普通用戶,使用和分享 Photopea 就是對他最大的支持了。儘管直到今天,因爲一些網絡問題,Photopea 的中國用戶佔比還很是低,但咱們和伊萬正在爲你解決這個問題!今天咱們很高興地告訴你們,筆者所在的廈門稿定科技和伊萬達成了正式合做,特別推出 Photopea 的中國版——稿定在線 PS。
稿定 PS 和原版 Photopea 有什麼關係呢?能夠說,這就是個對國內用戶最爲友好的版本:
但願你們有機會能多多體驗,看看 Photopea 是否有咱們說的這麼好用吧!若是你有任何問題反饋,或但願使用伊萬的開源代碼,也能夠關注他的 GitHub 帳號噢。
最後送上兩個彩蛋:
傳送門 - 稿定在線 PS
筆者供職於稿定科技 Web 工具團隊,亦爲本次 Photopea 引進的中方負責人。全文內容已徵得 Ivan Kutskir 本人贊成,確保其真實有效,同時歡迎媒體轉載。