notebook(支持开发人员自己测试代码)
机器之心报道
机器之心编辑部
工具不好用就自己开发一个,「不将就」的开发者就是这么任性 。市场上现有的数据科学 notebook 工具都有很多痛点,比如版本控制、可复现性、协作体验等,与其他工具配合使用时也不太方便 。
在这些痛点面前,大多数人选择将就,但还有人选择自己动手,Jakub 就是其中之一 。为了解决上述痛点,Jakub 和他的同伴两年前就立志打造一个新的 notebook 。如今,他们的成果终于问世 。

文章插图
这款名叫 Deepnote 的数据科学 notebook 建立在 Jupyter 的生态系统之上,运行在云端,个人用户可以免费使用 。
与其他 notebook 相比,Deepnote 有三大亮点:
首先是实时协作 。为了实现这一点,Deepnote 默认在云端运行 。每个 Deepnote notebook 都很容易共享(就像 Google Docs 一样),非技术用户理解起来也没有难度;其次是界面 。Jakub 等人重新设计了一个新的界面,以鼓励用户开展最佳实践、写出简洁的代码、定义依赖并创建可复现的 notebook 。他们还创建了一个优秀的自动补全系统并添加了一个变量管理器;最后是与其他服务的整合 。Jakub 等人降低了 Deepnote 与其他服务整合的难度 。他们的最终目的是创建一个与其他服务、数据库、ML 平台和 Jupyter 生态系统协作顺畅的 notebook 。和 Colab 一样,Deepnote 可以在浏览器上使用,支持 Windows、Mac、Linux、Chromebook 等各种平台和 Python、R、Julia 等语言 。所有的更新都会立即保存 。
与 Colab 相比,Deepnote 拥有以下优势:
实时协作;整合(数据库、S3 bucket、环境变量);稳定(而且快得多)的文件系统;硬件不会突然被关掉;变量管理器;可以和非技术人员共享的友好界面 。

文章插图
Jakub 等人刚刚发布了 Deepnote 的公开测试版,大家可以点击以下网址试用:https://deepnote.com/
包括斯坦福大学、字节跳动、GitHub、NASA 在内的机构都已经试用过 Deepnote 。目前,个人用户可以免费使用 。从群众反馈上来看,用过的都说好 。尽管还存在一些不足,不过据开发者回复,很多必备但未实现的功能都已经「在路上了」 。

文章插图
现在用户可以通过 GitHub 或谷歌账户注册,但很快就能实现网站直接注册 。

文章插图
「不错!比 mybinder 之类的快很多 。」
接下来,我们来看下 Deepnote 的具体用法和特点 。
命令平台
首先,用户可以通过在 Mac 系统上键入 cmd + P 命令或者 Windows 系统上键入 ctrl + P 命令来打开和关闭该命令平台 。
实时协作
Deepnote 支持实时协作,用户可以与其他人共享项目 。执行单元是对所有用户的执行,因为协作的用户之间共享同一个环境和内核 。

文章插图
集成
Deepnote 提供了一个持续增长的本地集成库,简化了数据源与项目之间的连接过程 。数据的轻松访问也是 Deepnote 的设计原则之一 。
查看变量
Deepnote 提供了一种探索 notebook 中当前变量的简单方法 。定义变量的单元格被执行之后,变量将显示在左侧栏中,并提供有关其类型和内容的信息 。点击变量还能查看更多信息 。

文章插图
终端
如果需要运行一些高级脚本、安装或其他任务,你可以使用左侧栏中的按钮(红箭头所指),直接在 Deepnote 中使用集成终端 。
终端也是协作的,因此所有协作者都可以查看命令,除非你右键单击终端名称来关闭它 。
历史
项目历史记录了一个项目中发生的所有事情 。Deepnote 可以向你展示所有协作者的编辑记录 。当然,要查看历史记录,你至少需要在项目中拥有编辑权限 。目前,该功能还处于完善阶段 。

文章插图
代码智能工具
很长的 notebook 通常难以阅读 。函数和变量的定义无处不在,因此我们有时候很难记住某个变量表示的含义 。为此,Deepnote 提供了代码智能工具来帮助你管理复杂的代码 。Deepnote 会向你展示函数文档、参数名,并帮助你跳转到函数定义,这样你就能聚焦于问题而不是代码 。
自动补全
Deepnote 会在你敲代码的过程中展示出你可能想要使用的函数和变量名 。如果提示框消失了,你还可以利用 Tab 键将它触发 。

文章插图
函数文档和参数名
将鼠标悬停在一个函数上时,Deepnote 会向你展示这个函数的文档 。在填写函数参数时,Deepnote 会显示与参数名称和位置有关的提示,这样你就能知道当前正在填写的什么参数 。

文章插图
直达定义
想知道某个函数或变量是从哪儿来的吗?你只需要通过 Cmd + 单击函数 / 变量名就能直达定义 。同时,如果你在按着 Cmd 的过程中将鼠标悬停在一个符号上,Deepnote 也会向你预览它的定义 。
【notebook(支持开发人员自己测试代码)】参考链接:https://docs.deepnote.com/features/real-time-collaboration
- 中国文化|爸爸姓“丑”,女儿姓名成难题,宝妈拍板:全家支持随母姓
- 维生素c|父母要舍得让孩子吃这3种“零嘴”,有益智力开发,促进健康成长
- 父母们|你支持子女不婚不育吗?听听父母内心深处的真实想法,现实又无奈
- 老教授|“我劝年轻人要多开发右脑”,老教授的话,揭开了大脑发育的真相
- 住院部|湖州市区首家医疗支持的月子中心亮相!
- 放学|专家建议恢复孩子“每周6天上学的模式”,为何有家长支持?扎心
- 玩具|0-3岁是宝宝智力开发黄金期:50个方法提高智商,不聪明都难
- 起名|爸爸姓“丑”,女儿姓名成难题,宝妈拍板:全家支持随母姓
- 孩子|家长别再让孩子提前学这些东西了,看似能开发智力,实则害娃不浅
- 做法|熊孩子将火锅汤溅路人一身,宝妈做法与寻常不同,还获网友支持
