20130124/被软件搅动的2013年春运 开发者曝光

南方周末/”为让人们更轻松地返家,软件工程师倪超开发了抢票软件。这最终搅动了2013年春运,火车票以神速“售罄”,不懂网络的农民工首当其冲。”

“倪超不认为抢票插件是在加剧不公,而是优化资源和解放双手。他与商业公司结合推广这一技术成果,但不料陷入一场商业漩涡。”

“超高点击量正在将“12306”推至崩溃的边缘,铁道部开始一场阻击战。倪超疲惫不堪,他选择离开,“再也不要面对12306”。”

26岁的网络工程师倪超终于明白,生活原来可以如此荒诞。

一切缘起他那仅有1年零9天寿命的个人作品——“12306订票助手”。这是一款立志让浩荡春运潮中返乡人避免因买不到火车票而崩溃的软件,然而,令作者倪超始料未及的是,自己最后却被这个软件弄崩溃了。

短短数日,热衷于利用业余空闲编写免费网络软件的他,极不情愿地被这个世界从网络背后推向喧嚣无比的台前。从被指责拖垮全球知名网站,到被指责令铁道部订票网站“12306”数度瘫痪,再到被指责引发IT企业间的商战乃至与部委的对抗。

最令他愤然的是,有人指责他为钱而来,肆意践踏在春运购票权上本就脆弱的公平和规则。2013年1月17日晚,他被铁道部“约谈”,随后停止了“订票助手”的更新服务。

“一切的指责似乎都与我有关,又好像一切都与我无关。”2013年1月22日晚,倪超在宁波的一家茶馆里反复咀嚼着每个字眼的味道。

IT男的技术自救

2013年春运如期而至,预计34亿人次的客运量将再创历史新高。相比往年,今年的火车票不仅难买,而且总是神速“售罄”——目前最高纪录是一班列车车票20秒内售光。

2013年1月19日下午,东莞白领林海伦在舒适的办公室里点击鼠标,在连续7天购票失败后,终于买到了发往陕西老家的卧铺车票。

“感觉像飞起来一样。”她这样描述心情。成全这种幸福的是一款名为“12306订票助手”的软件,它好比在网络里植入一个不断运转的机器人,以人力无法企及的频率和速度自动登录网站购票。

但在这个国家里,仍有数以万计的农民工从没摸过电脑。在林海伦感到无比幸福的那个凌晨,山东农民工薛运杰已经在广州火车站睡了两夜。“春运卧铺票什么样这辈子就没见过”。最后,他终于买到了一张开往郑州的票,“只好走一步算一步了。”

林海伦和薛运杰不知道,今年春运的火车票市场被一款只有一百多K的小软件所搅动。它的设计者是宁波一名普通的程序员倪超。他自称曾是春运多年的受害者,并想用科技让它变得“有所不同”。

“以前总是临近春节了才想到跑去火车站排队。”倪超回想往事,“连黄牛都在嘲笑我的后知后觉。”在坐了一次因雪后打滑险些翻下山坡的长途客车后,他非常渴望有一张火车票。经过2011年短暂的电话订票过渡后,铁道部于2012年推出了订票网站“12306”。此前,这套购票系统已谋划近十五年。

现实总有距离。“12306”在2012年春运售票首日,就在超过10亿点击量下瘫痪了。即使作为资深IT男,倪超也只能“完败”——在三次成功付钱之后,12306网站仍然没让倪超买到朋友托付的车票。倪超频繁地点击鼠标刷新页面,每次总希望奇迹出现,“然后,就没有然后了”。

不过最让倪超困惑的,还是“12306”这个网站。“它是所有问题的根问题”。在过去一年中,“这个系统几乎没有丝毫的改进”。除了2012年国庆前新增加了“提交订单排队”的功能,登录仍不便利,界面还是枯燥,甚至购票流程还是繁琐的13步。

甚至于那唯一一次的新增功能,也不被倪超认为是改善。“排队之后购买失败的概率还是很大,还错过了购买其他车次的宝贵时间。”为此,铁道部相关人士也被迫站出来公开道歉。2012年12月,该网站甚至两次公告机房空调故障,暂停一切互联网售票、退票、改签业务。

一些IT发烧友开始进行“技术自救”,包括倪超。这些IT男们希望通过编写购票软件,帮助人们彻底告别冒雪的排队场面。

2012年春节购票高峰前后,倪超集合了多个网络插件的功能,最后成功编写了这个在一年后搅动中国春运的软件。

包括国庆长假,不喜欢旅游的倪超,一年仅需要4张往返宁波和合肥火车票。秉持互联网共享精神的他,尝试把软件放在大学同学的服务器供人下载,没过几天,同学告诉他,服务器被拖垮了。日后统计,第一个版本的“订票助手”被下载了二十多万次。

