这是一本关于软件管理的随笔文集,一本无论在任何方面都会让你受益颇多的休闲之作。它被冠以软件管理方面“NBA教程”的称号,荣获第15界
JOLT大奖!想知道其中的精彩吗?一起来体会吧!
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | JOEL说软件 |
分类 | |
作者 | (美)斯珀斯凯 |
出版社 | 电子工业出版社 |
下载 | |
简介 | 编辑推荐 这是一本关于软件管理的随笔文集,一本无论在任何方面都会让你受益颇多的休闲之作。它被冠以软件管理方面“NBA教程”的称号,荣获第15界 JOLT大奖!想知道其中的精彩吗?一起来体会吧! 内容推荐 这是一本介绍软件管理的小品文集。全书分为45章,每章就是一个独立的专题或者知识点。本书内容十分丰富全面,小到项目负责人制订进度表,大到软件执行总裁提出富有竞争性的战略,都在本书的介绍之列。尽管内容很多,但事例驱动的写作方式,奠定了本书在可学性与可用性方面明显的优势。 本书从不同侧面满足了软件开发人员、设计人员、管理人员及从事软件相关工作的人员的学习与工作需要。 目录 第一部分 位与字节:编程实践点滴 一 语言的选择 /2 二 深入底层 /4 三 JOEL测试:改进代码的12个步骤 /14 四 每一位软件开发人员必须、绝对要至少具备UNICODE 与字符集知识(没有任何例外!) /27 五 轻松写就功能规格说明书 第1节:为什么烦心? /38 六 轻松写就功能规格说明书 第2节:什么是规格说明书? /44 七 轻松写就功能规格说明书 第3节:但是……如何? /54 八 轻松写就功能规格说明书 第4节:技巧 /58 九 轻松制订软件进度表 /65 十 每日连编是朋友 /75 十一 难伺候的故障修复 /81 十二 软件开发中的5个世界 /87 十三 稿纸原型开发 /94 十四 不要被太空架构师所吓倒 /96 十五 开火与运动 /100 十六 人员技能 /一104 十七 源于计算机学科的三个错误思想 /109 十八 二元文化 /4 十九 自动获取用户故障报表 /120 二十 面试游击指南 /132 二十一 重金激励害多利少 /145 二十二 不配备测试人员的五个首要(错误)原因 /149 二十三 任务换人有害无益 /156 二十四 绝不去做的事情,第一部 /160 二十五 冰川下的秘密 /165 二十六 漏洞抽象定律 /172 二十七 程序设计界的Lord Palmerston /178 二十八 评测 /185 第三部分 Joel对常态问题的遐想 二十九 Rick Chapman解读愚昧 /188 三十 在这个国家狗是干什么的? /193 三十一 作为哼哈二将,只管去做事 /198 三十二 两个故事 /204 三十三 巨无霸麦当劳与天才厨师Jamie Olivei /209 三十四 没有什么像IT看起来那么简单 /214 三十五 提防非自主开发综合症 /218 三十六 策略I:BEN&JERRY公司与AMAZON /222 三十七 策略Ⅱ:鸡与蛋问题 /230 三十八 策略III:让我回去! /237 三十九 策略IV:大件与80/20神话 /42 四十 策略V:公开源代码的经济因素 /246 四十一 墨菲法则肆掠的礼拜 /254 四十二 微软公司是如何败北API之战的 /258 第四部分 对.NET稍多的评说 四十三 微软精神失常了 /276 四十四 我们的.NET对策 /282 四十五 请问,我可以使用连接程序吗 /286 第五部分 附录 附录A 很好的问题 /290 试读章节 在这个国家狗是干什么的? 2001年5月5日,星期六 我们是多么幼稚啊! 我们一直认定:Bezos纯粹是唯利是图的,要不然他们为什么不在底线上尽情卖弄呢? 大概就是在去年这个时候,第一波大的dotcom失败开始冲击着新闻报道。Boo.corn与Toysman.com.就在其中。“多快好省”的心理不能发挥作用了。Dockers的500位31岁的员工发现,仅仅抄袭JeffBezos不称其为商业计划。 Fog Creek在过去的开头几个星期里感受到一种很奇怪的平静。我们正在对CityDesk的完工进行最后的冲刺。虽然我愿意告诉你关于CityDesk的一切,但是你得等一等。我需要先讲一点狗食方面的内容。 狗食? 上个月Sara Corbett向我讲了一些关于“遗失的孩子们”的事情,在8—18岁之间离开家园的苏丹难民被迫进行从苏丹到埃塞俄比亚,再到苏丹,再到肯尼亚的千里长途跋涉。一半的人在旅途中会因为饥饿、干渴或鳄鱼的袭击而失去生命。有一些人会得到救援,而在隆冬季节辗转到达位于美国北达科它州的法戈等地。 “灌木丛中有狮子吗?”一个乘坐着轿车从机场去新家的人问到。这是后来在超市里出现的一幕: 彼得拍了一个我的肩膀。他手里拿着一罐清真狗食。“对不起,打扰一下,萨拉人,你能告诉我这是什么吗?”在他后面,宠物食品从地板上几乎一直堆到天花板。“哦,那是喂狗的。”我漫不经心地敷衍着那个看起来在过去八年里一直在吃麦片粥的人。“呵,我知道了”,彼得说着从架子上换了一罐,感到非常满意。他推着购物车走了几步,然后又折身回来很怪异地看着我。“告诉我,”他问道:“在这个国家狗是干什么的?” 狗……,嗯,彼得,法戈有充足的食物供应,连喂狗的食物也有。 这是一个不景气的年份。 哎,一开始就让人感到惊讶。我们一窝蜂似地挤进B2B、B2C与P2P,就像一个幸福的家庭星期日到郊外新鲜市场去购买农家小菜一样。不过,请等一下,这甚至还不是最有趣的地方。最现眼的是眼睁睁地看着最糟糕的商业计划遭到挫败,比如它们的股票从316跌到3/16。傻眼了吧,新经济的鼓噪者们!啊,不错!哈,妙!当“连线”杂志再次表明,只要在封面上放点什么,这样的事情准保又会在短短的几个月以内重新上演。 至于作为这样的新经济事物,“连线”杂志确实是对它吹了牛的,因为在多年吹嘘说第六感官与算命公司如何如何,以及PointCast将怎么取代Web2(哦,等一下,PointCast确实已经在1997年3月取代了Web)之后的当时,他们应该已经清楚他们的封面对于任何技术或者公司与实体来说都不啻是死亡之吻。但是,不管怎么说,他们都是在勾魂而不仅仅是将“新经济”放在封面上,他们钟爱将整个该死的问题都归结为“新经济”产物’,于是把NASDAQ直线下跌一事也只看做是一位羞怯的人在学驾驶飞机。 不过,拿他人的不幸来供我们消遣的时光只能到此为止了。虽然目前市场不过是不景气,并且我知道这不是官方认可的普遍状况,但我还是感到心情沉重。这不是因为如此众多冒昧上马的项目泡了汤,而是因为时代精神正在趋于沉沦。时至今日,我们只得吃狗食而不是山珍海味了。 这就是我们正在做的事情,因为生活还得继续过下去。尽管人人都皮包骨头地徘徊在十字街头为他们曾经奋斗的事业忧伤,以及因为SockPuppet.com股票选购权的事情而费心劳神,但是生活总是要继续下去。同样,产品的开发周期必须走下去,我们这些Fog Creek人正要走到一个处于产品开发周期中不得不吃狗食的当口。如此说来,我们得暂时当一下“狗Creek软件”。 “吃自己的狗食”是一个离奇有趣的名词,是我们计算机产业界用于称谓切实使用自己产品的过程。我已经忘记了它是如何很好地发挥作用的,直到一个月之前当我在家里连编CityDesk(心想着只有三个月就要交货了),而试图建立一个关于该产品的网站时为止。 呸!有几个软件故障就似乎让我不能继续下去了,因此我只得在往前走之前先修复它们。我所做的测试包括小心翼翼地拉下每个菜单看是否能够正常工作,这都没有将那些让产品所需要的功能不能浮现的拦路虎暴露出来。试着去使用该产品,就像用户要做的那样,只几分钟就发现了那些拦路虎。 并且,这还不是全部。作为我来说,甚至连相关功能都还没有试验过,就开始不声不响地试图去建立一个简单的网站一一我在星期日下午找出了45个软件故障。对于不怎么勤快的我来说,再去花另外两个小时以上的时间去干这样的事情是不大可能的。我甚至除了对产品的最基本功能之外不想再试图做任何事情。 星期一早晨去上班,我将开发队伍集中在厨房里谈话,告诉他们前一天找出的软件故障的情况。(客观地说,这里面的许多故障实际上算不得故障,只不过是用起来不如应该提供的操作手段那样方便而已。)接着,我建议说,每个人都应该使用CityDesk至少创建一个正规的网站,以期查出更多的软件故障。这就是“吃自己的狗食”的意义所在。 下面是你可以看到的事物类型的一个典型实例。 我料想许多人会试图通过拷贝与粘贴 HTML 代码来把手头的Web页面导入CityDesk之中。这虽然可以很好地工作,不过当我试图从“纽约时报”网站上导入一幅逼真的在线页面时,我花了整整一天去耐心地编辑HTML,找出所有的IMG链接(指向外部的图片),从站点上下载图片,将这些图片导入CityDesk之中,以及调整IMG链接以指向内部图片等。虽然难以置信,但该网站上确实有一篇文章大约包含65个指向35个不同画面的IMG链接,其中有一些是使用Web浏览器很难下载的单像素分隔条。同时,CityDesk有一个很滑稽的强制性动作用于内部自动将导入的图片名称变为一个自成规范的编号,并且连查出编号表示什么的途径也不提供。因此,说长也好,说短也好,我整整用了一天的时间才将一幅画面导入CityDesk之中。 由于感到有点灰心丧气,我出去在花园里锄了一会儿杂草。 (在我又恢复了体力和心态以后,我甚至不知道该如何去舒缓压力。谢天谢地,我们再经不起去干美化环境的活儿了。)而这是最让我闹心的时候。嗨,我是一个程序员!如果将用于导入页面与调整图片的时间放在编写程序上的话,我一定能够写出一个可以自动去干这件事情的小程序!实际上,我写该小程序所用的时间可能更短。现在,我导入一个页面只花大约半分钟的时间而不是一天,并且基本上不会出错。 真绝! 这就是你为什么吃自己的狗食的原因。 在Michael开始自行导入一些网站时,他发现大约10个我错误地留在其中的软件故障。举例来说,我们发现一些站点使用一些在导入图片时,因为含有问号这种虽然在URL有效却是不合法文件名元素的复杂名字来命名图片,从而不能在导入图片时实现名字的转换。 时常,你去下载软件却不知道它是如何糟糕,或者完成该软件试图完成的非常简单的任务是多么困难。所有这一切都是因为该软件的开发人员并不使用它的缘故。 我经历过一个吃狗食未能成功的更为可笑的例子。你能想像得出Juno服务热线内部使用的是什么样的电子邮件吗? (如果你还不是很清楚的话,我得说我为Juno客户队伍工作过几年的时间。) 嗯,你猜中Juno了吗?抑或认为那是我们推出的产品? 不。包括总裁家人在内的许多人都接受它的服务。我们之中的另外175个人使用Microsoft Outlook。 这不是无缘无故的。Juno客户软件并不仅仅是一个大型的电子邮件客户,我们用了两年的时间致力于实现的惟一事情就是找到显示广告的更好途径。我们当中的许多人认为假如我们要使用该产品,那么就应该把它做得更好,以避免我们自己难受。总裁非常执著地要我们在六个不同地方即时显示插播广告,直到他回到家里取出六条插播广告说:“你们知道不?也许这只是两条插播广告!” 美国在线服务公司以近乎狂热的速度在吸收着客户,部分原因在于它比Juno提供了更好的用户经验,而我们甚至对此一无所知,因为我们没有去吃自己的狗食。我们不吃自己的狗食,因为它令人厌恶,并且由于管理方面的功能障碍我们就是没有改进它,同时至少让它吃起来是可以忍受的。 不管怎么说,CityDesk开始在许多方面变得好起来。我们已经修复了所有发现的故障,还找出了许多另外的故障并修复好了。我们正在添加一些以前遗漏的显而易见是必要的功能,同时,离分发产品的阶段是越来越近了!哇!谢天谢地,我再也用不着跟37个公司展开竞争了,它们每个公司都在VC上投入了2500万美元,用于让人们免费使用自己的产品来相互发布问候语而将广告做得铺天盖地,以此来挤兑我们。在后新经济时代,人人都在力图搞清楚他们到底能够在多大程度上侥幸滑过去。在后新经济方面不会出现什么毛病,只要你足够睿智就成。 不过,所有关于“.com沉迷”的没完没了的消息都更多地说明了一点,那就是商业出版单位的编辑们是多么缺乏创造性。很抱歉,fuckedcompany.tom曾经滑稽地表演了一个月左右的时间,现在它落得个可怜兮兮的境地。我们会通过倾听客户的声音与品尝自己的狗食而致力于改进我们的产品并集中精力关注商业需求,而不是在全国飞来飞去以募集更多的风险投资。P193-197 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。