MetaWork:拜托,这样远程结对编程超酷的!

1. 话说结对编程

众所周知,结对编程(英语:Pair programming)是一种敏捷软件开发的方法,两个程序员在一个计算机上共同工作。一个人输入代码,而另一个人审查他输入的每一行代码。

MetaWork:拜托,这样远程结对编程超酷的!_第1张图片

但是真实环境中,往往不止两人结对编程:

  • 众后端围着前端审查代码。
  • 产品/设计/测试 围着前端改样式。

于是就会发展成下面这样:

MetaWork:拜托,这样远程结对编程超酷的!_第2张图片

显然,这不符合疫情期间的防范规定。况且在如今轻则AB班,重则居家办公的如今,码农新手们想找一个高手结对编程何其困难。

2. 远程结对编程的各种姿势

那么,远程办公想找人结对编程,有哪些方法?我给大家总结了下:

  1. 视频会议开桌面共享。其中一人讲解代码,别的只能旁听。
  2. git仓库一推送一拉取,看注释自行理解。费时费力不说,还费电。
  3. CodePen等代码共享平台,发一个供大家查看。显示,这个方式既不灵活也不安全,而且基本仅限前端。

MetaWork:拜托,这样远程结对编程超酷的!_第3张图片

直到我看到了CODING出品的MetaWork

MetaWork:拜托,这样远程结对编程超酷的!_第4张图片

瞬间来了兴趣:

  • 代码协同,多光标高亮显示。
  • 实时预览,终端协作。
  • 内置留言板,边聊天边分享代码段。
  • 内置视频会议,让你只需要浏览器就可以多人在线交流。

微信+vscode+视频会议+CodePen? 且看我的试用分析。

3. 代码多人协作产品分析

在各类网课中,实际上是单向知识传播,缺乏协作性。

  • 老师开屏幕分享,能观察到的只有学员表情
  • 学员需要开双屏,边敲边看。遇到不明白的只能切换界面截屏
  • 需要各自开数个软件,实现记录/沟通的功能

很多时候老师以为学员懂了,学员也以为自己懂了。

实际敲代码时,却是处处遗忘,且回放直播往往需要等待系统生成。这样的效率明显不行。

MetaWork:拜托,这样远程结对编程超酷的!_第5张图片

在此之前我尝试搜索 "vscode 多人协作",发现microsoft官方就出过一款:Live Share

MetaWork:拜托,这样远程结对编程超酷的!_第6张图片

大致有以下功能:

  • 实时共享代码编辑
  • 跟随团队其他成员的光标
  • 协作调试代码
  • 共享本地服务器
  • 共享终端

且因为是国外产品,没有汉化,且交互也有点潦草。
MetaWork:拜托,这样远程结对编程超酷的!_第7张图片

至少在不看文档的情况下,花了十几分钟才勉强搞懂如何操作。

且由于是国外插件,在网络上也是时好时坏。有些水土不服的味道。

4. MetaWork体验

在我看来,多人协作/结对编程 的意义,除了工作上相互讨论解决问题外,是要给予更多初学者帮助与成长。从Live Share的整个体验和模式上,对初学者的心智成本颇高,更像是给高手间过招的东西

那么,让我们再次

回到MetaWork的流程,感受一下这个产品的诚意。

4.1 发起者:

  1. 注册,你需要登录https://cloudstudio.net/,注册一个账号。支持 CODING/微信/Github 三种。
    MetaWork:拜托,这样远程结对编程超酷的!_第8张图片
  2. 到控制台生成一个空间(为了方便起见,我用了官方Vue模板)。

MetaWork:拜托,这样远程结对编程超酷的!_第9张图片

  1. 开始协作。

MetaWork:拜托,这样远程结对编程超酷的!_第10张图片

可以看到,整个操作非常平滑,没有割裂感。

  1. 将链接分享给他人

MetaWork:拜托,这样远程结对编程超酷的!_第11张图片

相比Live Share,人家是发!邮!件!瞬间感觉MetaWork接地气多了。
MetaWork:拜托,这样远程结对编程超酷的!_第12张图片

4.2 被邀请人

  1. 登录,并打开分享链接-> 立即加入。

MetaWork:拜托,这样远程结对编程超酷的!_第13张图片
这里有道安全认证,防止不明人士窥屏。。。

MetaWork:拜托,这样远程结对编程超酷的!_第14张图片
待得发起者同意。

  1. 同意后就可进入协作界面。

MetaWork:拜托,这样远程结对编程超酷的!_第15张图片

亲测整个过程,从加载编辑器到可协作,不到10秒。

  1. 进入跟随状态

MetaWork:拜托,这样远程结对编程超酷的!_第16张图片

可以看到,对方的每次键入,都可以清晰观察到。
MetaWork:拜托,这样远程结对编程超酷的!_第17张图片

在超过2人时,每个光标都不同,便于区分

MetaWork:拜托,这样远程结对编程超酷的!_第18张图片

这就是所有代码协作都会设计到的功能:实时共享代码编辑,跟随团队其他成员的光标

5. 功能点:留言板

MetaWork:拜托,这样远程结对编程超酷的!_第19张图片

起初觉得,这个留言板的功能有些鸡肋:谁会放着微信不用?

但是细想:当我们需要在一个腾讯会议共享屏幕时,操作者/观众 的视野不在同一屏幕上。

沟通起来必须得切换不同软件,这会使得注意力分散,且不够专业性。

在使用后觉得:真香!

MetaWork:拜托,这样远程结对编程超酷的!_第20张图片

有个非常妙的功能:跳转代码引用

MetaWork:拜托,这样远程结对编程超酷的!_第21张图片

这可解决了很多网课的痛点:即使打了注释,仍会稍不留意就忘了此段代码在何处。

甚至....还可以聊天摸鱼,老板以为你在认真敲代码(误 。

6. 功能点:在线多人语音/视频

MetaWork:拜托,这样远程结对编程超酷的!_第22张图片

这一步直接省去开视频会议了。

MetaWork:拜托,这样远程结对编程超酷的!_第23张图片

真远程结对编程,就是这个头像还没做好同步,希望官方再努力下。
MetaWork:拜托,这样远程结对编程超酷的!_第24张图片

脑海里想到一个场景:多人同时在线代码修改,代码下见真章的节奏。。。

7. 体验总结

若放在疫情前,我不认为在线代码协作有什么应用前景。

但在如今,远程办公变为常态,在线课堂爆发性增长。时不时就会出现电脑不在身边,需要额外置办第二台的烦恼。

Cloud Studio + MetaWork很好的解决了环境不一致(多人打开同一个工作空间备份),以及需多款软件实现远程协作的问题。

你只需一台 iPad 或 任意电脑的一个浏览器窗口,就可以实现在线敲代码,多人协作,留言讨论和音视频等所有远程办公的功能。

还不快来试试 Cloud Studio + MetaWork

你可能感兴趣的:(MetaWork:拜托,这样远程结对编程超酷的!)