此后一年间,倪超沉浸在助人为乐的满足感中。经过十数次更新升级,倪超对自己的作品非常自信,“超过了其他所有购票软件”。这个软件可以自动查票,自动下单,自选硬卧还是硬座,甚至在网站显示无票时自动轮查下一天……

“只要有票,除了付钱,软件能够代劳一切。”倪超说。他认为软件的使命在于改善“12306”的用户体验,他把自己的身份定义为铁道部的“义工”——“我从来没有否定这个网站的价值,而是在它刚开始走路的时候扶它一把。”

净化运动

2012年春节后相当一段时间里,倪超的“12306订票助手”还是以单个软件的形式出现,他甚至一度淡忘了自己作品的存在。直到2012年4月,12306网站程序稍有变化。有人发来邮件:登录不了了。

在这种“被人惦记”的感觉敦促下,倪超陆续开始组建自己的QQ群。目前他有20个QQ群,除了一些IT同仁,大多数是急于买到火车票的人。他们都在竭力呵护软件的纯净——不能成为票贩子趁火打劫的利器。倪超为此定了规矩:一旦发现有人在群里宣传加价代购,他会立马把他踢出去。

这场净化风气的抗争甚至到了QQ群外。2012年9月中旬,友人发来网址,告诉倪超有人公开在淘宝网上售卖这个软件。

倪超旋即展开维权行动。他找到淘宝网投诉,但是客服要求提供软件专利号,“一百多K大小的东西,哪会去申请专利?”倪超又亲自联系那些卖家。“有人立马道歉,有人直接把我拉进了黑名单。”

交涉未果后,倪超索性宣布在QQ群里免费发布注册序列号,以杜绝有人售卖的行为。宣布的头几天,不断有人申请加入QQ群获得序列号,“很多晚上我都顾不上吃饭。”

随后,淘宝公司寄来一封邮件,希望能够捆绑在淘宝浏览器上。与浏览器捆绑,能够确保软件安全无毒,“毕竟他们都是大厂商”。倪超没有犹豫,只是强调一点:不能以此谋利。

从此,倪超负责对淘宝浏览器上的助手进行更新和维护。他坦言,更新不复杂,技术含量也不高。“只要有一个人在用,我就会负责任地帮他完善。”

倪超自述年少时曾把家里所有电器全部拆光,“除了高高在上的电风扇”。他不厌其烦地为QQ群里的电脑盲答疑解惑,甚至在与12306的数次PK 中总结出多条买票技巧。比如如何捡到漏票,如何同时操作多个浏览器买票。甚至于春运期间,一些小站因为停靠时间短而限制售票,“这时候你可以瞅准邻近的大站买,然后在小站下车”

2012年9月,倪超在自己的个人网站上设置了一个网络捐助选项,网友可以通过支付宝捐钱。倪超认为那是这个仅有一百多K大小软件的成长史的一部分,于是他把每一个捐款网友的名字列了很长的名单,放在自己的网站上。“我的初衷不是为了钱。”他说。而让倪超玩味许久的是,“没捐钱的和捐钱的,唯一区别就是‘前者会多说一句谢谢你’。”

商业漩涡

站在倪超身后的,不仅是海量的支持者,还有反对者。有人加了他的QQ,上来便一顿痛骂,说他的“不良软件”让不懂网络的老百姓买不到票。

倪超熟知很多关于网络订票的新闻报道,包括2012年春节一个在温州打工的四川农民工上书铁道部,直陈网络购票对农民工不公平。

倪超有一套特有的公平观,“十个农民工便可以团体购票,预售期甚至比白领们提前十天,而且他们的时间相对自由,上班白领根本抽不出时间去窗口前等待。”

“订票助手”把农民工的票抢光了的指责,倪超更是不认同。他熟练地背出一组数据:网络售票占铁路售票总额的38.2%,剩下的便是电话售票和窗口售票。“蛋糕是切好的,不是网络全霸占了。”

“订票助手最大的意义就是解放你的双手,枯燥重复的工作由机器代替。”倪超解释道,“这不是插队,而是让本来就排在前面的人不要错失机会。”

倪超还极为审慎地遵从了“12306网站”的规则。他把软件自动刷新页面的时间间距从网站要求的5秒设置为6秒。“如果这都承受不了,这个系统是不是有问题了?”

2012年12月,金山猎豹(一家网络浏览器公司)找到倪超,希望与他合作。“浏览器能推广给更多人。”倪超说。双方的合作由此敲定,双方均称此次合作不涉及利益问题。而尊重5秒规则和完全免费,这是倪超对与之合作的金山公司的唯一要求。

