Test Driven Development = Good, Acceptance Test Drive Development = Bad

For the most part, that was the message at the “Acceptance Testing: Just Say No” by James Shore Meetup tonight at the offices in Santa Monica, CA. James structured the talk as though it was a “fill in the blanks” Anonymous meeting (you know, Alcohol Anonymous, Sexaholics Anonymous, etc). The concept of Acceptance Test Driven Development (ATDD) Anonymous was actually pretty clever and came across pretty well, at least to me.

As for my general notes on the talk, he started with some background on the ATDD area focused on Ward Cunningham and his creation of Fit (aka, Framework for Integrated Test) as an original unit test tool that was co-opted as an ATDD tool. Fit spawned Fitness which is a wiki-based table tool, again, co-opted as an ATDD tool; another TDD tool mentioned was Cucumber.

James noted that it’s unfortunate that its easier to quantify the costs of co-locating teams than quantifying the hidden costs of not co-locating teams, but that in the end it’s better to co-located teams for success. For anyone who’s worked on remotely located teams (me being one of those folks), this doesn’t come as a surprise. I’ve found that my more successful projects, products, and roles were ones where I was co-located with customers and developers.

James mentioned four types of bugs and how to work to eliminate each. Requirements errors can be eliminated (or shall I say reduced) by having customers co-located with the product/development team. Programmer errors can be reduced by using Test Driven Development (TDD). Design errors can be reduced by continuous incremental design, by doing constant code refactoring, and by building in slack each week to do so. Systemic errors can be reduced by performing an RCA on all errors identified. More on these types of errors in a bit.

Now, how would a team work to reduce these four types of bugs? In serial or parallel fashion? Good question, so I asked James. His response was to take a large chunk and just do it, failing that go with TDD first. Outside of his own book and Michael Feathers’ referenced below, a good resource for guidance on adopting TDD are his Let’s Play TDD webcasts that go through real world examples as well as his chapter on TDD in his book. His experience seems to point to the Kaizen approach not working for TDD.

James stressed the importance of cultivating an attitude of “bugs happen to other people” which is an attitude that makes me drool. Having a team that thinks & acts like that? Now that’s sexy. (I know, I know, I’m a nerd.)

The best way to solve co-location issues (i.e., having remotely located teams) without co-locating is via expensive video conferencing equipment or better by plane flights to meet in person. Reading between the lines here is that you can spend all the time & money to get close to a co-located feeling, but until you’re actually co-located you won’t get all the benefits of such a work environment.

In terms of helping solve the issue of eliminating or reducing bugs on legacy software, James recommended Working Affectively with Legacy Code by Michael Feathers. And to read more in-depth on James thoughts on reducing the four types of bugs, check out his blog post on Alternatives to Acceptance Testing.

In short, combine TDD with great customer collaboration and co-located teams.


Sustainable Product Development

H2O Natural Spring Water
Sponsor: H2O Natural Spring Water

I recently attended a panel discussion from PDMA-LA and IDSA-LA titled “Best Practices in Sustainable Product Development“. The following are some rough notes & thoughts I took down while in attendance.

Heidrun Mumper-Drumm spoke about green packaging design noting that packaging equates to 75million tons and 1/3 of our waste stream by weight (~20% by volume). Some ways she noted to reduce this is the use of low impact materials like water-based adhesives in labels, recycled materials and bio-based materials. Other improvements are to make packaging smaller & use less materials. Also under recommendation are eliminating some materials completely like PVC and laminates. Two other recommendations outside of materials used were to properly & legibly give the recycling info of components and to consider packaging as multi-functional (ex: a water bottle used as a vase). A question from the audience pointed our Puma’s new show packaging and Heidrun noted that shoe packaging seems to increase with the price of the shoes with the exception of Louis Vuitton who ships by boat instead of air and cut their carbon impact by 30%. It appears as though she alludes to the supply chain as another way to cut environmental impacts. Heidrun gave a particular shout-out to Women in Green Forum as it outlines women’s impact in Environmental Industries.

Topher Paterno spoke about green materials such as bio-degradables/organics and recyclable/recycled items. A specific note was made of a project between Intel and the University of Delaware that created a circuit board from chicken feathers and soy. He also focused on materials management that allows for easy ways for consumers to return or otherwise re-use a product. After a question from the audience, Topher recommended Ecolect and MaterialsCollection as good reference sites to find green materials.

Dave Pedersen spoke about greening the supply chain and its 5 components: Plan, Buy, Make, Store & Move. The constraints in this field are Cost vs. Quality vs. Service (aka Free, Perfect & Now). He noted that “going green” introduced new constraints of carbon, waste, water & social impacts. Transportation & Facilities have a huge footprint that affects “greenness” and a way to help reduce that is a paperless work environment.

Susan Collins spoke about waste stream management and highlighted how primary packaging & refrigeration accounted for the majority of the footprint for Coke. She also noted that aluminium has the largest carbon footprint by an order of magnitude over other products and that the US goes through 200billion bottled containers per year.

H2O Natural Spring Water
Sponsor: H2O Natural Spring Water

Paul Shustak spoke about being a green product company at Kor. As if prompted by Susan, he noted that less than 20% of bottles get recycled and that the Kor One bottle attempts to create an emotional reaction to water & bottle to entice consumers to use their product over Nalgene or plastic bottles. They also have a different charity that receives a portion of their proceeds and each water bottle color corresponds to a different charity as part of their “Thirst For Giving” campaign. Of the four colors available it was notable that the orange one related to a donation to the Container Recycling Institute of which Susan is the Executive Direction, small world eh? Paul noted that in their research consumers usage responded directly to extreme convenience & incentives. He wrapped up by noting CalMAX was a materials exchange service that allows for companies to put up their excess materials for sale to others looking to purchase specific materials at a discount.

Overall, the speakers all seemed to be passionate about their place in the sustainable product development ecosystem and were aware that they were each but a small component in helping to reduce humankind’s detrimental impact on the Earth. And a final note on the sponsor, H2O Natural Spring Water, is the paper water box the new plastic water bottle?


Happy Birthday To Me!

Its official, I’m 31. Old? Nah. Mature? Hmmm, nope. Ready for what the next year brings me? You betcha!

Thanks to Jessie & West I got an amazing early birthday gift of being an Uncle. Thanks to Crystal, I’ll get an amazing after birthday gift of being a Father. What more could I ask for?

I’ve given it some thought and I’m hoping to that on top of the blessings of becoming an uncle and father, that I’ll be able to accomplish the following in the next year.

1) Be the best father, husband & friend I can be.
I’m certain that the next few weeks & months will be difficult with the lack of sleep and any additional stresses of becoming a new parent. I just hope that I can keep my head out of my ass and be patient with “Uno”, helpful with Crystal and dependable with my friends. I’m hoping all of you out there will keep me honest on this one.

2) Blog regularly.
I’m not going to say blog every day or blog once a week, because I know how spare my time will be. Regardless, I want to keep up this site as a way to keep everyone updated on “Uno” and for me to continue playing with all the fun technology in WordPress. If anyone has tips on great WordPress plugins or a lead on a great customized theme maker, let me know!

3) Read 6 books.
I figure a book every 2 months has to be a reasonable goal. And yes, parenting books will count. I recently read The Lost Symbol by Dan Brown and am partially through several other books. I hope that reading will give me some material to help generate blog posts to help accomplish goal #2.

4) Make something.
No, not another baby. I’m hoping to work on making something tangible outside my normal work. Maybe its a coffee table, maybe its an iPhone app, maybe its a web TV show. Who knows, but I want to make something, I want to be a producer and not just a consumer. Got an idea or want to work with me on something, let me know!

5) Get my fighting weight to under 200lbs.
Its been quite some time since I saw 190 something on the scale. Ok, its been a looong time. I felt really great last year as I was training daily at the Core Performance Center in Santa Monica for the Nautica Malibu Triathlon. I’m hoping that I can work in some regular workouts into my schedule and get back to under 200lbs, which if I recall correctly the last time I was in this ballpark was my honeymoon. Ouch, that’s 5 years ago.

6) Participate in 6 races.
I did 2 5ks and 2 triathlons last year, all were enjoyable. Well, the swim at the LA tri REALLY sucked (I now know more-or-less what it feels like just before you drown) and the 2nd half uphill run at the UniCity 5k sucked as well. Regardless, the feeling of crossing the finish line is amazing. I’m planning to beat my Sprint times at the Nautica Malibu Tri, to aim for the Olympic distance at the LA Tri, to do a duathlon and triathlon with Brian C. down in the OC, and to round out the rest with my friends on the NBCU Race Team (you guys rock!). Plus, all these races should help in accomplishing goal #5. Know of a race in the LA area that you’d like to do, let me know and let’s race it together!

7) Homebrew.
Ok, so this definitely isn’t going to help with goal #5, but I’ve got the supplies for home brewing with the somewhat-ghetto intro-to-homebrewing Mr. Beer kit. I’ve done one batch before back in 2007 or so. If you live in the LA area or are planning to visit LA, let me know and I’ll reserve a special bottle for you!

8) Go to church.
Let the record state that on more than 3 occasions in the last 2 months that I’ve tried to get Crystal to go to a Catholic church out here in LA. Not a Lutheran church where I’d be welcomed at communion, but a Catholic church where I’m not welcome to eat Jesus. Should I consider converting to Catholicism? Maybe. I want to bring some more spirituality back into my life and for “Uno”. Know of a great church in the LA area, let me know!

9) Vegas.
As in, visit Las Vegas. I drove from Bullhead City, AZ to Vegas last year to drop Crystal off at the airport there, but didn’t stay or stop off in the city. I live within driving distance and have for almost 2 years. Its about time I make a trip. Now just to convince Crystal that I its a good idea. Want to hit up Vegas with me, let me know and we can plan it together!

10) Enjoy SoCal, enjoy life.
At the end of the day, I want to be able to say that it was a good day and that I cannot wait for the next. To me, right now, that means enjoying the sunshine & warm weather that SoCal affords me, enjoy outdoor activities, enjoy good food & drinks, enjoy friends & family, and be grateful for all the I have.

Ok, so that’s a pretty good top 10 goals to aim for. If I can wake up on February 25th in 2011 and say that I managed to accomplish each of these, then I’ll be in a pretty good place. So, that’s it, those are my goals. Happy Birthday to me, now let’s start partying and get working on that “enjoy good food & drinks” this weekend… cheers!


Agile Journal Seminar: Agile Comes to LA

The following are my notes from the Agile Comes to LA seminar on Thursday, December 17th 2009. The event was sponsored by AccuRev, Coverity, Electric Cloud, Rally Software, and BigVisible. The event saw leaders from each sponsor talk about how Agile software development techniques and the tools that support them can help you reduce risk, boost the productivity of your existing organization, and cut development costs.

George Schlitz (BigVisible): Agile Hits Ground in the Organization
+ Required, if humorous, reading: You Might Be a CrAgilist If…
+ Educate PMO on new ways to report progress (e.g., Burndown Charts)
+ Educate Compliance/Audit on difference/changes w/Agile
+ Ensure measurements reward the behavior that you want (How do we reward the new behavior?)
+ What does career development now look like?
+ Combine benefits of diverse methods: theory of constraints, lean & agile
+ Don’t measure individuals, measure teams and their success
+ You can’t really create an Agile standard for all teams to follow, just get started w/the basics and let the team determine for themselves what will work for them

Cliff Utstein (AccuRev): Automating Agile Software Development Processes
+ AccuRev – process driven SCM software
+ Product quality is fixed, business requirements persist (increase?), resources may be cut, little/no schedule relief
+ increase throughput by improving software development processes: automating & optimizing

Behrooz Zahiri (Coverity): Managing Software Quality in Agile Environments
+ The earlier you find a defect, the cheaper it is to fix
+ Cheapest to fix: in development; more expensive to fix: during integration; even more expensive to fix: during test; most expensive to fix: during production
+ Static Analysis – like a spell checker that finds your most difficult bugs
+ Coverity helps identify bugs for open source projects at, 11,303 defects have been fixed since March 2003
+ Coverity supports C, C#, C++ and Java

