热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

究竟为什么程序员最好养成写博客的习惯?

:本篇文章主要介绍了究竟为什么程序员最好养成写博客的习惯?,对于PHP教程有兴趣的同学可以参考一下。
在学校里,有“文科生”和“理科生”的区分,学习内容不同,思维方式也有差异。我是一名理科生,大学里我的专业是计算机科学,毕业后我的工作是软件工程师。在这个过程中,我发现文理科之间的鸿沟始终无法弥合。我见到的很多工程师害怕写文章,而文科生看到代码就头疼。

我认为,程序员应该养成写作的习惯。因为写文章会锻炼许多对于编程十分有益的技能。

写文章和写代码最核心的共同之处在于它们都需要清晰思考的能力。顶尖的软件工程师往往也是优秀的写作者,他们的文章和代码一样富有逻辑性,行文流畅、优雅。

文章和代码有很多相似之处:二者都是从一个空白的页面开始,把一个想法最终变成完整的产品,推向特定的受众;写文章和写代码都需要你把一系列有逻辑的语句封装进一个个模块中,这些模块可以是函数也可以是文章的段落;好代码与好文章一样都需要言简意赅,不然就会浪费 CPU 资源或人的精力。

当某个产品快要完工时,软件工程师会像作品快要发表的作家一样焦虑不安。和写文章一样,软件永远不会有彻底完成的时候,工程师需要花更多时间优化代码、开发新功能或者重做某个部分,因为他们担心发布的作品没有展现出自己最好的一面。

软件工程师应该写作因为现在开发协作变得越来越重要。开源项目可以得到来自世界各地人民的参与。开发和运营一个产品常常需要大量工程师(Google Maps 有 1100 个全职员工!)。不论是 GitHub 评论、代码注释,还是技术文档都需要清晰准确的文字。良好的写作能力方便了人们之间的交流,使得项目更好地运行下去。

可能你觉得有些项目不太需要交流协作,但是写一些关于软件的内容通常对于学习和更进一步的讨论有着促进作用。现在,我们不再需要通过 RFC 文档或技术手册中学习了,因为网上有其他工程师写的教程。此外,我们还能够从 Hacker News 评论、推特和各种博客中学到很多内容。

提到博客,再来说两句。好的写作需要时间。我们一开始写出来的文字可能不怎么样,这时就需要再花点时间,多修改几遍,润色一下。如果你觉得自己太忙了没时间写博客,不知道写什么或者担心你的观点被公开记录日后留下把柄,你应该花上点时间读一读 Steve Yegge 的《你应该写博客》(You Should Write Blogs)这篇文章。即便其中的观点不能说服你,我相信在阅读之后你也会有所收获。

软件工程师需要写作,因为他们可能会享受写作的过程。很多软件工程师都期待自己开发的软件能够“产生影响”,给人们的生活带来改变。实际上,通过写文章,你也能够对人们“产生影响”,譬如说关于管理的博文可以帮助他人激励自己的团队,教授编程的内容可能会引起一个学生学习计算机科学的兴趣,关于职业规划的文章则可以帮助毕业生找到新的职业方向。

即使没人读你的文章,写作的过程也是有益无害。它帮助你理清思路,明确对于某个问题的看法,加强或削弱你的某种观点。把凌乱的想法汇聚成精简的文字非常有价值。

总之,写作有利于提高软件开发的水平,同时更方便开发过程中的协作,即使对一个理科生来说,也是一件非常值得做的事。

免费领取兄弟连IT教育原创PHP教程光盘/《细说PHP》精要版,详情咨询官网客服:http://www.lampbrother.net

学PHP、Linux、HTML5、UI、Android等视频教程(课件+笔记+视频)!联系Q878769237

欢迎加入PHP交流群 176362750

以上就介绍了究竟为什么程序员最好养成写博客的习惯?,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

推荐阅读
  • 反向投影技术主要用于在大型输入图像中定位特定的小型模板图像。通过直方图对比,它能够识别出最匹配的区域或点,从而确定模板图像在输入图像中的位置。 ... [详细]
  • 在项目部署后,Node.js 进程可能会遇到不可预见的错误并崩溃。为了及时通知开发人员进行问题排查,我们可以利用 nodemailer 插件来发送邮件提醒。本文将详细介绍如何配置和使用 nodemailer 实现这一功能。 ... [详细]
  • C#设计模式学习笔记:观察者模式解析
    本文将探讨观察者模式的基本概念、应用场景及其在C#中的实现方法。通过借鉴《Head First Design Patterns》和维基百科等资源,详细介绍该模式的工作原理,并提供具体代码示例。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 在跨浏览器开发中,一个常见的问题是关于如何在鼠标悬停时显示图片提示信息。本文深入探讨了 IE 浏览器对 IMG 元素 alt 属性的特殊处理,并提供了最佳实践建议。 ... [详细]
  • 本问题探讨了在特定条件下排列儿童队伍的方法数量。题目要求计算满足条件的队伍排列总数,并使用递推算法和大数处理技术来解决这一问题。 ... [详细]
  • 解决Anaconda安装TensorFlow时遇到的TensorBoard版本问题
    本文介绍了在使用Anaconda安装TensorFlow时遇到的“Could not find a version that satisfies the requirement tensorboard”错误,并提供详细的解决方案,包括创建虚拟环境和配置PyCharm项目。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
  • 在创建新的Android项目时,您可能会遇到aapt错误,提示无法打开libstdc++.so.6共享对象文件。本文将探讨该问题的原因及解决方案。 ... [详细]
  • 查找最小值的操作是很简单的,只需要从根节点递归的遍历到左子树节点即可。当遍历到节点的左孩子为NULL时,则这个节点就是树的最小值。上面的树中,从根节点20开始,递归遍历左子 ... [详细]
  • 在使用STM32Cube进行定时器配置时,有时会遇到延时不准的问题。本文探讨了可能导致延时不准确的原因,并提供了解决方法和预防措施。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 深入理解Lucene搜索机制
    本文旨在帮助读者全面掌握Lucene搜索的编写步骤、核心API及其应用。通过详细解析Lucene的基本查询和查询解析器的使用方法,结合架构图和代码示例,带领读者深入了解Lucene搜索的工作流程。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 本文详细介绍如何使用CSS自定义HTML5视频播放器的样式,涵盖常见属性及跨浏览器兼容性问题。发布时间:2020-09-14 14:46:29;来源:亿速云;阅读量:58;作者:小新。 ... [详细]
author-avatar
葫芦娃才是萌神
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有