第 128 天纪念:技术成长不是写完一篇就会,而是写完两百篇才懂
一封写给自己的纪念信。收到 CSDN 的创作者纪念信的时候我愣了一下。信里说今天是我成为创作者的第 128 天还记得 2026 年 03 月 28 日吗你撰写了第 1 篇技术博客《XSS漏洞》。记得。当然记得。那天我坐在电脑前对着一个刚整理完的 XSS 笔记反复改了三遍最后还是硬着头皮点了发布。那篇写得不算多好甚至有点生涩排版也粗糙甚至连封面图我也没放。但它对我意义不一样它是我第一次把学到的东西「交出去」而不是看完就忘。那时候我根本不知道自己会写多少篇只是觉得——学了东西不输出等于白学。这是我给自己定的一条死规矩128 天没破过。在那之前我一直是那种「学完就丢」的人。网安知识点又杂又碎今天啃 SQL 注入明天看 XSS后天又跳去折腾 CTF——笔记写了一堆 markdown 文件躺在硬盘里谁也没见过。发完那篇之后我才慢慢想明白一件事写给别人看和写给自己看是两件事。写给自己看看懂就行写给别人看你才会逼自己把逻辑捋顺、把原理讲透、把命令敲对、把截图配齐。这大概就是这 128 天里我最大的一个转变。技术成长从来不是「学会」而是「写会」这 128 天里我写满了 198 篇原创。如果有人问我写博客真的能提升技术吗我会很认真地回答能但不是你以为的那种提升方式。我以为写博客只是「把学会的东西记录下来」写完才发现完全相反——是写的过程让你发现自己根本没学会。你以为你懂 SQL 注入了等你坐下来想给读者讲清楚「为什么 Less-1 是字符型、Less-2 是数字型」的时候你会发现自己对闭合引号、注释符、union 查询的执行顺序其实一知半解。你以为你懂 RSA 了等你写到「共模攻击为什么能用扩展欧几里得算法解」的时候你会发现自己对模逆元、CRT 的数学基础其实很薄弱。你以为你懂文件上传了等你想把 Pass-13 到 Pass-21 每一关的绕过原理讲明白你才发现二次渲染、竞争条件、解析漏洞这些概念在脑子里还是模糊的。每一篇博客都是一次自我打脸每一次打脸都是一次真正的学习。这 128 天里我大概被自己打脸了 198 次所以才有了一点点的成长。从「一条线」到「一张网」回头看这 198 篇原创最初的几篇还是单点的XSS、SQL 注入、DVWA 通关、upload-labs 靶场一关一关地推。那时候的思路是「我学到哪写到哪」像在走一条线。但写着写着线开始织成网。打 DVWA 的时候发现 CSRF 和 XSS 是连着的于是补了 CSRF打 sqli-labs 发现 sqlmap 这个工具得专门写一篇于是又有了 sqlmap 针对 Less-8 盲注的实战做 CTF 密码学题目做着做着发现 RSA 的攻击手法能凑成一个系列干脆从第一章写到第十一章——古典密码、编码、对称加密、非对称加密、哈希、数字签名、伪随机数、密钥交换、综合实战一章一章铺下来我自己才是那个被「系统化」的人。原来零散的知识点写完之后会自己长出枝干连成体系。后来我干脆按专栏去组织内容了蓝队技能学习、AI 前沿探索、网安工具环境配置、软件安全与漏洞分析、CTF 解题步骤、利于实习的理论知识、无线网络安全、计算机组成原理、编程语言教学……每个专栏背后都是一段扎扎实实的学习经历。我不是为了凑数开专栏是真的在某个方向上沉进去了一段时间才攒够东西归类的。我在哪些地方真的「变了」第一个变化是从「记知识点」到「建知识体系」。刚开始我写博客都是单点的一篇讲一个漏洞、一个工具。后来我打 upload-labs 的时候从 Pass-01 一关关推到 Pass-21写完才发现文件上传漏洞背后是一整套校验机制——前端 JS 绕过、MIME 绕过、后缀黑名单、文件头检测、二次渲染、竞争条件、解析漏洞、%00 截断……这些原本散落的点写完就自动连成了线。再后来写 CTF 密码学我从第一章铺到第十一章写完最后一章我才意识到我第一次对密码学有了一个「全景图」。这种「连成网」的感觉是只学不写的时候永远不会有的。第二个变化是从「只会攻击」到「懂了防守」。早期我写的东西偏攻击侧DVWA、sqli-labs、upload-labs、XSS-Labs怎么打怎么绕。但写着写着我开始不舒服——只会攻击不懂防守就像只会开锁不会装锁。于是我花了一段时间补防守侧《蓝队护网 / SOC 防守全套学习清单》把九大模块梳理了一遍从底层 IT 基础、安全设备、SIEM 日志平台、流量分析、MITRE ATTCK、应急响应取证、资产漏洞管理、脚本自动化到威胁情报体系。写完那篇我才真正理解了一句话攻击看上限防守看下限而实战比的是谁的体系更完整。后来我又写了 BOLA 越权的五种形态、护网初级蓝队面经、蓝队防护技能详解——慢慢地攻防两边才在脑子里达到了平衡。第三个变化是从「纯手工」到「AI 协作」。这 128 天里AI 工具的进化速度远超我的想象。我写了 Claude AI 深度评测、Gemini 自动写 PoC、VS Code AI 引擎模式、用 AI 赋能开发个人知识库——一开始我是带着审视的态度去测的测完我承认AI 不是替代安全工程师而是把日志筛查、基础代码审计这些重复性工作自动化让人去干高级威胁狩猎。拒绝 AI 的人不是在保持纯粹是在拒绝一个效率杠杆。这也是我专栏名字「其实防守也摸鱼」真正想说的——摸鱼不是偷懒是用更聪明的方式把噪音降到最低把省下来的精力花在真正重要的事情上。那些被读者教会我的事写作这 128 天最让我意外的是评论区。有人在腾讯测评那篇底下留言「大佬求题库」我第一次被人叫「大佬」的时候其实有点心虚——我哪是什么大佬我只是一个还在学的学生。但也就是这种「被需要」的感觉促使我把复习资料整理得更系统、把每一篇笔记写得更完整。后来有人问资料我回了一句「看私信哦」那一刻我突然意识到博客一旦发出去就不只是你自己的笔记了它成了别人学习路径上的一块路标。这种「被需要」的感觉逼着我把每一篇都写得更完整、更负责。我不能让一个照着我的笔记去学的同学在一个错的命令上卡半天。所以后来我养成了一个习惯每篇博客发布前我都会自己照着操作一遍确认命令能跑通、步骤能复现。这是读者教我的不是我自己悟出来的。一个人写博客容易糊弄但一旦知道有人在看、在照着学你就不好意思再糊弄了。这是 128 天里读者推着我往前走的部分比我自己想往前走的动力还大。写给同样在路上的你如果你也在纠结要不要开始写技术博客或者在纠结写了没人看还要不要继续我想说几句掏心窝子的话第一不要等「学透了」再写。我那篇《XSS漏洞》现在回头看存在很多不足但如果没有它做起点就不会有后面 197 篇。很多人卡在「等我学明白了再分享」上结果永远没等到那一天。真相是你永远不会有觉得自己「学透了」的那一天网络安全这个领域越学越觉得自己是菜鸟。写作本身就是学习的一部分不是学习的总结。你以为什么都懂了才能写其实是你写完才发现自己什么都不懂——而那个「发现不懂」的瞬间才是真正的进步。第二不要怕写得「不够深」。我写过的很多篇一开始都只是「科普级」的梳理甚至有的现在看也就是个入门水平。但写的过程会逼着你去查更深的资料最后一篇「科普」往往会被你自己改写成一篇「原理剖析」。深度是写出来的不是等出来的。你等着哪天自己变厉害了再下笔可能永远下不了笔你先写一篇粗浅的三个月后回来看你自己都会忍不住去改它、去加深它——那个「改」的过程就是成长本身。第三一定要成体系。零散的笔记没人看也没法帮你建立知识框架。我今天写一篇 SQL 注入明天写一篇 Wireshark后天写一篇 Linux 命令——单看每一篇都没问题但它们不会自己长成一棵树。后来我学会挑两三个真正在投入的方向开专栏一篇一篇往下铺。铺到第 5 篇你会开始有感觉铺到第 10 篇你会发现自己对这个方向的理解完全不一样了铺到第 20 篇你会成为这个方向上「有点东西」的人。蓝队专栏我写到 30 篇AI 专栏我写到 35 篇工具配置我写了 41 篇——不是一开始就规划好的是写一篇就想再写一篇攒着攒着就成了体系。体系不是设计出来的是攒出来的。第四别在意阅读量在意有没有人因为这篇少走弯路。我有些文章阅读量很高有些发了就石沉大海。但让我最有成就感的不是那些爆款而是评论区有人留言「照着你的步骤做通了」「终于搞懂了这个问题」。一篇技术博客的价值不在于多少人点开而在于至少有一个人因为你写的东西少卡了半天。这是写博客和发朋友圈最本质的区别朋友圈求热闹博客求有用。第五坚持比天赋重要得多。128 天198 篇平均下来差不多两天一篇。没什么天赋可言就是别断。技术上我不是最聪明的写作上我也不是最好的但「持续输出」这件事谁都能做到又恰恰大多数人做不到——这就够了。致下一个 128 天纪念信里有一句话很戳我「可能虽然日常忙碌但你还在坚持创作、可能初心还在但博客已良久未更新。」我想对未来的自己说别让博客长草。技术这条路停下来不可怕怕的是停下来之后再也不启动。128 天前我发那篇《XSS漏洞》的时候水平也就那样但我赢了「开始」这两个字。下一个 128 天我不求写得多只求别停。不求篇篇爆款只求每一篇都是自己认真敲过的都是能帮到至少一个读者的。也想对同样在写博客的你说写作是复利最高的学习方式。你今天写的一篇笔记三个月后你自己会回来查半年后会有陌生人来感谢你一年后它还在那——不像你看过的视频、收藏过的文章早就不知道埋哪去了。这是写博客和「只看不写」最大的区别你留下的东西最终也会留下你。128 天198 篇从一篇《XSS漏洞》到一个还算完整的网安知识体系。感谢遇见你一出现就是晴天。下一程我们继续写。

