I had the opportunity this year to attend one of the midwest’s premiere community-ran developer conferences, CodePaLOUsa, which was held in Louisville, KY on April 25th-27th.
The first day of the conference was all pre-compiler workshops, which I did not attend (and therefore cannot review).
The first day of the conference opened with a keynote by none other than Richard Campbell, from .NET Rocks!, one of the best podcasts available.
Richard did a fantastic job at the keynote, and had the audience rolling with all the jokes. He told a great story, but what really stuck with me was his endeavor to create software for humanitarian relief efforts through humanitariantoolbox.org. I already see myself getting involved with this at some point.
Session #1 – The Class That Knew Too Much – Matthew Groves
This session was on refactoring techniques and had a (brief) introduction/overview to aspect-oriented program (or, AOP, for short). Matthew is local to me, and he’s given this talk many times all around me, but this was the first chance I’d had to attend one of them. Although I enjoyed the session, there were some technical difficulties that kept arising with the projector and connection. I don’t believe this was an issue with the presenter’s hardware, however, as I witnessed the same issue later on in the same room. Not only that, but the room was quite small and quickly overflowed. As a matter of fact, Matt had to give a second session the next day to accommodate the rest of the individuals. Overall, this is a fantastic session/talk, and Matt does a great job all around.
Session #2 – Deeper Dive into the Windows Phone 8 SDK – Michael Crump
This session was all about the new features in the WP8 SDK. Not having tried any WP development before, I was surprised to see some of the items in these new features. Surprised, because I would have expected some of them to already have been there. Michael presented quite well, but did run into some demo issues that were unable to be resolved during the session. He did, however, make them available via GitHub after the fact. The problem seemed to revolve around flaky internet connectivity, though that cannot be proven at this point I suppose. This room was a lot larger than the previous room, but attendance was relatively low and did not require a large room.
Session #3 – Secure Mobile Application Development – Jamie Ridgway
I hate to say it, but I did not enjoy this session. Jamie did a great job of gathering the information, and presenting it, but that’s all it was. His slides and talk were all based around the top 10 vulnerabilities for mobile applications by OWASP. I could have read that information myself. I would have liked to have seen a few demos scattered in that demonstrated some of the issues. The room held everyone well, and was a nice choice – though it did get rather cold.
Session #4 – Rails for the .NET Developer – Jamie Wright
Let me be clear. I am not a Ruby developer. I am a .NET developer. Why did I choose this session? I love to learn. I enjoyed the beginning of this session, but quickly got lost in the demos. Jamie did a side-by-side comparison of the same application being developed in both .NET and Ruby (Rails). He did things a little different by recording his demos ahead of time, and discussing things while he played them back for us. This worked out okay, but there are a few issues. The first problem is that the video speed was increased – and for people new to Ruby/Rails, this made it difficult to follow at times, even with Jamie giving an overview. The second issue is that after about half-way through, he stopped showing the .NET videos and only showing the Ruby videos. I suppose by that point we had an idea of what the application was supposed to do, but I would have liked to have the comparison. This was a smaller room, and was relatively full, but worked nicely. Jamie did have a technical issue or two with the projector, but luckily things got resolved.
This keynote presentation was given by Carl Franklin, the other half of .NET Rocks!. While I would love to review this keynote speech, Calvin slept in this morning.
Session #1 – All The Buzzwords: Backbone.js Over Rails In the Cloud – Jared Faris
I have to be careful what I say here, as Jared is one of my managers :)
Jared discussed a lot of his architecture choices while he ran the development at a local start-up for 1.5 years. The application was written in Ruby, and utilized quite a few frameworks and packages during development. Not being a Ruby developer, as previously mentioned, I enjoyed hearing about their trials, tribulations, and the many decisions that came up along the way. Jared put a lot of extra time into his slides, utilizing 8-bit style imagery throughout, which I loved. Jared’s talk was located in the same room where lunch and keynotes were held. Attendance, while pretty good, did not warrant that amount of space, and participation/questions from the attendees was minimal to none at best.
Session #1.5 – Everyone Sucks at Feedback – Chris Michel
I was actually not expecting this session, since it was in the middle of lunch. The presenter did a great job speaking, and used a lot of humor in his slides – which was a nice change. Honestly, I didn’t pay enough attention during this presentation (ummm…food!?) to warrant a full review, but I would definitely see him present again from what I did see.
Session #2 – Open Space
A few people, including myself, decided to skip this session and have an open-space discussion on confidence. There were, at one time, about 8-10 people present for this (sorry, I don’t remember everyone!). I found this discussion rather enlightening, as I definitely have a confidence problem in myself. It was good to hear that I’m not the only one, and it can definitely be overcome.
Session #3 – Build a Single-Page App with Ember.js and Sinatra – Chris Meadows
Session #4 – An Introduction to Genetic Algorithms for Artificial Intelligence Using Rubywarrior – James McLellan
Woah. I didn’t realize what I was getting myself into by going to this one. This talk focused heavily on genes and genetic makeup – something I know nothing about. The only saving grace was that it was brought into focus by utilizing a Ruby application called RubyWarrior. This ‘game’ allowed you to utilize your own ‘genes’ (or classes that act as AI – i.e., walk, turn, etc.) You can then bundle these ‘genes’ to try and solve a level in the game. There was a lot of Ruby code involved, which I did expect given the title of the session. Overall, though, James’ presentation style was a little dry. The room was pretty full, though, and seemed to be a good match for the session.
We almost didn’t stay for the closing session, but I’m kind of glad we did. Carl Franklin took over again, asking attendees various development related questions – he inevitably gave away the answers – to which prizes were given away. Trust me, there were tons of prizes given away (we didn’t win anyway), and it was just a fun time.
Overall, I would say that CodePaLOUsa is a great conference. It’s ran by intelligent people – by the community, for the community. My biggest complaints are actually minimal in the grand scheme of things. Some of the projectors and equipment seem to be finicky – they might be property of the hotel, too, I am unsure. Some of the rooms were a little cramped due to the partitioning walls of the hotel. I would have liked more signage as a first time attendee as well. Is it worth the $250? Yeah, I think so. I think so enough that I’ll be attending next year!
See you at CodePaLOUsa 2014!