This year’s DevLink conference was back in Chatt-Town at the downtown marriot and it was an incredible conference. This was my first conference also, so that made it even better. Not only was it my first conference, but it was also the first time I got to hang out with my boss at appendTo, Mike Hostetler.
The first night Jim Cowart, Elijah Manor, Mike Hostetler, Jonathan Sampson and I went and ate some ice cream at the Ice Cream Show right near the pedestrian bridge downtown. Also hanging with us was Todd Anglin from Telerik. Left to right: Mike, Todd, Elijah, Me and Sampson. (Jim took the picture.)
The keynote at this year’s DevLink was the one and only Douglas Crockford! He delivered a great keynote called, “Programming Style and Your Brain.” The basic premise of the keynote is that adhering to a style guide while taking extra time and effort can greatly reduce the amount of bugs in code.
Douglas delivered a couple of great one liners such as, “There’s no crying in programming,” “If you’re not consistent, it just looks stupid,” and “Good style can produce better programs.” Also hanging with us here is Dave Purdon.
Jim Cowart had the first session of the day with his Event and Messaging Patterns talk. Jim is a Sr. Architect at appendTo and will blow your mind with knowledge of patterns and architecture. This talk specifically was about how how events and messaging provides Decoupling and SoC, Testability, portability and interoperability. Through libraries such as his own https://github.com/ifandelse/postal.js, messaging provides a way to communicate between modules while maintaining good Separation of Concerns in the application.
Through various messaging channels, topics can be published and subscribed to to provide a great framework for communicating between modules. This allows multiple modules to listen to the same topics and react differently depending on the needs of each individual module.
“Testing code is about delivering value.” Alex argues that while most customers don’t care about testing, testing is the best way to ensure a quality project. Through the use of Behavior Driven Development, the developer is able to guarantee that the customer’s required set of behaviors is delivered in the final product. These are his qualities of testable code:
- Clear intent
- Distinct components
- Decoupled interactions
- Isolated dependencies
The final session was a mind-blowing presentation on Erlang and the Erlang Runtime by Bryan Hunter from Firefly Logic. Bryan took a deeeeep dive into the blazingly fast Erlang Runtime. He demonstrated some of Erlang’s language features, spoke of the OTP, and then the runtime. There was also a brief history of how Erlang was developed by the telecommunication industry to manage connections. He then proceeded to run Erlang on three independent OSs the first being his 64-bit Windows laptop, the second being a VM of Ubuntu on the same laptop, and the third being (amazingly) a Rasberry PI! These three devices had seamless communication among one another and were able to run programs with hundredss of thousands of processes in mere milliseconds. After his talk, I am ready to take a deep dive into Erlang myself!
I also attended two sessions covering two topics of the latest ASP.NET MVC release. John V. Petersen covered both WebAPI and MVC4 Essentials. In the WebAPI talk, we covered the basics of REST and how to implement the basic REST verbs using WebAPI. The MVC talk covered developing a basic MVC application and using MVC as a client to the WebAPI.
David covered using several different frameworks for REST such as RestSharp and ServiceStack. He also spoke about one of his favorite NoSQL DB’s RavenDB.
Burke talked at length about the history of the browser leading us to where we are now with NodeJS, and then proceeded to develop a small API using ExpressJS. Burke was able to build an API that connected to a MySQL backend.
Elijah’s talk on underscore covered how to use this it to replace what would be complicated JS code with a smaller, easier to use API. Things such as iterating, finding, filtering, binding, joining, concatinating and several other APIs are offered with underscore and allow for writing much cleaner, reusable code.
Then there was the EPIC closing keynote with Elijah, Jim, Byran, James Kovaks and Douglas Crockford!
It was extremely exciting and awesome to see several close friends and appendTo employees on the same stage with Douglas and James. There was a 50-minute Q&A session that went extremely well.
All in all, DevLink 2012 was an incredible event and I was honored to be around leaders in our industry. I already cannot wait ’til next year!
~This blog is cross-posted at Jonathan’s personal blog.