Test Driven Development argues that writing a test first and then making it pass as a development philosophy and practice will lead to less unnecessary code being written and consequently improve productivity. Additionally, since all code is covered by tests quality will be improved and maintenance made easier.
In the early days of extreme programming when the advantages JUnit brought to development were being explored the TDD folks were very dogmatic about this practice. The test first methodology found its way into many of the popular agile processes as well such as scrum.
Jacob Proffit wrote
- three years ago now - on a study to determine if test first or test later development was more productive and obtained higher quality. Which is interesting as even now half the battle it getting all developers to unit test. However, the report seemed to find that:
The control group (non-TDD or "Test Last") had higher quality in every dimension--they had higher floor, ceiling, mean, and median quality. The control group produced higher quality with consistently fewer tests.
This is how I develop and only because I find it easier that way. I write the code and then ensure it is working through functional tests before slapping 100% unit test coverage over all the code that has been written.
For instance I am currently reworking the engine in this blog and moving it from python to java. I have functional tests that I write which hit the servlets directly and then i build the feature underneath it.
I make sure that the black box testing is correct and once it is I go over all the internal code that supports it and put unit tests over everything to make sure I haven't let through any bugs that the functional testing did not find.
At work we are currently building a new order capture system and this is the same process. I have orders flowing in through a remote interface which drove development. The first asynchronous part of it is complete and is now unit tested. The second part is still have some design and functional issues, but once that is hammered out then the unit tests will go over it.
I guess the thinking on my part is that once code is no longer volatile then it should be tightened up and made maintainable by unit tests.
But, like any ideal process, this is never always true in practice. Some methods become non volatile quickly and have no design issues. So they can be unit tested immediately. For instance we have some restrictions on what data must be presented with an order so that we can bill and fulfill the order.
These don't change and if they are wrong can destroy all functional testing, so they were unit tested as they were written to make sure there were no bugs from the restrictions. So the whole thing is fluid and comes down to the individual developer and how they are more comfortable writing code for a particular situation - as long as they unit test.
Phoenix Eats Out
is the restaurant review site for Phoenix
and Old Town Scottsdale
which lists the modernist and contemporary restaurants, taverns and bars in the greater Phoenix area.
This is the list of the most popular restaurants pages from phoenixeatsout.com that have been viewed the most;
My personal favourite restaurants in Phoenix are AZ88
, Humble Pie
, Orange Table
, The Vig
and others coming close behind. View the complete list with the photo-journalistic style images on phoenixeatsout.com
Arizona is an outdoor state and has lots of hiking in the city and around the state. Phoenix is unusual for most cities in having several large mountains in the center of the city with great hiking. Anyone who comes to Phoenix has to do the Echo Canyon trail on Camelback
and the Summit Hike on Squaw Peak
or Piesta Peak. The views of the city, suburbs and surrounding mountains are wonderful from Camelback and Piesta Peak.
For more experienced hikers there is the McDowell Mountains in North Scottsdale that has several difficult and strenuous hikes in Tom's Thumb
and Bell Pass
. Alternatively, you can hike the highest mountain in Arizona. At 12,600 feet Humphrey's Peak
is a long and difficult hike.
Between 2004 and 2009 this site, southsearepublic.org
, was a constitutional blog based on scoop which focused on Australian and global constitutional issues.
One of the strongest aspects of it was the development of constitutions by those involved in the blog. These constitutions are the outcome:
The constitutions were built using principles from Montesquieu's separation of powers, the enlightnment's universal political rights and the ancient Athenian technology of sortition and choice by lot.
South Sea Republic started in 2004 as an Australian constitutional blog in 2004 based on scoop software. It was an immigrative outgrowth of Kuro5hin. The archives for each year since then;
The articles are ordered by views.
I am an Australian living in the United States as a permanent resident.
I am a software developer by trade and mostly work in Java and jump between middleware and front end.
I originally worked in the New York area of the United States in telecommunications before moving to Washington DC and
working in a mix of telecommunications, energy and ITS. I started my own software company before heading out to
Arizona and working with Shutterfly. Since then I have joined a startup in the Phoenix area and am thoroughly enjoying myself.
I do a lot of photography which I post on this website, but also on flickr. I have a photo-journalistic website which lists
the modernist and contemporary restaurants in phoenix. I have a site on the Australian Flying Corps [AFC]
which has been around since the 1990s and which I unfortunately
lost the .org URL to during a life event; however, it is under the www.australianflyingcorps.com
The AFC website has gone through several iterations since the 90s and the two most recent are Australian Flying Corps Archives(2004-2002)
Australian Flying Corps Archives(2002-1999)
which are good places to start.