H

📚 How to get out of “the endless circle” of self-study programming?

2025-06-07

📚 如何走出自学编程的“死循环”?

你听过但没听过的故事🤷‍♂️

我想从我自己的真实故事开始。因为我可以!

几年前(准确地说是 4 年前),当我想从头学习 Python(作为我的第三种编程语言)时,我阅读了大量书籍,观看了许多在线课程,订阅了最相关的 YouTube 频道和大量开发播客和代码流媒体……我非常接近这种感觉。

我不是心理学家,也不知道“他们怎么称呼它”(请原谅我),但我会把这种感觉称为“无尽的循环”或简称 TEC。

那时,我已经了解:现代 JavaScript、PHP、HTML+CSS,已经在 UI/UX 方面有实践,并且长期(自 2007 年以来)在该 Web 开发堆栈上做过宠物和商业项目。

但我的“Python 闭环”持续了大约 6 个月,在此期间我没有自己编写一行代码——只是重新输入了在线教练、博主、书籍作者、主播等给我的内容。

只消费,不自主修行。

照片由 Atlas Green 在 Unsplash 上拍摄

那么,TEC 到底是什么?🤔

只能用一句话来形容:

我对新事物(这里指的是编程语言)的了解越多,我就越偏离它在实践中的实际用途。

不,这不是冒名顶替综合症或类似的东西。

TEC 更像是一个闭环模式。你开始学习新东西,但什么也不做,只是开启一个又一个的学习循环!如此循环往复……

比如“好吧,现在看另一个视频,但甚至不要打开你的 IDE,只需看看我在视频上如何编写代码”等等。

我知道,你现在想什么

比如“我的天哪,又一个拥有超级最佳实践的家伙来学习编程……”之类的。你说得对,就是这个!👌

但首先问问自己:“我为什么开始阅读这篇文章?”如果答案不是“我不知道”——那么你在正确的时间来到了正确的地方!

遵循以下规则——当时很有帮助,现在当我决定将 Go 添加到我的“编程语言万神殿”时也很有帮助。当我开始深入研究并感到 TEC 迅速发作时,我就是遵循这些规则。

照片由 Nghia Le 在 Unsplash 上拍摄

规则#0→停止思考周围的一切,现在让我们自己完成该死的“Hello World”!

无论您正在尝试学习哪种编程语言,如果您陷入了无休止的循环,那么请立即停止!

说真的,观看“另一个视频”——根本行不通!

重复步骤

  • ✅ 关闭所有“主要”浏览器标签(如 Netflix、Facebook、Instagram、Twitter 等)和浏览器本身。
  • ✅ 把“极其有趣”的书放在一边。
  • ✅ 在“最有趣的地方”暂停播客。
  • 👌深呼吸。
  • 🎯 打开您最喜欢的 IDE。
  • 💭 记住编程语言的基础知识和语法。
  • 💻 编写您自己的简单程序(例如,主函数接受 1 个参数并将其返回为字符串“Hello”)。
  • 😀 对自己微笑。
  • ⚙️ 为这个简单的函数编写一些简单的测试(例如,如果你给出“World”作为参数,测试你的函数是否返回字符串“Hello World”)。
  • 🔗 将此代码推送到您的 git 公共存储库,并附上一条消息“打破 TEC 的初始提交”。

恭喜!🎉

你已经迈出了逃离TEC的第一步,也是最重要的一步。未来还有更多有趣的事情等着你,但现在你能做的最好的事情就是继续阅读这篇文章!

规则#1→找到您想要的东西并对其进行编码!

趁着你还在按照上一条规则预热 IDE 的时候,现在是时候开始你的新“终身项目”(第二天……也许两天)。而且,这个项目应该能解决你现在遇到的一些问题。

从简单的事情开始,逐步添加新功能!

它可以是任何东西:待办事项列表、健身追踪器、个人网站、CLI 应用程序等。但处理这个项目的算法应该是这样的:

  • ⭐️根据您的知识和当前编程语言中最流行的框架/库/包,制作最小可行产品(MVP)。
  • ✏️ 列出所有你不知道如何做但需要做的事情。

真实的例子

我自学了 Python,想把这门很棒的编程语言介绍给互联网用户。解决这个问题的最佳方式是个人博客。所以,我需要一个 Web 框架!👋

