程序员究竟要不要写文章

news/2025/9/28 12:53:52/文章来源:https://www.cnblogs.com/xiaoxi666/p/19116441

写在前面

时光飞逝,一晃已经从业七年有余,若从接触编程的时间算起,恐怕还要再加个四五年,可以堂而皇之地自称为拥有十多年的编程经验了,哈哈。

一路上,经常会有人问我,我们为什么要写文章甚至博客,有什么意义吗?

从两个小故事讲起吧。

实现可复用的小软件

大约是2013年本科阶段,有一次做物理实验,需要计算很多参数,涉及到的公式比较复杂,虽然难度不高,但人工操作一遍仍然需要将近十几分钟。而且实验有十几种测量场景,参数微调后就需要重新计算。这样下来,做一趟实验可能大半天就过去了。

正好当时我们在学习Visual Basic编程语言(可能现在很多小朋友都没接触过了),就想着做一个可视化的计算器,支持参数录入,自动计算结果,将计算时间省出来。

当时每天晚上11点强制熄灯睡觉,但我非常清晰地记得,当时非常兴奋,挑灯奋战到了12点左右,写了接近4小时(主要是界面设计、公式计算,以及多种场景的数据核对),终于搞定了。

第二天,分享到班级群,邀请大家使用(因为大家也都苦不堪言,亟需提效),有一两个同学愿意冒着浪费时间且得不到正确结果的风险,帮忙做了一波测评,结果发现全部与人工计算结果一致,于是就流行开了,于是所有同学都很快交了实验报告,而我也成为了大家眼中的编程牛人。

软件长这样,现在看起来土土的,算是上古时代的文物了。

image

 

抛开编程技巧,这件事情给我带来的最直观的一个启发就是:做事情要有复用性。在上面的例子中,人工计算所有的实验数据,所花费的时间与编程软件不相上下,当时甚至有同学问我,费那劲干啥,写出来的软件也不一定对,万一不行岂不是白干了。

但我当时拥有一种莫名的自信,坚信能做出来,退一万步讲,即使最后没搞定,我再多花几小时完成作业便是。在成功做出来之后,软件所带来的复用性给我留下了深刻的印象。这也是最初的“一次编写,多次解决问题”的思维雏形。

都看文档去,别重复问了

众所周知,程序员会面临大量项目的历史逻辑,也经常与多位产品同学对接,针对同一个功能,可能会有很多人前仆后继来问你:这个功能的历史背景是什么、代码为什么这么写、有当时的各种实现方式调研文档吗、...等等,我有一段时间,被问得不胜其烦:同样的事情三番五次被问,都快要能倒背如流了。但想想对于新接触的同学来说,确实有一定门槛。

那么有没有一种更好的方式来解决呢?让已掌握知识的人仅讲一次,渴望掌握知识的人又能反复听。

当时公司特别重视基本功的培养,作为应届生入职的我,也尤其重视各类培训,其中有一次接触了通过文档交流的形式(也即现在大家常说的“飞阅”),从此开始意识到:这或许能够解决我的问题。因此开始尝试,每次实现需求或重构历史代码时,把所有容易被反复咨询的高价值内容详实地记录下来。后续有人来问时,我就把文档扔给他,如果看不懂,说明我写的不够清晰,继续优化即可。

如此经过两三个月以后,我就明显感觉到问题被反复询问的次数急剧下降,与此同时,我的文档表达力也提升了,因为我会经常收到大家的反馈,比如“哎呀这里写的看不懂,能否再细化一下”、“这里是技术术语,能否增加一段产品能听懂的人话”等。通过反馈不断修正,双方都受益良多,大家彼此都很开心。

用一位产品的话说:我以后若有问题,请直接把现成的文档拍到我的脸上。如果没有,那你就去写,这就是我给你的需求。

仅记录有价值的事情

看到这里,相信你应该有答案了:一般而言,有价值的事情总是会被反复提及,导致其始终占据“热点”,这类事情如果你掌握了,就可以及时写下来。这个过程不仅能够帮助到他人,而且写作者本身会收到很多反馈,正反馈会带来成就感和满足感,负反馈会带来新的启发和写作思路,总之都是好事。

也有人会问:我刚刚入职,感觉身边的都是前辈,我写的东西会不会有点幼稚,别人会不会看?我想说的是:千万不要担心这一点。

一方面,每个人都不可能面面俱到,即使老手也总有没有考虑过的东西,你写的东西可能就会对他有启发,这也是各大公司鼓励新员工参与演讲培训的初衷(不光光是为了帮助融入,提出新观点也是考虑因素之一)。

