|
|
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Page 4 of 5
Matt Heusser: Who is your customer? (Or, to borrow a line from the Bobs in "Office Space": What would you say you do here?)
Bruce Brouwer: I don't really directly support any customer in the sense that there would be a direct business focus. I'm actually placed within the infrastructure side of IS, along with the DBAs and server admins. The rest of IS really has a focus to serve a particular area of the business. It might seem strange to place a Java developer in infrastructure, but it allows me to focus on issues that have a larger architectural focus than others might have. While others are trying to work through defining business processes, I get to focus more on the technology that is used to solve everyone's problems in a reusable way.
People often ask me to assist other projects; sometimes for extended periods of time. This helps me stay grounded in the real world. It also helps me to spread new ideas throughout the rest of the development teams. I have found that when I was asked to play the part of the project's architect my influence was limited to more junior developers; it's actually been more useful for me to contribute on other projects that already have an architect, because I can push my ideas with those who are more influential in their part of the organization.
Matt Heusser: How long have you been programming in Java? How have you seen the language and Java programming itself change over those years?
Bruce Brouwer: I didn't really take Java seriously until Java 1.3. So, that would be about 13 years. But even then, Java didn't really become a joy to develop in until 1.5 came around with generics. There are so many good uses of generics, and most people don't seem to use them beyond the Java collections framework.
Back when I started with Java, we wrote almost everything ourselves. Over time, I've seen how the rest of the world has embraced Java, especially in the open source community. That explosion of open source is the most important change that I've been through during my career in Java programming. It's something that really hasn't been matched by any other language until recently.
Matt Heusser: Talk to me about using JRuby at GFS. What's your take on JVM languages; should we all become Clojure programmers now?
Bruce Brouwer: JRuby was really a means to an end at Gordons. Compass is really the premiere Sass implementation out there and it happens to be written in Ruby. I've also used Rhino and Groovy as well on the JVM. I have seen how powerful and capable these other languages are, but so is Java.
Other languages like Scala, and you mentioned Clojure, have gained popularity lately. While you can do the same thing in Scala with something like half the code of Java, I believe readability can suffer more quickly than it does in Java. A while back, I saw a number of contractors with stickers on their laptop that said "Typing is not the bottleneck." I completely agree. Thinking through the problem and making it clear for the next guy is more important than finding clever ways to reduce the number of lines of code you write. Don't get me wrong, maintaining less code is better than more code, but it needs to be clear what is going on.