优秀的程序员都热爱写作
01、注释也是写作
据我所知,优秀的程序员都热爱写作(不止是狭义上的写博客)。如果你能举出一些例外,请一定转告我。
为什么这么说呢?
一个优秀的程序员想要分享一段开源的代码,假如别的程序员看不懂的话,他的挫败感一定会油然而生,除非他不想让别人看懂,但我觉得这样的话也没必要开源了吧。
为了能够让别的程序员读懂他的代码并重用,他不仅要定义恰当的变量和方法,还得写上一些可读性高的注释。就像下面这样:
public static int compare(double d1, double d2) {// Cannot use doubleToRawLongBits because of possibility of NaNs.long thisBits = Double.doubleToLongBits(d1);long anotherBits = Double.doubleToLongBits(d2);return (thisBits == anotherBits ? 0 : // Values are equal(thisBits < anotherBits ? -1 : // (-0.0, 0.0) or (!NaN, NaN)1)); // (0.0, -0.0) or (NaN, !NaN)
}
假如没有那些注释的话,代码看起来不免头疼。不知道我这个观点你是否认同。
你也许会争辩道:程序员难道是为了写作才成为程序员的吗?但你似乎忽略了一个前提,我说的是优秀的程序员。假如你不想在写作方面有所提高的话,请放过这篇文章吧,它不会对你有任何的帮助。
假如你想在写作方面有所提高的话,那我们可以好好地聊聊。
有效的写作其实没什么捷径,我保证就算你读了《21 天学会写作》这种秘诀也不能够在短时间内有所提高。写作需要时间,就像你从呱呱坠地的娃娃长成漂亮帅气的有志青年一样——有些人可能看到这句话的时候悄悄地打起了退堂鼓,但我这句话的深层含义是,写作没什么难的,只要你肯坚持,也不过是一件顺其自然的事情。
我敢保证,只要你在发朋友圈、文章底部评论、写代码注释的时候稍微用心地组织几行字,过不上一年半载,你就会发现自己的写作水平和以前大不一样。但想要更进一步,你还得继续坚持。
02、评论也是写作
我曾经收到过一名读者的来信,感谢我当初给他的鼓励,让他走上了写作这条“不归路”,哈哈,信的内容大概是这样的,我们不妨来一睹为快。
二哥,不知道你收到这封信的时候会不会吃惊,但一想到你惊诧不已的表情,我就觉得特别的好笑。
一开始的时候,你不知道写作对于我来说,有多么的难,几乎难到我认为你是在骗我——毕竟不是所有人都适合写作啊。
那时候,你劝我别灰心,让我尝试去一些文章底部评论而不是坐在电脑前面硬憋两三千字的文章——你别说,这真的是一个不错的方法啊。
在新媒体时代,每个人每天都要被阅读无数篇文章,朋友圈、订阅号、知识星球、博客园、掘金、CSDN 等等等等,我也不例外。虽然某些优质的文章点赞数很多,但真正用心的评论却寥寥无几。
既然被阅读嘛,况且有的时候真的是有感而发,迫切地想写上一段自己的评论。于是我就规定自己每天评论 5 篇文章,字数不少于 10 个,也不能不超过 100 个。如果只写“666、加油、厉害了”这样的评论,写作能力显然不会得到提高,也不会引起作者的注意;如果写得太多,评论就不够简洁明了,读者的耐心就会下降。
坚持了半年的时间后,我察觉到自己的评论质量在稳步上升。有时候遇到文章底部评论送书的活动,我屡屡能够中奖,这在无形当中又给了我莫大的动力。如果我没有被选中,我就会去看别人的评论,然后去研究原因,我会想:也许我写得不够有趣味性?也许我写得不够一针见血?
你曾经说你坚持写博客极大地提高了写作能力,我想告诉你,写评论对于我来说有着相同的作用。
后来,我不再仅限于评论,我还会在知乎上面回答问题,这不仅仅提升了我的写作能力,还在无形当中锻炼了我的表达能力,让我感到无比的开心。
最后,我还要再说一声,二哥,谢谢你。
看完这封信,你是不是也迫不及待地想在这篇文章底部评论评论呢?如果你肯这样做的话,那就对了!
03、如何坚持写作
优秀的程序员心里都清楚,写作能够很好地提升自己,包括技术能力、表达能力,但同时写作也是一个很慢的过程,需要长时间的积累,才会有效果。
就好像健身一样,好处多多,但做起来并不那么容易。
我身边就有很多想要健身的人,觉得年纪大了,再不锻炼就废了,但往往很多人掏了钱办了卡,仍然不能坚持。我也去过健身房,亲眼目睹过不少身材曲线非常完美的女性,还有呈现倒三角体格的男性,觉得他们的毅力太强了。
那如何才能把写作这个事情坚持下来呢?
1)小事做起
说实话,我没有办过健身卡,因为我觉得自己在健身房很难坚持不下来,这并不是给自己设限,而是自知之明。那我怎么做呢?
我每天骑自行车上下班,除了下雨天和一些例外。因为这事,我母亲没少唠叨我:“这么热的天,你骑自行车不开车,是不是傻啊,儿子?”
我回答说:“我得锻炼啊,妈,要不很快就中年发福了。”
我妈就不耐烦地说:“你看你以前瘦成啥样了,一百斤出头,现在好不容易胖点多好!”
听到这句话,我只能心里暗笑母亲的愚,太胖就不帅了。
你看,就骑自行车这件小事,都能受到他人的干扰,何况写作呢?但只要我把骑自行车这件事坚持下去,那么我坚持每周分享两篇文章的节奏就不那么容易中断。
你也可以从小事做起,比如说在文章底部写评论,甚至在发朋友圈、写注释的时候稍微比往常更用心一些。
2)抱团取暖
写作能给作者带来的奖励并不多,尤其对于刚开始要写作的人来说(写评论、代码注释就更不会了)。「惰性」是人人都有的,很多人就会在写与不写之间徘徊,徘徊着徘徊着就不写了。建议你找一些水平相当的作者,隔三差五大家鼓励一下,报团取暖嘛。
我就会在写作的道路上关注一些水平相当的好友,每当写不下去的时候,和他们畅谈一下,沮丧的心情就会立马被治愈。抱团还有另外一个好处就是,当你看到他们文章的阅读量超过自己的时候,还可以向他们取取经,学习学习经验。
3)读者驱动
当你花了一定时间完成了一篇文章,怀着迫切的心情分享出去以后,过不了一会儿就会收到了一些评论,无论是赞扬还是抨击,你都会觉得感受蛮有趣的——竟然还有读者肯花心思读我的文章嘛。
我之前在 V2EX 上发表了一个话题,叫做《心情不宁静的时候,你怎么办》,有个读者就看不惯了,觉得我发的主题总是很消极(尽管我不那么觉得),就把我以前所有的主题统统罗列了出来,要让更多的人评评理。我看到他的评论时忍不住笑出声来,于是乐呵呵地回复他说:“好用心啊,伙计!”
有的时候,真心感觉自己的文章不怎么样,但仍有不少读者热情地评论,觉得深受启发。哇,那时候你感觉自己好优秀啊(真的)!迫不及待地想写下一篇。
04、最后的忠告
写作这件事已经老生常谈了。
但很多程序员喜欢把写作等价于写博客,其实这样的定义略显狭隘,很容易把一部分想要写作的人阻挡在门外。我认为,写作包括很多方面:评论、提问、回答、聊天、发朋友圈、技术文档、代码注释等等等等。
最后,让我来引用一位名人对于写作重要性的阐述:
如果你准备在一堆人中挑出一个人来做某份工作,那就挑文章写得最好的那个。至于他有没有做过市场、销售、设计、编程或其他什么工作,倒并不重要。这种人的写作才华就值得雇用。这是因为,一个优秀的写手,其优点并不仅仅在于写作。文法清晰代表思路明晰。优秀的写手都懂得如何与人沟通。他们使事情变得易于理解,他们善于换位思考,懂得抓重点、砍枝节,这些都是合格的应聘者身上应具备的特点。
说这句话的名人曾创造过一个大名鼎鼎的副产品——Ruby On Rails。
PS:欢迎关注「沉默王二」公众号,后台回复关键字「写作」获取二哥精心准备的写作方面的电子书。
优秀的程序员都热爱写作相关推荐
- 优秀的程序员都在哪里 如何寻找优秀的程序员?
优秀的程序员都在哪里 这是你第一次公开招募雇员.如同大多数人一样,你会发布广告,可能也会浏览一些大型的网上论坛,然后你就收到了一吨的简历. 一份份看下去,你会想:"嗯嗯嗯,这人应该可以.&q ...
- 目前中国顶级优秀的程序员都有谁?
今天无意中搜到知乎话题:目前中国顶级优秀的程序员都有谁?留作备忘 链接 https://www.zhihu.com/question/27462559 下面是一些比较好的答复,摘抄备份下 我把程序员分 ...
- 优秀的程序员都有那些特质?
优秀的程序员都有那些特质? 目录 优秀的程序员都有那些特质?
- 为什么优秀的程序员都成了无能的领导?
作者 | Zachary Minott 译者 | 弯月 出品 | CSDN(ID:CSDNnews) 以下为译文: 小明是一位雄心勃勃且成绩斐然的开发人员. 他工作非常努力,每天都会想方设法磨练自己的 ...
- 中国最优秀的程序员都有哪些?王兴、张小龙、张一鸣是哪类?| 蒋涛说
责编 | 唐小引 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) 编程是一项「Talk is cheap, show me the code」的事业,从 80 年代 ...
- 优秀的程序员都不写博客?这就推荐6个优秀博客给你看
李开复是个很内向的人.还有甘地.乔布斯.但丁......这个名单可以列很长.在读博的时候,李开复要教一群高中生学编程.这件事他想的很简单,就教一些基础知识嘛:真到了给学生们上课,才发现,学生们根本都不 ...
- 为什么优秀的程序员都写博客?谈谈我都是如何写作的
我的文章上热榜啦 首先在写之前给大家分享个歌单1 ,歌单二,分享歌单呢,主要是我在哔哩哔哩剪辑视频加的,我写东西不会去听音乐的,因为觉得那样,不利于 我的思维扩展. 进入正题 写博客呢首先要知道它具有 ...
- 优秀的程序员都有哪些习惯?
]:「我不是卓越的程序员,我只不过是一个有着卓越习惯的程序员.」技术大牛 Kent Beck 曾这样说过自己. 7月初,nostrademons 在 Hacker News 发起一个讨论,是哪些习惯成 ...
- 优秀的程序员都应当知道的11个警句
1. 技术只是解决问题的选择,而不是解决问题的根本 我们可以因为掌握了最新的 JavaScript 框架 ahem.Angular 的 IoC 容器技术或者某些编程语言甚至操作系统而欢欣雀跃,但是这些 ...
- 那些优秀的程序员都在看哪些书?
目录 一.Java 27岁生日啦 1995年5月23日 2004年 2015年 2019年 2022年 二.Java核心技术 卷1 基础知识 (原书第11版)[Core Java] 三.Java核心技 ...
最新文章
- linux多用户怎么表示,Linux如何建立多用户
- 2021年黑龙江省智能车邀请赛
- spark环境搭建(idea版本)
- 浅谈PostgreSQL的索引
- 0420第一次团队合作
- oracle动态采样超时,解决 ORACLE 11.2 动态采样导致的性能问题
- wrieshark 指令
- 性能测试(三)Jmeter工具
- mysql 提示ssl问题
- mysql迁移数据目录,这个坑你遇到过吗?
- 利用构造函数实现累加
- 2021华为软挑赛题_思路分析——实时更新,做多少更多少(一)
- 流程图常用符号及其代表含义
- 关于SO、SOP、SOIC封装(宽体、中体、窄体)的详解
- 光伏发电与计算机控制,独立太阳能光伏发电系统的控制设计与实现
- DyingGasp电路(掉电检测电路)设计
- OpenCV框架与图像插值算法
- ACL and SCO
- (五)DDR协议命令波形时序二——(Precharge、Refresh、Self Refresh、Power Down)
- 统计并输出空格或回车、数字字符和其他字符的个数。
热门文章
- dedecms pm.php,dedecms /member/pm.php SQL Injection Vul
- leetcode (Find All Numbers Disappeared in an Array)
- 打开Java控制面板
- 10个国外免费下载电子书网站
- Invalid bound statement (not found) 五种解决方法
- 新版TCGA的突变SNP数据添加临床信息
- 英特尔核显自定义分辨率_让图像更精彩 英特尔核显如何设置
- unity shader projector使用
- Codeforces Round #622 C2 - Skyscrapers
- go srs 流媒体服务器_Go语言实现的流媒体服务器开发框架