英文原文:A Developer's Birthday Wish List
上周是 Sandro Mancuso 的生日,作为一名开发者,他列出了自己的生日愿望清单,我们一起来看下:
1. 我希望开发者有权去做任何他们想做的事情,包括令人满意的实际业务需求以及获取用户肯定。
2. 我希望开发者为他们所做的决定负责,而不是因为别人的决定才负责。
3. 我不想看到开发者参加没完没了的会议,他们试图去证明为什么不该使用被象牙塔架构定义的技术或者架构。事实上,象牙塔架构应该是一种已经灭绝的物种。
4. 我希望开发者有知道事实真相的权利。如果因为政治原因所做的某个决定,请告之我们。尽管我们依然会不高兴但至少会发现它更容易消化。
5. 尽管我们很乐意去证明和解释每一个技术决定,包括开发团队,但是我们并不希望开发团队以外的人参与技术决策。
6. 我不想看到开发者和技术人员一起共事,以为他们的任务是定义某个项目的体系架构。我希望开发者和那些能够注重把问题简单化、满足功能需求以及非功能需求的人员打交道。在没有编写软件的情况下,如果我们能达到这一点,那就最好不过了。但这并不意味着快速和不整洁。
7. 如果我们需要编写软件来解决业务问题,我希望开发人员制定解决方案,积极拥抱变化,企业绝不会因技术无能而被拖垮。
8. 我希望开发者为企业创建的应用能够带来很好的效益。我不想看到某些应用在几年之后就被淘汰了,而成了一堆废品。维护成本如此之高以致于重新进行编写。
9. 我希望能与那些热情饱满且真正关心他们做什么的那些开发者共事。可以每天和同事们进行交流并且从他们身上能学到新的知识;同样的他们也能从我的身上学到新东西。
10. 我想和那些(不只是开发者)积极拥抱变化并提供业务敏捷的人员共事。我不想让自己每次都感到尴尬还得向股东们汇报,即使是小小的变化(由于垃圾应用/架构/进程造成的),他们也需要几个月的时间来完成。
11. 我想在这样的一个地方工作,在这里我们可以选择最好的技术或者工具;在这里没人告诉我们什么不能做,因为这里的人不具备这样的技能,他们需要接受培训。
12. 不用告诉我们需要创建某个新的特性或者是某个完全新的应用使用特定的技术,如果我们只是为了满足业务需求,对此将不甚感激。我很想看到开发者能博得大家的信任,相信我们能够提供最好的解决方案。
13. 我很想看到有着官僚机构背景下的这些人,因为他们给进程带来的危害而受到谴责。
14. 我很想看到那些过着朝九晚五的员工被那些为数不多的热情、才华横溢、高薪以及被授权的专业人士取代。
15. 我希望所有的公司能够认可把软件开发当做一个完整的职业生涯,而不是只当做管理的初始步骤。是的,这是个愚蠢的做法。
16. 我希望为软件项目支付费用的组织能够理解 Software Craftsmanship 原则,最重要的是,拥有真正的软件工艺人员来负责项目。