Martin Van Ryswyk (Electric Cloud): Making Agile Work
+ Continuous Integration = Agile; checkin & get instant feedback on integration problems
+ Fast builds (“espresso” builds), automated builds & test on-demand
+ Access for developers/QA/etc. to schedule builds, on-demand builds or stimulus builds
+ Auto build after code checkin to get fast feedback on build integrity/code quality
+ Include pre-flight tests to help reduce build failures

Alex Pukinskis (Rally): Case Study: Customizing Agile Tools for Project Success
+ Current fave book: The Principles of Product Development Flow: Second Generation Lean Product Development by Donald Reinertsen
+ Three meetings: daily scrum, scrum of scrums & regular retrospectives
+ New Rally build due out 12/19 will allow for setup of different types of dashboards built on roles (developer, manager & executive)
+ Remove obstacles for team members ASAP to limit overall delays
+ 100 day delay starts with multiple 8 hour delays

Additional notes from discussions:
+ Look into Bamboo to help with Continuous Integration/automated builds

UPDATE (7 Jan 2010 @ 12:32pm PST): I’ve added links to the presentation files.


Transitioning to Agile Product Development

Last week I attended a PDMA LA roundtable discussion on “Transitioning to Agile Product Development“. The discussion was moderated by a PDMA LA board member and featured the following panelists:

I was hoping to come away with some lessons learned and best practices on transitioning an organization to an Agile one, but the discussion ended up being more of an overview of Agile as many in attendance were unfamiliar with some of the basic concepts. I did manage to meet some interesting people and continue building my local Agile network, but not quite specifically what I was hoping to achieve, silver lining I suppose.

Regardless, the following are my notes from the event. Note that I’ve tried to note the panelists initials where I can attribute my note to them:

  • S.D. – continuous feedback from customers on demos; requirements flexible, time & resources/costs are fixed
  • Basic tenets outlined in Agile Manifesto
  • S.D. – 8hr workday creates a certain # of defects, 10hr workday creates 11x more defects than an 8hr one
  • Comment that Scrum helped elect recent governors of VA & NJ
  • The Standish Group found that 7% of features affect a customers buy/build decision, 13% will affect you vs. competitor decision, 64% no one cares about
  • S.G. – Contracts can be written w/Agile adjustments instead of hardcoding features/cost/date, Mary Poppendieck has some resources on this
    [Jeff Paul – here are some references I found: Agile Contracts by Mary & Tom Poppendieck, Agile Contracts pitch by Mary in 2005, Lean Contracts essay by Mary in 2002]
  • Should be constantly improving processes
  • Understand # hrs/resource & # hrs/sprint and estimate user stories better
  • Check out Reed Hasting’s presentation on Slideshare
  • Check out the Business Agility whitepaper on the site
  • Assume a single project team to get to Agile process & show benefits to help transition larger org
  • Get good coaching & training

I hope to attend more events in 2010 and will do my best to summarize them here… cheers!


Rally’s Agile Success Tour 2009: Los Angeles

agile development - active user involvement is imperative!
agile development – active user involvement is imperative!

