當前位置:
首頁 > 科技 > 不用慌!這裡總有一款適合你的遠程軟體開發和結對編程工具

不用慌!這裡總有一款適合你的遠程軟體開發和結對編程工具

技術資訊,第一時間送達!

作者丨Brian Cooksey

翻譯丨Vincent

作者以視頻通話、屏幕共享與遠程控制、共享代碼片段、在線IDE與代碼託管環境為例介紹遠程軟體開發和結對編程工具的優劣。

有時我希望可以方便的與同事交流一個嚴重的錯誤或著討論技術方案。但非同步通信並不總是適用於這些棘手的問題。值得慶幸的是,過去幾年來,開發人員紛紛帶來了大量的在線協作工具。從屏幕共享到結對編程,總有一個工具可以滿足你的協作需求。

視頻通話

電話溝通雖然很常見,有效性也是眾所周知的。在Zapier,通常一個快速的視頻電話能幫助你與同事解決複雜的問題。在一個分散的團隊中工作,每個人都可以獨立應對他們所面臨的大多數挑戰。如果你使用視頻通話工具,在協作的問題上,兩名工程師可能只需要花費10分鐘,然後由一位工程師來實施完成。

就目前的選擇而言,視頻會議軟體並不缺乏。我們傾向於使用最方便的Zoom.us或Slack的內置呼叫功能。關鍵是要找到一個可靠的高質量的工具。

雖然只有音頻的通話是可以的,但是高質量的視頻可以讓你了解同事的肢體語言,這方便他們更有效地了解你們正在討論的話題。

屏幕共享+遠程控制

有時候言語並不能表達清楚問題。這時候可以提供一個可靠的屏幕共享工具,將會幫你更加清晰的表達解決方案。我們發現屏幕分享這種通信方式有助於提高用戶體驗,它可以迭代地診斷錯誤(嘗試輸入,查看結果,嘗試另一個輸入,查看下一個結果),或者一起探索日誌數據。該工具也允許屏幕共享的人與遠程機器交互,這對解決問題是非常有幫助的。儘管點擊可能會延遲,但對於它的價值來說卻是不值得一提的。

我們在Zapier的goto是Zoom.us,它具有內置的屏幕共享,或者Screenhero,同時另一個人也能操控。

共享代碼片段

你曾經寫過一個腳本,並且幫你解決問題?或者你寫的腳本幫助你自動完成一個乏味的任務。你的勞動有多大意義?代碼並不是真正的添加到源代碼控制中,這是一種痛苦的編程手段,但你又不想失去它。

這時GitHub Gists和JSFiddle的代碼段共享工具派上用場。您可以保留代碼,卻不會影響你的程序。在遠程開發團隊中,這些平台可以作為共享網路驅動器的有效替代品。在Zapier,我們使用Gists來轉儲代碼和設置開發環境。這個空間可以存放從API一個版本的數據格式轉移到另一個版本的數據格式的轉換文件,許多其他奇怪的代碼段,在線摘錄,項目鏈接。

在線IDE和託管開發環境

代碼編輯器和虛擬化開發環境這兩類工具是最令開發人員滿意的。近年來,一些公司面臨著從本地開發轉移到雲端的挑戰。像Cloud9和Codenvy這樣的服務提供了一個在線編輯器IDE和一個完全託管的虛擬機或docker容器。 這使得開發人員在有網路的情況下可以在任何地方任何設備上編程。 這也意味著遠程結對編程與共享在線工作區一樣簡單。 你可以編輯相同的文件,單擊相同的開發伺服器,共享虛擬終端shell,運行測試命令。 這種空間中的一些工具,如Koding,提供了一種將遠程卷和ssh安裝到雲環境中的方法,並允許本地編輯文件,同時仍然在雲端託管開發伺服器。

儘管Zapier並沒有廣泛使用這套工具,但團隊中的一些成員將其用於邊緣項目和一次性任務。 我們的平台工程師之一本·彼得在Cloud9上開發一個項目,當他需要一個開發環境的時候,他可以通過Chromebook進行編碼,這通常不能在本地處理應用程序。 他還發現,將開發環境託管在可定址域中有助於構建涉及入站請求的功能(例如測試OAuth2流或webhooks)的情況。

