人生苦短,开发用云 | 如何优雅完成程序员的侠客梦?
作者 | 馬超
來源|阿里巴巴云原生公眾號
Coding 的魅力如此之強,引無數程序員競折腰,在今年由 CSDN 舉辦的 1024 程序員節上,中國初代程序員大宗師求伯君說,當年看到有人在用 WPS,可開心了,因為有很多人用。然后,也會去找看是誰破解的,于是就這么認識雷軍的,目前我雖然退休了,還在寫代碼,寫游戲代碼,不是商業軟件…其實是寫外掛,這個不好意思拿出來炫耀但確實可以讓游戲簡單點嘛。讓自己的代碼、自己的項目廣泛流傳,可以說是每一位程序員的最高目標。
工欲善其事,必先得其器。一款得心應手的編程工具,對于程序員來說無疑是效率神器,可以令開發工作事半功倍,在筆者親身試用了云原生開發工具之后,可以說目前以云開發平臺為代表的最新開發平臺,其帶來的效率提升加成,令人嘆為觀止了。
在十年前業界普遍流傳著一句話,叫做“代碼正在吞沒世界”,后來又說“互聯網世界的一切源自開源”,而直到最近,人們才真正醒悟:原來云原生才是背后的那個大 BOSS,凡是不使用云的都將落后,都無法做到敏捷,跟不上時代。云開發平臺作為云原生工具的典范,在未來必然會成為主流的編程神器。
下面我們先盤點一下開發平臺的發展歷程,和各位讀者一起讀懂云原生與 DEVOPS 結合從而形成的大趨勢。開發平臺就像是程序員手中的劍,只是程序員手中的劍已經由從前只能隨身攜帶,變成了現在來自云端的天外飛仙。
從本地化開發到在線開發
在高級語言出現以后,程序員就只需要關心核心的業務邏輯與代碼實現了,而不再需要關心具體的匯編語言手冊,也不必再與寄存器打交道了。尤其是 IDE 使程序員在代碼之外的配置調試等工作越來越少。本地化開發平臺如最早的 vim+gcc 到后來的 Borland 的 Powerbuilder,以及后來的本地 IDE 集大成者 Visual stuio 和 Eclipese,在推出之時也都曾經風靡一時。
但是這樣的開發工具其實是軟件時代的產物,當年的軟件公司僅提供編譯后的二進制可執行程序,而不提供源代碼,源代碼也是商業意義更重,甚至在公司內部都不會公開,在這樣的背景下本地化開發工具的確可以完成他的使命。
但是開源基礎會 GNU 的興起和 Linux 的火爆,開源的理念也隨著互聯網時代逐漸深入人心, IT 界傳奇人物 Eric Raymond 在其史詩級著作《大教堂和集市》(The Cathedraland the Bazaar)中講到,世界上的建筑可以分兩種:一種是集市,天天開放在那里,從無到有,從小到大;還有一種是大教堂,幾代人嘔心瀝血,幾十年才能建成,投入使用。當你新建一座建筑時,你可以采用集市的模式,也可以采用大教堂的模式。一般來說,集市的特點是開放式建設、成本低、周期短、品質平庸;大教堂的特點是封閉式建設、成本高、周期長、品質優異。在開源模式的推動下,以 Github 的 Web Ide 以及 kaggle 為代表的在線開發平臺崛起。這也使萬千上人開發者同時開發開源項目成為可能。
不過在線開發平臺雖然與代碼倉庫結合更為緊密,但是也無法做到完全的敏捷,不能直接實現所見即所得式的測試,也無法高效快速的發布版本,可以說這也不是開發平臺的最終形態。
云開發平臺零距離
將云服務與開發平臺結合,開發時即可隨時調用 Serverless 服務,才是真正的所見即所得。下面筆者就帶大家共同來零距離感受一下云開發平臺的魅力。
目前人臉信息已經是信息安全攻防的重點領域了,比如 Partialconv 模型可以通過 AI 對于圖像進行修復(Partialconv?的論文地址、Partialconv?的 Github?傳送門),即使圖像丟失了大面積的像素,他也能通過 AI 將損失進行修復,Partialconv 也是所謂的一鍵”去“衣、一鍵”去“碼之類應用的鼻祖,其效果圖如下:
當 Partialconv 推出之后不少人都驚呼道以后頭像打碼也不保險了,甚至完全沒有作何意義了。
基于自編碼技術的 AI 換臉項目?ALAE?成功登頂 Github,之后更是開啟了 AI 換臉的新時代,相比于之前的人臉圖像處理項目,ALAE 可謂是大 BOSS 的級別了,隨便貼幾張效果圖大家來感受一下。
不但圖像分辨甩之前幾代的換臉模型幾條街,而且學習過程的可視化也更強。
可以說一旦面部信息丟失那么后果將十分嚴重,而不少年輕人分享社交動態也就是爆照是一種剛需。那么如何平衡就是一個問題了。
而這個問題的答案就是將自身的圖像卡通化,比如使用 UGATIT(論文地址、Github?地址)模型,讓自己的頭像在各種卡通風格之間轉換。
不過使用這樣專業的 AI 模型安裝配置十分繁鎖復雜,一直都是專業人士才能做到的,普通人在之前很難用上這樣的 AI 服務,不過在云開發平臺的加持下,這樣的應用變得十分簡單。
不過使用這樣專業的AI模型安裝配置十分繁鎖復雜,一直都是專業人士才能做到的,普通人在之前很難用上這樣的AI服務,不過在云開發平臺的加時下這樣的應用變得十分簡單。
只需要注刪云開發平臺服務,并開通相關服務,快速實現一個卡通頭像的轉換大概只需要幾分鐘的時間就可以完成。
1. 請求參數
2. 返回數據
3. 示例
1)請求示例
http(s)://[Endpoint]/?Action=GenerateHumanAnimeStyle &ImageURL=http://invi-label.oss-cn-shanghai.aliyuncs.com/label/temp/cartoon/test_data/g1.png &<公共請求參數>2)正常返回示例
- XML 格式
- JSON 格式
以上代碼在云開發平臺上配置這樣的 HTTP 請求是非常簡單的,不但可以快速調試:
甚至還有 10 萬次免費的生產環境調用額度:
當然如有讀者有微信小程序的需求,那么其實現也非常的簡單快捷,只需要上傳人像圖,傳遞給后端,后端調用算法,返回結果。
3. 小程序調用 API 示例
wx.chooseImage({success({ tempFiles }) {var files = tempFilesthat.fileUpload(files[0].path);wx.request({url: '/api',method: 'GET|POST',data: {imageUrl: 'url'}})} })測試結果如下:
原圖
卡通結果圖
這樣的快速開發方式及功能實現,可以稱得上頗有事后拂袖去,深藏功與名的俠客之風了,云原發平臺其實是云原生平臺,只要有想法就可以迅速變成對應的功能快速上線,小白也能在云開發平臺的加持下成為一個武功高超的大俠,圓夢極客時代。IT 業與傳統行業最大的不同,就是其背后還隱藏著俠義江湖的影子,筆者相信阿里此次懷著巨大誠意的云開發平臺,也必將能從技術社區中得到中肯的意見與支持。云開發平臺為各路武林高手推出了快速伸展的途徑,而在這種不斷交流切磋的過程中,必將提高各門派的武功水準。所以在此,筆者也由衷希望阿里今后能夠推出更多優質的云原生項目,推動行業良性發展。
立即體驗
云開發平臺推出亮出你的二次元角色的體驗活動,10 分鐘完成一個完整的 AI 小程序開發,一鍵生成自己的二次元角色形象,即可領取阿里云定制棒球帽,曬頭像還能再領天貓精靈。新年從頭煥新,快來體驗吧。
總結
以上是生活随笔為你收集整理的人生苦短,开发用云 | 如何优雅完成程序员的侠客梦?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Dubbo 版 Swagger 来啦!D
- 下一篇: 林昊获中国计算机学会杰出工程师奖,阿里中