外包“代碼質量及規范審查”是否是個好主意?
外包“代碼質量及規范審查”是否是個好主意?葡萄牙SaaS創業團隊Codacy對外開放“自動代碼審查服務”
對軟件開發者來說,代碼審查(Code Review)并不陌生,它是軟件開發中不可少的環節,能幫助開發者及時發現代碼中的 bug,提升軟件運行質量,主要包括代碼質量、語法規范、功能可用性方面的檢查。代碼質量和規范審查一般由團隊協作完成,便于后續改進、統一編程風格,市面上已有不少基于web的協作型開源代碼審查工具,比如 Review Board、CodeStriker、Groogle、Rietveld 等。功能可用性審查,則是對某一待實現功能進行相應的代碼測試,保證功能運行正常,開發環境和不少在線服務都提供不間斷測試服務,測試不通過會發出告警。
葡萄牙創業團隊Codacy做的便是“代碼審查”的生意,聚焦代碼質量及規范審查。不過,Codacy 想做的并不是開源代碼審查工具,而是要搭建一個 SaaS 平臺,直接向開發者提供基于 web 的“自動代碼審查服務”,對指定項目進行代碼審查及質量評級,并提供改進方案。
團隊創始人 Jaime Jorge 告訴36氪,Codacy 并沒有野心去取代人工代碼審查,而更像是后者的一個“幫手”,只專注于檢測代碼格式或語法規范中的 bug。這項服務的意義究竟在哪里呢?用 Jorge 的話說就是:為開發者省時是一方面,更重要的是能讓開發者聚焦比代碼風格更重要的問題,比如從實現功能上來判斷代碼設計是否合理。
目前,Codacy 支持 CSS、Scala、Python 以及 Javascript 四種編程語言的代碼審查。用戶通過 Github 或 Google+ 賬戶登錄 Codacy 平臺后,可在本地手動添加新項目,也可從 Github、Bitbucket 以及其他使用 Git 代碼管理系統的云端代碼存儲平臺上導入需要審查的代碼段。
在安全方面,Codacy 會為用戶添加的每個項目創建一個只有 Codacy 才能使用的 SSH 密匙對,并會加密第三方代碼存儲機構授予的 token(授權代碼)以及用戶的敏感信息。由于 Codacy 的代碼審查服務是自動運行的,Codacy 團隊不會查看開發者的源代碼,被審查的代碼會被暫時存儲在 Codacy 平臺上,審查結束后會被定期刪除。
Codacy 向36氪透露,在過去兩個月的封閉內測階段,Codacy 平均每天審查代碼 100 萬行;Codacy 現在每天能夠為超過 3.1 萬個軟件項目提供代碼審查服務,累積用戶數超過 1300 個,以中、小企業為主,比如prodsmart(工廠生產力優化系統)、blossom(項目管理工具)以及HOLE19(高爾夫球場查詢 & 成績記錄 App) 。
另外,Codacy 從結束內測、對外開放之日起就開始做付費,分別面向個人(Single)、團隊(Team)以及公司(Company)提供 3 種付費方案,產品免費試用期 14 天。當我問到現在做付費是否擔心為時過早時,Codacy 創始人 Jorge 說,作為一家 B2B 平臺,他們向同行業內的其他平臺借鑒了不少經驗,免費服務的確能吸引更多用戶,但他們最終希望的是,將服務提供給有此需求并愿意為之付費的用戶。不 過,Codacy 也會為一些開源項目提供免費代碼審查服務。
Codacy 是歐洲種子基金Seedcamp從 2012 年開始扶持的一個項目,去年 11 月獲得 Espirito Santo Ventures 和 Faber Ventures 50 萬美元種子輪投資。團隊成員從最初的 4 人增至 6 人:創始人 Jaime Jorge 從軟件工程研究生院畢業后便開始創建 Codacy;聯合創始人 Jo?o Caxaria 有 15 年的軟件開發經驗,曾就職于花旗銀行(Citibank)和瑞士信貸(Credit Suisse);Rodrigo、Rafael、Nuno 三人也同為軟件工程師出身;Luís 則在團隊中負責產品設計。
對代碼度量和軟件工程的熱愛讓這 6 個年輕人聚到了一起,于是有了 Codacy。“我們想做一個我們自己會用的產品,每天通過它來近距離接觸編程語言,”Jorge 說:“Codacy 成全了這個愿景,我們其實就是用著 Codacy 來開發 Codacy 的。”