相关新闻

Hadoop生态核心组件解析与大数据实战优化

Hadoop生态核心组件解析与大数据实战优化

1. Hadoop生态全景:大数据时代的瑞士军刀第一次接触Hadoop是在2013年处理电信运营商用户行为数据时,单机MySQL在TB级数据面前彻底崩溃。当时用5台二手服务器搭建的Hadoop集群,至今还记得看到第一个MapReduce任务成功跑通时的激动。十年过去&a…

2026/10/13 16:09:06 阅读更多 →
科研信息查怎么破?实用方法与技巧全解析

科研信息查怎么破?实用方法与技巧全解析

每次找到心仪的外国文献,却被付费墙冷冷地挡在外面,是不是感觉科研的热情瞬间被浇灭?作为学生党,我太懂这种无力感了。但好消息是,通过几个合法且免费的“通道”和技巧,我们完全能实现“文献自由”。今天分…

2026/10/13 10:55:11 阅读更多 →
系统仿真中数据转换器建模:从行为模型到工程实践

系统仿真中数据转换器建模:从行为模型到工程实践

1. 项目概述:为什么系统仿真需要数据转换器模型? 在芯片和系统设计的早期阶段,工程师们常常面临一个核心矛盾:一方面,我们需要在系统层面进行快速、高层次的仿真,以验证架构的可行性、评估性能边界&#xf…

