来源:http://droidyue.com/blog/2016/06/19/how-to-write-an-awesome-post/

首先,这算是一篇回答知乎问题 程序员怎样才能写出一篇好的博客或者技术文章?的文章。

什么是技术文章

这是一个超级简单的问题,技术文章通常是指的涉及技术(这里指的是程序设计)的文章。

技术文章可以是

  • 原创文章
  • 翻译文章,如最常见的翻译英文文章
  • 一篇阐述问题相关的文章
  • 一个系列的文章,如教程。

为什么写技术文章

写技术文章的目的据不完全统计,如下

  • 备忘
  • 帮助他人
  • 知识体系积累
  • 知识变现
  • 提高知名度,成为大牛,网红

其中,出于备忘这个目的,适合书写类似工具使用类的文章,比如Android签名相关知识整理

帮助别人这个应该是必须的,但是这个其实并不简单,因为有些时候文章的观点有误,可能误导了别人,结果反而适得其反。

知识体系积累,如果是处于这个目的的话,其实写文章应该是把知识研究明白的附属产物。如果是站在这个角度,想要写出一篇文章就需要对涉及的内容要彻底掌握和吸收,行文也要严谨,观点需要反复斟酌。

知识变现这是一个有意思的话题,尤其是对于一些刚刚开通博客不久的人来说,一提到这个话题便热血沸腾。然而真正实现这一目标的一般都是持久经营博客的作者。除了付费翻译变现快之外,想要靠博客变现必须要经得起时间的积累,而且是优质的技术文章的长时间积累。

16年的关键词之一就是网红。写博客或者文章也是成为技术大牛和网红的一种途径。在这其中,持续不断的高质量文章产出是成功的不二法则。

什么是好的技术文章

  • 好的文章必然得到很多肯定,如果你准备阅读一篇幅很长的文章,不放先跳到评论部分或者分享量,看一看其他读者对本文的评论,再选择继续还是放弃阅读。
  • 技术文章的目的是帮助读者答疑解惑,而一篇好的技术文章能够以很轻松易理解的形式讲明白一件事

选题

选题对于文章来说很重要,它影响到了你的文章的阅读量。通常情况下选题有两种归类

  • 以读者需求为导向
  • 以个人研究为导向

以读者需求为导向,通常的选题为

  • 新技术的教程,比如Android Studio系列
  • 某些热门的技术和工具
  • 某些技术的系列文章,比如内存泄漏专题
  • 鸡汤文章,这可能是读者最愿意读的系列

以个人研究为导向的,通常选题比较有限,个人觉得这方面一般多为技术细节,比如ThreadLocal的原理等

结构清晰很重要

有一个清晰的结构是很重要的,一篇文字密密麻麻的文章,通常不会太好。

关于结构,建议使用Markdown更好管理结构。

通常我一般使用#标签和无序的*来处理文章结构,示例如下

1
2
3
4
5
##section的标题
  * abc
  * def
  * ABC
  * DEF

除此之外

  • 尽量避免一段很长的段落
  • 段落之间建议增加一个空白行

代码高亮是对读者的基本尊重

作为技术文章,代码通常应该是必不可少的。既然有了代码,就必须要高亮展示。

聆听他人的反馈

建议文章的发布平台都配备必要的反馈评论组建,因为它可以帮助你收集到这些有效的反馈

  • 文章中的错误
  • 解决问题的其他方法或者是更佳的方法
  • 别人对你的文章的正向肯定评价
  • 批评和建议

耗时问题

听见过很多人为什么没有坚持写博客下来,大多数回答是没有时间。可见,写博客是很需要时间的。尤其是产出一篇好文章。

我认为一篇博文的耗时可以分为两个阶段

  • 研究阶段(阅读查阅资料并咀嚼消化)
  • 书写阶段(将研究阶段的成果以图文形式输出)

对于研究阶段的一些实践

  • 将技术切分成点,比如研究ThreadLocal,我们可以切分成ThreadLocal的用途,使用方法,内部实现原理等
  • 切分成技术点之后,我们可以利用碎片时间对这些点逐个研究
  • 研究的参考资料推荐官方文档,StackOverflow和英文技术博客

完成了研究阶段之后,就是书写阶段了。

通常情况下,我自由写作时间主要集中在以下两段时间

  • 周末
  • 平时的早起时光(一般为6点开始到上班通勤之前)

这里建议书写阶段最好是一个持续的时间,减少间断写作带来的回忆成本。

拖延症问题

拖延症已然成为了现代人的一种通病,写篇博文也或多或少碰到它。

通常我一般的拖延症表现为

  • 提笔前,各种刷新闻,逛知乎,却迟迟不肯动笔
  • 写作中,忙里偷闲,刷微博,看朋友圈

关于如果解决,通常的做法就是强迫自己,做到克制,缓解并解决强迫症需要慢慢来,循序渐进。

关于拖延症,有一本书,大家可以选择去看以下。戒了吧!拖延症:写给年轻人的拖延心理学

关于翻译

翻译也是写作博文的一种,对于技术文章通常是把英文翻译成中文。有过翻译经历的同学都有过这样的感悟。

翻译最痛苦的莫过于知道句子意思,却找不到信达雅的语句表达出来。

我认为解决上述痛苦的方式有两种

  • 学习翻译技巧
  • 多阅读相关的翻译,从中吸取精华

之前,一位负责对我翻译审校的前辈向我推荐过一本书,叫做翻译的技巧 如有需要,建议阅读。

