`
hanhg
  • 浏览: 133448 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

疯狂的程序员-第四十四章

阅读更多
如今体检车数字化系统这个大CASE摆在面前,那DAP看来也不过尔尔,想到这里,绝影心中反倒充满了大无畏精神:反正DAP是让我做死了,一人做事一人当,大不了就是扣我奖金罚我加班,让我把这体检车数字化系统搞出来,什么指纹识别、照片认证,能加上去的高级技术都加上去,那还不领先个同类产品三五年,到时候,我绝影就牛B了!让暴风雨来得更猛烈些吧!

绝影做好了引颈就戮的准备,周总却说:“DAP的事情我们先放一放,现在有两个重要的问题我们先调研好,一是指纹识的相关资料,我想先征求小绝和小张的意见,二是这个CASE的设计,DAP的教训我们要吸取,要深刻总结,这个我想听听小绝的意见。”

听了周总的话,张厂长跃跃欲试地说:“据我所知,现在指纹产品主要有指纹识别芯片和指纹仪,前者要求我们自己开发指纹识别算法,但我们可以根据需要灵活选择产品,后者基本上已经是成品,我们只需要调用API在应用层上再开发就行了。我的意见是我们不如直接选择一款好的指纹仪,虽然价格要比指纹芯片高些,但是稳定、可靠,还能节省大把开发时间……”

不等张厂张说完,绝影打断他说:“我认为还是应该用指纹芯片,自己开发算法。指纹识别算法技术含量很高,属于核心技术,对于核心技术,我们应该自己掌握,否则以后会很被动。”

周总点点头道:“你们都说得有道理,这个我们再调研,不过我还是比较倾向小张的方案,毕竟在指纹识别算法方面,我们是没有技术积累的。上次DAP的设计我就实话实说了,是很失败的,这个小绝你要承认。这次我想问你,对这个CASE的设计,你有什么打算?”

周总一提DAP,绝影又觉得有点丢面子,在这种情况下,他拍着胸脯信誓旦旦地说:“周总,要是这个CASE让我来设计,我一定吸取DAP的教训,先好好做计划,做文档,我可以先做个设计方案,提交给你,你看了,认可了,再决定要不要让我来负责,如果你能把这个CASE交给我,我一定不会再让你失望。”

“好吧,那你先做个提纲吧,今天星期三,到星期五,还有两天时间够不够?”

绝影心中只想拿下这个CASE,当时心里根本就没时间这个概念,这时候你不要说给他两天,就是给他两个小时他都敢拍着胸口打保票,于是说:“当然没问题,周总这次您尽管放心。”

上次DAP设计失误绝影自认为它导致周总对自己的信任跌到了谷底,正如当美国经济不景气到谷底美国总统就想打仗,转移人们视线,正好这个时候萨达姆又冒了出来,你以为美国真是民主国家,你以为美国都是美国人们说了算,你以为布什不敢打你?不打你打谁?总之你伊拉克一个小国家,这个CASE总能摆平,你管我打你打得对不对,总之能完成CASE才是王道。

所以现在绝影也不考虑到底这个体检车数字化系统有多难,到底这个指纹识别算法有多难,先把CASE接下来再说,接下来才有机会证明自己,不接,就永远没有机会。



领了工资,燕儿下午去报了税就提前回了家,特意去买了猪蹄给绝影炖了他最爱吃的猪蹄汤,当汤端上桌子,本以为他又会露出惊喜地笑容,绝影却视而不见,机器人般一口一口往嘴里刨饭。一片好心碰了钉子,燕儿有点生气地说:“又在想工作,又在想工作,给你说了多少次,吃饭和睡觉的时候不许想工作。”

绝影回过神来,说:“这次情况特殊,有个大CASE,我要好好思考一下。”

“又是大CASE,你哪次做的不是大CASE?”

“不一样,我上次犯了错误,这次不好好证明下实力那邦人会看不起我!”

“谁敢看不起你?”

“我也不知道,总之会有人看不起我。你不懂。”

“是,我不懂,那你就不要跟我说。”

吃完饭,燕儿收拾好碗筷,说:“你就忙你的大CASE去吧,晚上我和同学去逛街,反正你也不管我。”

绝影爬在电脑上,头也没回,说:“去吧。”

忙了两夜,终于把设计提纲做好,用公司打印机打印出来,整整五页A4纸,绝影朝燕儿扬扬手中的纸,得意地说:“看,就是这个,终于弄出来了。”

“你那个有什么用?你天天晚上在家还加班,每天都做到两三点,还是拿那么多工资;人家张厂长每天在公司工作八小时,晚上回家上网聊天玩游戏陪女朋友,还是拿那么多工资,不知道你这几张纸到底有什么价值?”

“这个我知道,总之我工资也比张厂长高。”

“你算算,你每天在公司还加班,基本上八小时的班你要上十小时,回家从八点到两点又是六个小时,一天十六个小时,先别说工作量,就工作时间都是张厂长的两倍,可是你工资有他两倍多吗?再说公司其它新人,做老半天又做不出来个什么,你的工作量起码是他们的三倍四倍,可是你的工资有他们三倍四倍多吗?”

燕儿这么说,脸上带了一点怒气,绝影沉默了一会,突然严肃的说:“我知道,也许我付出比他们多三倍的努力,只能得到比他们多一倍的回报,但是如果我不付出这三倍的努力,连一倍的回报也没有。”

见绝影的面色很严肃,燕儿的语气又软了下来,低声说:“总之还是那句话,在公司,你不去做,有的是人来做,为什么你非要把什么事情都揽到自己怀里?”



绝影把设计提纲交给周总,周总的反应大大超过了他的预料,他说:“小绝啊,你这份设计提纲相当不错啊,我都没想到做得这么好,我觉得应该开个会,你把这份提纲向公司所有人讲解一下,让其它人也学习学习。”

绝影点点头:“嗯。我也正希望其它人可以领会到我的设计思想,以后CASE实施起来才容易沟通。”

站在讲台前,绝影是精神百倍,本来他就觉得自己是个教书的料小学的时候还一直希望成为一个教师,到高中的时候,自己还是学生,就代物理老师给同学讲过几节物理课,据说同学们反应还不错,以至于有些同学竟提出希望绝影同学来做物理老师。回想一下,当时讲的无非就是一个物体以多少多少初速度开始运行,加速度是多少,几分钟后,另外一个物体又以多少多少初速度多少多少加速度运行,问后面那个能不能追到前面那个,如果能追到,要多少时间。

在同学们看来,这一直是高中物理一个大难题,那物理老师在上面公式版书密密麻麻写了大办个黑板,同学们在下面还是听得晕头转向,老师又急得不得了,明明这问题的解答方法自己心中一片明了,在胸中酝酿了老半天,讲出来学生还是听不懂,真恨不得把他们脑袋上面敲个洞,来个醍醐灌顶。

绝影讲又不一样,这问题其实很简单,其实就是数学里面两个二次函数求交点的问题,把两个物体的运动描述成二次函数,简单一求,舍去负数解答案就出来了。再说物理里面求什么合外力,又是做受力分析又是画图草稿纸都用去三五张,其实拿数学的复数加减法来做就简单得不得了。

所以中国学校的教育就是死板,那数学从小学学到大学,从加减乘除学到导数微积分复变函数,按照学校的教法到底有多大用处,恐怕用得最多的也就是做生意算下几斤几两多少钱收多少找多少,其实数学的用处可大着呢。各个教材把自己的学问教得头头是道,就是不告诉你物理学里面的矢量就相当于数学里面的复数,就是不告诉你匀速圆周运动的轨迹可以用几何学来求解,归根结底,就是不告诉你这门学问到底有啥用处。

大环境如此,搞得写程序也如此,不管是学校里程序设计课程,还是社会上这样培训班那样电脑学校,都只管各自教各自的,学汇编就80x68,学C语言就TurboC,搞得最后大学C语言课程学完,连C语言能写Windows下窗口程序都不知道。最后写程序是教了,那教的是如何去写程序,根本不教你为什么要写程序,写程序能写些什么出来。

这次体检车数字化系统的设计,绝影的确吸取了不少DAP的教训,主要就是细化,把有可能遇到的问题尽量考虑全面,有些必须做的工作就一定要去做,不要怕麻烦。首先是UI,也就是用户界面,负责录入和检索体检人信息;然后是指纹识别模块,封装对指纹仪的操作;然后是VFW模块,负封装对摄像头的操作;然后是报告模块,负责将各个体检点的报告汇总并打印。这些都是数据终端。然后是ODBC接口,封装数据库操作。最重要的是数据管理模块,放到服务器上。不管是指纹图像、照片、报告还是录入的体检人信息,都把他抽象成数据,全部流向数据管理模块,数据管理模块再通过ODBC接口把数据送到数据库。检索的时候向数据管理模块发送指令,它从数据库中取到数据,再一一发给数据终端,由他们自己分拣属于自己的数据。最后再部署个消息服务器,各个工作站上配上消息客户端,工作站之间的通信,数据同步就靠它来完成。

所以对人来说,什么思维最重要,当然是抽象思维。狗也会做梦,甚至还会说梦话,但是狗会抽象思维吗?你能让狗把一堆人民币想像成一堆骨头吗?不能,既然只有人这种高等动物才会抽象,那就要把它发挥到淋漓尽致。你想要是登记工作站上照片也保存成JPG直接往数据库送,指纹也保存成JPG直接往数据库送,体检人信息也直接往数据库送那还不把工作站和数据库累死,一会数据又要同步,一会又要和其它体检点通信,这客户端还不知道要开发得多复杂。现在可好,只要把数据管理模块和消息服务器做得足够稳定,客户端上的开发基本上易如反掌尔!

绝影在讲台上讲得头头是道,边讲边画出结构图,数据流方向和事物流方向用箭头一一标注,整个系统简单明了又分工合作明确,他一边讲一边赞扬自己道:“不失为一篇佳作啊。”

整整花了两个小时,绝影终于说:“我要讲的就这么多。”

下面死一般沉寂。

周总终于站起来问:“小绝说的,大家能理解吗?”

于是才有陆陆续续的生意说:“嗯,嗯。”

周总说:“那么我再来讲两句。”

基本上周总就讲了几句总结性的话,讲了对这个CASE的展望,他说:“这个CASE做好了,公司今后两三年就不愁了。”总结陈词总是领导们喜欢的,管你下面的人讲得头头是道讲得天花乱坠讲得意义有多深远,结论性的东西还得领导来讲,可行与否还得领导来批示,某种意义上讲,一个CASE设计得好不好,不在于设计者认为他好不好,不在于同事们认为他好不好,也不在用户认为他好不好,而在于领导认为他好不好。

周总的意思,这个CASE由绝影来牵头基本上算定下来,或许是上次DAP设计的失误,周总还是对绝影或多或少有些顾虑,所以并没有像上次那样说全权由他来负责。不过对绝影来说这也足够了,在他看来,这世界上最幸福的事莫过于亲眼看着别人把自己的设想变成现实,你要明白,为什么T台上的模特虽然能够吸引众多的闪光灯和眼球,但是设计师总是最后出场,而且总是被这些美女模特们簇拥着出场。这就像修房子,虽然里面的一砖一瓦不知道凝结了多少工人的心血,但他们永远体会不到一座座高楼拔地而起的幸福和成就感,因为在他们眼中,只能看到一块砖或一片瓦,只有设计师,在他眼中看到的是整栋雄伟的大厦。

人呐,眼光放长远一些,看到的东西就更多一些,生活得也更有意义一些。

绝影走下讲台,望了望窗外,想:做程序员真好,可以写程序,更有机会做设计,才能体会到很多人无法体会到的幸福,我的高楼将从这里拔地而起。
分享到:
评论

相关推荐

    中文版Android程序员入门

    Android示例 - 第四章(4) 4 Android的几个示例 - 第四章(5) 5 第二章 下载和安装Eclipse总则 6 下载和安装Eclipse总则 - 第二章(1) 6 下载和安装JRE - 第二章(2) 7 下载和安装Eclipse - 第二章(3) 8 第三...

    Android程序员入门(中文版).doc

    Android示例 - 第四章(4) 4 Android的几个示例 - 第四章(5) 5 第二章 下载和安装Eclipse总则 6 下载和安装Eclipse总则 - 第二章(1) 6 下载和安装JRE - 第二章(2) 7 下载和安装Eclipse - 第二章(3) 8 第三...

    软件工程思想——经典搞笑版

    非常好看有趣、实用、经典的...第四章“可行性分析与需求分析”; 第五章“系统设计”; 第六章“C++ 面向对象程序设计”; 第七章“测试与改错”; 第八章“维护与再生工程”。 附录“大学十年”可以充当饭后的水果。

    C语言高级程序员编程指南

    第四章 函数 第五章 键盘操作 第六章 数学 第七章 文件、目录和磁盘 第八章 数组、指针和结构 第九章 DOS和BIOS服务 第十章 内存管理 第十一章 日期和时间 第十二章 重定向I/O和进程命令行 第十三...

    中文版Android程序员向导

    第四章 浏览Android SDK 第五章Android程序:Hello World! 第六章 使用命令行工具和Android模拟器 第七章 使用Intents 和电话拨号盘 第八章 列表,菜单和其它Views 第九章 使用手机的GPS功能 第十章 使用Google API...

    程序员编程艺术第一~二十七章集锦与总结(教你如何编程)by_July-带书签目录超清文字版

    程序员编程艺术第一~二十七章集锦与总结(教你如何编程)by_July-带书签目录超清文字版

    【高清完整pdf】高效程序员的45个习惯 敏捷开发修炼之道

    第1章 敏捷——高效软件开发之道 第2章 态度决定一切 1. 做事 2. 欲速则不达 3. 对事不对人 4. 排除万难,奋勇前进 第3章 学无止境 5. 跟踪变化 6. 对团队投资 7. 懂得丢弃 8. 打破砂锅问到底 9. 把握开发节奏 第...

    Android程序员入门

    第四章:浏览Android SDK 第五章:Android程序:Hello World 第六章:使用命令行工具盒Android模拟器 第七章:使用Intents和电话拨号盘 第八章:列表,菜单和其他Views 第九章:使用手机的GPS功能 第十章:使用...

    Turbo C高级程序员编程指南

    第四章 弹出窗口和错误报告 第五章 文件I/O 第六章 串函数库 第七章 高级指针和内存分配技术 第八章 Turbo C通用编程 第九章 目录实用程序 第十章 高级文件I/O 第十一章 Turbo C图形 第十二章 高级计划——多维文本...

    《Delphi程序员经验点滴桌面、网络编程实例集锦》光盘2

    《Delphi程序员经验点滴桌面、网络编程实例集锦》 王小华 编著 北京希望电子出版社 兵器工业出版社 目录: 第一章 Pascal语言基本功 第二章 控件的应用与改造 第三章 应用程序与窗口 第四章...

    《Delphi程序员经验点滴桌面、网络编程实例集锦》光盘1

    《Delphi程序员经验点滴桌面、网络编程实例集锦》 王小华 编著 北京希望电子出版社 兵器工业出版社 目录: 第一章 Pascal语言基本功 第二章 控件的应用与改造 第三章 应用程序与窗口 第四章...

    程序员面试攻略 电子书

    第四章 树和图 第五章 数组和字符串 第六章 递归算法 第七章 其它程序设计问题 第八章 与计数、测量、排序有关的智力题 第九章 与图形和空间有关的智力题 第十章 计算机基础知识 第十一章非技术问题

    Microsoft visual c++ 6.0 programmer's Guide 程序员指南

    第四部分 ActiveX控件 第8章 使用ActiveX控件 背景知识简介 控件包容器 在包容器和 ActiveX控件之间进行通信 编写包容器应用程序 在没有对话编辑器的情况下工作 第9章 使用 MFC编写ActiveX控件 用于创建 ActiveX控件...

    中文版Android程序员向导.pdf

    第四章 浏览 Android SDK . 第五章 Android 程序: Hello World! 第六章 使用命令行工具和 Android 模拟器 第七章 使用 Intents 和电话拨号盘 第八章 列表,菜单和其它 Views 第九章 使用手机的 GPS 功能 . 第十章 ...

    软件工程思想-讲述软件开发和做程序员的道理

    第四章 可行性分析与需求分析 4.1可行性分析的要素 4.1.1 经济 一、成本——收益分析 二、短期——长远利益分析 4.1.2 技术 4.1.3 社会环境 4.1.4 人 4.2 可行性分析案例——投资软件公司失败的教训 4.2.1可行性...

    程序员的职场成长 (程序员必看)

    44研发人员的第一份工偛 45先就业还是先择业 46第一份工作的意义和法败 48完成从学习者到社会职业人的转变 48开放的态度迎接现实 49找对方法从小处着觉 50坚持向无字书学习 51试用期程序员应该了解的事儿...

    MyEclipse.6.Java.开发中文教程(1-10章).pdf 有详细的目录(书签)

    第四章则介绍如何用 MyEclipse 管理数据库的;第五章开发基 于 JDBC 的应用;第六章则介绍如何在管理应用服务器;第七章在四五章的基础上介绍 Hibernate 的快速开发;第八章在第六章基础上介绍基础的 Web 应用(JSP...

    Android程序员入门(中文版)

    第四章15 Android示例 Android的几个示例 Android工具 Android APIs 第五章Android程序:Hello World! 21 第六章 使用命令行工具和Android模拟器 35 第七章 使用Intents 和电话拨号盘 53 第八章(5) 89 第...

    《高质量程序设计指南》林锐.rar

    第四章 C++面向对象程序设计方法概述 第二部分 C++/C编程规范 第五章 文件结构 第六章 程序的版式 第七章 命名规则 第八章 表达式与基本语句 第九章 常量 第十章 函数设计 第十一章 内存管理 第十二章 C++函数的高级...

Global site tag (gtag.js) - Google Analytics