这取得立竿见影的效果。2013年1月14日,金山猎豹推出了抢票专版浏览器。百度指数显示,当天该浏览器的用户关注度开始飙升,一周内猛增135%。“抢票软件”开始了狂飙突进的规模化商业进程。如360、即刻搜索、搜狗等网络公司都推出各自的抢票软件。

一场网络公司间的营销战正在酝酿,其中又以素有宿怨的金山和360之间的相互责难最为显著。他们不点名地相互指责对方“是公平与规则的破坏者”。

360曾高调宣传:2013年春运抢票季中,360已为500万用户买到了回家的火车票。倪超觉得这违背常识,“每天网络放票200万张,春运才开始几天,难道四分之一的票全被360用户买去了?”

随后,媒体刊发的“金山抢票插件窃取隐私遭铁道部调查”一文,把金山猎豹推至风口浪尖,他们认为这是一场竞争对手栽赃陷害的“抹黑”事件。

“恶性竞争是互联网常有的事,但把春运作为炒作题材,确实有点过了。”倪超颇为不满,“他们的热闹与我无关,但是我得为我的作品负责到底。”

“12306”阻击战

这场互联网的“火车票营销战”不仅考验各方操守,更带来一定程度上的“技术灾难”。

2013年1月15日,多家中国媒体显要位置刊登了全球最大的社交编程及代码托管网站——GitHub服务器,因“订票助手”用户的频繁访问而被拖垮的消息。此前,倪超一直将软件代码托管于此。由此,“中国春运拖垮世界级网站”的说法应运而生。

“5万人5秒点一次订票网站,一小时连续点就有3600万次。”即使数字如此惊人,倪超仍认为“没有那么严重”。他说GitHub网站程序员在给他的电邮中澄清“只是受到了一些负面影响”。

但两天后,倪超意识到问题要比想象中复杂。1月17日晚,三名自称铁路派出所(隶属于铁道部公安局)的警察来到了倪超租住的居民楼楼下。这一天的上午,“12306”刷新了成立以来单小时售票最高纪录——上午10点到12点,“12306”网站总计卖出车票超过60万张。这个被诟病的脆弱的系统蹒蹒跚跚地捱过了这一天。

警察显然将这个狼狈的现实部分归咎于倪超的发明。在二十分钟的谈话中,三名拜访者“反复说这样做是对不会上网的农民工的不公平”。倪超没有据理力争,耐不住冷风的他草草结束了这场谈话。

基于与三位警察的口头承诺,回到家中的倪超带着伤感,写了一条微博:因种种不可抗的因素,12306订票助手即刻起停止公开提供,已下载的恕不提供更新服务。

被约谈的并不限于倪超。远在北京的金山网络公司,同样在这一天晚上7点接到来自有关部门的电话。

据金山网络公司内部人士透露,当时有七八名铁道部官员。对方的要求很简单:立即停止运营猎豹浏览器春运抢票版。一位官员直言不讳,据12306 的后台统计,借助猎豹浏览器登录该网站的用户数量是最多的。“影响了购票系统的公平”。但金山方面以“无证据显示有任何影响”为由回应,并表示其他公司也在做,“要停大家一起停”。

据南方周末记者此后调查,包括360、搜狗、金山网络等多家浏览器厂商均表示,目前并未收到工信部叫停抢票软件通知。

商业公司的消极合作换来更大层面的反制措施。2013年1月20日,QQ群里不断提示有新信息,人们急切地反映,12306网站的程序变个不停。甚至在购票高峰的几分钟内,还更改了一次程序。在倪超看来,目的无疑是防范猎豹春运版浏览器。

“一边放票一边修改程序”,在倪超看来,这严重违背了互联网的基本常识,“访问量高峰时,程序员首先应该保持系统的稳定”。这样的修改,让猎豹浏览器访问12306网站时,页面会出现一片灰白。

这场针对金山猎豹的网络阻击战,显然打乱了远在北京的另一群IT男的计划。金山网络内部人士告诉南方周末记者,1月14日推出第一版春运抢票专版后,他们迅即进行了百万元级的广告投放。

变化发生在约谈之后,猎豹浏览器自动订票功能失效了,失效的表现是显示无此订单。“我们发现其他浏览器用户也反映类似问题。”金山内部人士告诉南方周末记者。

显然,这个变化让所有浏览器厂商猝不及防。对应的措施是,金山每隔半小时在订票高峰期测试一下,二是调集客服人员,在微博和论坛上搜集用户反馈。周五当天,猎豹论坛同时在线人数最高峰为九千多人,多数是反映购票的技术问题”。

也正是在1月21日这天,倪超发现12306网站至少改动了三次程序,目的当然是阻挡订票助手的访问。作为回应,金山内部启动了监控机制。“保证我们第一时间发现他们的调整”,甚至不惜安排技术人员周末连续倒班,从早上七点,到凌晨两点都有人跟进。

一个新纪录诞生了,金山猎豹浏览器在一天内连发三个版本。“这是软件历史上前所未有的更新速度。”金山一高层如是表示,有统计显示,8天之内,金山猎豹抢票专版总共更新了13个版本。

这场攻防战,已让身处事外的倪超无力参与,但是页面灰白还是让他颇为震惊。

他试图守护自己作品不可冒犯的尊严。他在QQ群里和微博上号召网民迅速修改浏览器设置,“简单设置后又能正常访问了”。

数日之后,倪超还对页面灰白耿耿于怀。他认为,12306网站至少应该发布公告,力劝这些人更换别的浏览器,“封的不是一个浏览器,而是剥夺了上百万用户买票的权利”。

虽然转交了源代码,但是用户们还是习惯第一时间求助倪超。“铁道部一更改程序,我的电子邮箱里便爆满。”三天时间,总共有600封求助邮件。

奉行“有信必回”的倪超,决定利用1月20天这一天。他哪里也没去,就待在家里写邮件。结果两小时后,200封邮件发完后,腾讯邮箱提示“发送失败”,原因是已超过发送上限,“这回是真的忧伤了”。

金山与12306的这场拉锯,也让倪超受到牵连。猎豹浏览器页面灰白后,有人在QQ上大骂倪超无能。“直到骂完了解气了,我就把他们拖进永远无法联系的黑名单”。

难解的“根问题”

一年零九天对“订票助手”的开发,倪超自称于此获利近乎为零。淘宝公司在元旦寄来一套12生肖布偶公仔,是倪超从这两家IT公司获得的唯一回报。“可惜刚抱回办公室,便被同事们抢去大半”。

从一个软件引发的春运洪潮,让自称对钱并不敏感的倪超深感疲惫。却让两家互联网公司仍乐此不倦。

倪超纳闷,“约谈”后,两家互联网公司的调门居然越来越高。360公开宣布:有人说抢票工具“不公平”,但360卫士要说,能买到火车票才是最大的公平!

金山更是宣称面对重重压力,工程师们再次加班更新,猎豹春运抢票版已更新至最新版,网民安装可正常抢票。

除了电脑软件,360还推出了手机抢票软件。“这解决了网络抢票对于公平的争议。”360副总裁曲晓东如是表示,“这样能够帮助不会上网的农民工和老年人,还有没有网上支付账号的人买到车票。”

在金山网络一边,他们准备每天派出一辆免费的橙色大巴,每次送50名农民工返乡。第一班车已于1月23日发车,目的地河南郑州。“我们希望帮助铁路部门增加运力。”金山网络一部门负责人告诉南方周末记者。

在业界看来,在部委和媒体围剿后,这两家剑拔弩张的互联网企业正在洗白自己——他们正在向农民工群体示好。

对引发这场春运抢票题材商战的“根问题”——12306网站,金山网络更是在被铁道部约谈当晚,提出派出技术人员帮助铁道部解决相关问题,“可惜没有获得任何回复。”前述金山网络部门负责人说。

360安全浏览器产品负责人陶伟华甚至建议,一是铁道部将部分余票数据共享给互联网公司,“购买还是在12306,但是查询放开,这样能够减少对服务器的压力”,二是效仿民航票务分流。

围观12306整整一年的倪超否定了票务分流的提议,他不认为这是对旧体制的辩护。“铁路票务系统远比航空复杂,那么多区间票确实需要一个总系统来调度配置。”

他甚至反驳了购置天价服务器缓解流量压力的提议。“我特别能够理解铁道部,”倪超呼了口气,“高峰期就两个月,买了天价服务器,剩下十个月难道无限地浪费?”

“这就是这个大系统的复杂性,”倪超告诉南方周末记者,“你期待12306变好,不如期待社会发展平衡,大家不用背井离乡了。”

遵照约定的倪超并没结束与警察的纠缠。1月19日10点整,倪超正蹲守在电脑前等待放票,他准备2月7日返回家乡合肥。

电话又响了,对方再次要求他删除网站上的一个链接。接电话间隙,倪超瞅瞅电脑——票没了。倪超开始歇斯底里地朝电话那头怒吼。当晚倪超把这段经历写了一条微博,第二天网站将这条微博置顶,标题改作“订票助手作者吐槽购票难”。

哭笑不得的倪超开始了新一天的抢票,最终借助自己的作品,苦等一个半小时后,最终换回一张退票。一个半小时,意味着倪超的软件刷新了页面1000次,“再厉害的软件也抵不过人多票少”。

离乡五年后,倪超准备离开宁波,回合肥发展,“那时候我就不用再面对12306了”。