专访小书作者刘传君:练太极的“读书机器”
访谈嘉宾:刘传君
刘传君,创过业、做过产品、一个爱读书,喜欢分享的程序员。先后在图灵社区出版了《HTTP小书》《Git小书》《Vue.js小书》《Swift iOS开发小书》。
访谈实录:
创业的经历让我无比清晰地认识到,我更愿意把时间花在技术本身
“如果你认为自己可以应对各种不期而来的事件,也有比较强烈的改变世界的动机,那么不妨试试!这次创业的经历让我无比清晰地认识到,我更愿意把时间花在技术本身。”
介绍下自己曾经创业的经历。有哪些感悟想跟其他创业者分享?
那次创业已经是10年前的事儿了。我和一位同样是技术出身的合伙人,一起做了款OA产品。我们计划通过朋友推介的方式推广这款产品,如果客户想要定制的话,我们也不拒绝。但是实际工作中,我们发现销售过程占据了我们更多的精力,而且和客户沟通过程中的模糊需求、关于工期和价格的谈判都令我感到不适。因为我本人还是希望可以有大块的时间专注于技术,所以放弃了这次创业。
创业很有挑战,对个人的综合能力要求很高。什么样的人适合创业是需要评估的。如果你认为自己可以应对各种不期而来的事件,也有比较强烈的改变世界的动机,那么不妨试试!这次创业的经历让我无比清晰地认识到,我更愿意把时间花在技术本身。
目前,从事什么样的工作?
目前,我在一家ERP提供商工作,负责平台开发和新技术研究。和团队一起,我们创造了公司内第一个ERP产品的二次开发平台。这个平台最初只在公司内部小范围使用。2008年“512大地震”时,我带领团队基于此平台的快速交付能力,开发出并在一周内上线了赈灾物资分配系统。随后,公司开始更大规模地基于此平台开发产品。
关注哪些技术领域?
产品开放和技术关注是相辅相成的。目前,我关注Swift、Node.js等技术。
语言的选择很重要。iOS系统的Objective-C语法比较特别,我无法接受。但是,Swift就很有主流语言的样子,并且苹果官方也非常支持它。至于Node.js,我喜欢它的自由开放,会考虑把它作为后台开发语言逐步替换之前的C#。这样的话,未来的产品就可以运行到Linux系统下。在我看来,这可能是ERP开发的技术机会。
业余时间,我也会学习操作系统开发,准备花几年时间做一个“能跑”的系统。
倾慕Unix哲学
“甚至,在写书和写文章的时候,我会认为单行命令远超过若干个截图,简洁可以带来更高效地知识传递。”
您曾说过自己倾慕Unix哲学,可以分享下自己对Unix的理解吗?
是的。我欣赏Unix的极致简洁,还被Unix成功地灌输了不少观念,比如说管道的设计理念,这使得各命令可以非常方便地进行组合。每个命令都专注于特定的功能,组合起来就可以做到多样变化。
甚至,在写书和写文章的时候,我会认为单行命令远超过若干个截图,简洁可以带来更高效地知识传递。我在写《HTTP小书》的时候,不会像大多数人一样使用浏览器发起访问、显示响应,而是尽可能地使用curl命令。前者往往需要截图,一个操作截图就可能需要占用半页篇幅;而命令行可能就是一行命令和几行输出。
常年混迹互联网技术圈,您认为技术人身上有哪些闪光点?存在哪些不足?
我曾经做过地区的.Net技术俱乐部,组织技术人士进行线下的交流。事先,我会征集活动主题和会议地点,然后召集对.Net技术感兴趣的技术人参加。这段期间里,我和微软有了良好的互动关系,一方面传播了技术知识,一方面聚集了不少热心的技术高手,彼此间分享观点、相互支持。
我也常常混迹一些线上的论坛,像是Stack Overflow、SegmentFault、掘金等。因此和很多技术人员有了比较深层次的交流。他们低头做事,专注技术实力的提升,或许沉默寡言,确是专注认真、勤奋上进的典范。
不足的话,少部分人身上是存在的。我曾看到过一些网络论坛上的评论,其中不免有些卖弄、推销或是鄙视他人价值观的,阮一峰的博客上就常常可以看到类似的言论。我在Stack Overflow上也会查找问题,偶尔提些问题和回复问题。在这里,很少存在卖弄或是攻击他人价值观的情况。我希望技术人士能够更加专注问题讨论本身,而不是其他。
有书相伴,时光总是美好的
“农村长大的我,对山水风景很喜爱,对周围的人文则只想躲离。读书可以让我以最低的成本看到外部的世界,给我源源不断地提供新的知识和乐趣。”
您平时酷爱读书,读的书全部是技术书吗?
以IT技术书为主,医学史类也很喜欢看。医学史让我从发展的角度了解常见疾病及其预防方式的来龙去脉,帮助我了解身体的运作方式,做到有意识地爱惜身体,这本身就是很酷的事儿。也会看些历史和地理方面的,小说也有不少。
有哪些钟爱的读书方式?
就是一字一句地读。每当看到有触动或者关注的,就用笔画下来。技术书的话,一定要写代码验证。还有一个“恶习”,就是把认准要读的书封撕掉。因为我喜欢纸的感觉,不喜欢封面的塑料。
有价值的书,要反复读。比如我在研究HTTP的时候,就买了几本一样的书,车上、办公室、家里各放一本。6个月里,写了很多验证代码。
练太极的“读书机器”
“小说《假如明天来临》对太极的描写,让我认识到太极原来可以那么酷!总之,我爱上了太极,并且坚持了下来。”
我们想知道,除了读书,平时还有哪些消遣活动?
听到我每年读50本书的时候,很多人都很惊讶,说我是“读书机器”。农村长大的我,对山水风景很喜爱,对周围的人文则只想躲离。读书可以让我以最低的成本看到外部的世界,给我源源不断地提供新的知识和乐趣。从小就爱读书,它已经成为了我生活中最可信的一部分。
有一段时间,“量化生活”的说法很流行。所以,我就想观察下自己读书的数量,我发现,可以做到每年阅读超过50本的书。有书相伴,时光总是美好的。
除了读书,我有一段时间真就不知道干啥。不看书的话,会散散步、爬爬山。知道不健康,但是不知道怎么改。后来我发了狠,尝试了一些运动。但是,我总觉得是为了解决问题不得已而去做的,所以内心对运动也并不积极。
闲暇时,我看过一本叫作《假如明天来临》的小说。故事里女主角特雷西蒙冤入狱,在狱中不断求生,越狱后惩治恶人,最终走向自由。特雷西被禁闭在狭小的黑囚室的时候,决定练习太极来保持体力。
小说对太极的描写,让我认识到太极原来可以那么酷!总之,我爱上了太极,并且坚持了下来。
坚持写作短小精悍的小书
“因为喜爱读书,我会关注读书的成本问题。我一直坚信,存在一种降低阅读成本并且可以快速入门的方法,这个方式可以由作者把信息更好地组织来达成。”
您曾在图灵社区先后写作了四本电子小书。为什么会坚持写作短小精悍的小书?
因为喜爱读书,我会关注读书的成本问题。我一直坚信,存在一种降低阅读成本并且可以快速入门的方法,这个方式可以由作者把信息更好地组织来达成。
坚持写短小精悍的小书,是因为我有自己的原则。
关注单一。讲某个问题时,去掉和当前问题不直接相关的信息,一点也不要。
代码优先于文字。读者可以很容易地把代码跑起来,代码懂了,文字不必看。
命令优先于截图。能够用命令和它的输出说明的,不要去截图说明。实际上,我在《git小书》里没有添加哪怕一张的截图。
最佳方案优先。完成一件工作可以有多种方法,首先介绍当前我认为最好的。
电子书的优势是,你在阅读的时候可以直接复制代码来做验证。比如《Swift开发小书》里的代码都是一整段的,读者可以直接复制粘贴到IDE内运行。这样就不必通读全章,然后把分散于多处的代码拼起来去运行。电子书的另外一个好处是,当我觉得我把整本书需要承载的知识都讲清楚的时候,就可以收手,不必为了篇幅的问题而勉强自己。
是否有计划出版一部“大书”?
是的,我也在琢磨出一本厚书的问题,毕竟铅字对我还是有诱惑的。《Swift iOS 开发小书》出来后,我依然在继续Swift的研究。目前,关于Swift的博文也积累了很多。
什么样的技术书是您所推崇的?
我挑书的话,一般会看前言和第一章。如果前言部分有作者自己的感受,而不是仅仅罗列事实,那么我会认为他的文字有温度。如果从第一章的内容就可以看出全书的脉络,我基本上认为作者的架构能力强,组织材料精确。《重构:改善既有代码的设计》就很符合上面的标准。
不符合我的希望怎么办?事实表明,这样的好书总是比较少的,特别是新技术刚刚出来的时候。这时的官方文档常常是唯一的选择。阅读下来确实不容易,有技术本身的障碍,有语言的障碍。硬着头皮看下几章后,也就顺了。有个说法叫作温书,反反复复地看直到把一本冷书变得温暖,回报也就来了。
更多精彩,加入图灵访谈微信!
专访小书作者刘传君:练太极的“读书机器”相关推荐
- 面对500篇GNN论文,心态差点儿崩了,幸好我有这本小书
题图 | Computer vector created by stories - www.freepik.com 说起来,大学时代的图灵君也算得上是零挂科修完全部计算机课程的人才.怀着对前沿技术的满 ...
- React.js 小书 Lesson12 - state vs props
React.js 小书 Lesson12 - state vs props 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson12 转载请注 ...
- React.js 小书 Lesson14 - 实战分析:评论功能(一)
React.js 小书 Lesson14 - 实战分析:评论功能(一) 本文作者:胡子大哈 本文原文:http://react.huziketang.com/blog/lesson14 转载请注明出处 ...
- React.js 小书 Lesson27 - 实战分析:评论功能(六)
React.js 小书 Lesson27 - 实战分析:评论功能(六) 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson27 转载请注明出 ...
- React.js 小书 Lesson5 - React.js 基本环境安装
React.js 小书 Lesson5 - React.js 基本环境安装 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson5 转载请注明 ...
- React.js 小书 Lesson15 - 实战分析:评论功能(二)
作者:胡子大哈 原文链接: http://huziketang.com/books/react/lesson15 转载请注明出处,保留原文链接和作者信息. 上一节我们构建了基本的代码框架,现在开始完善 ...
- 这本免费小书,带你征服 GitHub!
GitHub 漫游指南,一本有趣又通俗的 GitHub 教程,想要成为 star 之王么? 今天给大家分享一份通俗易懂的 GitHub 学习教程,即<GitHub 漫游指南>. 看过了不下 ...
- React.js 小书 Lesson24 - PropTypes 和组件参数验证
作者:胡子大哈 原文链接: http://huziketang.com/books/react/lesson24 转载请注明出处,保留原文链接和作者信息. 我们来了到了一个非常尴尬的章节,很多初学的朋 ...
- React.js 小书 Lesson18 - 挂载阶段的组件生命周期(一)
React.js 小书 Lesson18 - 挂载阶段的组件生命周期(一) 本文作者:胡子大哈 本文原文:http://huziketang.com/books/react/lesson18 转载请注 ...
最新文章
- 对象存储、块存储、文件存储的区别
- 网站外链优化布局和新增技巧介绍!
- 简单三步搭建一对一直播源码系统
- C++中多态性学习(上)
- Python并发编程:多线程-死锁现象与递归锁
- Hibernate 拦截器实例
- .NET 异步详解(更新)
- knn k的选取_KNN - 初窥K近邻算法
- Innodb之监控Buffer pool Load progress
- html5游戏面试题及答案,HTML5常见面试题及答案(二)
- 为什么大多数人是穷人?
- 前景检测算法(十)--SOBS算法
- inDesign教程,如何创建灵活的标头设计?
- spring-boot-maven-plugin 爆红,分析原因并解决。
- 使用MyBatis快速生成代码
- C语言冒泡排序算法详解
- Android内购+IM
- GitHub消除马赛克项目
- android 层叠view,RecyclerView进阶之层叠列表(上)
- Redis从入门到精通(二)
热门文章
- php智能客服,智能客服系统
- java lock的原理,Java中Lock原理探究
- 模糊选择器 js_5个很棒的 React.js 库,值得你亲手试试!
- python argparse_Python 命令行之旅:初探 argparse
- 企业级区块链现状研究报告:小企业的投资总额是大企业的28倍
- VS2017+OpenCV3.4.0 折腾(5)
- [Android问答] 开发环境问题集锦
- Edraw Max(亿图图示)案例:产品经理如何用亿图绘制流程图?
- try catch finally
- 提高C#编程水平的50个要诀[转载]