首页 > 应用开发 > Python > 我坚持用开源方案,甲方说我不专业
去年一个项目,我差点因为“用开源软件”丢了单子。
项目是一个汽车零部件厂的数据采集系统。20台设备,Modbus TCP和S7协议混着来,要把数据采集上来,存数据库,做实时监控画面。
我出的方案是:用开源的边缘网关做采集,用开源的时序数据库存数据,上位机用开源框架开发。整个软件层面,除了操作系统,没有一项是收费的。
报价出来,软件部分8万。
甲方技术总监看了方案,说了一句话:“你用这些免费的东西,出了问题谁负责?”
我说:“开源不等于没人维护。这些项目有社区、有文档、有更新,出了问题我能解决。”
他说:“我不是不信你,我是不信免费的东西。我们以前用过免费的组态软件,用了半年全是bug,最后项目烂尾了。”
我没能说服他。
后来这个项目,甲方选了另一家集成商,用的是某商业SCADA软件,软件授权费就花了30多万。
项目做完了,运行了半年。我听说他们的SCADA软件出了一个bug——历史趋势图在数据量大的时候会卡死。找厂家,厂家说“这个bug下个版本修复”,下个版本要等半年。
半年里,他们的操作工看不了历史趋势。
开源方案会不会出问题?会。但出了问题,我能改代码。商业软件出了问题,你只能等厂家。
这件事之后,我一直在想一个问题:为什么甲方宁愿花30万买商业软件,也不愿意花8万用开源方案?
第一个原因:甲方买的不是软件,是“有人负责”。
商业软件出了bug,甲方可以打电话骂厂家,可以要求赔偿,可以走法律程序。
开源方案出了bug,甲方找谁?找我。但我只是一个小集成商,不是大公司。甲方觉得“你跑了怎么办”。
这个顾虑是真实的。开源方案的质量取决于维护者,而维护者可能是个人、可能是小团队。甲方没法判断这个维护者靠不靠谱。
第二个原因:甲方不懂技术,只能看“品牌”。
西门子、施耐德、研华——这些品牌甲方听过。EMQX、TDengine、Grafana——这些开源项目甲方没听过。
没听过的东西,甲方不敢用。
第三个原因:商业软件有“背书”。
商业软件有ISO认证、有等保合规、有成功案例、有服务合同。这些东西,甲方拿去给老板汇报的时候,有底气。
开源方案呢?你拿什么给老板汇报?“这是一个GitHub上的项目,有5000个Star”——老板听不懂Star是什么。
那开源方案到底能不能用?
能用,但要看场景。
场景一:甲方有技术团队,能自己维护——开源方案是最优解。
成本低、灵活、可定制。出了问题自己能改,不需要等厂家。
场景二:甲方没有技术团队,但信任集成商——开源方案也能用。
集成商负责维护,甲方只管用。集成商赚的是服务费,不是软件授权费。
场景三:甲方没有技术团队,也不信任集成商——商业软件更稳妥。
这不是技术问题,是信任问题。商业软件有品牌背书,甲方心里踏实。
我的项目属于第三种场景。 甲方没有技术团队,跟我也只是第一次合作。他不信任我,所以不信任我推荐的开源方案。
我后来想明白了:不是开源方案不好,是我没有建立足够的信任。
那怎么建立信任?
第一,给甲方看成功案例。 不是“这个项目有多少Star”,是“这个项目在哪些工厂用过,跑了多久,出了什么问题,怎么解决的”。
第二,给甲方试用。 先部署一套试用环境,让甲方自己用一个月。用得好再签合同。
第三,给甲方兜底。 承诺“出了问题我负责修复,修复不了我退款”。用合同来建立信任。
第四,不要一上来就推开源。 先问甲方“你以前用过什么软件,出了什么问题”,了解他的顾虑,再推荐方案。
最后说一句。
开源软件和商业软件,不是“好”和“坏”的区别,是“适合”和“不适合”的区别。
开源方案适合有技术能力、有信任基础的场景。商业软件适合需要品牌背书、需要合规认证的场景。
我坚持用开源方案,不是因为“开源更先进”,是因为“开源更透明、更可控、成本更低”。但我也理解甲方为什么选商业软件——他买的不是软件,是安全感。
平时我也写写代码,维护两个开源项目:
ProtoForge(工业协议仿真平台,28种协议,130+设备模板): GitHub:suoten/ProtoForge Gitee:suoten/ProtoForge
EdgeLiteGateway(AI物联网关,13种协议采集,边缘AI推理): GitHub:suoten/EdgeLiteGateway Gitee:suoten/EdgeLiteGateway
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70050062/viewspace-3185951/ ,如需转载,请注明出处,否则将追究法律责任。