关键要点
- 网页开发者是可以非常完美的进行远程办公和协作的,因为所有的产品都是数字的,可以利用电脑进行有效的沟通,甚至比人与人之间的沟通更有效。
- Floobits、Cloud9 或者 VNC Server 都可以用于远程结对编程。
- InVision 和 Redpen 可用于上传作品原型并获得反馈。
- Dropbox Paper 和 Basecamp 可以帮你创建一个协同工作环境,并把与项目有关的所有资源都保存到一起。
- Screenhero 可以有效的分享屏幕,再也不必站在别人身后从肩膀上面看过去了。
如果网页开发者远程办公,就不能面对面的与客户开会,不能亲自做项目演示,也不能与结对编程的伙伴坐在同一张桌子前,这听起来似乎困难重重。可我却发现事实压根不是这样。如果网页开发者可以远程办公的话,他们会更开心、工作更努力,自然就能学会如何把远程协作工具利用好,结果是比整个团队在一起办公更加有效率。
几年前在一次休假后我意识到我是多么憎恨在办公室里工作,从那以后我就几乎全部都是远程办公了。
远程办公很有挑战性,因为一提到工作大家就习惯性的认为团队应该坐在一起、面对面的沟通更有效率,等等。让一个团队从一起办公变成远程协作是有一条学习曲线的,但如果你采取“远程优先”的态度,实际上我们已经有了非常理想的工具来辅助。
我将在这篇文章里分享一些我觉得对促进InfoQ 社区内的合作非常有帮助的工具。
Usersnap:协作收集用户反馈并跟踪故障
当你和用户不在一起的时候,用户复述错误现象和提供反馈都是非常困难的。有了 Usersnap ,你就可以直接看到用户反馈,并且可以看到用户报告故障时的上下文。
根据我以前在技术支持团队里工作的经验,如果我们要求用户将发生的问题截图,他们会非常不爽,事实上也对沟通非常不利。而且有的时候当你要求用户截图时,故障还可能会自己神奇的消失了,不过几天后就又自己跑出来了。
如果用户使用 Usersnap 来报告问题的话,他们可以直接用 Usersnap 截图,并且在截图上加注解,然后在你这边的程序界面上就会产生一个新的错误报告了。这样所有你需要的信息就都在里面了,你只需要联系你的团队去解决它。
对于习惯了使用Slack、JIRA、Basecamp、Trello、Intercom 和许许多多类似工具的用户来说,Usersnap 不但集成了现有的工作流,还给了用户更方便的报告故障的方式,技术支持团队再也不必通过反复多次的沟通来获取足够的信息了。
Cloud9:基于云的协作编码 IDE
使用 Cloud9 对于提高编码质量非常有帮助,因为它会不断的把改动发送出去,实时地在队友电脑上的 IDE 里以审查的模式展示出来。你任何时候都可以打开 IDE,点击“审查”来看看你的队友做了什么新改动。
Cloud9 对结对编程是非常好的,它有助于在团队内部及时提出反馈,并且时时向客户展示项目进展。它可以直接把代码上传到 FTP,也可以和 GitHub 自动同步。
Cloud9 是本文要介绍的几个提供协作编码功能的工具之一,除了没有提供内置的视频通话功能之外,它几乎是功能做的最深入的了。但如果你非常在意一定要使用你自己熟悉的文本编辑器的话,你可以看看下面要说的 Floobits。
InVision:可供网页开发者点击的原型
你可以把全屏幕截图上传到 Basecamp,也可以通过邮件来获取反馈,但哪种方式也比不上发一个可以点击的网站原型过去。在我们重新设计 Process Street 的时候,我们和 Koombea 一起先用 Basecamp 初步设计了大概框架,然后就转用 InVision 去做细节了。
这样,在我们把文件上传到 InVision 并且做出一个可以点击的原型之后,所有的不确定就都变成了确定,开发工作就变简单了。
InVision 还整合了 Sketch 的功能,可以进行草图设计,你只需要在画布上用鼠标拖拽组合,就可以完成原型设计了。
Screenhero:帮网页开发者作屏幕分享
所有通过 Skype 进行结对编程的人都会叫苦连天——体验实在太糟糕了。 Screenhero (已经被Slack 收购)解决了这个问题。它专为在低延迟下进行屏幕分享和协作编码设计,特色是支持多个鼠标光标并且可以共同控制IDE。也许如你所愿,在收购完成之后它也被整合到Slack 里面了。所以如果你的远程开发团队已经在使用Slack 了,这就是个重大利好。
https://www.youtube.com/watch?v=_BojQaD64GU
除了编码这种严谨的工作之外,Screenhero 也非常适合用来开会和做演讲,它可以通过 Slack 程序的内置功能进行语音通话和屏幕分享。
VNC Servers:两个人用一台电脑
如何你追求可以更加个性化的自己定制协作编码和设计的方式,那么搭建自己的 VNC Server 就是个好办法了。
你可以通过 TightVNC (免费,支持 Windows 和 Unix)或者 RealVNC (30 欧元,支持多平台)来访问伙伴的电脑,不仅可以象在一起工作一样相互提出意见,还可以同时各自在不同的区域敲代码。通过这种方式,远程开发比在办公室里协作具有更大优势。我发现使用 VNC Server 的方式上手会稍慢,但如果用 Cloud9 来结对编程给你的感觉还不够极客的话,你一定会喜欢使用 VNC 的。
Basecamp:集中存储文件并获得反馈
不管使用哪种远程工作方式,就算是不准备协同工作的话,都必须要有一个集中存储来统一存放所有的文件。在我们公司,新员工入职时就会创建好相应的Dropbox 文件夹并赋好权,每个人的所有工作内容都会存放在里面,并且通过 Zapier 推送到 Basecamp 上。
这样如果当我走开时有什么东西出故障了,其他队友也可以很容易地在 Basecamp 上找到相关文件去做修复。但如果没有这样的集中存储,那就只能完全依赖我的电脑上的本地文件了,就会发生下图所示的事情:
Basecamp 也通过强大的 Zapier 与 GitHub 、 JIRA 和 Usersnap 等整合起来了。
在与开发者进行远程协作的场景下, 我发现 Basecamp 的基于项目的布局非常好用。大家可以并行的讨论图标、排版等等,这些都分布在 Basecamp 的彼此独立的区域。
Floobits:屏幕共享和终端 /IDE 协作
可以认为 Floobits 是 Screenhero 和 Cloud9 的结合版,它比 Screenhero 更适合做开发,但交谈功能又比 Cloud9 强。
我把它当成是代码版的 Google Docs,因为编辑的内容可以实时在页面上看到。Floobits 支持 Sublime Text 、 Atom 、 Neovim 、 Emacs 和 IntelliJ IDEA 等多种开发工具,全都和 Google Hangouts 整合起来了。
就安装过程的复杂度来说,你可能会喜欢用 Floobits 而不是 VNC Server,因为安装 Floobits 连两分钟都不用。而且如果你是用 GitHub 帐号来注册的话,你还可以马上把它和你的资料库关联起来。但我喜欢用 Cloud9 或 VNC Server 而不是 Floobits 的唯一原因是它支持的文本编辑器插件相对有限。不过,说实话,很可能它已经支持了你喜欢用的编辑器。
Dropbox Paper:研发人员的剪贴本
Dropbox Paper 在 2015 年悄悄的发布了,就是一个 Dropbox 版的 Hackpad(一个他们在 2013 年收购的工具),也是一个非常好的管理商务文档的工具。Paper 非常适用于合作进行早期设计和代码片段开发,可以节省许多处理邮件的功夫。
有许多原因让我选择Paper 而不是Google Docs。首先,它非常干净漂亮的支持代码,可读性非常好。其次,它提醒我在Medium 网站上写代码,这个有非常令人羡幕的用户体验。
你可以把你的灵感、代码片段、原型、链接和注释等等全都放在一起,把一个简单的文档变成一个完整的项目文件夹,我想大多数人在项目开始时都会经历这样的混乱时期。
Redpen:用一个屏幕来获得反馈
在设计一个网站的早期,如果你只是在和别人交流你的最初想法,那在确定大部分内容之前你都不必使用 InVision 这类工具。 Red Pen 是一个非常简单的工具,可以帮你分享屏幕和收集意见。
把设计稿拖到 Red Pen 里,生成一个可共享的链接发给对方。在对方标注之后,再打开链接就对所有意见一目了然了。用了 Red Pen,你再也不会听到诸如“在侧栏和标题之间,靠左的那个象素”这种令人抓狂的描述了,意见是针对哪个具体位置的都可以明确的标注出来。
Every Time Zone: 时区其实毫无意义
Every Time Zone 对任何一种实时协同工作都很有用。大多数的时区转换工具好象在上世纪 90 年代之后就再也没更新过了,而且它们的用户体验也都是那个年代的水平。Every Time Zone 则可以让你非常容易的看到世界各个时区的概况。
用一张静态图象是很难表现出来它的强大功能的,你可以通过拖拽上面的滑块来让它计算世界上任何一个国家与你本地时间之间的时间差。我实在无法明确说出在时区这个令人头痛的问题上它到底帮我节省了多少时间。
你发现什么有用的工具了吗?如果你也有与网页开发者远程合作的经验,希望你能告诉我你用的是什么工具。我非常期望得到你们的建议,可以在原文留言给我。
关于作者
Benjamin Brandall 是 Process Street 公司内容市场部负责人,主要关注生产力、远程协作和 SaaS。每年除了少数几个月在办公室之外,他都是远程办公的。可以这样联系他。
阅读英文原文: 10 Tools to Help Remote Web Developers Collaborate with Their Team
评论