- 浏览: 381891 次
文章分类
最新评论
-
小尜:
写的很详细,也很简单,一看就懂。多谢啦。
关于工厂模式和spring的IOC -
fjjiaboming:
代码排版!!!!!
JDBC事务和JTA (XA)事务 -
fjjiaboming:
排版有问题吗? 望交流.
做人有三个层次 -
fjjiaboming:
看来数据库连接池 必须用JNDI 注册在容器 , 对吗?
JDBC事务和JTA (XA)事务 -
fd1803:
SSL工作原理:http://www.wosign.com/B ...
SSL(Server Socket Layer)简介
最近读了一篇非常有趣的文章,原文是英文,和大家共享,其大概意思是:
管程序员就象是养蜂人管蜜蜂一样。养蜂人怎么管的呢?养蜂人其实并不能和蜜蜂沟通,谁会说“蜂语”啊。但他们可以把蜜蜂放在一个舒适的蜂房里,这样他们自动就会采蜜了,你顺手就可以拿走蜂蜜。:)
对程序员是类似的,把他们弄到一个舒服的环境里:工资比他们想要的高,以至于不会用了(当然,比你的预算还是要便宜);这些蜜蜂会嘤嘤嗡嗡自己形成社会,程序员会自己评价自己,就象沉迷在打游戏里的家伙一样,谁的话都听不进去,就只愿意写好的软件 - 这和艺术家和战士一样。
软件公司怎么失控的和完蛋的?通常是来了一个有个性的管理人员,这老兄一看,这帮程序员怎么这么 …… 不顺眼啊?脏兮兮,乱糟糟,不配合,他们看起来是多无趣的一群人啊!最糟糕的是,他们还笑话你!于是对他们进行管理 …… 这下规范了,但是,程序员们被伤害了,他们被要求要参加会议,做计划,写报告,严格按照流程,千万千万不要去动别人的代码!程序员觉得自己就象过起了外星人的生活 …… 于是,最好的程序员走了,有的开始怠工,甚至破坏 …… 蜂房毁了。管理者舒服了,因为好像事情开始受控了,大家开始打领带了;但是 Bug 开始成堆出现,市场丢失,最后,关门大吉。
英文原文:
Software - How Software Companies Die
By Orson Scott Card
The environment that nutures creative programmers kills management and marketing types - and vice versa. Programming is the Great Game. It consumes you, body and soul. When you're caught up in it, nothing else matters. When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already. But you don't care, because your program runs, and the code is fast and clever and tight. You won. You're aware that some people think you're a nerd. So what? They're not players. They've never jousted with Windows or gone hand to hand with DOS. To them C++ is a decent grade, almost a B - not a language. They barely exist. Like soldiers or artists, you don't care about the opinions of civilians. You're building something intricate and fine. They'll never understand it.
BEEKEEPING
Here's the secret that every successful software company is based on: You can domesticate programmers the way beekeepers tame bees. You can't exactly communicate with them, but you can get them to swarm in one place and when they're not looking, you can carry off the honey. You keep these bees from stinging by paying them money. More money than they know what to do with. But that's less than you might think. You see, all these programmers keep hearing their parents' voices in their heads saying "When are you going to join the real world?" All you have to pay them is enough money that they can answer (also in their heads) "Geez, Dad, I'm making more than you." On average, this is cheap. And you get them to stay in the hive by giving them other coders to swarm with. The only person whose praise matters is another programmer. Less-talented programmers will idolize them; evenly matched ones will challenge and goad one another; and if you want to get a good swarm, you make sure that you have at least one certified genius coder that they can all look up to, even if he glances at other people's code only long enough to sneer at it. He's a Player, thinks the junior programmer. He looked at my code. That is enough. If a software company provides such a hive, the coders will give up sleep, love, health, and clean laundry, while the company keeps the bulk of the money.
OUT OF CONTROL
Here's the problem that ends up killing company after company. All successful software companies had, as their dominant personality, a leader who nurtured programmers. But no company can keep such a leader forever. Either he cashes out, or he brings in management types who end up driving him out, or he changes and becomes a management type himself. One way or another, marketers get control. But...control of what? Instead of finding assembly lines of productive workers, they quickly discover that their product is produced by utterly unpredictable, uncooperative, disobedient, and worst of all, unattractive people who resist all attempts at management. Put them on a time clock, dress them in suits, and they become sullen and start sabotaging the product. Worst of all, you can sense that they are making fun of you with every word they say.
SMOKED OUT
The shock is greater for the coder, though. He suddenly finds that alien creatures control his life. Meetings, Schedules, Reports. And now someone demands that he PLAN all his programming and then stick to the plan, never improving, never tweaking, and never, never touching some other team's code. The lousy young programmer who once worshiped him is now his tyrannical boss, a position he got because he played golf with some sphincter in a suit. The hive has been ruined. The best coders leave. And the marketers, comfortable now because they're surrounded by power neckties and they have things under control, are baffled that each new iteration of their software loses market share as the code bloats and the bugs proliferate. Got to get some better packaging. Yeah, that's it.
发表评论
-
[软件人生]什么是程序员
2008-09-06 19:18 1076一个大专学历想做程序员的朋友和我的对话,很短,我觉得,至少能说 ... -
世上没有B/S系统,只有B系统和S系统. (转载)
2007-10-28 23:02 1113世上没有B/S系统,只有B ... -
从原则出发的软件开发(转载)
2007-06-24 18:57 1163原文:http://gocom.primeton.co ... -
关于java 的methode的内存区域问题
2007-06-12 14:49 1353用java这么长时间了,对于static method 大家都 ... -
java中静态方法和非静态方法覆盖的区别
2007-06-12 14:07 4680首先我们提供两个类,基类为Parent,派生类为Child。在 ... -
关于继承初始化的精典试题 (转载)
2007-06-07 15:50 1190一、 class First { void tt() { ... -
关于synchronized
2007-05-30 21:17 1096synchronized 关键字,它 ... -
关于Connection的问题
2007-05-29 09:48 1127最近在看Datasource时候想到,datasource是数 ... -
0碎的知识
2007-05-26 15:57 10661.软件设计模式针对的是代码片段的复用,而SOA实施中讨论的是 ... -
关于工厂模式和spring的IOC
2007-05-23 18:35 7928原文转之: http://gocom.primeton.com ... -
appfuse中/mainMenu.html的定向问题
2007-05-08 22:26 1521找了半天,终于找到了 : http://blog.matr ... -
JSTL介绍
2007-05-02 14:07 2835使用JSTL改进JSP来简化网 ... -
Robbin推荐的java类书籍
2007-04-30 20:54 1257http://www.iteye.com/article/52 ... -
候捷谈Java反射机制
2007-04-08 14:19 1181Java反射机制<o:p></o:p> ... -
JDBC事务和JTA (XA)事务
2007-04-03 21:10 21828事务简介 一般情况下,J2EE应用服务器支持JDBC事务、 ... -
inline函数的用法小议(转载)
2007-03-14 15:22 8463inline函数的用法小议( ... -
关于java的JIT知识
2007-03-14 13:42 15895刚看Practical java ,对jit ... -
当前Java软件开发中几种认识误区
2007-03-12 21:07 1235当前Java软件开发中几种 ... -
在websphere上安装动态高速缓存监控器
2007-02-07 20:49 3515动态高速缓存的安装和配置 这一节探讨如何安装和配置动态高速缓存 ... -
SSL(Server Socket Layer)简介
2007-02-07 19:52 2090SSL(Server Socket Layer)简介 在网络 ...
相关推荐
K清风易道文档管理软件哪个好?易道文档管理软件解决方案.docxK清风易道文档管理软件哪个好?易道文档管理软件解决方案.docxK清风易道文档管理软件哪个好?易道文档管理软件解决方案.docxK清风易道文档管理软件哪个...
pdf软件哪个好?pdf软件哪个功能最强大?.pdf
pdf图片压缩用什么软件好用?图片压缩软件哪个好?.pdf
软件测试课后习题答案。软件测试工作与软件开发模型息息相关,在不同的软件开发模型中,测试的任务和作用也不相同,因此测试人员要充分了解开发模型。第一章 软件测试基础。软件从出生到消亡的过程称为............
什么是数据库软件以及相关的知识介绍????????
对BIM是算量软件?算量软件是BIM?还不明白的人请看
软件公司员工管理制度---技术部软件公司员工管理制度---技术部
平面设计软件有哪些?.pdf
傻妞软件是什么?.docx
软件公司劳动合同软件公司劳动合同软件公司劳动合同软件公司劳动合同软件公司劳动合同
plc编程软件有哪些?7款PLC编程软件介绍.pdf
习题2 假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。你打算采用哪种软件生命周期模型,为...
免费文章翻译软件有哪些?有翻译ppt文档的软件吗.pdf
在线作图的软件有什么?制作流程图的工具哪个好用?.pdf
GIF录屏软件有哪些?.docx
汽车美容管理软件如何选择?汽车美容管理软件解决方案
豆瓣营销软件有哪些?主要功能是什么#豆瓣发帖#豆瓣发帖软件#顶贴软件脚本
pdf压缩软件哪个好?这个技巧太神奇了!.pdf
软件公司商业计划书,为想在互联网软件开发创业的人提供的创业计划书。
什么是软件需求?什么是软件需求管理? 软件需求包括哪些层次?软件需求根据FURPS+模型是如何来分类的? 软件需求开发包括哪四个阶段,在这四个阶段执行哪些活动? 什么是软件需求规格说明?应如何编写?。 什么是...