2026/10/13 1:19:27 阅读更多 →

最新新闻

pstack工作原理与四大失效场景深度解析

pstack工作原理与四大失效场景深度解析

1. 为什么一个看似简单的命令值得单独写一篇“完整指南”&#xff1f;很多人第一次听说pstack&#xff0c;是在某个深夜排查线上服务卡顿问题时&#xff0c;被同事甩来一句&#xff1a;“快用pstack <pid>看下线程栈&#xff0c;是不是死锁了&#xff1f;”——然后你照着…

2026/10/14 0:18:47 阅读更多 →
生物信息学聚类分析实战:TCGA-BRCA表达谱无监督聚类全流程

生物信息学聚类分析实战:TCGA-BRCA表达谱无监督聚类全流程

简介&#xff1a;这份资源面向生物信息学入门学习者与R语言数据分析实践者&#xff0c;围绕TCGA-BRCA乳腺癌基因表达数据展开聚类分析教学案例。内容涵盖利用层次聚类按基因表达水平对病人样本分型&#xff0c;采用average距离度量&#xff0c;并通过热图等图示呈现聚类效果&am…

2026/10/14 0:18:47 阅读更多 →
Elasticsearch去重查询实战:collapse、terms聚合与cardinality选型指南

Elasticsearch去重查询实战:collapse、terms聚合与cardinality选型指南

