来源:Gitee 封面人物 丨 2018-06-11
本期嘉宾 talent-tan,t-io 社区创始人,网络通讯开发专家。 仍要敲代码的逗比创始人、三流架构师、二流码农、一流传销员。
大学学的是自动化专业,该专业开设有C、微机、汇编、单片机、PLC、数电模电等和计算机相关的课程,我的班主任一直强调自动化专业是我们院校最难学的专业。 没上过幼儿园,也没有过实习的经历。
大学(2003年)时,同学买了一本 Java 书籍,不小心被我看完了,顺手写了一个可以盗取 QQ 密码的小软件,运行第一天获取了俩人的 QQ 密码,发现这俩人的生日一个和我姐一天,一个和我哥一天,觉得冥冥之中是上天在提醒我:不要作恶。 后来毕业设计花 8 天时间用 jsp 完成了一个网上书店,并在学院的公开答辩中得了优(听导师说,得优很难),毕业后去华为面试,最后一面的最后一个问题就是关于这个毕业设计,我说得了优后,立即通过录取。
开始开源项目是为了解决工作中的问题,利用开源产品可以帮公司省很多费用,这也是作为程序员对公司的价值。 我最早的开源项目是个 js 项目,是 2006 年写的一个 js 验证框架,于 2009 年左右开源的,但开源得不是很正规,这个项目的名字叫 talent-validate,用过的一些朋友觉得颠覆了对 js 的认知;后来也写过talent-mvc(java)、talent-grid(js)等组件并放在博客上供大家下载,但没有推广;2016 年开源了 talent-aio,也就是现在的 t-io,是放在码云上进行推广的,一下子引导起了极大关注,而且口碑极好,帮了很多无助的开发人员。
这些会随着工作内容而变化的,早期做 jsp 页面,所以花了时间学习js、css、html、servlet 规范等,作品有talent-validate 以及各种便捷的 jsp自定义的 tag; 后来做平台开发,就会去研究各种开源技术和工具,写一些轮子、做一些工具,作品有代码生成器、http请求工具、灵活查询(现在仍被原公司使用,存活 10 多年了)、动态查询等; 再后来接触互联网了,就会去研究大型网站架构、互联网安全、http 协议、SSL 协议等,知识足够了,就去 servlet 化了,自己从协议层对产品进行保驾护航。
t-io 小有名气后,有投资人表达过投资意愿,就会开始去思索如何去做一个有市场的产品,而要做好一个产品,一个人是不够的,需要团队和资金,所以尽管工资收入越来越高,却越来越觉得钱不够用----相信很多人有同感。
从事网络通讯开发,始于 2010 年,那时候刚入职中兴通讯,领导让我重写原来的 EMF模块(需要和刀片进行 TCP通讯,包括人机命令、操作系统升级、数据库结构解析等复杂工作),并且已经明确规定不允许使用mina,于是开始了 nio之旅,目前我写的这个代码还运行在中兴的许多服务器上(我当时的一个小领导还在那个产品线)。
这行业有点难,但更多的是挺有趣,不借助t-io等框架,必须要对多线程、锁、数据结构、算法等知识非常熟练才能掌握好;这也是很多通过快餐培训入行人员不容易掌握的一个领域。
最初开源 t-io 没想过要创办社区,因为没想到这么快就流行起来了,t-io 的很多进步是社区倒逼的,譬如 t-io 早期说绝对不会去实现 http、websocket 等协议,目前这些都实现了,甚至连基于 tio-http-server 的 mvc 都内置了。目的大致有以下四个:
2017 年遇到一些言语攻击,t-io 官网直接被 DDos 掉,后来也因此发布了闭源通告,那时 JFinal 作者和我分享了 JFinal 的一些经历,现在来看,那些困难不算什么了。
目前不算处于运营的状态,监控的数据来看,访问量倒是还可以,来自北京、广东和浙江的访问量比较大,迄今为止还没有来自西藏和青海的访问量,希望有识之司可以过来投放广告,支援一波 t-io。
识人招人很关键,我一般喜欢用 8K 招一个市场价在 6-7K 的开发人员,然后培养他,培养成功后,他跳槽身价翻倍,我也会祝福----总体的管理理念是不让有贡献的人吃亏。有大局观、有产品观、能站在客户和老板立场的人可以转管理。
t-io 的社区生态在慢慢自发形成(譬如j-im、贝密游戏、tio-websocket-server、tio-http-server、mqttwk),我会去帮助他们,他们的成功就是t-io的成功,也是码云的成功。
一是在技术层保障牛吧云播平台的稳定运行,争取早日上市,到时候给OSC社区的朋友发个大红包:) 二是调研需求,寻找灵感,争取这一两年创造/制造一个好产品出来。
举个例子,比如目前我主导开发的牛吧云播是 without servlet、without spring 的,网络层和视图层由 t-io、tio-http-server、tio-websocket-server、tio-webpack 提供,dao 层由 JFinal 提供的,所以对 t-io 的投入其实就是对工作的投入。 至于社区,我花的时间不是特别多,t-io 提供的 helloworld 和 showcase 对大部分开发人员已经足够了,偶尔写一下博客也花不了太多时间。
是的,牛吧云播的服务器端开发人员只有我和另外一个工程师,安卓和 IOS 也分别只有一人,所以 t-io(网络接入)+ JFinal(dao)的开发效率还是扛扛的,不介意上张牛吧云播的图吧:)
业余时间主要是拉一下筋骨,IT行业对身体消耗比较大,需要锻炼 目前的爱好已经很有限了,篮球、羽毛球都会玩一玩,但更多的还是站桩拉筋,希望今年可以劈个一字腿;弱弱地问一句:写代码可以算爱好吗?
小时候插过秧,游过泳,就是没学过舞蹈,2007 年学习了一下拉筋,因为平时会摆一些 POSS,很多人认为我是学过瑜伽,其实并没有(笑)。
不以加班论英雄,只用结果谈成败,一个好的架构师就是尽量让他的组员在快乐的气氛中完成好工作。我觉得一天工作 8 小时,并且保持饱和,这个生产量是极大的。
和人熟了就是个逗 B 体质,在办公室被同事们称作”驾校谭校长”,也就是说我经常开车或教别人开车,you know:我是个没有中华人民共和国驾照的人。
祝福码云,一路走来不容易,希望更多优秀的项目入驻码云,码云企业版可以服务更多的企业。 也祝红薯和 t-io 作者可以“一袭英发胜春光,三十雄姿堪大树”(借用了 layui 作者贤心在我朋友圈的一句小诗)。 对了,偶当年也是有头发的,还打得一手好篮球,科比粉,由于过度崇拜红薯,连发型也开始模仿他了:) Ps:下图右上即为tio作者的青葱,背景是“华为生产总部”13号球衣,戴军帽的是军训教官,笑得灿烂的女子是我大学实验室搭档。
封面人物小档案