
Home Blog Articles Books About Me Contact Me ThoughtWorks About Martin Fowler Last Significant Update : Apr 03 I'm an author , speaker , consultant and general loud-mouth on software development . I concentrate on designing enterprise software looking at what makes a good design and what practices are needed to come up with good design . I've been a pioneer of object-oriented technology , refactoring , patterns , agile methodologies , domain modeling , the Unified Modeling Language UML and Extreme Programming . For the last decade I've worked at ThoughtWorks a really rather good system delivery and consulting firm . I started working with software in the early 80's and in the mid 80's I started getting interested in the then new world of object-oriented development . I started to specialize in bringing objects to business information systems , first with a couple of companies and then as an independent consultant . In the early days this was using Smalltalk and C++ , now it's Java , C and Ruby . Every year I learn something new , but I also find that many of the lessons from the past still apply . This work has led me into taking a leading role in OO analysis and design , the UML ,