1. 去重查询到底在解决什么问题1.1 从一个真实场景说起做过搜索或者日志分析的人&#xff0c;大概率都遇到过这种需求&#xff1a;索引里存了几十万条订单记录&#xff0c;同一个用户下了多单&#xff0c;现在要拉一份“下过单的用户名单”&#xff0c;每个用户只出现一次。或者…

2026/10/14 0:18:47 阅读更多 →
Jackson序列化LocalDateTime:从数组乱码到全局配置的完整指南

Jackson序列化LocalDateTime:从数组乱码到全局配置的完整指南

1. 从一个接口报错说起&#xff1a;为什么LocalDateTime在JSON里变成了奇怪的样子第一次遇到这个问题&#xff0c;是在一个前后端联调的场景里。后端接口返回了一个包含时间字段的对象&#xff0c;前端同学截图过来问我&#xff1a;“你这个createTime怎么是一串数组&#xff1…

2026/10/14 0:18:47 阅读更多 →
环保科技网站开发:Vue+SpringBoot全栈实践

环保科技网站开发:Vue+SpringBoot全栈实践

1. 项目背景与选题价值环保科技公司网站的设计与实现这个选题&#xff0c;源于当前环保行业数字化转型的迫切需求。随着公众环保意识提升和政策法规趋严&#xff0c;环保科技企业需要通过专业化的线上平台展示技术实力、服务案例和行业解决方案。这类网站不同于普通企业官网&am…

2026/10/14 0:18:47 阅读更多 →
MATLAB实现配电网二阶锥松弛最优潮流计算

MATLAB实现配电网二阶锥松弛最优潮流计算

1. 项目背景与核心价值配电网最优潮流&#xff08;OPF&#xff09;问题是电力系统运行中的经典优化命题。传统交流最优潮流模型由于非凸非线性特性&#xff0c;求解难度大且难以保证全局最优性。二阶锥松弛&#xff08;Second-Order Cone Relaxation, SOCP&#xff09;技术通过…

2026/10/14 0:17:46 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起&#xff1a;它到底想解决什么问题第一次看到"AnyPS5"这个标题&#xff0c;我脑子里冒出来的第一个念头是&#xff1a;这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述&#xff1a;Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师&#xff0c;我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性&#xff0c;实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景&#xff0c;也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间&#xff0c;确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中&#xff0c;这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →