程序员怎样才能写出一篇好的技术文章
来源:http://droidyue.com/blog/2016/06/19/how-to-write-an-awesome-post/
首先,这算是一篇回答知乎问题 程序员怎样才能写出一篇好的博客或者技术文章?的文章。
什么是技术文章
这是一个超级简单的问题,技术文章通常是指的涉及技术(这里指的是程序设计)的文章。
技术文章可以是
- 原创文章
- 翻译文章,如最常见的翻译英文文章
- 一篇阐述问题相关的文章
- 一个系列的文章,如教程。
为什么写技术文章
写技术文章的目的据不完全统计,如下
- 备忘
- 帮助他人
- 知识体系积累
- 知识变现
- 提高知名度,成为大牛,网红
其中,出于备忘这个目的,适合书写类似工具使用类的文章,比如Android签名相关知识整理
帮助别人这个应该是必须的,但是这个其实并不简单,因为有些时候文章的观点有误,可能误导了别人,结果反而适得其反。
知识体系积累,如果是处于这个目的的话,其实写文章应该是把知识研究明白的附属产物。如果是站在这个角度,想要写出一篇文章就需要对涉及的内容要彻底掌握和吸收,行文也要严谨,观点需要反复斟酌。
知识变现这是一个有意思的话题,尤其是对于一些刚刚开通博客不久的人来说,一提到这个话题便热血沸腾。然而真正实现这一目标的一般都是持久经营博客的作者。除了付费翻译变现快之外,想要靠博客变现必须要经得起时间的积累,而且是优质的技术文章的长时间积累。
16年的关键词之一就是网红。写博客或者文章也是成为技术大牛和网红的一种途径。在这其中,持续不断的高质量文章产出是成功的不二法则。
什么是好的技术文章
- 好的文章必然得到很多肯定,如果你准备阅读一篇幅很长的文章,不放先跳到评论部分或者分享量,看一看其他读者对本文的评论,再选择继续还是放弃阅读。
- 技术文章的目的是帮助读者答疑解惑,而一篇好的技术文章能够以很轻松易理解的形式讲明白一件事。
选题
选题对于文章来说很重要,它影响到了你的文章的阅读量。通常情况下选题有两种归类
- 以读者需求为导向
- 以个人研究为导向
以读者需求为导向,通常的选题为
- 新技术的教程,比如Android Studio系列
- 某些热门的技术和工具
- 某些技术的系列文章,比如内存泄漏专题
- 鸡汤文章,这可能是读者最愿意读的系列
以个人研究为导向的,通常选题比较有限,个人觉得这方面一般多为技术细节,比如ThreadLocal的原理等
结构清晰很重要
有一个清晰的结构是很重要的,一篇文字密密麻麻的文章,通常不会太好。
关于结构,建议使用Markdown更好管理结构。
通常我一般使用#
标签和无序的*
来处理文章结构,示例如下
1 2 3 4 5 |
|
除此之外
- 尽量避免一段很长的段落
- 段落之间建议增加一个空白行
代码高亮是对读者的基本尊重
作为技术文章,代码通常应该是必不可少的。既然有了代码,就必须要高亮展示。
聆听他人的反馈
建议文章的发布平台都配备必要的反馈评论组建,因为它可以帮助你收集到这些有效的反馈
- 文章中的错误
- 解决问题的其他方法或者是更佳的方法
- 别人对你的文章的正向肯定评价
- 批评和建议
耗时问题
听见过很多人为什么没有坚持写博客下来,大多数回答是没有时间。可见,写博客是很需要时间的。尤其是产出一篇好文章。
我认为一篇博文的耗时可以分为两个阶段
- 研究阶段(阅读查阅资料并咀嚼消化)
- 书写阶段(将研究阶段的成果以图文形式输出)
对于研究阶段的一些实践
- 将技术切分成点,比如研究ThreadLocal,我们可以切分成ThreadLocal的用途,使用方法,内部实现原理等
- 切分成技术点之后,我们可以利用碎片时间对这些点逐个研究
- 研究的参考资料推荐官方文档,StackOverflow和英文技术博客
完成了研究阶段之后,就是书写阶段了。
通常情况下,我自由写作时间主要集中在以下两段时间
- 周末
- 平时的早起时光(一般为6点开始到上班通勤之前)
这里建议书写阶段最好是一个持续的时间,减少间断写作带来的回忆成本。
拖延症问题
拖延症已然成为了现代人的一种通病,写篇博文也或多或少碰到它。
通常我一般的拖延症表现为
- 提笔前,各种刷新闻,逛知乎,却迟迟不肯动笔
- 写作中,忙里偷闲,刷微博,看朋友圈
关于如果解决,通常的做法就是强迫自己,做到克制,缓解并解决强迫症需要慢慢来,循序渐进。
关于拖延症,有一本书,大家可以选择去看以下。戒了吧!拖延症:写给年轻人的拖延心理学
关于翻译
翻译也是写作博文的一种,对于技术文章通常是把英文翻译成中文。有过翻译经历的同学都有过这样的感悟。
翻译最痛苦的莫过于知道句子意思,却找不到信达雅的语句表达出来。
我认为解决上述痛苦的方式有两种
- 学习翻译技巧
- 多阅读相关的翻译,从中吸取精华
之前,一位负责对我翻译审校的前辈向我推荐过一本书,叫做翻译的技巧 如有需要,建议阅读。
究竟怎么才能写好
其实写好一篇博文不容易,但是我觉得做到以下几点应该就能产出好文章。
- 把复杂的事情讲简单
- 文章结构做到清晰
- 多多写作,熟能生巧,写多了就有感觉了。
本文观点仅为个人观点,希望能对人一些帮助。欢迎留言评论一起探讨,共同学习进步。
程序员怎样才能写出一篇好的技术文章相关推荐
- 如何写出一篇好的技术方案?
近期在写某个项目的技术方案时,来来回回修改了许多版,很是苦恼.于是,将自己之前写的和别人写的技术方案都翻出来看了几遍,产生了一些思考,分享给大家. 我们为什么需要写技术方案?总结下来无非是几点,从不同 ...
- 技术人 | 如何写出一篇好的技术方案?
近期在写某个项目的技术方案时,来来回回修改了许多版,很是苦恼.于是,将自己之前写的和别人写的技术方案都翻出来看了几遍,产生了一些思考,分享给大家.我们为什么需要写技术方案?总结下来无非是几点,从不同人 ...
- 作为一名 程序员,怎样写出一份漂亮的简历?让招聘者眼前一亮,充满激动?...
今年是最难求职年,希望通过这篇文章能帮大家提高求职成功率. "金三银四"是指每年的三月和四月份,都是求职跳槽的高峰期.此时正是大家挑选职位.投简历.面试的好时机.因为此时从公司角度 ...
- 作为一名程序员,怎样写出高效简洁的代码?
前言: Hello大家好,我是Dream .经常有朋友问我,自己写的代码太乱,虽然功能都能实现但是写的并不简洁,让人一眼看上去就会很难受,那如何去写出简洁优雅的代码呢?那今天我就来和大家分享一下一些写 ...
- 程序员:如何写出杀手级简历
1. 简历里要有你工作的技术细节: 编程语言,你的个人成就和水平. 我有时会看到一些简历,里面的工作描述就只有一行话,像这样: * 在一个3人组成的团队里开发一个 e-mail 插件. 筛选者在阅读你 ...
- 程序员小姐姐写出代码版《本草纲目》毽子操,附上源码 !
点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 来源:程序人生 (ID:coder_life) "腰间的赘肉咔咔掉!人鱼线马甲线我想要!",&qu ...
- 对于想创业,想开发APP的程序员来说,这是一篇价值百万的文章!
本文对想做好一款App项目的人,想创业的人,来说这是一篇价值百万的文章!因为这是我们花了几百万试错成本试出来的经验! 我们先来看一下,从事开发行业每天都能遇见的"傻"问题 在从事a ...
- 做好5步操作,轻松写出一篇价值10万的软文
今天,吕杭泽带给大家的是软文的写作技巧,我们全方位.360度的来深度剖析一下:软文到底应该怎么写呢? 软文,软文,首先要软!相对硬性广告而言,软文的精髓就在于一个字"软"!软文是广 ...
- 如何写出一篇优秀得csdn的文章?为什么要写作?有什么好处?(送给正在努力的你们)
大家好,我是铁铁.一个颜值与实力并存的笔者. 一.如何写出一篇优秀的csdn的文章? 如何写出一篇优秀的csdn文章呢?其实每个人对待这个的看法都不一样.小铁就说说自己在写文章的时候都事先考虑什么(仅 ...
最新文章
- Hello Jsilk
- oracle有一百个人围一圈报数,案例:Oracle创建表时报session超过最大值 ORA-00018 证明递归ses...
- ERP failure: Error when opening an RFC connection
- Qt笔记-QSerialPort的使用(串口通信简单实例)
- 优雅的避免空指针的示例
- C++ 引用和指针有什么区别?
- webpack4.0各个击破(8)—— tapable篇
- python库skimage 图像直方图局部均衡化
- [C#] 控制系统音量-第一章
- matlab人工鱼群捕食,Matlab从入门到精通(3)——多目标人工鱼群算法
- 《程序员》8月:移动开发新技术探索
- js以excel为模板的打印
- 【浏览器兼容性】如何隐藏微软的ie和edge浏览器密码输入框的小眼睛
- linux 安装`软件报错
- 【Druid】Druid连接池(三)——配置监控界面设置登录界面
- px4原生源码学习-(1)
- 如何正确注册Tushare
- 码农即将30岁,焦虑扑面而来
- 阿里云大数据认证——机器学习PAI实现精细化营销-课堂笔记
- 王心凌男孩的力量有多恐怖?
热门文章
- c语言小程序hello,【北北的小程序】北のC语言第一课:helloworld
- 13-19 Python Number、Python字符串、Python列表(List)、集合的基本操作、元组、字典Dicttionnary、日期和时间
- cocos2dx 3.2之Lua打飞机项目
- Oracle:关于分布式数据库(创建数据库链路,创建触发器)
- OpenCV学习笔记之掩码操作
- 进入Linux救援(rescue)模式的四大法门
- CentOS 7 安装MySQL 5.6遇到问题及解决方案
- Shell学习笔记 - 环境变量配置文件(转)
- 使用logrotate分割tomcat日志
- oracle的存储过程