About Me

Training

Nothin But .Net Developer Bootcamp

Navigation

Search

Categories

On this page

Never Stop!!
Back In Canada!!
The Journey Home
Update To BDDDoc
Slightly Different Way To Write Unit Tests
Favourite quote of the day
Reflections on 12 years of marriage!!
When I say bootcamp I mean bootcamp!!

Archive

Blogroll

 Agile Developer Venkat's Blog
 Ayende @ Blog
 B#
 Barry Gervin's Software Architecture Perspectives
 Boy Meets World
 Brad Abrams
 Canadian Developers
 Christopher Steen
 Claritude Software News
 Clemens Vasters: Enterprise Development and Alien Abductions
 Coding Horror
 Coding in an Igloo
 Dare Obasanjo aka Carnage4Life
 Darrell Norton's Blog [MVP]
 David Hayden [MVP C#]
 Don Box's Spoutlet
 Eric Gunnerson's C# Compendium
 EZWeb guy: Jeffrey Palermo [C# MVP]
 Fear and Loathing
 Generalities & Details: Adventures in the High-tech Underbelly
 Greg Young [MVP]
 Greg's Cool [Insert Clever Name] of the Day
 IanG on Tap
 Ingo Rammer's Weblog
 ISerializable - Roy Osherove's Blog
 James Kovacs' Weblog
 Jason Haley
 Jean-Luc David
 Jeremy D. Miller -- The Shade Tree Developer
 JetBrains .NET Tools Blog
 Jimmy Nilsson's weblog
 John Bristowe's Weblog
 John Papa [MVP C#]
 Jon Skeet's Coding Blog
 JonGalloway.ToString()
 Jump the Fence or Walk Around
 Lambda the Ultimate - Programming Languages Weblog
 Larkware News
 Lutz Roeder
 Marquee de Sells: Chris's insight outlet
 Martin Fowler's Bliki
 Mike Nichols - SonOfNun Technology
 MSDN Magazine - .NET Matters
 MSDN Magazine - All Articles
 OdeToCode Blogs
 Onion Blog
 Planet TW
 Raymond Lewallen [MVP]
 Rockford Lhotka
 RodMan's Corner
 Roger Johansson's blog
 Sahil Malik - blah.winsmarts.com
 Sam Gentile's Blog
 Scott Bellware [MVP]
 Scott Hanselman's Computer Zen
 ScottGu's Blog
 secretGeek
 Service Station, by Aaron Skonnard
 Signum sine tinnitu--by Guy Kawasaki
 Stephen Toub
 Steve Eichert's Blog
 Steven Rockarts
 The Blog Ride
 The Coding Hillbilly
 The Daily WTF
 TheServerSide.net: News
 Tim Gifford
 Vance Morrison's Weblog
 you've been HAACKED

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

RSS 2.0 | Atom 1.0 | CDF

Send mail to the author(s) E-mail

Total Posts: 431
This Year: 1
This Month: 1
This Week: 1
Comments: 1158

 Sunday, November 30, 2008
Sunday, November 30, 2008 12:27:30 AM (Mountain Standard Time, UTC-07:00) ( Inspiration )

The only limits we have are the ones we place on ourselves!!!

http://www.youtube.com/watch?v=nalIyli4W2w

Comments [1] | | # 
 Saturday, November 29, 2008
Saturday, November 29, 2008 10:49:09 AM (Mountain Standard Time, UTC-07:00) ( Family )

Our feet are finally back on Canadian soil. The Lord blessed us with a solid vehicle, great road conditions, and amazing travellers!! We are staying with family for a week until we can sort out where we are going to live (it will be in Calgary).

Just to give you an idea of the kind of travel time we put in over the last 5 months, here is a rough breakdown:

Calgary,AB - Vancouver,BC - 972km (about 10 hours 46 minutes)

Vancouver,BC - Astoria,OR - 517km (about 5 hours 29 minutes)

Astoria,OR - Austin,TX - 3859km (about 1 day 11 hours)

Austin,TX - Panama City Beach,FL - 1324km (about 13 hours 5 minutes)

Panama City Beach,FL - Orlando,FL - 623km (about 6 hours 8 minutes)

Orlando,FL - Dominican Republic (about 4 hours by plane)

Dominican Republic - Orlando,FL (about 4 hours by plane)

Orlando,FL - London,UK - (about 9 hours by plane)

London,UK - Warwick,UK - 158km (about 1 hour 52 minutes)

Warwick,UK - London,UK - 158km (about 1 hour 52 minutes)

London,UK - Broadstairs,UK - 127km (about 1 hour 58 minutes)

Broadstairs,UK - Dover,UK - 34.9km (about 43 minutes)

Broadstairs,UK - Calais,FR - 47.1km (about 1 hour 24 minutes - by ferry)

Calais,FR - Duesseldorf,GER - 403km (about 3 hours 42 minutes)

Duesseldorf,GER - Bonn,GER - 72.6km (about 52 minutes)

Bonn,GER - Munich,GER - 559km (about 5 hours)

Munich,GER - Las Vegas,NV (about 14 hours by plane)

Las Vegas,NV - Orlando,FL - 3877km (about 5 hours by plane)

Orlando,FL - Daytona Beach,FL - 83.5lm (about 54 minutes)

Orlando,FL - Stamford,CT - 1707km (about 16 hours 52 minutes)

Stamford,CT - Philadelphia,PA - 223km (about 2 hours 33 minutes)

Philadelphia,PA - Sandusky,OH - 774km (about 8 hours 2 minutes)

Sandusky,OH - Baraboo,WI - 779km (about 7 hours 58 minutes)

Baraboo,WI - Minot, N Dakota - 1168km (about 11 hours 48 minutes)

Minot, N Dakota - Medicine Hat, AB - 822km (about 8 hours 46 minutes)

All in all, an amazing trip!!!

Comments [3] | | # 
 Thursday, November 27, 2008
Thursday, November 27, 2008 12:08:31 AM (Mountain Standard Time, UTC-07:00) ( Family | General )

After almost a half year away from home, the traveling Boodhoo wagon is making its way back to Calgary. Contrary to popular belief, we did not setup shop in Austin. We have unfinished business to attend to in Calgary, and will be staying there until the end of April. At that time we will be heading off on the road again for more travels.

I have been making note of our journey and destinations this past year and will blog a quick summary post of our travels next week once we arrive back in Canada!!

It has been a truly amazing journey for our family, and we truly feel blessed to have been able to have the opportunity to undertake these travels, meet so many amazing people, and see so many amazing things.

God Is Good!!

Comments [2] | | # 
 Tuesday, November 25, 2008
Tuesday, November 25, 2008 5:15:00 PM (Mountain Standard Time, UTC-07:00) ( Tools )

In the Las Vegas edition of Nothin But .Net my TA  Scott Cowan made some updates to BDDDoc. BDDDoc is a tool I wrote that you can use to quickly generate a simple HTML report based on your test classes. Scott added an update to integrate with the test results of MbUnit (currently the tool can report against any codebase regardless of the testing framework being used). Now the report also shows coloring red/green depending on whether a given observation is passing or not. Here is a screenshot of a portion of what the new report looks like:

image

The tool currently takes advantage of my current naming style to generate natural sentences from the names of the concerns and observations.

Develop With Passion!!

Comments [2] | | # 
Tuesday, November 25, 2008 7:15:00 AM (Mountain Standard Time, UTC-07:00) ( C Sharp )

I was in the middle of the last Nothin But .Net class (more on that in a later post) and I started playing around with a slightly different way to write unit tests (inspired by the look of MSpec). It was cool to build it/demo it/ and use it in front of the class. Here is some sample code written using the new style:

[Concern(typeof (ShoppingCart))] public class when_a_bag_of_ruffles_chips_is_added_to : a_shopping_cart_with_a_can_of_pepsi_in_it { static IShoppingCartItem an_item_for_a_bag_of_ruffles; static IProduct a_bag_of_ruffles; context c = () => { an_item_for_a_bag_of_ruffles = an<IShoppingCartItem>(); a_bag_of_ruffles = an<IProduct>(); when_the(shopping_cart_item_factory).is_told_to(x => x.create_a_shopping_cart_item_from(a_bag_of_ruffles)) .Return(an_item_for_a_bag_of_ruffles); }; because b = () => sut.add(a_bag_of_ruffles); [Observation] public void an_item_for_the_bag_of_ruffles_should_be_stored_in_the_cart() { shopping_cart_items.should_contain(an_item_for_a_bag_of_ruffles); } [Observation] public void should_have_items_for_both_the_can_of_pepsi_and_the_bag_of_ruffles() { shopping_cart_items.should_contain(an_item_for_a_can_of_pepsi, an_item_for_a_bag_of_ruffles); } }

The use of the lambdas for the context (setup) and because(action of the system under test) causes them to not jump to the eyes as quickly as the concern and the observations (as they attributes help draw your eyes to them faster. Lots of tests were written in class. The context block can be shared with other contexts that occur up the hierarchy. Outside of the mechanics of how setup and teardown are now handled, it is still very much a NUnit/MbUnit flavoured test with a heavy BDD spin on it. One of the nice things that I have started taking advantage of is having the system under test automatically created for me (in a base class, with the option to override). I have also put in a lot of effort to shield myself from the noise of mock object frameworks and testing specific nomenclature (notice the an method).

I am going to be releasing some more stuff on this in the next couple of days. I just wanted to give a sneak peek. You will notice that I have opted to not bother trying to come up with meaningful names for the context and because fields. I name the fixture/concern to be descriptive as to the context of the sut I am testing, and the names of the observations fill out the rest of the meaty details.

Thoughts?

Develop With Passion!!

Comments [15] | | # 
 Friday, November 14, 2008
Friday, November 14, 2008 2:46:00 PM (Mountain Standard Time, UTC-07:00) ( General )

In response to a great conversation I had with a friend, I just wanted to share a quote that I read in the latest issue of Psychology Today. The article focused on the concept of late bloomers in different fields of work. This quote is very similar to statements that I make in my courses:

“The moment we believe success is determined by an ingrained level of ability, as opposed to resilience and hard work, we will be brittle in the face of adversity”

Develop With Passion!!

Comments [2] | | # 
Friday, November 14, 2008 2:01:00 PM (Mountain Standard Time, UTC-07:00) ( Family )

This past Sunday (November 9th), my wife and I celebrated our 12th wedding anniversary. We went for our first couples massage, spent 40 freezing minutes at the Orlando ice bar, and then had an great meal at an amazing restaurant named Texas de Brazil.

As we sat back to reflect on our last 12 years together and where we want to go together in the future I thought I would share some tips that can possibly help people who are walking down this awesome road:

  • If you put God at the center of your marriage you will form a cord of 3 strands that will stand through the tests (and they will come!!)
  • Show each other that you love one another, every day!!
  • Pray together
  • Dream big together
  • Plan together
  • Stop and think before you blurt out something you will regret in 10 seconds
  • Be open and honest about your feelings, fears, and aspirations
  • If you have kids, let them see how much you adore each other. Showing your kids that you are affectionate to your spouse will give them a healthy outlook on what marriage is about.
  • Don’t be afraid to get upset at each other, but make sure you don’t let the sun go down on your anger

I am sure I could go on and on. Marriage is a blessing and one of the most amazing gifts that we can experience on this Earth.

What are some tips that you can share that help your marriage flow?

Love with Passion!!!

Comments [10] | | # 
 Friday, November 07, 2008
Friday, November 07, 2008 3:26:00 PM (Mountain Standard Time, UTC-07:00) ( Training )

I am often surprised by the number of times I hear from students of the bootcamp the phrase:

“I was not prepared for the intensity of the week”!!

My use of the term bootcamp is not a marketing pitch. You WILL:

  • be exhausted at the end of the day
  • spend no less that 14 hours in a course day
  • have your longest days on Thursday and Friday (historically, 20 – 24 hours is not uncommon)

On the plus side you WILL also:

  • get to spend a lot of time pair programming with different groups of people
  • engage in awesome conversation
  • watch hilarious video clips during breaks!!
  • enjoy amazing meals!!

The Philadelphia course is pretty much full, so this is really a note to people who will be taking the course next year!!

Develop With Passion!!

Comments [6] | | #