关于技术笔记和AI的一些思考
做为程序员,一直以来我都有一个习惯,就是写笔记。尝试过很多笔记软件,比如印象笔记、为知笔记、OneNote、有道云笔记等,现在主力使用 notion 和 Obsidian。笔记里也分很多种类:
- 技术笔记:主要记录平时编程中遇到的问题和解决方案,比如从 0 搭建某个项目,某个库的使用方法等
- 读书笔记:记录读书的感悟和一些重要的知识点,这里主要用 notion 或者 Obsidian 自动同步了微信读书中的划线和笔记
- 生活笔记:记录生活中的各种杂七杂八的事情,比如有哪些好用的药、各种工具的用法等
- 工作笔记:记录工作中的一些事情,比如某个项目的进度、某个需求的分析以及各种资料等
其中最重要的部分肯定是我的技术笔记,我在里面创建了一个叫做“工作流”的部分,比如其中有一篇工作流是“fastapi+vue+nginx+docker”,里面详细记录了使用 docker+nginx 搭建一个 fastapi+vue 的全栈项目的详细过程,并且记录了一些坑和解决方案。这么做的好处是当我下次再次搭建这个项目的时候,我可以直接参考这篇笔记,而不用再次去 Google 查询相关资料。
我不知道别人的方法,实践下来我觉得这种方法对我来说是最好的,当我再次有工作流中类似都需求的时候我不用再去打开十几甚至几十个页面去查看其中对我有帮助的内容,直接查看我的工作流笔记就可以了。同时我里面的笔记内容遵循的原则是“少解释,多代码”,目的是可以让我直接复制粘贴代码到项目中,而不用再去理解这段代码是怎么写的。例如对于上面 docker 搭建全栈项目来说,我的工作流中记录了一个临时搭建查看效果的内容,总共就下面三行代码:
docker build -t my_app .
docker run -d -p 10001:80 --name my_app_container my_app
docker exec -it 56c /bin/sh
这样我下次再次搭建这个项目的时候,我只需要复制粘贴这三行代码就可以了。
还有一个好处是我在里面也记录了实践过程中遇到的一些坑和解决方案,我发现这些坑基本是我每次重新搭建这个项目的时候都会遇到的,而且解决方案在网上不太好查找到。我也记录在工作流中,这更是节省了我很多时间。
但是随着 AI 的横空出世,各种“花式编程”层出不穷,导致我最近一直在思考“技术笔记还有必要记录吗?”,因为我发现我已经很久没有看过我的工作流笔记了,现在想做什么,直接使用 cursor 这类的软件的 composer 模式就可以了,AI 直接帮我把一个项目的基本代码框架都能写出来,我连复制的步骤都省去了。
我不知道这是好事还是坏事,我也不敢去想技术再过 5 年、10 年会发展到什么地步,但我一直相信下面的场景终有一天会到来:
小明早上起床后想玩一个3A大作,于是他说:“帮我生成一个好玩的游戏”,马上他就可以在任何他喜欢的终端上畅玩这个游戏了。
如果这一天真的到来了,那时候的所谓的“技术笔记”会消失吗?如果不会消失,又该是什么样子呢?