究竟怎么才能写好

其实写好一篇博文不容易,但是我觉得做到以下几点应该就能产出好文章。

  • 把复杂的事情讲简单
  • 文章结构做到清晰
  • 多多写作,熟能生巧,写多了就有感觉了。

本文观点仅为个人观点,希望能对人一些帮助。欢迎留言评论一起探讨,共同学习进步。

程序员怎样才能写出一篇好的技术文章相关推荐

  1. 如何写出一篇好的技术方案?

    近期在写某个项目的技术方案时,来来回回修改了许多版,很是苦恼.于是,将自己之前写的和别人写的技术方案都翻出来看了几遍,产生了一些思考,分享给大家. 我们为什么需要写技术方案?总结下来无非是几点,从不同 ...

  2. 技术人 | 如何写出一篇好的技术方案?

    近期在写某个项目的技术方案时,来来回回修改了许多版,很是苦恼.于是,将自己之前写的和别人写的技术方案都翻出来看了几遍,产生了一些思考,分享给大家.我们为什么需要写技术方案?总结下来无非是几点,从不同人 ...

  3. 作为一名 程序员,怎样写出一份漂亮的简历?让招聘者眼前一亮,充满激动?...

    今年是最难求职年,希望通过这篇文章能帮大家提高求职成功率. "金三银四"是指每年的三月和四月份,都是求职跳槽的高峰期.此时正是大家挑选职位.投简历.面试的好时机.因为此时从公司角度 ...

  4. 作为一名程序员,怎样写出高效简洁的代码?

    前言: Hello大家好,我是Dream .经常有朋友问我,自己写的代码太乱,虽然功能都能实现但是写的并不简洁,让人一眼看上去就会很难受,那如何去写出简洁优雅的代码呢?那今天我就来和大家分享一下一些写 ...

  5. 程序员:如何写出杀手级简历

    1. 简历里要有你工作的技术细节: 编程语言,你的个人成就和水平. 我有时会看到一些简历,里面的工作描述就只有一行话,像这样: * 在一个3人组成的团队里开发一个 e-mail 插件. 筛选者在阅读你 ...

  6. 程序员小姐姐写出代码版《本草纲目》毽子操,附上源码 !

    点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 来源:程序人生 (ID:coder_life) "腰间的赘肉咔咔掉!人鱼线马甲线我想要!",&qu ...

  7. 对于想创业,想开发APP的程序员来说,这是一篇价值百万的文章!

    本文对想做好一款App项目的人,想创业的人,来说这是一篇价值百万的文章!因为这是我们花了几百万试错成本试出来的经验! 我们先来看一下,从事开发行业每天都能遇见的"傻"问题 在从事a ...

  8. 做好5步操作,轻松写出一篇价值10万的软文

    今天,吕杭泽带给大家的是软文的写作技巧,我们全方位.360度的来深度剖析一下:软文到底应该怎么写呢? 软文,软文,首先要软!相对硬性广告而言,软文的精髓就在于一个字"软"!软文是广 ...

  9. 如何写出一篇优秀得csdn的文章?为什么要写作?有什么好处?(送给正在努力的你们)

    大家好,我是铁铁.一个颜值与实力并存的笔者. 一.如何写出一篇优秀的csdn的文章? 如何写出一篇优秀的csdn文章呢?其实每个人对待这个的看法都不一样.小铁就说说自己在写文章的时候都事先考虑什么(仅 ...

最新文章

  1. Hello Jsilk
  2. oracle有一百个人围一圈报数,案例:Oracle创建表时报session超过最大值 ORA-00018 证明递归ses...
  3. ERP failure: Error when opening an RFC connection
  4. Qt笔记-QSerialPort的使用(串口通信简单实例)
  5. 优雅的避免空指针的示例
  6. C++ 引用和指针有什么区别?
  7. webpack4.0各个击破(8)—— tapable篇
  8. python库skimage 图像直方图局部均衡化
  9. [C#] 控制系统音量-第一章
  10. matlab人工鱼群捕食,Matlab从入门到精通(3)——多目标人工鱼群算法
  11. 《程序员》8月:移动开发新技术探索
  12. js以excel为模板的打印
  13. 【浏览器兼容性】如何隐藏微软的ie和edge浏览器密码输入框的小眼睛
  14. linux 安装`软件报错
  15. 【Druid】Druid连接池(三)——配置监控界面设置登录界面
  16. px4原生源码学习-(1)
  17. 如何正确注册Tushare
  18. 码农即将30岁,焦虑扑面而来
  19. 阿里云大数据认证——机器学习PAI实现精细化营销-课堂笔记
  20. 王心凌男孩的力量有多恐怖?

热门文章

  1. c语言小程序hello,【北北的小程序】北のC语言第一课:helloworld
  2. 13-19 Python Number、Python字符串、Python列表(List)、集合的基本操作、元组、字典Dicttionnary、日期和时间
  3. cocos2dx 3.2之Lua打飞机项目
  4. Oracle:关于分布式数据库(创建数据库链路,创建触发器)
  5. OpenCV学习笔记之掩码操作
  6. 进入Linux救援(rescue)模式的四大法门
  7. CentOS 7 安装MySQL 5.6遇到问题及解决方案
  8. Shell学习笔记 - 环境变量配置文件(转)
  9. 使用logrotate分割tomcat日志
  10. oracle的存储过程