查找了 5 秒钟后,我发现最流行的 Web 框架是 Django。想象一下,我花了 10 分钟阅读了官方指南,现在我知道了如何:

✔️ 从 PIP 安装 Django。✔️
使用 CLI 创建第一个 Django 应用。✔️
配置数据库并进行首次迁移。✔️
创建新的模型和路由。✔️
创建视图和模板。✔️
构建添加/编辑/删除帖子的功能。

好的!我只是尽我目前的知识和文档所能。因为,这就是我实现 MVP 所需要的一切!👍

其他的事情,比如:模板的设计、在创建新的博客文章后交叉发布到社交网络的链接、Disqus 评论、添加可爱的“关于我”页面、为 SEO 配置元标记、构建 RSS 提要等等,都是我放入“以后研究的未知功能”列表中的。

规则2 → 不懂就问——这很正常!不问经验丰富的人就不好了

我们生活在一个信息量每秒都在以惊人的速度增长的世界。在“计算机时代初创”时期被认为是必备的知识——现在你只需几秒钟就能在谷歌上搜索到,而且完全不会记住!

那么,为什么不开始以您现在能够理解的方式编写代码,并在互联网上更有经验的人的帮助下逐步改进它呢?

不断地编写代码——是你此刻的目标!

重复步骤

  • ✅ 编写代码。
  • ⚠️为你的代码编写测试。
  • 💬 向您的编程语言社区询问代码中的问题点或查找类似的问题,并看看其他人如何解决这些问题(GitHub、StackOverflow、Dev.to 等)。
  • 🚀 尝试在您的代码上解决问题。
  • ⚠️ 为修改后的代码编写测试。
  • 📝 在您的知识库中记录解决方案。

你还没有知识库吗?没问题!

规则3→为编程语言创建自己的知识库

这不是开玩笑。养成一个好习惯:把所有帮助你解决特定问题的方法都写下来!

它可以是任何离线/在线服务,但要点是:

❗️ 一年 365 天、每天 24 小时访问记录的知识。❗️
快速记录新知识的最简单方法。

规则#4→相信自己和自己的知识,但不要太久!

当你遇到问题时,试着自己解决。依靠你知识库中记录的知识,以及你从在线课程、书籍、播客等中记住的知识。

但是,如果问题在前 20...30 分钟内没有得到解决,那么最好不要继续 - 向互联网上的人询问!

浪费时间于无用之事——这对你最没好处。有时候,退缩反而更好。

照片由 Jesus Kiteque 在 Unsplash 上拍摄

最后的话

照照镜子,看看自己。没错,你做到了!从无休止的自学编程循环中,享受这种自由的感觉吧。

现在——别停!世界总是需要新的英雄……也许那个人就是你?!

照片

[标题] Atlas Green https://unsplash.com/photos/VGOiY1gZZYg
[1] Ben Blennerhassett https://unsplash.com/photos/G8rRItjrwkA
[2] Nghia Le https://unsplash.com/photos/V3DokM1NQcs
[3] Jesus Kiteque https://unsplash.com/photos/wn-KYaHwcis

聚苯乙烯

如果你想在本博客上看到更多类似的文章,请在下方留言并订阅我。谢谢!😻

❗️ 您可以在Boosty上支持我,可以是永久支持,也可以是一次性支持。所有收益都将用于支持我的开源项目,并激励我为社区创作新的产品和文章。

在 Boosty 上支持我

当然,你也可以帮助我改善开发者的生活!只需以贡献者的身份连接到我的一个项目即可。非常简单!

我的主要项目需要您的帮助(和星星)👇

  • 🔥 gowebly:下一代 CLI 工具,可轻松使用 Go 在后端创建出色的 Web 应用程序,使用 htmx、hyperscript 或 Alpine.js 以及前端最流行的 CSS 框架。
  • create-go-app:通过运行一个 CLI 命令,创建一个具有 Go 后端、前端和部署自动化的新的生产就绪项目。

我的其他小项目:yatrgosljson2csvcsv2api

文章来源:https://dev.to/koddr/how-to-get-out-of-the-endless-circle-of-self-study-programming-5145
PREV
DevOps:Git 初学者指南
NEXT
V编程语言