刚刚到网络中心工作的时候,老领导就告诉我:“我们用的所有东西都是要采购的,自己做是没有钱支持的。”作为一个刚刚入行的新人,忽然明白原来到网络中心不是来做东西的,是来买东西的。
无奈
那时奥运会闭没多久,我也刚刚从学院调动到网络中心。初来乍到,对很多东西并不了解,只知道学校的数字校园,是由一家著名的主板上市公司承担的。至于数字校园是什么,我也搞不太清楚,基本上就觉得是借用了 IBM 发明的概念,套用到学校这个场景上,弄个看似牛逼的名字骗骗人吧。
但在数字校园里做的那些系统,总是要用的,譬如什么迎新系统、离校系统,没人知道为什么要搞这些东西,也没有人愿意接手相关系统的运行工作,只好自己来了。系统开始运行之后,问题不断,譬如第一次正式运行就崩溃、只能支持 IE6、要用的功能没有,总之是花了大量的时间瞎折腾,最后也没啥效果。于是,我们就开始了调研,去别的学校看看人家的系统是不是好用,调研的结论是,别人的系统都很好用,因为人家的厂商做的东西更好。
既然如此,那就“换”吧,经过一年多的努力,终于换掉了第一家的迎新离校,迎来了第二家的迎新离校。但是,正所谓“幸福的家庭都是相似的,不幸的家庭各有各的不幸”,第二家虽然少了第一家的问题,却又有了新问题。第一次我们可以说系统买的不好啊,可第二次,我们总不能再说系统买的不好吧,也就只好硬着头皮用了。
但不好用的东西终究是不好用的,在一次离校之前,一直在承担着系统运行工作,协调各单位提供数据的同事终于忍不住了:“一次离校准备两个礼拜,这俩礼拜就感觉天天在吃屎,要不我们自己做一个吧!”他的理由很简单,虽然自己做累一点,但如果用两个礼拜能做好,下次离校的时候就舒服了;如果做不出来,那我们活该吃屎,也不会怨天尤人。
在得到领导的默许后,我们就开工了,而这就成了一个转折点。
算计
很显然,自己做是不对的,特别是在高校现有的体制下。所有听说我们在自己做东西的人,都会问:学校会给你们钱吗,会给你们政策吗?这样的问题,不用回答,答案是明摆着的。那为什么还要自己做呢,我们也有自己的小算盘,问题的根本在于:代价和效果。
代价,不是说学校要花多少钱或者能省多少钱,这事情跟我们没有半毛钱关系。所谓代价,指的是上线一个系统,作为执行这个项目的管理者,我们要花费多少时间,要付出多少精力。有人会说,如果采购,不是签个合同就完了吗,剩下的事情,就完全不用管了,但事实却并非如此。采购无论一个什么规模的系统,至少要做以下事情:调研、立项、招标、签合同、确认需求、安装部署、反复测试、验收。如果这个过程顺畅,一年可以完成,如果不顺畅,就要拖很久。特别是,一旦需求发生变化,就会在项目过程中不断“确认需求、安装部署、反复测试”,这其中,还会牵扯到需求有没有被覆盖,不被覆盖的需求是不是要弄二期等等烦人的问题。而软件招标过程中可能遇到的坑,经历过的人都会明白。想一想,其实我们只是要做一个小小的系统,完成学校的一个管理上也许并不那么复杂的需求,在这样一个复杂的过程中煎熬,真的好累。
效果,如果一个软件项目经过一轮折腾,真的能在可以接受的时间内取得还不错的效果,那也是可以接受的。但问题是,即便你经过反复调研,准备好了一切必须的条件,经历了一年或者更长时间的煎熬,能获得什么样的效果,都很难说。最后,只能用“谋事在人,成事在天”来安慰自己。
所以,一个系统该采购还是该自研,其考量点就是:投入同样多的时间和精力,用哪种方式,更容易获得还可以接受的效果;如果最终的效果都差不多,那么用哪种方式可以尽量少的在一个项目上投入精力,而腾出时间去做更多有价值的事情。
慢慢的,我们形成了自己的策略,采购与自研相结合,基础的、特别复杂的,有成型产品的东西,采购;相对简单的、定制比较多、没人能做或那些粘合性特征比较强的东西,自研。
而采购和自研这两者的选择,在一个事情上,有时也是要切换的。譬如最初学校的“统一身份认证”是由我们自己架设并维护的,但当我们发现市场上已经有产品其品质足以替代我们自己所维护的系统时,也会通过采购的方式重新把这个任务外包出去,原因很简单:在这个点上,长期而言采购成熟产品所需要付出的代价更小。
团队
无论是采购还是自研,离开人都是不行的。今天很多人觉得,不就是弄个系统么,随便找一个人,跟整天追在屁股后面的厂商聊一聊,花点钱,等一等,就自然好啦。其实信息化建设,远不是这么回事儿,即便是网络这样的以硬件投资为主的项目,少了明白的技术人员,一样会有问题。且不说厂商会想尽办法多挣钱,就是你花合理的价格买到了合适的产品,也需要有明白的人进行管理和使用。花几百万,获得几十万的效果,不是常有的事情吗?
如果要自己做一些东西,没有人就更是不行了。而高校想找到合适的人,真心不易。幸运的是,我所在的学校,理工科是非常不错的,计算机学科的排名虽然不是国内前几,但坊间一直流传着学校的毕业生其实是中关村很多优秀 IT 公司中流砥柱的说法,而这些年创业成功的师兄弟也不在少数。如此好的毕业生质量,只要有人愿意来,并加以培养并逐步委以重任,肯定是能够慢慢形成一个不错的小团队的。
在中心领导的不断努力下,网络信息技术中心的人事工作,得到了学校分管领导、人事处领导、学工处领导以及计算机、软件学院领导的大力支持。再加上一定程度的运气,几年下来,中心的信息部门新进了四五个本校计算机专业的研究生和本科生,甚至还有一位清华大学毕业的硕士。虽然人数不多,却是一个精干的队伍,以至于我经常跟兄弟部门的同事开玩笑说:谁会派四五个 985 大学的计算机专业毕业生为你服务呢?我们会!
效果
不积跬步,无以至千里。对于大学信息化建设这样的事情,无论是什么样的条件,投入多少经费,在现有的模式下,想要一两年见效都是不可能的。特别是今天我所在的学校所面临的信息化,不是要解决从无到有的“信息化程度”问题,而是要解决从有到好的“信息化水平”问题。
开始为学校信息中心编写第一行代码,大概是 2012 年下半年的事情,两三年之后,虽然由我们自己所编写并维护的大大小小的系统已经不少,虽然这些系统已经为学校里的兄弟部门解决了不少问题,但具体到某一件事情上,并没有太多可以说的出口的——都是些不大不小的系统,解决一些看似是边边角角,但不解决又会带来麻烦的问题。
直到 2015 年学校的微信企业号试运行,忽然之间,我们做的系统得到了师生的认可。做过相关开发的人都知道,其实微信企业号下的开发并不是一个太复杂的技术问题,但作为信息化体系下的上层应用,想要把大量信息集成到一个小小的手机上,又谈何容易。无论是数据管理、查询接口的编写、与既有系统的整合,一切的一切,都源于基础信息系统的应用水平,以及整个体系的强壮。否则,即便做好了也会天天坏。
所以,在团队中年轻的小帅哥站到微信之夜的领奖台上接受“微信年度最具价值企业号”颁奖的那一刻,我们都知道,努力终将会有回报。
选择
写这篇文字,并不是要说“采购加自研”这种做法有多么好,更不敢说我们的水平有多高,只是想记录一下曾经的选择以及在当时的思考。前些年有个名人出了本书,叫《我的成功可以复制》,但明白人都知道,别人的路又怎能“复制”。就像大家都知道今天复旦大学是高校信息化的一面旗帜,但如果我们既不能复制宓老师,又不能复制复旦大学的基础,想复制复旦大学信息化的成功经验,谈何容易。所以,根据学校的特点和基础,根据现有的人员配备,根据学校目前能提供的投入,根据行业内厂商们当下的状态,选择一条最不差的路,就是我们不得不做出的选择。
随着技术的发展,随着产业的成熟,也许无论是采购的大软件还是我们自己编写的那些不入流的小系统,终将被时代淘汰。但这不重要,重要的是我们每个人都选择了为当下所能达到的最好效果,而付出了努力。就像奥斯特洛夫斯基说的那样:“人,最宝贵的是生命;它,给予我们只有一次。人的一生,应当这样度过:当他回首往事时,不因虚度年华而悔恨,也不因碌碌无为而羞耻……
数字校园实践系列
- 之一 《从构筑大系统,到编写小应用》
- 之二 《从虚拟化向容器化迈进》
- 之三 《看不见的基础服务层》
- 之四 《采购加自研的选择》