Rethinking Enterprise – Ted Neward
Ted started the day off with a bang. He has a knack for pulling in interesting tidbits from other disciplines and weaving their implications into a development related story. In our textbooks, “the problem and its solution are never far apart.” The implication on how we think about software and big questions is simple: We tend to try solving problems using the latest technology we’ve learned. His example of coming back from training on ASP.Net MVC to hear your boss ask for a WoW clone was hilarious.
The discussion on the problem with best practices really resonated with me.
Targeting best practices is a recipe for mediocrity. They’re best practices because everyone is doing them. And there’s no such thing as a best practice anyway. It’s all about context. Even breathing isn’t a best practice. Try breathing underwater!
Pro tip: If you see Ted speak, have your phone ready to take a picture of his final reference slide. After hearing his excellent “Iconoclast” keynote and KCDC 2012, I read a few of the books he referenced. The guy knows how to pick some fine dead trees.
5years6figures – Dustin Thostenson
Dustin’s cleverly titled session was eerily similar in a few spots to my upcoming “Becoming an Outlier” talk that I’m preparing for KCDC 2013. He used unique and colorful imagery throughout his slides and provided some great pointers for people at all stages in their career. I particularly enjoyed his insight on being independent. Dustin recommended dropping the taboo on talking money with friends – he discusses it openly with fellow indies to help each other assure their rates remain in-sync with the market. To reflect the importance of this point, he showed a slide with a pile of hamburgers on one side, and steak on the other. His point: You want to be viewed as the steak, not the hamburger, and if you don’t charge a premium price, how do they know you’re a premium product? He also pointed out that knowing when something is deficient is the mark of an expert.
My key takeaway from Dustin is finding an intersection between passion, natural ability and the market feeds on itself in a powerful virtuous cycle. The unique highly visual slides on going broad vs deep really stuck with me as well. I really enjoyed chatting with Dustin after the session – it’s these sorts of interactions that make conferences great.
Let’s Get CRUDdy: Building an App with AngularJS and Node.js – JP Richardson
I’ve been watching screencasts on Angular over the last month, so I’ve been looking forward to seeing JP present this session. He didn’t disappoint. JP was honest that Angular is highly opinionated and requires ng- prefixes all over your markup, but that’s okay with me. Its exceedingly “magical”, but I must admit the resulting simplicity is compelling.
He moved through steps in his code via a command line app that I believe he wrote. This was a really cool alternative to live coding. The results were instant, much like a cooking show that pulls cooked brownies out of the oven after merely mixing the ingredients. I also admired his use of an iPad for his notes while using his laptop to display his deck and code samples. And his example app was sufficiently real-world and extremely polished looking for a demo thanks to Twitter Bootstrap and his eye for detail. This was one of the most technically polished and code heavy presentations I’ve had the pleasure of attending. Bravo JP!
Tool or Die – Zach Leatherman
Zach ran through a wide variety of web dev related tips and tools, focusing heavily on markup, text manipulation, and advanced CSS. I’m ashamed to admit that I’ve been using the “wrong” quotes all these years. Zach pointed out this common problem and how much using the “right” quotes improves readability. He pointed out a great option for testing in older browsers using a web app called BrowserStack.Net. This is a boon for poor souls like me who need a way to test IE8 on Windows8 and are cursed with a processor that doesn’t support Hyper-V.
I learned Firefox re-evaluates media queries on viewport resize. Chrome doesn’t. Firefox also shows what font was ultimately applied within Firebug. Chrome doesn’t do this either. Firefox isn’t the cool kid on the block anymore, but glad to see it continues to be competitive. Zach laid out his presentation in a unique way, relying totally on hand-made lean HTML markup that slowly blossomed as he walked us through topics. I really enjoyed this iterative and novel approach – it was the perfect choice for such a markup heavy session.
iOS Programming for the .Net Web Guy – Lee Brandt
My compadre’ (and chauffeur to Lincoln) Lee Brandt stepped into the Lion’s den by presenting to a room full of .Net devs on iOS and XCode. Lee is always fun to watch because his passion for coding and transparent demeanor. Lee contrasted various pieces of XCode with Visual Studio and walked us through explanations of Objective C’s syntax in comparison to C#. I learned XCode is wicked intimidating looking at first blush, but he pointed out that Visual Studio is no less complicated – it just hides the complexity from us initially by collapsing more panels.
Lee was honest that static methods in Objective C seem to be just like C#’s, even though various confusing blog posts try to make it sound different. It’s really refreshing to see such a seasoned veteran admit to some confusion as he’s ramping up on a totally new paradigm. Thankfully someone jumped in with the answer: Static in Objective C means the method has file scope. Lee’s always eager to know the answer, and that’s how you get where he’s gotten. Years of checking your ego at the door and asking the right questions transform average devs into coding powerhouses.
Embarrassing Coupling Problem? Let’s solve that with Dependency Injection
I closed out the day by presenting my talk on DI. I received a number of great questions and feedback along the way. This was my first chance to apply various public speaking techniques I learned from Speak to Win. This is an excellent book that’s chock full of concrete tips to improve your effectiveness as a public speaker. I focused on drastically simplifying my slides and instead focusing on good eye contact with my audience. The beauty of this approach is you can read when the audience is confused, excited, or bored and adjust accordingly.
It’s a load of fun presenting to such an engaged audience. I was really excited to see a nearly full room of people who have never used an IoC container, but were eager to learn. I love teaching and speaking…perhaps even more than coding. Attempting to hold a crowds attention is a curious challenge, but a total rush when you succeed. And much like coding, it scales.