另一方面,写东西可以帮助自己。我们写文章总是要从解决实际问题出发,不要本末倒置为了写而写。比如为了解决一个问题,这个过程中我费了很大力气终于找到了关键的解决思路,最终把问题解了。那这个过程就值得记录下来,哪怕是给自己用来回顾用(相信我,过一段时间你还会回来看的)。这也是一个“识别自身经验价值”的过程。

写文章,永远仅写你真正思考和总结之后的产物,切不可随波逐流。不贪多、不贪快,有价值的内容自会逐步展示它的魅力。

尤其不要使用AI生成能力代替自我的思考过程,我们可以把AI当作检索或提效工具,但不可以用来代替自己的思考。

发现断点,打破思维中的“想当然”

写文章本身是一个回顾的过程,我经常会发现口头表达时“显而易见”的环节,到了写文章时磕磕绊绊,本质原因是没有完全理解清楚。

所以,写文章是一种天然的自我反思方式:我们需要把藏在潜意识里面那些想当然的东西揪出来摆在台面上,思维是否存在断点,通过落笔的顺畅度就能非常明显地看出来。

如此,当我们发现断点,才会意识到“不知道自己不知道”,进而检索相关知识并且补齐,这块领域才能算是搞懂了。

文章写好之后,也可以分享到自己的博客上(注意敏感信息的脱敏)。有价值的文章一定会引来同频的读者,慢慢地会有很多讨论,这又是一个绝佳的反思机会:有些认真阅读的读者可能会留下评论,可能会让我们进一步意识到需要补齐的东西。

所以,一篇好的文章,也是不断进化完善的

训练思维的“驻存”能力

我们经常会遇到难题,这类问题往往会在思维中存在很长时间。在心理学中有一个比较专业的表达,叫做“把问题长时间停留在潜意识中的能力”。

有时候做一件完全不相关的事情时,可能突然迸发出灵感,直呼醍醐灌顶之妙。我至今记忆犹新的一个例子是,高一学习“加速度”的概念时,第一堂课没怎么听懂,反而在走路时边踢石头边想通了,感觉挺奇妙的。

写文章也是一样,平时我们会接触到很多东西,有很多值得记下来并去探究的事情。当我们书写时,需要不断从思维中将其呈现出来。我始终认为写文章锻炼的不仅是文笔,也是思维的流畅度。当然,我也很羡慕文科生的文采,哈哈。

长期记录,打造高价值简历

现在的面试,基本都是靠着一份简历,以及有限次的面试,来决定是否录用。这样的形式很高效,但也很局限,毕竟我们很难通过堆砌在简历上的各类技术栈全面地评估候选人的水平,短短几十分钟的面试也很难兼顾各方面的考察。

我一般在看简历时,尤其注重候选人的简历上面是否有贴博客主页,如果有,我一定会进去看看,如果有在长期输出有思考的文章,好感度会直线上升。换句话说,一个长期的高价值博客本身就是一份极好的简历

写在后面

开始写博客吧!我们所能做的最好决策,莫过于开始做一件没有任何坏处,却有一大堆好处的事情。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/920660.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

B4375 [蓝桥杯青少年组省赛 2025] 庆典队列B4376 [蓝桥杯青少年组省赛 2025] 茶具套装B4377 [蓝桥杯青少年组省赛 2025] 平衡奇偶位置的字符交换

好久不见,最近参加了蓝桥的省赛,虽然只是省二,但是还是要总结一下 今儿个三合一,前三道 1.B4375 [蓝桥杯青少年组省赛 2025] 庆典队列 题目描述 有 \(n\) 名志愿者参加了一场庆典活动,我们希望将这些人排成一个矩…

2025 年纽扣电池厂家:力源电池以 TWS 适配技术与定制服务,打造多场景电源解决方案

在 5G 技术全面普及与智能穿戴设备市场爆发的双重驱动下,纽扣电池市场需求持续攀升,2024 年全球市场规模已达 49.58 亿美元,预计 2025 年将保持 6.3% 的复合增长率。其中 TWS 耳机作为核心应用场景占比达 18%,对电…

web3hardhat 框架实战-ERC20 - 指南

web3hardhat 框架实战-ERC20 - 指南2025-09-28 12:46 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !imp…

网站开发人员定罪案例汽车网站建设公司哪家好

如果网站跑在了LAMP环境中,就无法使用php-fpm的slow log了,那如何分析瓶颈点?没关系你还可以使用这个XdebugWebgrind,其中Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析…

网站建设与管理报告市场运营和市场营销的区别

