`
dingst
  • 浏览: 2248 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

敏捷的程序员才是程序员——谈快速响应需求

阅读更多
敏捷软件开发,是我在06年读硕士的时候正式接触的概念,I Love it.当我第一次听说这个东西的东西,我立刻被他迷住了。在林锐的《大学十年》中,他说他母亲观察他有没有退步,有两个法宝:1)有没有发胖,如果胖了说明用功不够;2)说话快不快,快说明思维仍然敏捷。梁肇新曾经说:快是一种本质,东方不败为什么强,因为他快,快的所有人都赶不上它。敏捷的程序员是快的,XP甚至提出,当项目接近末尾的时候,都不要害怕变化,要拥抱变化。
邵老师曾经说当我们面临项目压力的时候,我们是很难做到拥抱变化的。是的,没有人喜欢变化。所以我们说约定比规定好。因为约定可以避免沟通的麻烦。但是,对于一个技术狂热分子,很有可能喜欢变化——因为他总是喜欢做新东西。这个人可能不适合当领导,因为他不喜欢做重复的东西。一个CRUD做一次还行,做多了,就想想有没有偷懒的方法。但是对于技术型的人,还是比较喜欢做新东西,原因很简单——好玩。
今天上午项目公司提了新需求:批量添加规章的水印,水印能够提供自定义功能。上午9:00提出,中午修改软件,下午3:00上线。运行效果不错,心情很好,自己做的东西帮助别人解决问题是非常快乐的一件事情。
当我们开始做项目的时候,就要依靠快速的实现用户需求来实现价值,SAS(Software as Service),软件业就是服务业。你做不了微软,就要以做项目为目标。有同学说在公司里面找不到软件工程的影子,其实,大学里面的软件工程的老师,自己要么没有以工程形式组织软件实践,要么就是开发高手而不是管理专家。大学课本上的软件工程告诉你的软件开发是个什么流程,而我们实际工作中软件开发不是那么规范的。软件工程告诉你是去做对的事情,而程序员是把事情做对。这个看上去是完美的组合,有了完美的流程,再加上完美的人,就可以把事情OK。在工程实践中,有时候是没有人先验的知道什么是对的事情,什么又是把事情做对。所以敏捷软件开发把这个问题又交给做事情的人。这是对人的尊重,也是一个可行的解决方案。编程之美曾经说过:程序员的双手是魔术师的手。能够解决问题的人,就是对的人。能够快速解决问题的人,就是敏捷的人。
下学期,给我排了软件工程,好久没上这门课,现在对于教学我有了新的感悟,以前,我是不太管同学,现在想想还是要严格要求一些的好。因为现在的同学比较懒散,吃苦玩命的劲头不足,这样对以后参加工作不利。工程要求参与个体的遵守纪律,而即将面临找工作的同学读大学以后已经不再有高中时候的劲头了。如果这样的话,如何才能长本事呢?你会的东西别人也会,别人不会的你也不会,你是不会脱颖而出的,你也不可能成为一个敏捷的人——一个能把事情做对的人,更不会是一个迅速把事情做对的人。
训练自己,训练自己,要和自己过不去,要逼自己做困难的事情,记住突破死亡线才能增长才干。我喜欢玩命的人,不要给自己找借口。当我们的同学想放弃的时候,想想自己的痛苦,想想如果放弃自己的苦就白吃了,你会轻易放弃吗?你失恋了,你会轻易放弃曾经追求过的人吗?我刚动完手术,完全可以好好休息一下,但是别人给你活干,是对你的信任。给你一口饭吃,就要把事情给结了,不然你就不够男人。活着就干,死了就算。要有一股狠劲,对着呢~~
分享到:
评论

相关推荐

    程序员的羊皮书——程序员必备

    总之,《程序员的羊皮书——程序员必备》涵盖了程序员在技术、职业和个人发展上的诸多方面,提醒我们,成为一名优秀的程序员不仅仅是编写代码,更重要的是全面发展自己的技能,适应快速变化的IT行业。通过不断学习和...

    php程序员菜鸟成长手记——php入门教程

    ### PHP程序员菜鸟成长手记——php入门教程 #### 一、PHP简介 ##### 1. Web程序工作原理 Web程序工作原理是指用户通过浏览器发送请求到服务器,服务器处理请求后返回响应的过程。在这个过程中,服务器端脚本语言...

    计算机经典——软件需求文档

    《计算机经典——软件需求文档》是一本针对程序员和软件开发人员至关重要的参考资料,它深入探讨了软件开发过程中需求分析、管理、验证等关键环节。这本书籍对于提升编程设计能力具有极大的帮助,是软件工程领域...

    程序员搜索文件神器 Everything-1.3.4.686.x64

    《程序员的文件搜索利器——Everything 1.3.4.686 x64》 在信息化时代,程序员的工作往往涉及到大量的文件操作,快速而准确地找到所需文件变得至关重要。"Everything"是一款专为提高文件搜索效率而设计的神器,其...

    全球首位AI程序员是否会抢走程序员饭碗.docx

    2024年3月,Cognition AI公司推出了全球首个AI程序员——Devin。这一里程碑式的事件标志着人工智能技术在软件开发领域的应用取得了重大突破。Devin不仅掌握了全栈技能,还能自学新技术、构建和部署应用程序、自主...

    oSIP开发者手册————————

    此外,SIP协议具有良好的可扩展性,能够通过添加新的请求方法和响应状态码来适应不断发展的需求。SIP与最终用户服务的关系密切,它允许创建丰富的通信体验。 第二章深入到SIP协议的细节,包括SIP语法,定义了SIP...

    个人博客需求分析(GB856T——88)

    这份需求分析说明书的主要目的是为个人博客系统提供一个清晰的蓝图,使得所有相关人员,包括用户、项目管理者、系统分析师、程序员和测试人员,都能理解系统的预期功能和性能。它作为评价系统是否满足预设标准的重要...

    神秘的程序员们

    - **测试部门与开发部门**:测试部门在发现软件缺陷时,需要能够准确传达给开发部门,并得到迅速响应。如果两个部门之间缺乏有效的沟通机制,则可能导致缺陷修复延迟,进而影响项目进度。 #### 3. 面试中的注意事项...

    程序员进阶修炼说明35岁前要培养的66种明智思维

    ### 程序员进阶修炼说明:35岁前要培养的66种明智思维 #### 第一部分:剑走成功偏锋——另类思维与反弹琵琶 在这个快速变化的时代,要想在IT行业中脱颖而出,单凭传统的思维方式往往难以达到预期的效果。因此,**...

    网页版程序员简历模板,HTML程序员专用简历模板,支持PC端及移动端浏览

    通过CSS,我们可以设置字体、颜色、间距、边距,以及响应式设计的关键——媒体查询。例如,使用`@media screen and (max-width: 768px)`可以为手机和平板设备定制样式。对于PC端,可以设置固定宽度的布局;对于...

    C\C++程序员实用大全 C\C++编程最佳指南.pdf

    ### C/C++程序员实用大全——水晶报表的使用与构建 #### 概述 水晶报表(Crystal Reports)是一款广泛应用于各种企业级应用中的专业报表工具,它不仅能够帮助开发者快速生成复杂的报表,还提供了丰富的功能来满足...

    ACE程序员指南-网络与系统编程的实用设计模式.pdf

    《ACE程序员指南——网络与系统编程的实用设计模式》是一本深入探讨ACE(Adaptive Communication Environment)框架在网络和系统编程中的应用的书籍。ACE是一个开源的C++库,它为构建高性能、跨平台的分布式软件提供...

    SPCOMM控件————

    - **事件驱动**:SPCOMM控件支持丰富的事件,如`OnReceiveData`事件在接收到数据时触发,`OnError`事件在出现错误时触发,这使得程序可以实时响应通信状态变化。 - **缓冲区管理**:控件内置了发送和接收缓冲区,...

    非程序员第50期

    文章中提到的敏捷开发是一种迭代和增量的开发方法,旨在通过短周期交付可工作的软件,快速响应变更。这种方法在软件行业越来越受欢迎,因为它强调团队合作、客户反馈和适应性。 #### 新西兰文化与敏捷开发的契合 ...

    敏捷培训教材-精简版1.0

    - **快速响应变化**:在当前快速变化的市场环境中,敏捷方法允许项目团队迅速适应新需求。 - **增强客户满意度**:通过持续交付,确保产品始终满足客户的真实需求。 - **提高产品质量**:频繁的测试和集成有助于及早...

    敏捷开发,敏捷开发,敏捷开发,敏捷开发

    敏捷开发是一种强调灵活性、快速响应变化的软件开发方法论。与传统的瀑布模型相比,敏捷开发更加注重团队之间的紧密协作、持续改进以及高质量的产品交付。敏捷开发的核心价值在于通过小步快跑的方式,快速迭代产品,...

    微信之道201204.pdf

    敏捷开发是一种软件开发方法,它鼓励快速和灵活的响应变化。敏捷开发的代表方法包括Scrum和Kanban等,它们提倡短周期、跨功能团队协作,并重视人的作用、流程自动化和客户需求。敏捷不仅仅是一种开发方式,更是一种...

    软件工程思想,程序员必备

    - **敏捷过程与极限编程**:强调快速响应变化、持续交付可用软件。 - **微软过程**:针对微软公司的特定环境定制的一套软件开发过程。 #### 结论 软件工程不仅是一门技术学科,更是一种思维方式。通过对软件工程...

Global site tag (gtag.js) - Google Analytics