during: 2001

To Be Explicit

Often designs techniques are used to make a system more flexible, but end up being harder to work with. One of the reasons is that explicitness is a property that often gets forgotten in design.

by Martin Fowler

Nov 2001

Read more…

ieeeSoftware programming style

Reducing Coupling

Thinking about how to visualize and reduce coupling.

by Martin Fowler

Jul 2001

Read more…

ieeeSoftware

Interview with Kent Beck and Martin Fowler on Extreme Programming

An interview done with Pearson to promote our book Planning Extreme Programming. We banter about the background to XP and the role planning plays in an XP project.

by Martin Fowler

23 May 2001

Read more…

extreme programming

Protected Variation: The Importance of Being Closed

Craig's spot in the column looks at the importance of the Open-Closed principle and Protected Variation, and why Parnas's information hiding is more than encapsulation. He also gives some tips on ways to implement a protected variation.

by Craig Larman

May 2001

Read more…

ieeeSoftware

Separating User Interface Code

One of the first lessons I learned was to always keep user interface code separate from anything else. Not just is this still good advice, it's surprising how often it's forgotten.

by Martin Fowler

Mar 2001

Read more…

ieeeSoftware

Crossing Refactoring's Rubicon

In January 2001 two Java tools crossed Refactoring's Rubicon. Refactoring in Java now has serious tool support

by Martin Fowler

Feb 2001

Read more…

article

refactoring

Interviewed by Jim Highsmith

When I went to Snowbird in 2001 for the meeting that led to the Manifesto, Jim interviewed me for a book he was working on. It provides a snapshot on my thinking on extreme programming and this thing that a few days later we called agile software development.

by Martin Fowler

Feb 2001

Read more…

agile interviews extreme programming

The Manifesto for Agile Software Development - an early article.

A group of seventeen people got together in Snowbird, UT in February 2001 to talk about new styles of lightweight methods. One result of this is coining the word agile to represent a new breed of agile processes for software development. We also put together a Manifesto for Agile Software Development which describes the values and principles of these agile methods. Jim Highsmith and I wrote this article for Software Development magazine to further explain the manifesto.

by Martin Fowler

Feb 2001

Read more…

agile

Avoiding Repetition

It's sometimes quite remarkable how the simple rule of avoiding repetition in software can lead into good design

by Martin Fowler

Jan 2001

Read more…

ieeeSoftware

Planning and Running an XP Iteration

Since the begining of the new millenium, we've been running an interesting XP project. It's interesting not just because it was one of the first XP projects at Thoughtworks, but also due to its size: around 50 people are involved. Here we talk about how we run this project by focusing around the activities that need to be done for a single iteration, and how the various subteams work around that iteration.

by Cara Taber and Martin Fowler

Jan 2001

Read more…

attic

Variations on a Theme of XP

One of the attractive things about XP is that it gives quite definite statements about what you should do to be doing XP. Furthermore that set of practices is carefully designed to fit together. Taking anything out has serious consequences. Yet one of the principles of XP and other agile methods is that they be self adaptive: that is you should change the process as you are developing the project. How does this notion fit in with the rigid practices of XP?

by Martin Fowler

Jan 2001

Read more…

article

extreme programming


All tags

API design · agile · agile adoption · analysis patterns · application architecture · application integration · bad things · board games · build scripting · certification · collaboration · computer history · conference panels · conferences · continuous delivery · covid-19 · data analytics · data mesh · database · design · dictionary · distributed computing magazine · diversions · diversity · documentation · domain driven design · domain specific language · domestic · encapsulation · enterprise architecture · estimation · event architectures · evolutionary design · experience reports · expositional architectures · extreme programming · front-end · gadgets · generative AI · ieeeSoftware · infodecks · internet culture · interviews · language feature · language workbench · lean · legacy modernization · legal · metrics · microservices · mobile · noSQL · object collaboration design · parser generators · photography · platforms · podcast · popular · presentation technique · privacy · process theory · productivity · programming environments · programming style · project planning · recruiting · refactoring · refactoring boundary · requirements analysis · ruby · security · talk videos · team environment · team organization · technical debt · technical leadership · test categories · testing · thoughtworks · tools · travel · uml · version control · web development · web services · website · writing

2024 · 2023 · 2022 · 2021 · 2020 · 2019 · 2018 · 2017 · 2016 · 2015 · 2014 · 2013 · 2012 · 2011 · 2010 · 2009 · 2008 · 2007 · 2006 · 2005 · 2004 · 2003 · 2002 · 2001 · 2000 · 1999 · 1998 · 1997 · 1996

All Content