Wednesday, October 29, 2014

Computer Tradeshows

I recently attended the Strata + Hadoop World conference in New York and it reminded me of the first computer tradeshow I ever attended: COMDEX. I was going to school at the time and was working as a consultant to pay my way. Las Vegas was only a few hours away by car and so a couple of us loaded into one and headed down. We spent 2 days at the conference and came home with a ton of crap. None of us realized that they gave away free stuff at conferences and so we gathered something from every booth we visited. Our bags got so full, we had to find more. In the end, the conference was more about gathering and not at all about computers. Unfortunately most of the stuff I picked up was useless and got thrown away.

I'm not sure why COMDEX died but eventually it did and for that I am sad. I will always remember it as a fun place even though I didn't learn much about computers.

Fast forward through all of the conferences and tradeshows I have attended and now I realize it isn't about the free stuff I bring home, it is about learning and improving my own skills. Strata + Hadoop World is an interesting conference because it mostly revolves around processing and analyzing large amounts of data. As video games produce large amounts of data, it is very relevant to what I do. I learned a lot at the conference but also picked up a couple of T-shirts in the process. After all, I had to live up to my original COMDEX roots.

Wednesday, October 22, 2014

Programming Languages

My oldest son is back in college and currently working on a really long programming assignment. The course requires him to use the Java programming language and he is not very happy about it. At the beginning of the project, he was told by the teaching assistants that his code would approach 5,000 lines of code and take 3 weeks to write. Part of the reason for the class is to show the flexibility of Java. My son doesn't see it that way. His preference would have been to use Erlang. He could do everything the 5,000-line Java program does with 25 to 30 lines in Erlang.

This brings up the topic of programming languages. Not all of them are created equal. If you want to write something that runs very fast and only needs to run on one platform, do it in Assembly. If you need something to run as fast as possible but it may run on a number of different operating system (i.e. Linux, Windows, or Mac), then use C. If you are working with statistics then R is your best choice. A good software developer will know the benefits of a number of different languages and apply the best one for the problem at hand.

Does that mean that every software developer should know every language out there? No, but he or she should be familiar with a number of different languages along with the strengths and weaknesses of each. Software developers should also be experimenting with new languages when time permits and not rely on one language to do everything. After all, 30 lines in one language is a whole lot less work than 5,000 even if you have to learn a new language. The 30 lines of code is also a lot easier to maintain.