最近同事分享了一篇文章:《该写好代码吗?我也迷茫了。写的代码好被替代,写的代码差到处救火》,引发了我的思考。我问了问他的看法,是写好还是不写好呢。
答案可以说是意料之中,“正常写就好”。他觉得正常写也会有 Bug,代码也不会很糟糕。确实是这样,因为即便你当时认为写好了,这需求变化速度实在太快,后续很有可能就不能满足需求了,就产生了所谓的 Bug。
这让我很自然的联想到我现在在公司做的 Felo 搜索 项目,确切来说它现在的定位已经渐渐不是一个纯粹的搜索网站了,而是各种 AI 工具的混合体,主要竞争对手是 Perplexity、Genspark、天工 等。
前端方面我的评价是基本上已经乱的一锅粥,原先的逻辑很多不能满足现在的需求,就是一个超级缝合怪,既要 Perplexity 的那种搜索总结功能,又要 Genspark 的 Agent 型对话交互模式... 两种完全定位不同的东西被强行融合到了一起。但是换个角度来说,大公司做的东西不也是堆屎山么,不见得有多好,除非推倒重新开发。我们现在 996,就是飞快的加功能,老大天天都想发布新版本,怎么可能愿意干这种事?
最近我们在做的 AI 生成 PPT 功能也差不多是这样子,越演越烈,产品交互方面并不统一,此前 PPT 是一个独立页面,任意入口点击后打开新窗口生成,之后是独立一套交互流程。而现在为了兼容“PPT Agent”模式(单独一个工具页,通过上传文档什么的触发创建一条记录),强行让其他入口套用它的逻辑。作为对比,和它入口旁边的同级功能,思维导图、智能图形,目前都不会单独创建新的记录(虽然它们也各自有一个 Agent 模式)。
原先交互:打开一条搜索记录,找到生成的 PPT,打开独立页面
现在交互:上述入口保留,生成的 PPT 会产生单独一条搜索记录,生成成功后则点击直接打开独立页面,并且作为 PPT 其入口还不在“文档库”里面,很迷
后续需求还说得兼容之前搜索的逻辑,把原先那套模式给搬到新的 UI 上面,主打一个“抄谁不像谁”,代码逻辑的耦合性实在太强,很难想象之后要产生多少 Bug... 只能感慨地说一声,现在它已经彻头彻尾变成了“Felopark”了,这样的架构,代码也不太可能能写得多好了。
所以回到最前面的话题,写代码正常发挥即可。至于可替代性什么的,只要你的能力不差,去哪里都会发光发亮不是么。
已有 3 条评论
这种问题是领导/产品经理/项目经理对于项目的定位不清晰导致的,因为不知道要做成什么样子,别人上了一个功能,就也想要上,导致跟最初的设计不兼容
@panzhixiang 是啊,典型的敏捷开发流程,要么就是用户说要什么就马上给他加什么
组内有一个 4000+ 行的大业务 class,吃惊的是这个 class 只有一个 func。很搞笑的是裁员整个组都没了就创建这个代码的人还在😂