Ruff 之初

Ruff 这个想法诞生,到现在已有一年半了。 决定要做 Ruff 的动机很简单:市面上没有一款工具能让我快速开发出智能硬件应用。 树莓派固然很好,但是我依然要写 C 写驱动,搞定内存管理、进程调度、异步 I/O 的这些问题。 对于我这样一个不懂嵌入式开发的人来说,光是一个对 GPIO 口进行高电平变低电平的操作就让我觉得不知其然更不知其所以然。

我需要这样的一个工具,我的朋友需要,还有千千万万想玩硬件的互联网工程师需要,那为什么不自己做一个出来呢?

做一个创新的事情,被质疑是很常见的。 没有 Uber 的时候,我们很难相信让大众开专车是一件切实可行的事。 没有 Airbnb 的时候,人们也很难相信能去别人家蹭房间这件事。 于是,滴滴的切入点是让出租车装个软件, 诺基亚的切入点是让现有的手机应用开发者做塞班开发…… 然而这些注定不会有卵用。 Uber 告诉我们,只有让不开出租车的人去开出租车才能更好解决出行问题,Airbnb 告诉我们,只有让不开酒店的人开酒店才能更好解决旅行住宿问题。 在塞班有了70%以上市场的情况下,通过让互联网的Java工程师进来开发应用,安卓让移动互联网全面爆发了。 而这一切一切的创新,在刚开始的时候,都是那么地虚幻,那么地不靠谱。

Ruff 一开始也遭遇各种质疑:

“不懂 MCU,不懂 PCB layout 还能出来做硬件吗?”

“用 JS 能保证性能吗? 功耗? 实时性? 结构怎么办?”

“智能硬件哪需要那么复杂的编程,一个远程控制不就行了吗?”

……

面对质疑,在产品诞生之前,我唯一能做的就是,坚信嵌入式开发由于体验严重反人类,能做这个的人数量和质量都跟不上智能硬件发展下日益增长的需求。能做嵌入式开发的人,目前也只能做较为简单的程序,应用质量还远远达不到行业颠覆的程度。我相信,这个问题只有通过更好的硬件抽象,更科学的开发方法,更适合应用开发的编程语言来实现。

当我们终于有了一个能够完整展示理念的版本,我拿着一块很不成熟的开发板去各个地方展示,原本做好了被拍砖,泼冷水的准备,没想到得到的评价远远超出了预期。

“熟悉的语言,连硬件都能写……”

“这个开发也太方便了……”

“这个套件多少钱? 千元以内我现在就拿一个。”

可能是因为嵌入式开发难的痛点太痛了吧,痛到就算是嵌入式工程师也都不愿意再写底层了。

说到创业,总免不了被问一个永恒的话题:你的梦想是什么?

我说实在答不上来,距离第一次创业已经有12年了。 我已经过了那个被梦想叫醒,搞各种仪式感去神圣化创业的年纪了。 也就在看到大家喜欢用我们的工具,觉得好用,点个赞,心里就舒坦了,还能有些感动。 不骗你,我就这点追求。

Ruff 也有个挺俗但是我很喜欢的口号:“想到就能做到,做到就能看到。” 这句话在互联网和移动互联网的应用开发里已经实现了,希望在不久的未来,智能硬件的应用也可以做到同样的迭代。

也许我该这么说,这样做开发才是智能硬件应用开发应该有的样子。