Andrew Harcourt
  • Have me speak
    • Governance
    • Ask for the unreasonable… and then get out of the way
    • 'Good enough' software
    • Agility in business: what we can learn from the software industry
    • How to engage with the software industry
    • People are a distributed system
    • Technical
    • Messaging patterns for scalable, distributed systems
    • Inversion of control from first principles
    • Your domain model is too big for RAM (and other fallacies)
    • Back to basics: simple, elegant, beautiful code
  • How may I help?
    • Let's talk strategy
    • Coffee with Andrew
    • Project rescue
  • Articles
  • On the web
    • uglybugger on GitHub
    • Andrew Harcourt on YouTube
    • uglybugger on Twitter
    • uglybugger on SlideShare
    • uglybugg3r on Instagram
    • Andrew Harcourt on LinkedIn
    • Ivory Digital

Inversion of control from first principles: Top Gear Style

NOTE: This talk was first delivered before Clarkson decided that punching someone in the face over a steak was a good idea. When I deliver this talk now I use different subject matter.

Tonight: James May writes “Hello, World!”, Richard Hammond cleans up the mess and Clarkson does some shouting.

When most people first try to apply good OO design the wheels fall off as soon as their app starts to get complex. TDD, Mock of T, IoC, WTF? What are these TLAs, why should you care and where’s that owner’s manual when you need it, anyway?

Most people are afraid of trying TDD and IoC because they don’t really know what they’re doing. In true Top Gear spirit we’re not going to let ignorance prevent us from having a go, so sit back and watch us point a compiler in the general direction of France and open the throttle.

In this talk we’re going to introduce inversion of control from first principles so that it’s not just an abstract concept but a real, “I finally get it” tool in your toolbox. We’ll start with “Hello, world!” and finish by writing a functioning IoC container - live, in real-time and without a seat-belt - and you can take the code home afterwards and test-drive it yourself.

In the right hands, IoC is a very sharp tool. Just don’t let Clarkson drop it on his foot…

*Actual Top Gear presenters may not be present. But it will be awesome anyway.

Target audience
Architects, team leads, software developers
Approximate duration
60 minutes including questions

Talk video

There is a version of Inversion of control from first principles: Top Gear Style that I presented at DDD Brisbane 2012 on YouTube.

Work

I'm at Octopus Deploy, helping to ship software that helps people ship software. Other interesting places I've been before Octopus include ThoughtWorks, Readify, Zap BI, Realex Payments and TRL.

I'm also a co-founder at Stack Mechanics, one of the organisers of the DDD Brisbane conference and, in my spare time (ha!), I also run my own photography business, Ivory Digital.

I'm a fan of high-quality code, domain-driven design, event-driven architecture, continuous delivery and, most importantly, shipping code that works and that solves people's problems.

I have a number of small open-source creations, including Nimbus, ConfigInjector and NotDeadYet, and am an occasional contributor to several more.

I'm a regular speaker and presenter at conferences and training events. My mother wrote COBOL on punch cards and I've been coding in one form or another since I was five years old.

Play

Cyclist. Photographer. Ballroom dancer. Motorcyclist. Occasional sailor. Lapsed fencer.

Subscribe

Twitter

Follow @uglybugger
Tweets by @uglybugger