先说那条让我停下来想了半天的帖子
前几天刷到一条讨论,标题特别扎心:“大家还搞 Python 吗,感觉现在用的不多了啊。发帖的人以前主要用 Python 做后台、做 GUI,理由是好写、易懂、跨平台、覆盖面广。
但他现在动摇了,列了几条:Python 大量重要库底层其实是 rust 写的,那为什么不直接上 rust;以前 rust 学习曲线陡,现在 AI 很擅长写编译型语言;后台他更偏向 go 或 rust,GUI 偏向 rust+tauri。最后一句最狠——“那些容易学、好写易懂,在 AI 时代好像也不重要了。
底下跟帖也挺统一,有人说 typescript+rust 是最佳组合,要性能有性能、要 UI 有 UI,都是编译型,AI 还擅长。看着看着我差点就被说服了。
但停下来想了半天,我觉得这整个讨论从一开始就跑偏了。不是观点错,是场景错位了。
他们聊的是工程问题,你做的是交付问题
我得先把话说清楚:go 快、rust 安全这些我一点不反对。问题是,这些优势解决的是什么?
是大流量、高并发、要抠内存、要长期维护的工程系统。你一个服务扛百万请求、你一个客户端要榨干每一毫秒,那确实该认真选语言。
可大多数独立开发者和小团队,真实场景是什么样?是你有个想法,想做个小工具,想赶紧跑起来看看有没有人用,想发个链接给朋友或客户试。
这个场景里,语言性能从来不是瓶颈。你的瓶颈是——从“脑子里一个念头”到“屏幕上一个能点的东西”,这中间要花多久。
我见过太多人,纠结该学 rust 还是 go 纠结了一个月,工具一行没写出来。而真正把东西做出来发出去的人,用的往往是手边最顺的那个。
说真的,没人用的完美架构,和有人用的烂代码,后者赢。
一个反常识的判断:性能党在帮你解决一个你没有的问题
我把这事翻过来想。性能帖子讨论得越热闹,越说明一件事:这群人默认你的东西已经做出来了、已经有流量了、已经需要优化了。
可对刚起步的你来说,这些前提一个都不成立。
你现在的问题不是“跑得够不够快”,是“到底跑不跑得起来”、“有没有人要”。这两个阶段的矛盾完全不一样。
拿解决第二阶段的武器,来打第一阶段的仗,纯属用力过猛。
Python 恰恰在第一阶段最省心。好写、库全、AI 对它的生成质量也稳。
帖子里也有人说得很诚实:写点脚本、一次性实验项目还可以。我想补一句——对独立开发者来说,很多能变现的小工具,本质就是“稍微复杂一点的脚本”。
你根本还没到需要为性能操心的那天。
卡点其实不在语言,在“怎么让别人用上”
我自己踩过的最大的坑,不是 Python 慢,是我写完一段逻辑之后,发现它只能在我自己电脑上跑。想给人看,得教对方装环境、装依赖、配版本,对方一句“跑不起来”就把你劝退了。
那种挫败感,比任何性能问题都真实。
所以我现在的习惯是,把交付这条链路一开始就想清楚。先在本地或者直接用Python在线运行把核心逻辑跑通,确认想法能成立;然后不停在脚本阶段,顺手做成一个带界面的在线工具,让不懂代码的人也能点着用;最后靠Web应用托管发条链接出去,别人打开就能试,不用装任何东西。
你发现没,这整条路里,语言快不快根本没出现过。真正决定你能不能把想法变现的,是“从想法到能被别人用”这段路有多短。
Python 在这段路上,到今天还是最不折腾的那个。
那 rust、go 什么时候再上
我不是说永远别碰编译型语言。而是顺序别搞反。
先用最快的方式把东西做出来、发出去、拿到真实反馈,确认这玩意儿有人要、甚至能收到钱。到那时候某个接口真的扛不住了、某块逻辑真的慢到影响体验了,你再针对那一小块去换语言、去优化,一点都不晚。
这才是做过交付的人的节奏:先验证需求,再优化工程。反过来,一上来就为还不存在的流量选 rust,等于把时间花在了最不该花的地方。
帖子里那位最后自己也说,Python“用还是用的”。我觉得这句才是实话。
它没过时,只是被一波性能叙事盖住了声音而已。
今天就能做的一个小动作
别再纠结语言选型了。挑一个你最近老想做、却一直没动手的小工具,哪怕特别糙。
今天就把它最核心的那一小段逻辑用 Python 跑通,哪怕只有二十行。先让它在屏幕上动起来,再谈别的。
你会发现,拦住你的从来不是 Python 慢,是你一直在想“应该用什么”,而没开始“做什么”。