I sat through Rally Software’s Agile Success Tour 2009 in LA on March 26th at The Belamar and am pleased to provide my summary below along with some additional and relevant content from Rally. Please do enjoy!

  • A recommended Agile blog to read: The Agile Executive
  • A recommended book to read: Code Complete by Steve McConnell
  • 40-50% of VPs/Directors/Managers and 10-20% of engineers/architects can be expected to leave the organization after implementation of the Agile process
  • Measure what you want to improve, what’s important to you
  • Overall reduction in lines of code by removing duplicative code & unnecessary features/code
  • Know what the goal is, what problem is being solved?
  • Metrics to track: # defects & user stories per Sprint, $ spent, customer satisfaction, time to market
  • Continuous integration will expose defaults/inefficiencies (i.e., source control, change control)
  • Limit work-in-progress, multi-tasking… single task & focus on one thing (a story, project, task)
  • Continue breaking down User Stories until they can be delivered within a Sprint
  • Involve customer in Release Planning & Demos
  • Don’t load Sprint to 100%, sicknesses/vacations/delays/incorrect estimation will account for 20%
  • Servant Leadership: lead by serving, serve by leading
  • Own Vision, continually ask for insights: What’s not working well? What’s working well?
  • Another recommended book to read: Good to Great by Jim Collins
  • Estimating will be rough initially, but they will improve; Give Estimate, Commit to estimate with no repercussions of missing, adjust understanding if estimate missed so that future estimations are more accurate
  • Always leave buffer in Sprints, don’t commit to full list of detailed features, talk about high level themes of releases
  • If you’re getting closer to the end of a Sprint & are over allocated, work with customers to weed out features or scope down features into smaller portions
  • 5 Levels of Planning: Vision set by leadership team, Product Roadmap set by product council, Release Plan set by every affected individual in org, Iteration Plan, Daily Plan (see whitepaper link below)
  • Get something small, but get it done
  • Meetup Group: LA Agile & Scrum User Group
  • If you deliver crap, it doesn’t matter – Christophe Louvion
  • Stay “Releasable” with nightly builds/test, 2 week iteration demos, frequent & rigorous peer reviews

Here are some additional liveblog posts from Rally on the day of the event:

And as a final note, here’s a great white paper that covers the different levels of planning involved in the Agile methodology and provides a great entry point into Agile:
Five Levels of Agile Planning: From Enterprise Product Vision to Team Stand-up


Twiistup Event Recap

Twiistup Los Angeles Tech Events | Twiistup 5 Santa Monica 2.12.09

I recently attended Twiistup 5 in Santa Monica on February 12th and was hoping to meet other digital media folks in SoCal as well as check out some cool, new companies who were demo’ing their sites/products. It was held in an empty airplane hangar at the Santa Monica Airport, which added to the coolness factor of walking into a giant hangar filled with people & booze as though it were a club. There were also free drinks, food, and cigars so who was I to argue?

In no particular order, here are my thoughts on the companies and people I met.

eHow was there demo’ing their site and soliciting for users to join their community (and likely, ideally provide new content) by offering up an iPod nano and cash. Their tag line is “How To Do Just About Everything” and appears to be somewhat in competition with sites like, VideoJug, WonderHowTo, Expert Village and to a lesser extent Wikipedia. eHow offers users articles and videos on how to do just about anything, but also provide users the ability to add their own How-To content and receive cash payments via an ad revenue sharing system. Given the glut of others in this space, I’d give eHow a “meh” out of “awesome!”.

Cougar PoS provide the hardware and software needed for a restaurant to manage its point-of-sales operations. I’m not current on other PoS companies (go ahead and google if you’re interested), but these guys seemed to be headed in the right direction. They manage all their PoS software updates via the web and also handle most customer support via the web as well. They have modules for Menu Management (displayed online & in PoS system), Labor Management (planning staffs shifts), Online Orders and Reservations (apparently handled online, but would be cool if its integrated with sites like / SeamlessWeb and OpenTable), Remote Administration (updating any other module remotely via the web, would be cool to have a related iPhone app as well), and Robust Reporting & Analytics (Sales reports based on menu item, employee, bar item, etc). I will say that the free Molson beer helped peak my interest, but the company appeared to be somewhat sloppy/unprofessional in their approach and appearance. That said, I still think this model makes sense, its more of the SaaS architecture that Google is making famous with their Google Apps products. I’ll give them a score of “neat” out of “awesome!”.

Cuban Rollers had a setup outside the hangar and were handing out free cigars that were pre-rolled by their staff. If you had the patience, they would even roll a cigar for you in-person using one of their trained staff members. I grabbed a few cigars to try out and actually just tested one the other week for my birthday. It had a surprisingly even taste, not too harsh not too light, and even burned unbelievably well. I’ve got a few more that I’ll take with me on my next trip to Phoenix to celebrate the birth of my nephew, Jaxson Hunter Beal. Cigar Rollers have groups across the US who can come to your event and roll cigars for you; I’m thinking this would work great for anyone having a annual BBQ, graduation event, or other large ceremonial gathering. I give them a “sweet!” out of “awesome!”.

