如何评价 GitHub Codespaces?

GitHub Codespaces New from Satellite 2020: GitHub Codespaces, GitHub Discus…
关注者
529
被浏览
325,479

54 个回答

前段时间微软改名部把 Visual Studio Online 改成了 Visual Studio Codespaces。GitHub Codespaces 应该就是那套东西配合上自家的 GitHub 服务了。宣传页和 Satellite 直播时的演示是不错的。希望在 iPadOS 的 Safari 上有着所期正常的表现。

去年的 GitHub Actions 和今年的 GitHub Codespaces 都比较戳中大家的点。不得不说,微软时代的 GitHub 越来越香。

TL;DR

从目前披露的信息看,如果后续产品收费,会吸引一部分好奇的用户,但是比较难以成为专业人员的工作站,VSCode + Container 还是比较香的。

引言

云端IDE这个概念其实并不新,在codespaces之前也有类似产品,最著名的莫过于 AWS Cloud9 。顺便讲个笑话,Eclipse也有云端IDE的产品,感兴趣的可以探索一下,此处不作展开。

Cloud9

Cloud9 本身也是一个开源产品,不是一定要在AWS上搭建,只要有服务器都可以搭。我之前就自己搭过,用了一年左右。那时候我用的美帝良心想+Surface,笔记本有些笨重,平时只带Surface,只要 有网我就可以编程 ,只是surface打字手感不是很好,屏幕也有些小。我为了优化云端IDE的体验,我还买了一个域名,加了SSL,各种提升b格,但其实就我一个用户,自娱自乐罢了。能装逼的情景就是别人惊鸿一瞥:“喔唷,你还能在surface上编程啊!”

VSCode 同人?

除了Cloud9,之前有段时间还火一个基于VSCode的开源项目 code-server ,与Cloud9一样,有服务器可以自己各种折腾。之前受人追捧是因为这个项目据说移除了微软的组件,不会向“邪恶的资本”发送个人信息。不过阉割了人家的东西,装插件成了问题,早期需要手动安装,不知道现在发展得怎么样了,我并没有入这个坑。你问我为什么?答案很简单,因为“ 官方逼死了同人 ”——VSCode不久后就允许用户在浏览器中启动了!这里我就不具体展开了,网上的教程满天飞,就像Python教程一样。

为什么要用云端IDE?

其实这是个核心问题,考验这个概念 到底是伪需求还是刚性需求 ,最后会直接决定Codespaces等类似产品的定价。之前我有提到我当初搭建自己的Cloud9就是因为笔记本重,有了在Surface上编程的诡异需求。另一个原因就是我在实验室有一台配置比笔记本高很多的 Linux服务器 (十六核,64G RAM),这样的计算资源如果不用岂不是很浪费?所以我当时用443端口搭建Cloud9,8888开放给Jupyter Notebook(好像这样也还是浪费)。

你问我后来呢?后来换MBP了,编程体验上了一个台阶,不乐意再去折腾什么云端IDE了(更新域名和SSL等挺烦的,偶尔也会宕机,需要SSH去重启)。MacOS的UNIX环境搭配VSCode和Docker,基本满足我日常的编程需求,唯一的例外是Kernel Programming我需要至少KVM的虚拟技术,我的选择是Parallel Desktop。(这段Apple和PD应该给我广告费)

由此可见,当时对云端IDE的需求来源于“本地编程环境不佳”(软件+硬件),客观条件是手头正好有一台Linux服务器。换句话说,现在你让我付费使用(哪怕每小时仅0.5刀),我依然没有强烈的欲望去尝试(口嫌体正直,我已申请测试,之后有空回来测评)。更何况微软现在WSL2+Terminal的组合拳让Windows系统也越来越适合开发者(其实槽点还挺多的,有些情况WSL2还不如WSL)。

Codespaces的优势

话虽如此,Codespaces仍有其独特的优势:

  • 与GitHub无缝结合(光这一点就比AWS Cloud9强不少,可见微软当年收购GitHub的举措是何等明智!),一切都在浏览器里搞定,代替了原来“clone到本地+配置环境“的烦恼,属于 即开即用 ——fork一下就能运行。
  • 很适合初学者,会推动 计算机教育 行业的发展,这一点比第一点影响更深远。在全民编程的时代,很多编程书或者编程课程第一章都会教大家怎么配置环境,现在GitHub告诉你不用麻烦了,直接开整,环境啥的都统一配好了,安心写你的代码!熟悉编程的朋友可能会说安装环境有助于新手更好地学习巴拉巴拉,道理是这么个道理,但是面对低龄的学生呢?又不是人人都要去做运维, 开发环境不应成为学习编程的另一道阻碍 。当然,破财消灾,破除阻碍你可能得花点小钱。
  • (歪楼)帮助苹果实现“你的下一台电脑何必是电脑“的伟大目标,在iPad上编程成为可能!(GitHub App也是之前才发布,可能都是为这一步做铺垫)