Tunneling

如果一個完整的託管開發環境比你想的複雜,另一個選擇是在本地運行你的堆棧,打開必要的埠,以便其他人實時查看你的工作。有一些付費的解決方案,比如ngrok,你可以用它來完成。他們很快就安裝好了,而且不需要你在網路上做任何防火牆設置。

我們在Zapier使用隧道的另一個很巧妙的方法是測試需要從第三方服務獲得回調的功能。 當測試類似OAuth2流或入站Webhook的回調URL時,指定本地主機:8000作為回調URL不會始終有效。因此你可以建立一個公共託管的URL,然後在你的機器上進行隧道。

瘋狂的科學家

讓我先說一下,這不是我們在Zapier經常做的事,我也不會推薦它。然而,這個解決方案太有趣了,以致於不得不在這裡提出來。

在Zapier的一次演講中,一位同事和我在一個項目上遇到問題,我們想要建立一個配對的編程工作站。問題是我們有兩台筆記本電腦,沒有外接滑鼠或鍵盤,也沒有額外的監視器。這一對開發者要做什麼?

我們的解決方案是使用rsync。我們在一個筆記本上安裝了一個cron作業,每秒鐘運行一個bash腳本:

從遠程筆記本電腦中提取文件,跳過最近在本地系統上修改過的文件。

將文件從本地筆記本電腦中推送到遠程筆記本電腦,保存修改的時間,這樣系統就可以同步了。

只要小心保存,我們可以一起處理文件,並保持對方最新的變化。有兩個獨立的機器有一個額外的好處,我們中的一個可以更改後端,而另一個更新前端代碼,給出真正的並行輸出。

雖然我已經嘗試使用觸控板進行繪圖,但我討厭它。我無法與同事進行典型的白板會議,但 遠程工作的好處是大於坏處的。這些工具背後的技術總是在改善,不斷減少了虛擬辦公的不足。誰知道「如何合作」的新概念,將來會如何。在幾年後,也許我可以戴上虛擬現實頭盔,在虛擬白板上用手上的記號筆畫畫。

點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

基於Ruby網站資料庫負載大降80%,這個沉默的性能殺手是如何被KILL的?
國產又出事?谷歌、火狐相繼取消沃通的信任
Angular 有哪些地方比 Vue 更優秀?(Vue粉還有30秒到達戰場)
測試人員職業發展之路
Time2Code:適合任何編程語言的無伺服器代碼編輯器框架

TAG:CSDN |

您可能感興趣

特色軟體一網打盡,總有一款適合您!
行情軟體都這麼努力,你有什麼理由不關注他的下一步
好用又免費 這款遠程控制軟體堪稱國產良心!
你肯定有,但肯定沒用過的「效率軟體」+教程
手機跑步軟體到底有用嗎?他的用途遠不止記錄跑程這麼簡單!
遠程協助只是基本功 這款軟體開發了手機遠控的新姿勢
打造一款屬於自己的遠程控制軟體(一)
軟體測試人員比開發人員多就不合理嗎?那可不一定!
不用u盤,如何給小米電視進行遠程安裝軟體,一招輕鬆搞定
手機與電腦里不能缺少的一款便簽軟體有什麼魅力?
五款百里挑一的優質軟體,好用到你不想卸載
一款適合上班族的便簽軟體,幫你輕鬆處理繁重的工作
蘋果這場一點都不硬的發布會,卻讓軟體有了硬體賺錢的能力
源於精益的生產節拍是否能夠適用到軟體開發?
什麼?還有這麼好用的軟體?
PC性能怎麼看?常用工具軟體一覽
投影儀安裝了那麼多軟體,發現這幾款軟體免費又好用!
手機拍的照片不好看?不怪它是你軟體沒用對!
谷歌軟體工程師分享編程經驗:有效的流程很關鍵
最簡單製作動圖軟體,再也不用傻傻的發整段視頻了!