我相信很多人看到这个标题,都以为我已经创业失败,开始准备找工作了。
毕竟对于一个本科毕业生,毫无经验和资本而言,怎么能创业长达两年之久。
创业,这个词对大多数人而言承载着梦想,有幸的是,两年了,我们还在这条路上继续前行着。
后面我会给大家倾诉下我这两年所经历的事情,在此之前,容我先给大家展示一下我们的创业成果。
创业成果
我们的产品是由Wonder科技研发团队(就是我和老大两个人)独立自主研发出的WebGL 3D引擎和在线编辑器,大家可以访问我们官网了解。
就在昨天,我们老大(Jack)在博客园已经发布了,Wonder 1.0正式版发布-----WebGL 3D引擎和编辑器, 介于很多人不知道我们是干什么的,我来给大家科普一下。
WebGL是浏览器端显示3D的底层API。
3D引擎则是封装了这些底层API的框架,让大家通过写顶层代码就可以构建3D场景。
编辑器则是以3D引擎为基础开发的面向用户的编辑3D场景的工具。大家可以直接导入模型,然后拖动模型就可以很快地搭建好漂亮的3D场景。
我们编辑器现阶段只能搭建静态场景,操作和Unity相似,熟悉Unity的老铁可以很快上手。我们很快会支持脚本,那时候就可以开发3D游戏了!
这里有我们引擎性能报告, 与当前国外性能最好的引擎ThreeJs的比较。
在此,希望有兴趣研究3D方向的老铁可以和我们交流,虽然我已经有女朋友了,不影响我们面基。
编程之路,不成疯、便成魔
其实,我们3D引擎开发长达4年之久,由Jack一人独立开发,这是他的梦想,为此两次从阿里离职进行全职开发。我和他认识之初是因为我向他请教技术问题,长期请教之后走到一起创业。而编辑器也开发了20个月的时间了,肯定有人要说,就编辑器这点UI界面,我用XX框架一天就搞完了,哪需要那么多时间,嗯,刚开始我也是这么想的。
一开始我只是打算过来向Jack学习技术,但没想到他的技术栈是个无底洞,随时在研究新技术,加到产品中使用。最开始使用TypeScript开发,配合Node、Gulp、Rollup、Most等工具开发3个月,编辑器架构已经基本成型,这时Jack感受到函数式编程的优势,再加上FaceBook新推广的ReasonML,配合BuckleScript可以直接编译成Js,性能也不错,于是打算开始新一轮重写。后面就是长达一个月的函数范式学习,包括函数式编程、函数反应式编程(Rxjs)、ReasonML、ReasonReact,然后在同年年底开始进行重写工作。函数式编程一时爽,一直编一直爽,我们一直在不断思考和改进函数范式在前端和引擎中的使用,相信未来函数范式会大放异彩。
其实重写一次也不至于影响我们的进度,真正花时间的是保证代码质量的工具:单元测试、集成测试、契约检查、代码质量检查工具(code climate)、以及我写的代码都要经过Jack人工审核。这几套流程下来,可以说在前期花费了我3/4的时间,尤其是单元测试,编辑器现在有1032个测试,覆盖了87%的代码,刚开始我无数次质疑它,花费的时间成本到底值不值得,现在看来不得不感慨Jack目光长远,前期的时间投入让我们现在的代码质量很好,层次分明,职责明确,方便了我们以后开发以及维护。
通过这20个月的技术积累,Jack带着我突破了瓶颈期,让我明白了,一个合格的程序员必须要随时更新自己的开发工具以及编程思维。
未来我的技术方向会渗透到Jack的3D引擎中,掌握3D技术。
创业之路,以梦为马
这两年的创业时光,大多数都是我和Jack一起,我们的编程地点随性而安,去过公园、去过图书馆、去过出租工位、去过九寨沟山沟里,甚至去过麻将馆。绝大多数都是在家里办公,这也导致中途发生过一些激情丧失、效率低下的问题,主要是我单方面的问题,毕竟我一个刚毕业一年的小伙子,还未品尝这世间的滋味,天天在家当宅男,内心躁动难安。
这看似很平常的一个小问题,实则是我耐性不足、无法自我激励、无法长时间集中注意力的惰性问题和自律不足的问题,如果我无法克服这些问题,我将无法跟上Jack的脚步,我终究还是个loser。那是段黑色暗淡的时光,我不想再去回忆它们,那时的我整日沉迷游戏,迷茫和自我怀疑,Jack时刻在教导我、鼓励我、帮助我克服它们,而我也没有辜负他,终于还是走了出来。
现在我根据Jack的信念系统,提炼出自己的信念系统,每日给自己补充精神食粮,对自己感受到前所未有的自信,对工作和生活感到充实满足。由衷的感谢Jack没有放弃我,也感谢自己挺过了那段时光。
以梦为马,诗酒趁年华。
未来之路,天高任鸟飞
我们Wonder 1.0版本已经发布,未来将会继续开发和维护它,希望各位感兴趣的小伙伴加入我们的开源项目中,给我们提供更多的建议和反馈,在这信息时代,留下自己的脚印。
我们相信未来WebGL 3D技术发展一片大好,由浏览器解决了跨平台的问题,由5G解决了访问速度的问题。
关注WebGL的同学可以关注我们,Wonder Technology。
未来我们会做系列教程,指导入门的用户和感兴趣同学如何使用编辑器,搭建静态场景,学习使用WebGL,创造自己的3D世界。
天高任鸟飞,海阔凭鱼跃。