FrontPage [add child]

BUTUNCLEBOB.COM

The OLD Object Mentor blog site.

Powered by FitNesse


Bloggers


Uncle Bob

James Grenning

Bob Koss

Michael Feathers

David Chelimsky

Tim Ottinger

Dean Wampler

Latest Articles.................................


Date

Author

Title

Comment

20 Dec 2006 Uncle Bob New Blog Site We have a new blog site. http://blog.objectmentor.com
20 Dec 2006 Uncle Bob Java Dates The horrible state of Dates in the Java standard library.
5 Dec 2006 Uncle Bob Sketch Fighter If you own a Mac, you need to get this game.
26 Oct 2006 Uncle Bob Abstract Factory by Daniel T Another "story" about Abstract Factory.
20 Oct 2006 Uncle Bob The Hungarian Abhorrence Principle Denoting data type in variable names implies a design flaw.
18 Oct 2006 Uncle Bob Rubarian Notation Egad! I am tempted to denote type in my ruby variable names!
18 Oct 2006 Uncle Bob Craftsman 49 Abstract Factory
15 Oct 2006 Uncle Bob P2M2: Pair Programming Maturity Model Pairing is useful, but...
09 Oct 2006 Michael Feathers The Morality of Error Checking Can there be a one-size-fits all policy for error recovery?
07 Oct 2006 Tim Ottinger Estimating Patterns Tom D's wisdom for estimators is recommended
29 Sep 2006 Uncle Bob Craftsman Column All the "Crafstman" columns, including some that never made it to print.
28 Sep 2006 Dean Wampler Which Takes More Discipline, XP or Waterfall? Is XP an excuse for undiscplined hacking or is does it require more discipline than waterfall methods?
27 Sep 2006 Tim Ottinger Collateral Effort Dealing with the sense of waste
27 Sep 2006 Tim Ottinger Don't refactor everything Refactor all your code? Not so!
26 Sep 2006 Tim Ottinger Sooner, not Faster Is agile development about going faster? I don't think so.
25 Sep 2006 James Grenning Over a Half Million Embedded Developers Behind On Their Learning Well not all of them
22 Sep 2006 Tim Ottinger Optimizing Away Estimates Goals, Estimates, Commitments
21 Sep 2006 Dean Wampler Contract4J5 v0.6.0 Released A new release of my open-source Design by Contract tool for Java that is implemented using AspectJ
15 Sep 2006 David Chelimsky Quality Ensurance Thought for the day
13 Sep 2006 Tim Ottinger More work or Less Work Doing less early means doing more later
09 Sep 2006 Tim Ottinger Agile is More Work Is agile development more work for the programmer?
7 Sep 2006 Dean Wampler Should You Ever Override Concrete Methods? There are several anti-patterns associated with overriding concrete methods, so don't do it!
6 Sep 2006 Uncle Bob Safe Computations Math in a computer is not the same as math on paper.
6 Sep 2006 Michael Feathers Designing Away Preconditions Preconditions aren't a given, sometimes they can be eliminated.
6 Sep 2006 Tim Ottinger Frameworks Frameworks are for the impatient
5 Sep 2006 Uncle Bob Convex Hull Timing More on the preformance of computational geometry."
4 Sep 2006 Uncle Bob Joel on Ruby Joel says: "No! Don't do it!"
2 Sep 2006 Uncle Bob The Yes and No Game A fun game to play with preschoolers, with a twist.
1 Sep 2006 Uncle Bob Untested Code is the Dark Matter of Software Another response to Cedric
1 Sep 2006 Uncle Bob The Danger of Mock Objects A response to Cedric
31 Aug 2006 Uncle Bob Making Messes in Ruby It's easy!
30 Aug 2006 Uncle Bob Refactoring Paralysis I wish I had a refactoring tool in Ruby!
29 Aug 2006 Tim Ottinger How Many Feathers? How many feathers can you carry?
28 Aug 2006 Uncle Bob Comparing the Speed of Java, C++, and Ruby A simple benchmark with some surprises
26 Aug 2006 Uncle Bob Stardust An astronomy lecture, and a best man's toast.
25 Aug 2006 Uncle Bob The Perverse Nature of Performance Tuning It never works exactly the way you think.
25 Aug 2006 Tim Ottinger Addicted to Expensive Tools? Do we drown in cool tools?
25 Aug 2006 Tim Ottinger Vertical Space Revisited Increase your density for clarity's sake
22 Aug 2006 Michael Feathers Liskov Substitution in Dynamic Languages What is the analog of LSP in Ruby, Python, and Smalltalk?
18 Aug 2006 Uncle Bob SRP in Ruby The Single Responsibility Principle in Ruby
18 Aug 2006 Tim Ottinger What is it with vertical space Save a mouse, delete a blank line
17 Aug 2006 Uncle Bob Ruby Combinations An issue with making Ruby code clean.
16 Aug 2006 Tim Ottinger Refactor It Ugly Choose to be ugly for a little while
15 Aug 2006 Tim Ottinger Start Tight Avoid regrets with a harsh start
14 Aug 2006 Uncle Bob Common Decency Washroom Etiquette
14 Aug 2006 Dean Wampler More on Rails and Ruby vs. Java and .NET More Thoughts on Why Rails is Important
13 Aug 2006 Uncle Bob Rails I've just started reading the (beta) Agile Web Development in Railsß
04 Aug 2006 Dean Wampler Extracting Usage Documentation From Tests Our tests document how to use our code. Why don't our documentation tools extract this information?
04 Aug 2006 Tim Ottinger You are so not alone Really not so different after all
2 Aug 2006 Uncle Bob Green Wrist Band Get your own!
31 Jul 2006 David Chelimsky Development Time Dependency What do you call that other kind of dependency?
20 Jul 2006 David Chelimsky Spec Organization The effects of thinking of specs as, well... specs
20 Jul 2006 Dean Wampler Model-Driven Development: One Curmudgeon's View In which our intrepid mentor bloviates on the role, if any, of MDD
14 Jul 2006 Tim Ottinger Arguing with myself What goes around comes around
14 Jul 2006 David Chelimsky The Occasional Reminder Do you remember why you started practicing TDD and refactoring?
09 Jul 2006 David Chelimsky It Takes Two Exposing data is one offense, but the real violation is grabbing it
29 Jun 2006 Tim Ottinger Class Is Not A BASIC Program What's wrong with these classes?
29 Jun 2006 Tim Ottinger Classes Don't Encapsulate Classes don't encapsulate like they used to
27 Jun 2006 Tim Ottinger Tests are a language Could we build a trellis for growing our language?
27 Jun 2006 Tim Ottinger Apologizing for Code A comment is really an apology
24 Jun 2006 Tim Ottinger The Quiet Bullpen Listen for the sound of software
14 Jun 2006 Michael Feathers Vise A tool which aids refactoring in Java
12 Jun 2006 Uncle Bob Agile People Still Don't Get It Response to Cedric's rant.
10 Jun 2006 Uncle Bob Taking Care An attitude of development.
10 Jun 2006 Michael Feathers The Reluctant Global Variable An example of "Just Create One" with an interface.
8 Jun 2006 Uncle Bob Mac Book Pro Comic More on a sweet machine.
4 June 2006 David Chelimsky Single Responsibility Principle Applied to Methods  
3 June 2006 David Chelimsky Single Responsibility Principle is about Implementation  
30 May 2006 Michael Feathers Refactoring Needs More Than Tests The other precondition for refactoring
27 May 2006 Michael Feathers The Golden Rule of API Design Do unto others as..
24 May 2006 Paul Pagel Over Mocking mock me once shame on you, mock me twice...
20 May 2006 Uncle Bob Mac Book Pro A sweet machine.
20 May 2006 Michael Feathers Concepts That Don't Like To Be Named How clear does a concept need to be to warrant a function?
18 May, 2006 David Chelimsky Singular Responsibility  
16 May 2006 Michael Feathers It's Time To Deprecate Final It's the bane of testing.
11 May 2006 Michael Feathers Changing Notions of Design Toward a new norm.
7 May 2006 Michael Feathers Dealing with the Lame Duck Code Base What makes code worth your care?
3 May 2006 Micah Martin Smalltalk Bowling My first Smalltalk program... the Bowling game.
17 Apr 2006 Micah Martin Paper Bullet Some development teams have more fun than others
11 Apr 2006 Tim Ottinger The Cheesiest Thing That Might Work Elegance can wait for the green bar.
11 Apr 2006 Tim Ottinger Where do Your Tests Come From What are you going to do next, and why?
10 Apr 2006 Tim Ottinger Removing Redundancy Badly How not to refactor your code (TDD pathology #3)
8 Apr 2006 Uncle Bob Wading through Code Get your hip-boots on.
27 Mar 2006 Michael Feathers Technologists Drive Who drives technology change?
26 Mar 2006 David Chelimsky Using multiple fixtures Using test fixtures as they were inititially intended
24 Mar 2006 David Chelimsky Bowling without prefactoring Avoiding the temptation of up front design when you're not really up front
23 Mar 2006 Uncle Bob New Java Enums are Cool I have found the new Java Enums to be more than just curiosities.
20 Mar 2006 Uncle Bob Architecture is a secondary effect. Architecture is important to keeping a system flexible, changeable, malleable. But it's a secondary effect.
17 Mar 2006 Paul Pagel Prefactoring ...going off the rails on the pattern train
16 Mar 2006 Tim Ottinger Testing Hypothetically Testing as if it were possible
3 Mar 2006 David Chelimsky Bowling with rSpec The classic bowling game exercise with a twist
25 Feb 2006 Tim Ottinger Harder than it sounds It all sounds so simple
22 Feb 2006 Tim Ottinger Maintain an Even Strain Spreading the pain like it was peanut butter
15 Feb 2006 Uncle Bob Clean Code: Args. An article about professionalism, craftsmanship, and refactoring.
15 Feb 2006 Micah Martin Beware The Freebie Watch out for stories that developers give you for free
14 Feb, 2006 David Chelimsky We've Got Stories Bigger Than Your Iteration How do you measure points across teams?
10 Feb 2006 Tim Ottinger Everything In Its Place Test Contaminated?
10 Feb, 2006 David Chelimsky Keeping Infection in Check In every other context besides software, infection is bad. Why is test-infection any different?
5 Feb, 2006 David Chelimsky Testing Abstract Classes Comparing strategies to test common behavior
2 Feb, 2006 David Chelimsky Discovering Reuse Reuse is best discovered, not planned
1 Feb, 2006 David Chelimsky Fostering Credibility in Customer Tests Make sure your customer tests tell the truth
31 Jan 2006 Tim Ottinger Reckless Refactoring Recklessly refactoring considered harmful
30 Jan, 2006 David Chelimsky Mock Observations Observations re: Hand Mocks vs Tool-Generated Mocks
25 Jan 2006 Michael Feathers Component-based Fixtures for FIT Attempting a new fixture structuring mechanism
24 Jan 2006 Michael Feathers Programming On Your Own Is collective code ownership bad for beginners?
20 Jan 2006 Paul Pagel Sentential Testing where do we bind our language?
19 Jan 2006 Tim Ottinger TDD Bumper Shots Testing the hard way - TDD Pathology 2
14 Jan 2006 Michael Feathers Library Code versus Application Code Do we treat these types of code differently? Should we?
13 Jan 2006 Tim Ottinger Software Super Powers Would you like a cape with that?
11 Jan 2006 Bob Koss Deja Vu - Inheritance Bytes The Adapter Pattern saves the day again
9 Jan 2006 Tim Ottinger Mother May I? If we are playing this game, we are doing this backward - TDD Pathology 1
7 Jan 2006 Uncle Bob Agile means you never have so meet your deadlines. A common myth
6 Jan 2006 Tim Ottinger Naive Tests Don't Help You've got to know the territory
5 Jan 2006 Paul Pagel Fresh Testing Keeping tests honest
5 Jan 2006 Tim Ottinger Closing In on Test-Driven Getting Closer to TDD
4 Jan 2006 Tim Ottinger Stable API Is the API stable like the native type list?
02 Jan 2006 Michael Feathers An Object Is A Choice ..and a chance to choose wisely.
30 Dec 2005 Michael Feathers My Recent Reads The limit as reading list approaches infinity...
30 Dec 2005 Uncle Bob On Documentation Documenation is not evil, and is not anathema to Agile.
29 Dec 2005 Tim Ottinger Reasons to Stay Wrong Do tests create stability you don't want?
28 Dec 2005 Tim Ottinger Debuggers? Yes A debugger is a handy tool after all
28 Dec 2005 Tim Ottinger Learn Dynamically Dynamic languages are more learnable than static languages.
28 Dec, 2005 David Chelimsky Dependency Injection Is Only Mostly Good Injecting dependency on factories is just Service Locator in disguise
December 27, 2005 Tim Ottinger Not Yet Test-Driven Maybe I don't get it.
11 Dec, 2005 David Chelimsky Boundaries of Coding for Testability Are tests and code under test the same? Do the same principles apply?
4 Dec, 2005 Michael Feathers Moving Toward Another Design Principle Layers layers layers.
2 Dec, 2005 David Chelimsky Why Limit Fit FIT is for customers and xUnit for programmers, right? Well, why limit ourselves?
1 Dec 2005 Uncle Bob John Vlissides Obituary
17 Nov 2005 Uncle Bob MSTDD Microsoft's notion of TDD.
10 Nov 2005 Michael Feathers Is Programming Too Easy? Heresy? You decide.
8 Nov 2005 Uncle Bob Bounded Wildcards More on the wonderfully twisted subtype relationships of generics.
5 Nov 2005 Uncle Bob Is a list of circles a list of shapes? Of the wonderfully twisted subtype relationships of lists.
31 Oct 2005 Micah Martin PreludeToTheMockOff Pre-Mockoff ramble
30 Oct, 2005 David Chelimsky Stop Mocking Me an experiment in hand coding mocks vs mock tools like NMock and Rhino
26 Oct 2005 Uncle Bob Does Visual Studio Rot the Mind? A truly wonderful article (talk) by Charles Petzold
25 Oct 2005 Uncle Bob Extract Class A pleasant combination of refactorings using IntelliJ[?] (and Eclipse?)
23 Oct 2005 Bob Koss Refrigerator Code Be proud of your code
19 Oct 2005 Uncle Bob Analysis vs. Design The difference between "what" and "how".
17 Oct 2005 Michael Feathers Things Happening At OOPSLA Day 1 of the three ring circus
10 Oct 2005 Uncle Bob Frackin' Variable Naming Contest Please help me figure out what the name of this variable should be.
7 Oct 2005 Uncle Bob The Bastard Child Are unit tests the bastard child? How well do we treat them?
6 Oct 2005 Uncle Bob The Three Rules of TDD Test Driven Development is driven by three simple rules.
5 Oct 2005 Michael Feathers Honest Code Think code can't lie? Think again.
5 Oct 2005 Uncle Bob The Sensitivity Problem Software is very sensitive to error. Others have solved this problem.
28 Sept, 2005 David Chelimsky Improvised Software - Version II - Iteration II stories are to the coder as the song is to the improvisor
20 Sept, 2005 Michael Feathers Reviving Beauty It's okay to love good code.
16 Sept, 2005 David Chelimsky Manage dependencies, not aesthetics Our sense of smell is an important tool, but it sometimes can lead us down the wrong path
7 Sept, 2005 David Chelimsky Improvised Software - Version II - Iteration I Agile development is still like improvised music
5 Sep 2005 Uncle Bob Palm Life Drive Premature? Elegant, cute, not ready for prime time.
31 Aug 2005 Michael Feathers Working Clean Every craft has it's obsessions. Let's borrow some.
30 Aug 2005 Uncle Bob Pronouncing Binary How to pronounce binary numbers.
29 Aug 2005 Micah Martin ICarumba On the .NET interface naming convention.
27 Aug 2005 Uncle Bob Joel on XP (Again) Oh, Joel!
26 August 2005 Bob Koss Using the Adapter Pattern to Decouple Legacy VB Code Adding tests to existing VB code
23 August 2005 Michael Feathers Do You Have Iteration Slop? So, how long is your iteration, really?
25 July 2005 Uncle Bob The Agile Test A set of questions I asked during my Agile 2005 Keynote.
29 Jun 2005 Michael Feathers Refactoring Against the Red Bar Red bar bad? Not so fast.
24 Jun 2005 Uncle Bob The Prime Factors Kata Another Kata exploring a simple algorithm with rich implications.
23 Jun 2005 Uncle Bob The Bowling Game Kata A complete Kata worked out in tiny little steps.
20 Jun 2005 Uncle Bob The Coding Dojo A programming metaphor from the domain of martial arts.
15 June 2005 Micah Martin Software Apprenticeship A few comments on the topic
15 June 2005 Micah Martin Jack and Jill A silly fictional story relating to software craftsmanship
15 Jun 2005 James Grenning My 2 cents on C++ Coding Standards A simple C++ coding standard
11 May 2005 Uncle Bob Principles of OOD Eleven principles of object oriented design.
10 May 2005 Uncle Bob Empirical vs. Analytical Analysis A simple example showing the interplay between empirical and analytical analysis
30 Apr 2005 Uncle Bob Visitor vs. instanceof When should you use Visitor, Acyclic Visitor, and instanceof
27 Apr 2005 James Grenning CppTestTools Memory Leak Detector Example of the memory leak detector built into CppTestTools
24 Apr 2005 James Grenning Success is an Option Too Software development problems are not new. Agile addresses critical success factors identified by Standish Group Chaos Report
18 Apr 2005 James Grenning The Problem of Managing Variations In C How a mess is created in C
11 April, 2005 David Chelimsky Improvised Software - Iteration One Agile development is like improvised music
8 April, 2005 David Chelimsky Fair Housing for Business Rules Business rules are implemented in the code, but they are expressed in the tests.
06 Apr, 2005 Michael Feathers Inside the Design Mind Learning about how the industry views design
31 Mar, 2005 Michael Feathers Before Clarity Good code is clear and understandable, so we should always attempt to keep code as clear as possible. Or should we?
29 Mar, 2005 David Chelimsky Object Views Interfaces are to implementation classes like database views are to database tables
26 Mar 2005 Uncle Bob Conformance To Plan Why is conformance to plan such a big deal? Especially since we almost never do.
18 Mar 2005 Uncle Bob Joel and Eckel On XP How can two such credible people come away with two such different views?
14 Mar 2005 James Grenning The Advantage of Not Having Hardware Yet Anticipated hardware is replaced by abstractions, creating a design that can stand the test of time
25 Feb 2005 James Grenning TDD and Memory Leaks Prevent leaks with TDD
24 Feb 2005 James Grenning They Are All Priority 1 How can a product manager deliver Ten Priority 1 Features
14 Mar, 2005 Micah Martin Building a City Building software is like ...
11 Mar, 2005 David Chelimsky Duplication in tests Why it's OK to test the same code in customer tests and unit tests.
13 Mar 2005 Uncle Bob Brain Surgery Guides A Metaphor for Acceptance Tests.
3 Mar 2005 Uncle Bob Just 10 Minutes without a Test I lapsed for ten minutes. I paid the price.
24 Feb 2005 Uncle Bob Vehement Mediocrity Why do junior developers always argue that quality takes time?
22 Feb 2005 James Grenning Transforming Idea Ah! Ha! Experience of how objects can save embedded developers from reinventing the wheel
21 Feb 2005 Uncle Bob The Next Big Thing The next big thing that will capture the industry's attention
7 Feb 2005 Uncle Bob Incremental Architecture Making long term sweeping changes to architecture incrementally.
8 Jan 2005 Uncle Bob Stable Dependencies Fixture Yet another fixture to complement the JDepend suite of FitNesse fixtures.
5 Jan 2005 Micah Martin Buffer To The Rescue An adventure enabling large file uploads in FitNesse
5 Jan 2005 Uncle Bob Module Metrics Fixture A new fixture to complement the Module Dependencies Fixture in my previous blog
31 Dec, 2004 David Chelimsky FitNesse And Hibernate How to test a Hibernate driven app using FitNesse
23 Dec 2004 Uncle Bob JDepend Fixture A free Christmas gift for Java programmers.
16 Dec 2004 Young Bob Continuous Integration The more often you do it, the easier it gets.
7 Dec 2004 Uncle Bob Outlook. Ugh. Who ARE these people?
3 Dec 2004 Micah Martin Wiki Vandalism butunclebob.com gets vandalized
29 Nov 2004 Micah Martin Delegates vs Command Pattern An exploration of .NET's delegates
26 Nov 2004 Michael Feathers Mulling Null Sally and Ramon compare notes before meeting Aiden for the first time as Development Manager
24 Nov 2004 Michael Feathers Sally's Exploration Sally looks at some cases for 'Pass Null'
23 Nov 2004 Michael Feathers Ramon Walks home Ramon thinks about his day and politics at work
22 Nov 2004 Michael Feathers The New Guy Sally and Ramon test some code and discover something new about the new guy
22 Nov 2004 Uncle Bob Home Computer of the Future Is this a fraud?
17 Nov 2004 Micah Martin Apples and Tigers Comments on Apple's Tiger Tech Talk
9 Nov 2004 Uncle Bob Singleton vs. Just Create One The case against rampant use of the Singleton pattern
23 Sep 2004 Uncle Bob The Web: Welcome to the 70's Feeling sorry for myself.
31 Aug 2004 Uncle Bob A Wonderful Race Condition A cool discussion about an obscure technical detail.
31 Aug 2004 Uncle Bob Speed Kills Another Tortoise and Hare rant.
21 Aug 2004 Uncle Bob Skepticism Leads to Understanding A rant about something or other.
5 Aug 2004 Uncle Bob I use Visitor all the time A defense of the poor Visitor pattern.