- 我是一个线程(修订版)
- 我是一个 Java class
- Javascript:一个屌丝的逆袭
- Java : 一个帝国的诞生
- JSP 一个装配工的没落
- TCP/IP 之 大明王朝邮差
- TCP/IP 之大明内阁
- TCP/IP 之蓟辽督师
- CPU 阿甘
- CPU 阿甘之烦恼
- CPU 阿甘:函数调用的秘密
- 我是一个网卡
- 我是一个路由器
- 我是一个进程
- 我是一块硬盘(上)
- 我是一块硬盘(下)
- 我是一个键盘
- 张大胖的 socket
- 张大胖学递归
- 学习面向对象的令狐冲
- 张大胖学数据库
- 数据库村的旺财和小强
- 小李的数据库之旅(上)
- 小李的数据库之旅(下)
- 漫画:什么是机器学习?
- 那些烦人的同步和互斥问题
- IE 为什么把火狐和 Chrome 给打伤了?
- 对浏览器村的第二次采访
- 节约标兵 IE 的自述
- EMail 诞生记
- Email 诞生记(下)
- Http 历险记(上)
- Http 历险记(下)-- Struts 的秘密
- 动物王国的面向对象
- 冯·诺伊曼计算机的诞生
- Http Server : 一个差生的逆袭
- 张大胖的加法器
- 从 1 加到 100:一道简单的数学题挑战下你的大脑
- 编程语言
- Javascript:一个屌丝的逆袭
- 计算机语言之战
- 我和编程语言的爱恨情仇(上)
- 我和编程语言的爱恨情仇(下)
- Android 为什么选择了 Java
- iOS 为什么选择了 Object-C?
- Basic : 一个老兵的自述
- Node.js : 我只需要一个店小二
- 命令式编程 vs 声明式编程
- 编译还是解释?
- 程序人生
- “架构师"小赵
- 师兄说
- 师姐说
- 小王的架构师之路
- 小李的版本管理系统
- 小超穿越记
- 小李的 Build 之路(上)
- 小李的 Build 之路(下)
- 张大胖改 Bug
- 我的编程之路--大学趣事
- 码农小王的一天
- 小李在外企
- 张大胖的需求估算
- 从厨师到码农
- 聊一聊那些神一样的程序员们(上)
- 聊一聊那些神一样的程序员们(中)
- 聊一聊那些神一样的程序员们(下)
- 谁是互联网之父?
- 一个价值百万的创业教训
- 让自己与众不同 - 提升工作的价值
- 看看你的“易燃性”
- 从无聊的工作中寻找价值
- 什么样的学生适合报考计算机?
- 谈谈程序员的职业方向(上)
- 谈谈程序员的职业方向(中)
- 谈谈程序员的职业方向(下)
- 谈谈培训班的作用
- 码农需要知道的“潜规则”
- 学习编程的加速度
- 码农在工作中的必备能力
- 码农和英语
- 老司机经验
- 假如时光能够倒流, 我会这么学习 Java
- 假如我是计算机系老师
- 学会编程, 而不是学会 Java
- 从增删改查中突围
- 抽象:程序员必备的能力
- 懒就一个字
- 编程的自学方法
- 小王买房记
- 从一道面试题谈谈一线码农应该具备的基本素质
- 想写框架的看过来
- 苹果手机变砖头以后
- 如何快速的学习一门技术?
- 唯一不变的是变化: 谈谈微信应用号
- 什么是企业应用?
- 勿以浮沙筑高台
- 为什么敏捷开发难于成功?
- localhost vs 127.0.0.1
- GitHub/Stackoverflow 找工作时有什么用?
- 动词 or 名词 :这是一个问题
- 如何选择入行语言
- 有时候,沉默是金
- 零 Bug 的代码是怎么炼成的?
- 浮点数为什么不精确?
- 文章错误大全
- Open Source--不要为了开源而开源
- 一不留神,代码就腐化了
- 先做个“键盘侠”, 再来写程序
- 不加断点调试的程序员是好程序员
- 码农必备技能:烂代码的处理之道(上)
- 码农必备技能:烂代码的处理之道(下)
- 学习数据结构有用吗?
- 从现在开始,丰富你的简历
- 那些永不过时的书,你看过几本吗?
- 学好编程必备的一个品质你知道吗?
- 你最爱的 Java
- 搞懂了这几点,你就学会了 Web 编程
- Spring 的本质系列(1) -- 依赖注入
- Spring 本质系列(2)-AOP
- 三层架构和 MVC 那点事儿
- Java 帝国之拨云见日识回调
- 小张的 Duck Typing
- JDBC 的诞生
- JDBC 后传
- 一个不安分的 JDBC 驱动
- Java 帝国之 Java bean (上)
- Java 帝国之 Java bean(下)
- Java 帝国之函数式编程
- Java 帝国之函数式编程(下)
- 关于 Java 初学者需要知道的 10 件事
- JUnit 你不知道的那些事儿
- 圣诞礼物:Java EE 的历史
- Java EE 读书指南
- 给小白的 Java EE 指南
- 给小白的 Java EE 指南(2)
- 给小白的 Java EE 生存指南(3) : XML
- 给小白的 Java EE 生存指南(4) : 一只叫 Tom 的猫
- 给小白的 Java EE 指南(5) : AJAX
- 给小白的 Java EE 生存指南(6) :Java 反射
- 闲聊
- "饿了么"初体验
- 来自大脑的控诉
- 一个高中生是怎么玩自媒体的?
- 尝试 分答
- 到底应不应该上培训班?
- 自学编程中遇到问题怎么办?
- 据说 99%的初级程序员看完后都不迷茫了
- 一行代码引发的“血案”
- 对一个死锁问题的思考
- 通过外包进入名企
- 请开往十年前的今天
- 为什么自学中最好有个师傅指导一下?
- 这个网站值得你花时间投入
- 为什么你无法坚持自学编程?
小超穿越记
“ 本来想写一个“宏大”的穿越故事, 写到中间就发现黔驴技穷, 差点烂尾...... 这是小超来到帝都工作的第 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 填空人员吧。
更重要的是, 自己没有一个方向是精通的,没有一个方向是能深入的理解背后的原理,所以无论是任何有用的工具和框架,自己都没有能力写出来。
小超醒了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论