01
中国的软件市场难做,尤其是企业软件市场难做,已经成为一个共识。原因是多方面的,业界从市场环境、客户习惯、知识产权保护甚至制度文化等方面都做过分析,作为在企业软件行业里创业十年的实践者,感觉其中有个关键症结大家的讨论不够,而不管其它因素如何改进,这个关键症结不能解决的话,中国企业软件也很难做起来,更难以走向世界。
(本文讨论的关于软件商业的问题,都是指以经营软件或软件服务本身的业务,不涉及用软件来做其它业务,通常大众认知上也并不把京东、美团、滴滴这样的公司看作软件企业,软件只是他们企业经营中的核心基础设施)
02
什么是软件?
去年,我发了条朋友圈,说干了半辈子软件,才有点儿明白什么是软件了。阿朱老师留言评论说,“什么是软件”这个问题太难了,他干了一辈子软件,也没理解什么是软件。阿朱老师可能是在谦虚,也可能是在讽刺我干了半辈子软件就以为知道什么是软件了?但我相信这更多是他的真实想法,也是每个在软件行业里摸爬滚打的求索者共同追问的问题。
每个行业里,那个最简单的问题,可能就是最复杂的问题。
03
我问ChatGPT:“什么是软件?”
ChatGPT说:“软件是一种让计算机系统来完成特定任务的程序。它是由一系列指令组成的集合,它告诉计算机如何做出反应,执行特定的操作。软件可以使计算机能够记住和处理信息,也可以提供用户有用的功能,让用户在某些方面更加有效率。 ”
正确,但似乎没什么了不起,好像是每个做过软件的人都知道的基本知识。
让我换一种方式,重新组织和复述一下这个定义:
“软件是一套面向特定问题域的,基于清晰定义概念体系的、严谨的逻辑系统,由计算机来运行,由人来使用。”
用图来表示的话,大概如下:
04
最成功的软件往往都做好了几个基本要素,题、解、机、人:
题-有价值的问题域:清晰圈定了要解决的问题边界和范围,从而明确了用户群体、使用场景、市场定位、市场空间;
解-最优解的逻辑系统:解决问题的一套清晰定义的概念体系和逻辑系统,形成了该问题域被广泛接受的最优解,成为行业事实标准;
机-高质量的软件工程:高质量的技术架构和工程实现,让该逻辑系统可以在计算机上稳定、高效地运行,并优化了包括硬件、维护等在内的软件总体拥有成本;
人-易学易用的交互界面:提供优秀体验的人机交互界面,让用户可以快速理解和使用“解-逻辑系统”来解决问题,能快速上手和高效操作
此外,假如该软件还能做到“网”,让解决其它问题域的逻辑系统也能融入这个体系,借助它触达用户并传递价值,那就有了成为平台的潜力。
05
每一个软件类别,都是面向一个特定问题域的。问题域一旦设定,就决定了软件的用户是谁,也决定了软件的市场价值、市场定位、和其它软件类别的关系。
问题域的设定,是个复杂的事情,而软件类别是在过去几十年不断涌现,并逐渐细分的,这是因为到底哪些问题可以通过软件解决、哪些问题用软件解决是合算的、面临这些问题的用户群体、愿意用软件来解决这些问题的用户数量,都是随着计算机的能力提升和用户普及度在不断动态变化的。
软件设定的是不是一个好的问题域,是市场决定的。当计算机普及到了面对某个问题域的用户群体,当某个问题域用软件解决变得合算了,这个问题域才可能会成为一个软件类别,当感觉合算的用户数量达到某个量级的时候,这个软件类别才有机会出现软件“产品”。本质上,软件市场规模的上限是“用户愿意为解决问题付出的价格X面对问题的用户人次”,假如这个潜在市场规模还不足够大,就只能有局部的软件项目,不足以出现一个软件产品的细分市场,毕竟做软件产品,比做软件项目的投入要大得多,没有一定的市场规模,支撑不起一个真正的软件“产品”。
项目只需要面对具体问题给出具体解法就可以,可以是一个个点状问题点状解的堆砌。而产品要实现标准化的高复用率,就必须更清晰地圈定问题域,面向最大用户群体和普遍需求进行归纳和抽象,来寻找一个系统化、综合性的最优解,这就要有足够的具体问题和解法上的尝试,有归纳抽象和实践检验的多次迭代,才有可能产生一个近似最优解的逻辑系统。
定义问题域,只指个方向画个大圈是不行的,不同软件品类的问题域和用户群体往往是有交集的,但不同的重心点带来了各自的优势领域和市场基本盘。一个大名字涉及的问题域往往是非常复杂的,可能产生很多种不同的画法,每种画法都会带来不同的细分品类和发展路径。看不到真实问题和真实用户,就很难判断问题域怎么画才有市场价值,也很难产生最优解。
06
就像任何科学体系的产生一样,所有能解决实际问题的逻辑体系都必须既有对现实问题的真实感知和细致观察,又有基于此的概念抽象和逻辑假设,以及该体系的反复实践检验和修正。好的最优解,在实现问题域和解法的抽象和逻辑建模时,往往要针对主要用户群体的知识背景和习惯,找到了简洁和高效的最佳平衡点。简洁让人们更容易理解,有利于解法的快速推广和学习,但过于简洁往往会带来解决某些具体问题时的操作和使用效率问题,没有对问题的全面了解、对用户的深刻洞察、对关键任务的清晰认知,就很难找到这个平衡点。
一个逻辑系统,和其定义的概念体系,借助软件实现触达用户,一旦被市场中多数用户接受为一个最优解了,那往往就成了事实上的行业“标准”,而掌握标准的那家软件企业,也往往就占据了市场的优势地位。
人们经常说最高境界是卖“标准”,其实,标准的背后,是解决了实际问题的、被大家接受的最优解,是标准制定者贡献的知识,没有创新性的最优解和知识贡献的“标准”,有时候只是一种寻租工具。
07
世界上这么多品类的软件,每个品类的问题域都是谁先定义的呢?最优解都是谁先提出来的呢?标准握在谁的手里呢?是国际软件巨头们。产品化的软件,与其它行业不同的是,软件的市场供给和批量成本并不依赖于廉价的生产劳动力,边际成本非常低。想象一下,假如微软也像马斯克在Twitter那种搞法,十年前就把Windows和Office的开发团队缩减90%,他们能少卖几套?
软件的这一特点,导致成熟软件品类中把握了最优解标准的头部厂商,天生具有了“赢家通吃”的成本优势和规模优势,一旦有一家公司提出的最优解和其实现被市场接受为主流甚至标准,其市场地位就很难撼动。不要说中国企业去颠覆国际巨头了,国际巨头和国际一流创新企业也很难颠覆国际巨头,今天的软件巨头如微软、Adobe、Autodesk、达索等,至今也还是他们各自问题域的品类霸主。
但有没有颠覆的机会呢,有的,问题域本身变化了,计算机技术、人机交互方式、交付模式发生了大的代际级的变化,就有了颠覆的机会。成功的软件企业,不但能在问题域出现之初敏锐地发现新问题域,定义最优解,还能发现计算机技术、交互方式和商业模式的变化趋势,确保不被颠覆,甚至自己颠覆自己。
Workday的创始人,大卫-杜菲尔德,就两次自己颠覆了自己。他在上世纪七十年代创立了Integral Systems,做企业人力资源管理软件,运行在Mainframes大型机上,使用终端文本交互界面,取得了成功。八十年代他几千万美元卖掉了这家公司,创立了PeopleSoft,还是企业人力资源管理软件,运行在小型机服务器上,使用C/S客户端图形交互界面,2005年1月被Oracle100亿美金收购。仅仅两个月后,64岁的杜菲尔德创立了Workday,还是企业人力资源管理软件,SaaS模式,运行在云上,使用B/S浏览器和移动端交互界面,现在市值500亿美金。
08
美国是计算机技术的先发者和领先者,基本是最早碰到和定义软件的问题域的。中国是后发者,中国的软件厂商绝大多数,尤其是有明确“对标”的,都是在国际巨头已经定义和占领的问题域里搞,计算机技术和人机交互技术的变化也是国外来引领的,资源、禀赋、能力都差很多的中国软件企业,怎么能打败和颠覆国际一流企业都颠覆不了的巨头呢?
有人说,我们不打算颠覆国际巨头,而是做国产替代,我们有信创的市场,已经足够大了。
话没错,中国的大国地位和国际环境决定了我们一定会出现一个国内的规模还不小的独立市场,问题域老外定义好了,最优解也搞出来了,在机器和人上的落地实现也都摆在那儿了,学起来是容易了,但问题是大家学起来都容易了。不需要品类初创的漫长冷启动时期的摸索积累,那做的门槛就很低了,一个品类一旦火热了,就有大批的公司蜂拥而至开始卷,扒扒抄抄搞套东西就开始去拿融资打市场,就算国内市场没有国际软件公司来参与,那也不是蓝海,甚至连红海都不是,红湖,红池,红脸盆。
更何况,往往抄都抄不好。
09
很多抄的人,并没有意识到每个成功的品类软件的背后,本质上是一套自洽的、严谨的逻辑系统,这个逻辑体系是软件的核心,一堆功能和界面的表皮不是。
其实老老实实抄都还算好的,很多时候我们往往还要搞功能创新,搞博采众长,搞集大成者,东抄抄西抄抄,拼拼凑凑,把两套解法、两个逻辑系统肢解了一顿乱拼,里面的骨头都接不上了,既不严谨,更不自洽,这就导致在机器上的工程实现和在界面上的人机交互也好不到哪里去,逻辑系统自身的自洽和严谨性直接决定了这两个实现的水平和质量。
画虎画皮难画骨。
背后的逻辑系统没学到,工程和交互也没抄好,抄的好的,往往是怎么营销怎么吹牛怎么包装,拿到融资就是成功,反正大多数投资人的逻辑也是抄的,对标吗,就是一种投资逻辑上的抄。
10
大多数中国人,是不太重视逻辑,不太擅长逻辑的。拿起西方哲学书,往往会觉得都是在抠字眼儿,是在非实际的、没多大用的东西上较真儿。但严谨逻辑系统的背后,正是这套较真儿的、抠字眼的的西方哲学体系。
在中国文化里,逻辑是比较薄弱的环节。中国人两头强,一头是动手能力很强,应用创新也很强,另一头,一到抽象层面,往往就直奔“大道无形”、“道可道非常道”、“只可意会不可言传”,或者是断论式的人生警句处世格言。而科学体系,则更多是在这两头的中间,是来自于实践并可应用于实践、检验于实践的严谨的逻辑体系。中国哲学中并不是完全没有逻辑体系,但始终不重视系统性的逻辑定义和逻辑自洽,也缺少严谨的逻辑推理,更很少用于现实的生产生活和改造世界的活动,也没能产生基于逻辑的现代科学体系和方法论。
甚至到了今天,中国人都知道科学的重要性了,也都享受到科学带来的巨大红利了,但依然并不太重视逻辑,教育中也缺少逻辑能力的培养和训练,更多的都是把方法论当工具递到学生手里,让学生直接往对应的问题域上直接套用,而不太讲解这套方法论怎么来的,是如何从现实问题中抽象形成的,更少去训练学生自己的抽象和方法论构建能力。
或许,这也无可厚非,毕竟几乎所有的问题域和最优解都在那儿了,抄作业是最高效的,费劲去学这个干什么啊?重新造*?有病!
但要真的做好软件,不学不行啊,不学,抄作业都抄不好。不然或直接做业务,或成为业务的外包。更何况,不要说软件了,几乎所有行业,靠抄作业大发展的时代,都要过去了。
11
学逻辑,学抽象能力,学科学方法,学建立方法论的能力,难吗?难!可能大家都忘记了,哪怕是加减乘除这样最简单的逻辑运算,处理最简单的数目字对象,我们小时候也是每人都做了成千甚至上万道题才掌握的!软件如何定义问题域、建立最优解,涉及从实际问题本身到用户到市场到技术等多少对象多少维度?比两位数加减乘除复杂不知多少!而我们,又做过几道题呢?
但难,也必须要学啊!中国现在的发展阶段、市场规模和市场特点,已经开始出现一些定义自己独有的问题域、率先发现新问题域的机会了,假如我们不掌握科学方法来寻找和建立最优解逻辑系统的能力,不管市场环境怎么变,客户购买习惯怎么改,大家对知识产权的重视度和对软件的价值认知变得多么高,中国软件永远也不可能成为世界一流软件,哪怕挣到再多钱也没用,也还是一文不值。
我们软件从业者不用抱怨国内市场,没人拦着我们去国外啊,真能做出国际级的产品,去国外靠低价从巨头嘴里抢汤喝,都比国内脸盆大了。不要说更好的产品了,我们都很少能做出在国际上有一定性价比竞争力的产品来,中国外贸里有多少软件产品出口?我们前面说过,软件行业就是有特殊性,先发优势远大于后发优势,成本优势不来自于廉价劳动力和供应链规模,而是来自于先发的问题域和最优解定义,而且抄软件也比抄硬件要难得多。但软件就是难,我们只能从自身做起,老老实实面对我们的关键症结,努力学习用科学的方法,做出真正的好产品。
12
在中国的历史上,几乎所有人出生时和去世时生活方式没有多大变化,而我对比我童年时(七十年代)和现在的生活,其变化可以说是堪比科幻小说,这不单是中国历史上,也可以说是人类历史上前所未有的发展速度。这固然是因为一百年来中国人的努力奋斗和辛勤劳动,但不可否认的是,我们用了几十年,把西方几百年做的作业抄了一遍,其中最重要的、能带来最大生产力提升的,就是科学知识。
中国要继续往前走,必须从抄作业用工具的阶段,走到科学创新的阶段了,能发现新的问题域、创造新的方法论、贡献自己定义的最优解的阶段了,唯此,中国才能真正进入到新的发展阶段,唯此,中国才能对人类做出更大的贡献,获得真正的尊重。
让我们从自己做起。