On Saturday, I attended the 1DevDay conference in downtown Detroit. This was my first year attending, and I didn’t have much in terms of expectations. That’s not to say that I had low expectations; I just didn’t know what to expect. I definitely got more than I was hoping for, and I’m already looking forward to next year’s conference.
So what did I get out of it?
My biggest takeaway came from keynote speaker Ted Neward, who gave a presentation titled “Iconoclasm.” He talked about several historical man versus machine moments, making the point that eventually the machines always seem to win in the end. Automation will eventually kill the status quo. He’s speaking about it in terms of developers and programmers but points out that this is not unique to our industry. Doctors are competing with web sites like WebMD and lawyers with LegalZoom. “Automation threatens programmers more than all other outsourcing sources ever could,” he says.
“How do we stop it?” Neward asks. Well, we can’t. If we continue to do the same job today in the same way it’s always been done, it’s likely that automation will be able to eventually make that job obsolete. However, he goes on, the human brain has the ability to do something can’t be automated. People can think outside the box and invent new ways of doing old things to make progress.
And that’s how programming will survive, according to Neward. He talks about iconoclasts, “destroyers of icons.” He uses historical examples of figures that have had great success by being outside-the-box thinkers, and also some that have failed. In order to be successful, you must combine ideas with execution, and that must be combined with social intelligence. If you aren’t able to convince others that your idea is great, you might as well have not had the idea at all.
Following the keynote, I went to a session by Jessica Kerr: “Functional Principles for OO Development.” I haven’t done much in terms of functional programming, and I think this actually worked for me in the opposite direction. I already do a lot of the recommended practices in my OO programming. This session gave me a way to articulate some of these things that I was doing and gave me some insight into how I can apply them as principles in functional programming.
That was followed by a session by John Hauck where he demonstrated how the GPU can be used to do insanely fast computations. While impressive, this probably isn’t something that I’ll be able to take advantage of immediately, and so I was less interested. (Sorry, but it’s true.) Still, I plan on sticking this in my back pocket until a need arises.
Then came lunch, and a session about asynchronous programming. This session expanded on the async/await keywords, showing how they can be used to solve several different problems and caveats of each.
The second session of the afternoon was a good one. Chris Marinos spoke about F# and why it may or may not be relevant to you. He did a good job of getting me—someone who has been exposed to F# several times before, but has never been intrigued enough to actually try it—excited to actually try it. He tried to present the language in terms of what business value it provides, and he went through tips and “gotchas” for adopting the language. I’m particularly interested in checking out the type providers.
I ended up skipping out on the last session of the day to fraternize with co-workers.
The day ended with a second keynote speaker, Chad Fowler. I’m a big fan of Fowler’s, having read his book The Passionate Programmer. The focus of his presentation was really how to take a lot of what we do as engineers and apply it to your personal life. I enjoyed seeing him speak and was grateful to have him there, but I felt like he never really got to where I thought he was taking us. He’d talk about what we do in the world of software development and relate it to something that he tried that didn’t work. I’d expect him to tell us how he refactored it to work, but instead he’d say something like, “But maybe it’ll work for you,” and move on to the next point. With that said, I did enjoy the content and was excited to have someone that I admire greatly speaking at my local development conference.
That was my 1DevDay experience. It was a long day, and I feel like I got a lot out of it. There’s really not much more that you can ask for from a one day, local development conference!