ARTICLE · 1211233
有人用AI“复刻”了7款Adobe软件!造价人,你的软件或许也能自己做了
最近AI圈有一个很火的词,叫“逆向一切”。
一位开发者借助AI,用Rust语言重新开发了7款软件,分别对标Adobe旗下的Photoshop、Illustrator、Premiere Pro、Lightroom、Acrobat、After Effects和InDesign。
文章末尾我放了地址,感兴趣的可以去看一下
这套开源软件叫ArtCraft,其中PhotoCraft在GitHub上已经获得近5万颗Star。
要知道,Adobe的这些产品,可是经过多年研发和持续迭代才发展起来的。
当然,这7款开源软件目前还不能完全替代Adobe的成熟产品。
这让我们觉得有一种新可能:我们是不是也可以借助AI,把自己需要的软件功能重新做出来?
一、什么叫“逆向”?
可以用一个简单的例子来理解。
假设你买了一台机器。
你不知道它内部的设计图纸,也不知道它是怎么制造出来的。
但你可以观察:
• 它能完成什么工作?
• 输入什么东西,会得到什么结果?
• 各个按钮分别有什么作用?
• 它是按照什么规则运行的?
当你把这些事情研究清楚以后,就可以尝试用自己的方法,重新制造一台具有类似功能的机器。
这就是逆向工程的一种思路。
放到软件上,也是类似的。
你不一定需要知道原软件的源代码,只需要研究它的功能、操作流程和输入输出,就有机会重新实现相似的功能。
这不是破解别人的软件,也不是直接复制别人的代码。
而是研究:它解决了什么问题?我能不能用另一种方法解决同样的问题?
二、为什么以前很难,现在却变得有可能?
以前,如果一个造价人想开发软件,需要做什么?
首先,你得懂编程。
其次,你得学习软件架构、数据库、界面设计,还得不断测试、修复问题。
即使你很清楚自己需要什么功能,也未必能把它开发出来。
所以我们过去的工作方式通常是:
发现需求 → 寻找软件 → 购买软件 → 学习使用 → 适应软件的功能。
有时候,我们明明只需要其中一个功能,却不得不购买或者使用一整套复杂的软件。
现在,AI正在改变其中一个关键环节。
你可以把软件的操作过程、功能要求、输入输出样例告诉AI,让它帮你分析规则、编写代码、制作界面,再通过真实数据不断测试。
比如,你可以告诉AI:
“我有两份工程量清单,希望你帮我做一个工具,自动识别相同清单、工程量差异、新增项目和删除项目,并把不能确定的匹配项单独列出来。”
过去,这可能是一个需要专门开发人员完成的任务。
现在,借助Codex等AI编程工具,不懂编程的造价人也有机会参与开发。
当然,AI第一次做出的结果不一定可靠,还需要我们不断验证和完善。
真正发生变化的,是软件开发的门槛正在降低。
三、放到造价行业,这件事有什么意义?
我们每天都在使用各种软件。
算量软件、计价软件、PDF工具、Excel插件、资料管理工具、清单对比工具……
我想请大家思考一个问题:
你有没有遇到过这样的情况:特别喜欢某个软件的一个功能,但其他功能根本用不上?
或者:
某个软件明明很好用,却偏偏缺少一个你最需要的小功能。
过去,我们只能向软件公司反馈,等待它开发。
现在也许你可以自己开发一个小工具,可能更符合自己的实际需求。
这些例子都有一个共同点:
我们不需要从零发明一种全新的软件,只需要找到已经存在的解决思路,再结合自己的需求重新实现。
四、是不是意味着,我们想用什么软件,都可以自己“逆向”一个?
从技术原理上说,许多软件功能都可以被分析,并尝试通过不同的技术路线重新实现。
但这不意味着任何软件都可以被AI一键复制。
例如,想重新开发一套成熟的BIM算量软件,就涉及复杂的三维建模、工程量计算规则、数据格式兼容、运行性能和长期维护等问题。
这与开发一个清单对比小工具,完全不是同一个难度。
另外,涉及商业软件时,还必须遵守知识产权、软件许可和数据安全方面的要求。
所以,我认为更现实的方式不是:
“我要用AI重新开发一套广联达。”
而是:
“广联达或者其他软件中,有哪些功能是我特别需要的?我能不能先用AI实现其中一个?”
比如一个清单检查功能、一个数据转换功能、一个简单的工程量计算辅助功能。
五、我觉得,这件事带来的最大变化,是我们看待软件的方式变了
以前,我们学习软件,更多是在思考:
“这个软件怎么操作?”
“它有哪些功能?”
“我要怎样适应它的工作流程?”
但以后,我们还可以多问三个问题:
第一,这个软件真正解决的是什么问题?
第二,它实现这个功能,可能依靠什么规则?
第三,我能不能借助AI,做一个更符合自己需求的版本?
这三个问题,看似简单,却代表着不同的思维方式。
前者是软件使用者的思维。
后者开始接近软件设计者的思维。
对于我们这些长期从事造价工作的人来说,其实还有一个优势。
我们可能不懂代码,但我们懂业务。
我们知道结算审核容易在哪里出错,知道工程资料应该怎样核对,也知道哪些重复性工作特别耗费时间。
而这些经验,恰恰是AI开发专业工具时非常需要的东西。
所以
下次遇到一个好用的软件功能,可以多想一步:这个功能,我能不能借助AI,自己做一个?
也许你会发现:
过去,我们只能选择软件提供给我们的功能。
未来,我们还可以参与决定,自己的软件应该长什么样。
项目参考:ArtCraft / PhotoCraft GitHub(https://github.com/storytold/photocraft)
写在最后
既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以点个关注
我是张兰,谢谢你看我的文章,我们一起将AI嵌入我们的工作流程。















































































