Flylib.com

Books Software

 
 
 

The Effect of Illness


The Effect of Illness

Id like to comment explicitly on the effect of illness. I was able to work, although in a lot of pain, for about a month during this project. For a couple of weeks, I couldnt stand to sit in front of the computer for more than an hour a day. Yet I felt that I could design. My paper designs were, frankly, inadequate.

Im not sure whether to blame that on being ill or on the fact that paper designs, in the absence of feedback, are inherently risky. My philosophy would be to claim the latter, but both were probably part of the equation. In any case, my advice is to focus on getting concrete feedback about designs early and often. And dont assume that working through illness means being tough. It might well be a time to get more help, rather than a time to be brave and try to push through by force. Force isnt one of our best programming techniques, even in the best of times.



Does Incremental Development Work?

This, of course, is the big question. Its clear to me, and I hope its clear to you, that it certainly worked for me on this project. Will it work for you on your project? That is for you to determine.

You have seen the techniques used here: test-driven development, starting with simple design, a strong focus on recognizing duplication and other evidence of design problems, a willingness to improve the code when we see the signs, and so on. All of these require skill, which is gained by practice. The skills are valuable in their own right, and they may enable you to find a more flexible way to develop your software.

Incremental development works for me, and I believe it will work for you.



Bibliography

Atchity, Kenneth. A Writers Time. New York: W. W. Norton and Company, 1995.

Austin, Rob, and Lee Devin. Artful Making: What Managers Need to Know About How Artists Work. Upper Saddle River, NJ: Prentice Hall, 2003.

Beck, Kent. Extreme Programming Explained . Boston: Addison-Wesley, 1999.

. Test-Driven Development By Example. Boston: Addison-Wesley, 2003.

Boehm, Barry, and Richard Turner. Balancing Agility and Discipline. Boston: Addison- Wesley, 2004.

chromatic. Extreme Programming Pocket Guide . Sebastapol, CA: OReilly, 2003.

Cockburn, Alistair. Agile Software Development. Boston: Addison-Wesley, 2002.

Crispin, Lisa, and Tip House. Testing Extreme Programming . Boston: Addison-Wesley, 2003.

DeMarco, Tom. Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency. New York: Broadway Books, 2001.

DeMarco, Tom, and Timothy Lister. Peopleware, Productive Projects and Teams. New York: Dorset House, 1999, 1987.

Dobson, Terry, and Victor Miller. Aikido in Everyday Life. Berkeley, North Atlantic Books, 1993.

DuCharme, Bob. XSLT Quickly. Greenwich, CT: Manning, 2001.

Dupr , Lyn. Bugs in Writing; A Guide to Debugging Your Prose. Boston: Addison-Wesley, 1998.

Fowler, Martin, with contributions by Kent Beck, John Brant, William Opdyke, and Don Roberts. Refactoring: Improving the Design of Existing Code. Boston: Addison- Wesley, 1999.

Friedl, Jeffrey E. F. Mastering Regular Expressions. Sebastapol, CA: OReilly, 1998, 1997.

Gabriel, Richard P. Writers Workshops & the Work of Making Things. Boston, Addison-Wesley, 2002.

Griffiths, Ian, Jon Flanders, and Chris Sells. Mastering Visual Studio .NET . Sebastapol, CA: OReilly, 2003.

Gunnerson, Eric. A Programmers Guide to C#, Second Edition. Berkeley: Apress, 2001.

Highsmith, James A. Adaptive Software Development. New York: Dorset House, 2000.

Highsmith, Jim. Agile Software Development Ecosystems. Boston: Addison-Wesley, 2002.

Holm, Christian, Mike Kr ¼ger, and Bernhard Spuida. Dissecting a C# Application; Inside SharpDevelop. Birmingham, UK: Wrox Press Ltd, 2003.

Hunt, Andrew, and David Thomas. The Pragmatic Programmer. Boston: Addison-Wesley, 2000.

{% if main.adsdop %}{% include 'adsenceinline.tpl' %}{% endif %}

Jay, Ricky. Cards and Weapons. New York: Warner Books, 1997.

Jeffries, Ron. Card Magic for Managers. Cited in Constantine, Larry L. (ed.) Beyond Chaos, The Expert Edge in Managing Software Development. Boston: Addison-Wesley, 2001.

Jeffries, Ron, Chet Hendrickson, Ann Anderson. Extreme Programming Installed. Boston: Addison-Wesley, 2000.

Kay, Michael. XSLT Programmers Reference. Birmingham, UK: Wrox Press Ltd, 2000.

Kerth, Norman L. Project Retrospectives, A Handbook for Team Reviews. New York: Dorset House, 2001.

Larman, Craig. Agile & Iterative Development: A Managers Guide. Boston: Addison-Wesley, 2004.

Liberty, Jesse. Programming C#. Sebastapol, CA: OReilly, 2001.

Martin, Robert C. Agile Software Development: Principles, Patterns, and Practices. Upper Saddle River, NJ: Prentice Hall, 2003.

McBreen, Pete. Software Craftsmanship, the New Imperative. Boston: Addison-Wesley, 2002.

Newkirk, James W., and Alexei A. Vorontsov. Test-Driven Development in Microsoft .NET . Redmond, WA: Microsoft Press, 2004.

Petzold, Charles. Programming Microsoft Windows with C#. Redmond, WA: Microsoft Press, 2002.

Poppendieck, Mary, and Tom Poppendieck. Lean Software Development, An Agile Toolkit. Boston: Addison-Wesley, 2003.

Richter, Jeffrey. Applied Microsoft .NET Framework Programming. Redmond, WA: Microsoft Press, 2002.

Robinson, Simon, et al. Professional C# 2 nd Edition. Birmingham, UK: Wrox Press Ltd., 2002.

Schwaber, Ken, and Mike Beedle. Agile Software Development with Scrum. Upper Saddle River, NJ: Prentice Hall, 2001.

Sharp, John and Jon Jagger. Microsoft Visual C# .NET Step by Step. Redmond, WA: Microsoft Press, 2002.

Sher, Gail. One Continuous Mistake: Four Noble Truths for Writers. New York: Penguin, 1999.

Smith, Les. Writing Add-ins for Visual Studio .NET. Berkeley: Apress, 2002.

Sun Tzu. The Art of War. London: Oxford University Press, 1963.

Ueshiba, Morihei. The Art of Peace. Boston: Shambhala Publications, 2002.

Wake, William. Refactoring Workbook . Boston: Addison-Wesley, 2004.

Williams, Laurie, and Robert Kessler. Pair Programming Illuminated. Boston: Addison- Wesley, 2003.