一个基于浏览器的编程工具 (Coderlane)

2019-11-19 11:08:16 +08:00
 monsterooo

简单介绍

Coderlane是一款在线编程工具,您可以在浏览器中通过简单的点击 5 秒内创建一个编程语言环境。

项目初心

缘起于一个朋友的在线面试体验。面试官给他发了一个牛客网的链接,面试题目很简单:字符串去重并且在对应字符后面跟一个字符重复的数量。给定的时间是 30 分钟,但是我的朋友整整花了 15 分钟才研究明白他们的工具怎么使用。

最终虽然他完成了面试题目,但是由于时间紧迫算法做的不算优化。最终导致没有得到二面的机会。

所以我就开始构思做一个更好用的在线编程工具,使用起来无障碍且足够简单。

第一版(3 月)

3 月份第一版出来了实现了最最基础的代码执行功能和跑测试用例。原理就是服务器跑一个 docker 去执行客户端的代码,拿到结果后返回给客户端

虽然基础的功能出来了但是还是有许多不满足的地方,第一个就是界面不够简洁。

第二版(6 月)

针对第一版的界面做了新的调整,界面更加美观并且我去掉了测试用例功能。

第二版虽完成了,但是我并不太满足。主要原因有如下:

  1. 代码同步太 low 没有考虑冲突解决方案
  2. 动态语言没有实现和客户端的 REPl 连接,只能返回结果
  3. 没有音视频沟通功能

第三版(9 月)

针对第二版的问题,我进行了功能的完善。解决方案如下:

  1. 使用 Operational Transformation 算法解决多客户端编辑冲突问题
  2. 使用伪终端代理打通 REPL,这样客户端可实时调试
  3. 增加音视频服务功能这个要感谢 Agora 提供的服务
  4. 增加编辑器的代码提示、自动补全、显示文档
  5. 增加在编辑时实时显示用户正在编辑的位置
  6. 增加了代码回放

我非常希望看到Coderlane作为一个在线编程工具给大家带来更便捷的体验,并且我打算永久免费,直到无法负担运营成本为止。

最后说一下我的感受:做一个项目不容易,做好更是需要付出很多努力和工作。希望大家多多提意见我们共同来完善Coderlane

感谢阅读和使用

5683 次点击
所在节点    程序员
46 条回复
GoLand
2019-11-19 19:23:34 +08:00
小姐姐好看
monsterooo
2019-11-19 20:21:57 +08:00
@duanxiaoyu 😀没问题
monsterooo
2019-11-19 20:22:41 +08:00
@f1ren2es 就是为了解决白板问题,还有远程面试效率问题
able
2019-11-19 20:38:40 +08:00
很有意思的项目
standbymeX
2019-11-20 17:45:43 +08:00
很不错诶,收藏了
zj
2019-11-21 16:39:39 +08:00
收藏了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/620951

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX