小超穿越记

 

回到20年前,能再次发明Spring吗?...





本来想写一个“宏大”的穿越故事, 写到中间就发现黔驴技穷, 差点烂尾......

这是小超来到帝都工作的第5个年头。

这5年除了刚开始上了半年培训班, 剩下的时间都在一个小公司里待着做Java Web开发。

这个小公司的老板长袖善舞,通过关系拉了很多政府的项目, 经常让大家忙的昏天黑地。

老板还有个“优良”的习惯:下了班不走!    他不走,那些经理都不敢走, 经理不走,员工门哪儿敢走?

这样一来,小超晚上8点下班是常事,再坐1小时地铁回到出租屋里,基本上就是9点多了。

小超的女朋友经常抱怨他:“ 加班,整天加班! 就你那点工资,看着不少,可是你算算时薪,是不是和我差不多?”

小超女朋友是高中同学,现在一家外企做行政,每天按时上下班, 薪水在帝都虽说是中等, 但至少还有自己的生活。

小超也很郁闷, 总觉得自己应该干出一番大事业, 现在自己对Java和SSH框架已经使用的“炉火纯青”了, 至于什么负载均衡,mysql 读写分离也不在话下, 更不用说什么Redis , elesatic search, memcached ,  MQ 了。

不仅如此,自己还热衷追踪最新的技术,例如微服务,AngularJS ,HTML5, Node.js,React , 这不甚至还自学Android了。

小超的梦想是写出几个名垂青史,让全世界码农都使用的系统、框架或者工具出来。 可是现在似乎所有的工具都被人写完了,没啥可写的了。

今年的七夕 ,本来和女朋友约着去看电影, 临走的时候被经理叫去改一个紧急的Bug , 折腾完都晚上11点多了, 约会自然泡汤。

小超心头烦闷,出去和哥们喝了点儿酒,回来就呼呼大睡。

一觉醒来, 小超惊奇的发现,整个世界都变了。 自己的出租屋原来装修的还不错,现在看起来又旧又破, 绿色的墙裙,灰不溜秋的水泥地,黄不拉几的门,和90年代自己家里一模一样。

小超本能的去床头摸手机,怎么也找不到了,  再扭头一看,自己花了一万多大洋买的MacBook pro也变成了一个难看的台式机, 还是传统的曲面CRT屏幕。

赶紧从床上爬起来, 打开看起来极为笨拙的电脑, 在风扇玩命的轰鸣声中, 小超看到了这个电脑的配置:

CPU : AMD K6-2-300

内存: 16M

硬盘: 4.3G

小超开始有种不妙的感觉, 熟悉的Windows 界面开始出现,   只是上面写着一行大字:  Windows 95  !

电脑启动后, 小超看了下右下角的时间,立刻傻眼了。   现在是1996年 ! 小超回到了20年前  !

楞了半天, 小超竟然哈哈大笑起来:  “真是上天眷顾, 让我建功立业啊。”

因为小超想到自己是从“未来”回来的人, 清清楚楚的知道这20年来有哪些著名的软件, 工具,系统。

而现在是1996年, 它们还没有发明啊! 自己把他们都搞出来, 肯定是前无古人,后无来者的功业,所有的码农都会对自己崇拜的无以复加。

想到一个IT新星就要冉冉升起,  一个IT巨头将傲然屹立, 小超激动的跳了起来。

从哪儿开始呢? 小超冷静了下来, 心里开始盘算:

游戏怎么样? 自己也喜欢, 把爱好和职业结合在一起,多爽。  90年代红警很火啊, 还有仙剑奇侠传,暗黑破坏神,帝国时代, 这些都是大游戏,需要策划,美工,程序,测试,不是一个人单打独斗就能搞定的, 再说自己大学也没好好学C/C++,数据结构和算法,计算机图形学还挂科了, 放弃吧。

门户网站? 那都是有钱人玩的烧钱游戏, 自己一穷二白,也不是海龟,尼葛洛庞帝肯定不会给投钱。

对了, QQ ! 这个小企鹅未来简直就是一个印钞机, 从技术上看, VC++写客户端没问题,  服务器端用C/C++,  只是自己能设计一个同时支持上百万人在线的架构吗?  小超觉得自己的两把刷子不大可能, 放弃!

微信? 这年头互联网还没普及,哪儿来的智能手机? 手机软件全部Pass  , 要想做也得再等10几年。

还是野心小点儿, 先搞个单机版的软件吧, 微信之父张小龙的Foxmail 还没出现 , 我来先写一个,先声夺人,估计就没张小龙什么事了,没有Foxmail,估计张小龙也进不了博大和腾讯 , 也就没有微信了,哈哈。

不过得快, 张小龙的Foxmail 1.0 beta英文版 1997年1月就要发布了 !

小超赶紧下楼去了一张201电话卡,  设置好拨号网络,然后在吱吱嘎嘎的声音中开始上网,打开浏览器,去Google找资料, 浏览器竟然提示说:没有这个网站 !

去百度试试, 还是提示没有这个网站!

“卧槽, 百度和Google还没成立呢 !“  小超想了半天,终于反应过来了,  小超有搜索引擎依赖症,这下傻眼了。

写Email客户端得理解SMTP和POP3协议啊,看来只好去IETF官网去找了,  全是英文, 就我这英语水平? 还是算了吧!  小超第一次后悔没有学好英语了。

去图书馆借! 这堂堂的省级图书馆里边竟然都是些组装电脑,如何使用WPS,五笔字型之类的书!

这是资源匮乏的年代,没有搜索引擎, 感觉真是什么事儿都干不了。

看来Foxmail还是让张小龙去写吧,   小超突然想起了当年红极一时的文章《第一次亲密接触》,轻舞飞扬和痞子蔡浪漫美好而又悲情的网络故事感动了许多人,  能把它写出来,捷足先登,就没有原作者蔡智恒什么事了。

这个情节还模模糊糊的记得, 只是自己提笔去写怎么这么难? 硬着头皮写了第一章,痞子蔡在BBS上遇到了轻舞飞扬, 文字惨不忍睹, 连自己都看不下去。

小超把写好的第一章好不留情的删除,果断的放弃了写作这一行。

务实一点,还是在自己的老本行找找机会, 小超痛定思痛以后,把自己工作中常用的软件都列了出来, 用排除法搜寻:

Tomcat  : 得实现Servlet, JSP规范, 英语还是拦路虎, 更重要的是需要实现并发访问啊, 线程池,IO等一系列和底层打交道的东西 ,自己不擅长。

Eclipse : 这家伙也够复杂,还是让IBM去玩吧。

Redis,memcached : 又会涉及到缓存相关的算法, 搞不定。

Spring :这个东西不错, 只是Java 1995年才发明, 96年 EJB还没有出现, 我要是贸然推出Spring, 大家根本接受不了。  哥们蛰伏几年,到2000年再出名吧。

折腾了半天, 马上中午了, 小超出去吃了点东西,决定先找一门工作。

这个年代,软件公司凤毛麟角, 科技市场上都是些组装电脑的小作坊, 连一个用Java开发网站的公司都找不到。

好不容易,小超找到了一家用PowerBuilder做MIS的公司, 面试中小超反复的强调Web才是未来,公司要坚决的从C/S向 B/S 转型, Java 未来会异常火爆,赶紧培养Java 程序员,转向Java。

面试官瞪大了眼睛,心想这小子是从外星球来的吧, 公司现在全靠MIS赚钱, 你让我用Java 这种没几个程序员会用的语言,还Web, 想搞死我们呐。

面试以失败告终, 小超心说:不听老人言,吃亏在眼前, 此处不留爷,自有留爷处。

可是面试了一个月,都是PowerBuilder, VC, VB, Delphi , 根本没有Java什么事。  没办法,小超只好买了个盗版的PowerBuilder 光盘, 拿出学习Java 的劲头,和它死磕。

最后还是进了一个家做MIS系统的公司,拿着每月1600块的高薪, 从此再也不提Java, 小超蛰伏了下来。

时光荏苒,白驹过隙,2000年很快就到了,互联网开始普及, Java 已经有了大批拥趸,  XML也在1998年有了标准, 时机成熟了。

小超辞去工作, 买了两箱方便面和一箱火腿肠, 模仿求伯君写WPS, 开始在家里闭关写Spring 。

他很快就发现不是那么容易, 使用和创造完全是两回事, 后者比前者至少难了一个数量级。 尤其头疼的就是设计, 使用Spring 的时候按照文档来就行了, 现在要设计各种类来实现这些熟悉的接口, 小超感到了手足无措。

写出的代码基本功能也能实现,就是看起来非常别扭。  估计除了自己没人能读懂, 其实再过俩月自己也看不懂了。

等到看到方便面就想吐的时候, Spring 1.0终于出炉啦!

GitHub还没出生, SourceForge是最热门的开源软件聚集地,  小超跌跌撞撞,一边查金山词霸翻译, 一边在SourceForge上操作, 终于把Spring 1.0给发布了,小超在上面宣称:这是一个实现了依赖注入的革命性的框架, 赶紧抛弃那又大又笨的EJB吧。

过了半年, 革命性的框架还是无人问津。

小超着急了, 开始在各大论坛,尤其是CSDN上去发帖子去宣传, 还是没有什么波澜, 偶尔收到几封信,内容基本上是: 你这个项目怎么没有文档?  或者是:什么是依赖注入?  为什么你要我抛弃EJB ?

还有个老外程序员直接说: 你的代码实在是太可怕了。

后来有一本书叫《Expert one to one : J2EE development without EJB》 横空出世, 这本书的作者拥有极为丰富的J2EE开发经验, 详细的剖析了J2EE的优点和缺点,提出了一个轻量级的开发框架,名称叫做Summer !

这个框架文档丰富, 功能强大,代码优美, 一下子吸引了无数人的关注和参与。

小超看到以后就明白:狼来了, 真正的Spring 来了 !  自己的Spring 是再也没有翻身机会了。

穿越回来这几年是白过了,  到了这个时候小超才明白, 自己虽然也会了不少东西,但都停留在使用的层面上, 只不过是把业务翻译成程序而已, 唉,这就是所谓的HTML填空人员吧。

更重要的是, 自己没有一个方向是精通的,没有一个方向是能深入的理解背后的原理,所以无论是任何有用的工具和框架,自己都没有能力写出来。

小超醒了。

(完)

你看到的只是冰山一角, 更多精彩文章,尽在“码农翻身” 微信公众号, 回复消息"m"或"目录" 查看更多文章

我是一个线程

我是一个Java class

Javascript: 一个屌丝的逆袭

Java : 一个帝国的诞生

我是一个网卡

我是一个路由器

TCP/IP 之 大明王朝的邮差

CPU 阿甘

CPU 阿甘之烦恼

Basic : 一个老兵的自述

小王的架构师之路

编程的自学方法

程序员在工作中必备的能力

码农需要知道的潜规则

IE为什么把Chrome和火狐打伤了

Node.js :我只需要一个店小二

假如我是计算机系老师

假如时光倒流,我会这么学Java

学会编程,而不是学会Java

15年编程生涯,资深架构师总结的7条经验
公众号:码农翻身

“码农翻身”公众号由工作15年的前IBM架构师创建,分享编程和职场的经验教训。

推荐一个叫掘金的开发者社区,很多技术干货,  我的文章也会在这里分享 :

掘金是一个高质量的技术社区,从 Swift 到 React Native,性能优化到开源类库,让你不错过互联网开发的每一个技术干货。长按图片二维码识别或者各大应用市场搜索「掘金」,技术干货尽在掌握中。


    关注 码农翻身


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册