不知道从何时开始,php 已死这一概念逐渐成为大家茶余饭后的娱乐话题。在某脉,某乎和公众号上面看到太多类似的言论了。尤其是最近 tiobe 的编程语言排行,php 的排名降到历史新低,无疑是给这个概念来了一次雪上加霜。
我以前会有一些编程语言焦虑,但是最终也找到了破局之道,简单来说就是不要把自己当成 PHP 程序员,而是解决问题的程序员。学多几门语言扩展自己的技术栈,总是不亏的。
从业务上来看,无论是 php,java 或者是 go 在同一个业务逻辑上,做的事情总是一样的。按登录逻辑来说,所有语言都得按照账号密码从数据库找到相应记录,校验密码是否正确,生成 jwt 返回给前端的步骤。总不会有语言能够反其道而行之吧。你看,不同的语言在做业务上其实八九不离十,你学会了一门,了解其他语言其实并不难。区别可能就是框架,语言特性和语法糖上,但是你写多了,也就了然于心了,技能都是同质化的。
你更应该提高自己的编码、工程实践、抽象、业务理解、服务治理(包括性能、稳定性、健壮性、可用性、可扩展性)、架构设计,底层原理这些方面的能力与语言无关,编程语言对于优秀的工程师来说只是一个顺手的工具。从业 6 年,我也有见过有 java开发写出难以维护的代码,也见过代码写的非常漂亮的 php开发,这些都是因人而异,并非语言的天生优势。
从另外一个方面讲,大家也知道,今年的经济形势原因,就业不是很理想。刚刚失业或者 gap 很久的人都有。找不到 php 的工作就找 java 吗,java 的工作找不到就找 go 吗,go 再找不到就去写前端吗。树挪死,人挪活吗,别把自己局限在语言里面(再不行,路边摆个摊,炒个米粉卖)。
有人曾经对我说过,可能你不太想进一步提升,不然的话尽快脱离php。我听到这句话的时候是很生气的,为什么会认为自己提升不了是因为学了 php,这是一种狭隘,带有偏见的观念。多进程,内存泄漏,网络文件I/O 甚至网络编程等相关知识 php 又不是没有体现。php-fpm 就是多进程模型,nginx 和 php-fpm 通信的时候不就是通过 socket 通信吗?php 的文件操作和网络操作就是标准的同步阻塞I/O。讲白了还是 php 把这些概念封装的太好了,从 php 上确实没法直观感受到这些概念,但是 php 并不是没有这些概念。所以也有人说 php 编程心智压力小。但是没法提升和因为你学了php 并不是等价关系。粗鲁点讲就是拉不出屎怪地球没吸引力(话糙理不糙)。
其实我认为程序员讲白了就是在固定和业务环境下,用合适的语言,在规定的时间内完成任务,并没有什么什么奇特之处。
写的有点乱,但我的意思上还是希望各位 PHPer 甚至是所有语言的程序员不要有太多语言焦虑,多学学,多写写,扩充一下自己的技术栈,增加自己的生存能力。
最后的最后:
大家一定要远离会让自己产生语言焦虑的人或物,没法分清这家伙是随便说说还是想割你韭菜的。
大家一定要远离会让自己产生语言焦虑的人或物,没法分清这家伙是随便说说还是想割你韭菜的。
大家一定要远离会让自己产生语言焦虑的人或物,没法分清这家伙是随便说说还是想割你韭菜的。
特别是割韭菜的,今天能用 php 已死 pua 你,明天就能用 go 已死忽悠你转其他语言。贩卖焦虑是可恶的。
也祝愿有工作的朋友工作顺顺利利,失业的朋友都能找到自己喜欢的工作,日进斗金。
上一篇:中国码农的“35岁魔咒”
下一篇:没有了