Yammer is one of those tech companies that’s hovering just below the horizon and has the capability to explode into the mainstream or shrivel to nothingness only to be bought by AOL. They amount to a private label, SaaS, Twitter/chat/project tracking system. They claim to have several companies using their service heavily (eg., Mahalo, Rubicon Project, Ad:Tech, Cisco, Xerox) and provide Desktop, iPhone and Blackberry clients. The site will be familiar to the Twitterati, but the big issue here is the chicken/egg scenario for companies. The tool is most useful when many people from a company/department/project team are using it, but until you reach that critical mass its almost useless and a drag on productivity. Regardless, there’s opportunity there but merging the product with something like Basecamp would provide for a great toolset. That said, I’d give Yammer a ranking of “cool idea” out of “awesome!”.

Next up is runtriz, an iPhone-based product that allows guests to quickly & easily order hotel services, amenities and more anytime/anywhere. It provides a basic menu of options (similar to the binder usually prevalent in hotel rooms) listing all services the hotel provides as well as recommended local purveyors. The product promises the ability to upsell in-room items and hotel services plus generate revenue from local attractions paying for special placement on your device. Hotel guests can add the software to their existing iPhones, but the hotel can easily loan one out and if lost charge for the device plus a slight markup to cover administration. The idea is rather interesting and adds a touch of the hip & cool factor to a hotel room, but unless they have a large supply of backup devices I’d be afraid that people would regularly steal and/or break the devices. Who knows, maybe they’ve worked up a special pricing deal with Apple for purchasing/support. Regardless the product is slickly designed and replicates the 20th century binder concept into a 21st century device. That in mind, I give runtriz a “badass!” out of “awesome!”.

Note, my ranking scale ranges from “retch” to “awesome!” with many stops in between. No concrete & defined spectrum of all rankings currently exists, but I think you’ll get my general point in the individual rankings mentioned for various companies.


Work Sucks & I Travel Too Much

Sorry for not getting any photos uploaded in FOREVER. I’ve got such a ridiculous backlog of photos and story ideas, the only problem is my 5 monstrous projects at work all hitting around the same time and having to travel or have visitors for what seems like 27 straight weekends. (Jerry Seinfeld comment: “Not that there’s anything wrong with that.”).

All together, I feel exactly like this cartoon (meaning that my life is devoted to NYC at this point, sorry everything else):

I don't have friends. I have New York.

Hulk Hogan & NBC Grant My Wish

It was only a few days ago that I wished that someone bring back the retro sports show American Gladiators. Well, apparently someone at NBC (and in reality it was at Reveille) thought the same thing. Thanks to Ben Silverman, NBC is working on a mid-season show hosted by Mr. Hulkamania that will pit your average Joe against the beefed up gladiators.

No word on whether Gemini, Nitro, Sabre, Siren, or Zap will reprise their rolls from the original series. Rumors are swirling that Brian Bosworth, Ickey Woods, Bo Jackson, Kerri Walsh and Serena Williams will appear on the show further extending their sports careers.


Knight Rider & NBC Team Up For Retro-Awesomeness

Knight Rider and NBC Retro-Awesomeness

Word broke this week that NBC is in the works to produce a remake of the 80’s classic Knight Rider show. Not much information is available except to say that The Hoff won’t leading this version and that KITT will have Transformers capabilities (i.e., will be able to change its shape).

While I LOVE the Knight Rider remake idea (uh, hello A Team remake?), I’m not sure how I feel about the conceptual merge with Transformers. I think someone thought a bit too far outside the box on that one; I’m sure the same exec wanted to do a Strawberry Shortcake remake/remix with Jem & The Misfits.

Oh, and while I’m on the topic of retro-awesome shows that need a modern comeback touch (a la Knight Rider) I must mention American Gladiators. I can just see Mark Burnett remixing that show with Survivor, awesometown!