声明:该专栏涉及的所有案例均为学习使用,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!如有侵权,请私信联系本人删帖! 文章目录 一、前言二、网站分析1.X-S-HEADER参数2.请求参数data3.响应机密值data一、前言 网址: aHR0cHM6Ly93d3cubGFnb3UuY29t…

网站访问工具wordpress文章模块化插件

在网络通信中,密钥的安全分发和公钥的有效认证是确保系统安全的关键。本文将为基础小白介绍密钥分发与公钥认证的基本概念和实际应用,帮助大家更好地理解这些技术如何保障我们的网络通信安全。 1. 密钥分发与公钥认证的背景 由于密码算法是公开的&…

wordpress中怎么排序上饶网站优化

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

crewCTF 2025 -- WASM Vault

从 js 中看出,先把输入的 flag 存到 wasm 的内存为 0 的位置,然后调用 vault.wasm 导出的 unlock() 函数判断 这里用开源项目 wabt 把 wasm 转成 c 文件,再用 gcc 编译成二进制文件,这样就可以拖到 ida 里分析了 w…

东莞做网站的模块网站怎么做

1 非静态代码块非静态代码块特点①可以为实例变量(非静态的属性)初始化②每次创建对象的时候,都会执行一次,且先于构造器执行③若有多个非静态的代码块,那么按照定义的顺序从上到下依次执行④代码块中既可以调用非静态的变量和方法&#xff0…

神经网络常见的40多种激活函数(应用场景+数学公式+代码实现+函数图象)

长文预警:经典的、大模型用的、探索研究的,这里都有什么是激活函数 激活函数,属于神经网络中的概念。 激活函数,就像神经元的开关,决定了输入信号能否被传递,以及以什么形式传递。 为应对不同的场景,激活函数不…

oppo-r9m线刷刷机教程

前言全局说明oppo-r9m线刷刷机教程一、说明 1.1 环境: Windows 7 旗舰版二、刷机首次刷机,电脑需要安装驱动2.1 打开刷机工具 找到”刷机工具.exe”双击打开如下图 (如果工具打不开以管理员身份运行打开。)2.2 手机…

【DateTime】日期时间:时间处理的基础

【DateTime】日期时间:时间处理的基础教学说明:本篇因 DateTime 数据类型需要,将提前使用 Get-Date 函数。该函数会在后续 “初级篇” 中详细讲解,此处仅用于演示 DateTime 类型的基本操作。 在编程中,日期时间(…

网站建设行业新闻南宁网站建设推广服务

(2011-10-08 17:08:43) 转载▼标签: 杂谈 分类: Javatry{//代码区}catch(Exception e){//异常处理}代码区如果有错误,就会返回所写异常的处理。 首先要清楚,如果没有try的话,出现异常会导致程序崩溃。而try则可以保证…

地图制作网站小程序定制开发和模板有什么区别

大家好,我是写代码的篮球。计算机专业的小伙伴,在学校期间一定学过 C 语言。它是众多高级语言的鼻祖,深入学习这门语言会对计算机原理、操作系统、内存管理等等底层相关的知识会有更深入的了解,所以我在直播的时候,多次…

完整教程:蒸汽机革命后工业生产方式的变革与AI智能名片S2B2C商城小程序的影响

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025 PHP7/8 实战入门:15 天精通现代 Web 制作——第 15 课:项目实战与部署

2025 PHP7/8 实战入门:15 天精通现代 Web 制作——第 15 课:项目实战与部署pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fam…

做网站怎么投放广告企业网站加快企业信息化建设

xcopy XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝系统文件;使用时源盘符、源目标路径名、源文件名至少指定一个;选用/S时对源目录下及其子目录下的所有文件进行COPY。除非指定/E参数,否则…

AWS SageMaker SDK 完整教程:从零开始云端训练你的模型

作者:SkyXZ CSDN:SkyXZ~-CSDN博客 博客园:SkyXZ - 博客园 PS:网页端用不明白...还是SDK方便...一、SageMaker介绍Amazon SageMaker 是 AWS 提供的全托管机器学习平台,它覆盖了从数据准备、模型训练、超参数调优到…

反转数字-处理溢出的条件-Java

反转数字-处理溢出的条件-Java题目:反转数字 描述 给定一个32位的有符号整数num,将num中的数字部分反转,最后返回反转的结果。 1.只反转数字部分,符号位部分不反转。 2.反转后整数num超过 32 位的有符号整数的范围…

废品回收小程序:从 “扔垃圾“ 到 “变资源“ 的体验革命 - 详解

废品回收小程序:从 “扔垃圾“ 到 “变资源“ 的体验革命 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "…