 |
|
Bio: Ben Galbraith is the CIO and chief software architect of MediaBank, a well-funded software startup in the advertising industry, and chairman of Feature50, a software R&D lab. Galbraith has long juggled interests in both business and tech, having written his first computer program at the age of six, started his first business at age 10, and entered the IT workforce at age 12. He has delivered hundreds of technical presentations worldwide, produced several technical conferences, and coauthored more than a half-dozen books. In 2007, Galbraith sold two companies he founded: Ajaxian.com, a media property and related conference series, and Feature50, a high-end software consulting company. He has enjoyed a variety of business and technical positions throughout his career, including CEO and CTO roles. He lives in Draper, Utah, with his wife and four children.
|
Q: We ended last year's interview with you telling us about a new company you had started. How did that go?
A: Yup, I started Feature50 last year to focus on helping companies creating compelling user experiences in software. As it turns out, my company's sojourn in the consulting space was short-lived -- we sold out to our largest client in December 2007 to become an internal R&D lab for a family of companies. As part of the deal, we can commercialize the technology we develop, and we get to work on some fun, cool projects. In addition to my continuing role at Feature50, I've taken an executive role in one of the companies we serve.
Feature50 did some UI work using Swing that I'm particularly proud of, some of which I'm showing in this year's "Extreme GUI Makeover" talk (TS-6656).
Q: How is it that you're doing the Extreme Makeover talk this year? Isn't that normally a Sun session?
A: It is, yes. I've stayed in touch with Sun's Desktop team over the years and this year, with all their JavaFX stack work, the Sun folks were simply overloaded and asked if I would pitch in on the talk. As it turned out, I had this great case study sitting around from a recent Feature50 project that the Desktop team thought was very impressive, so the timing worked out quite well.
I've always loved the Makeover talks and, to tell you the truth, I'm a bit nervous about where I can do it justice. My version of the talk will be a touch more focused than previous Makeover talks on what developers can apply in the real world, but the Makeover series has always been about having fun, and I hope we'll have quite a bit of that this year too.
Q: Can you tell us about some of the fun bits you've got planned for the talk?
A: I don't want to give away too much, but I do make use of some parts of the new JavaFX stack, and one of my demos makes use of a Nintendo Wii, conceptually building on top of researcher Johnny Lee's recent Wii hacks. That stuff was particularly fun to put together.
Q: I hear that you use a Nintendo Wii in another talk this year too. Why the Wii fascination?
A: That's right, believe it or not, the Wii controller makes an appearance in the Ajax talk I'm giving with Dion Almaer, "What's New in Ajax" (TS-6807). You'll have to come to the talk to see just how we put it to use, but suffice it to say that we're definitely pushing the boundaries of what's possible with Ajax.
You know, I'm not much of a video game player -- though my coworkers at Feature50 have been changing that -- but like many, I've been amazed at what's possible with a standard $40 Nintendo Wii controller. It's actually a standards-compliant Bluetooth Human Interface Device with some impressive capabilities that Java applications can leverage via a few third-party open-source libraries.
For example, you can create multitouch, hand-driven UIs (user interfaces) like the one Tom Cruise used in Minority Report. Or you can simulate 3-D user interfaces in a compelling way. Or you can create force-feedback Wii-like cross-platform Java-based games. Or just use it as an air-mouse. The best way to start learning about the possibilities is to Google for "Johnny Lee wii" and check out wiili.org.
The Next Technology Revolution
Q: Speaking of innovative ways to use new technology, what do you think is the next big technology revolution?
A: Wow, we are in the midst of a few interesting revolutions right now. One of them is usability. Companies of all shapes and sizes are finally taking the user experience seriously and investing in creating wonderful, highly usable software. For those of us really passionate about great UIs, this is an exciting time.
Another revolution is the emergence of cloud computing -- done right. This is the notion of making the server infrastructure an easily accessible commodity. You develop your application, click a button, and boom, it's out there for the public to use. Get linked to from Digg or Slashdot? No problem, your site can scale to near-infinite heights -- though like any utility, you'll pay for high-usage rates.
Sun pioneered this idea with their grid-computing initiative but never took it to the masses. Amazon brought it one step closer with EC2 but made it quite complex in the process. Now Google, Joyent, Aptana, and others are bringing these commodity infrastructures to developers in an easy-to-use package whose complexity will be relentlessly ironed out over the next few years.
A Shift in Developing: All About Your Imagination
Q: What impact do you think these revolutions will have on developers?
A: Not many years ago, your talent as a developer was largely measured against your ability to do something impressive within the strict constraints of your environment. For instance, could you create a reasonably good user interface without having the ability to create the kinds of visualizations you could imagine or to get the kind of tactile user feedback you'd like? Could you create a world-class e-commerce site despite having a small team with little IT infrastructure experience and little time to implement advanced features?
These days, your imagination is the bottleneck. You no longer have a huge barrier in creating a server infrastructure. You no longer have a huge barrier in having to deal with crap HTML interfaces. You no longer have to put up with poor graphical capabilities in desktop applications.
So what are you going to do with all of these options? Today's developers can get away with a much easier, much higher abstraction level than those of yesteryear. And this will continue. Engineers who are focused on internals -- anything beneath the UI -- will continue their gradual decline down the value chain in favor of creative professionals who are focused more on imagining and designing great interfaces to technology.
For corporate IT, this makes sense. Most corporations shouldn't be solving hard software-engineering problems -- they should be primarily focused on business efficiencies. As Peter Drucker pointed out, when they're focusing a lot of energy on something besides what they make money doing, something's wrong.
Two Kinds of Programmers: Engineers and Designers
Q: So do you advise students and Java technology newcomers to focus more on design and less on engineering?
A: Yeah, I believe all software engineers should learn about how to ensure that their users have a quality experience. I cover some aspects of that topic in my "Creating a Compelling User Experience" talk this year.
I think the roles of a software developer are a bit up in the air at the moment. Not many years ago, we developers were sort of gatekeepers: No software was created unless we wrote the code, and we interpreted designs and direction we were given as we thought made sense.
Now, there are a bunch of efforts by the platform vendors -- Microsoft, Adobe, Sun, and so on -- to empower a less technical audience to create software. Microsoft Expression, Adobe Thermos, and perhaps some future tool from Sun are all about letting a more creative, less technical person create user interfaces that in the past would have required all kinds of code and engineering effort.
This reflects an emerging trend in recent years to reify a new, highly technical designer, often called an interaction designer, as the leading force in software development, rather than engineers. To get a fascinating look at this effort, Google for a transcript of Alan Cooper's keynote at the Interaction08 conference.
So how will software be developed tomorrow? And where do new entrants fit into all of this? Lots of different people can feel passionate about being involved in the creation of beautiful, compelling software. I think such people have got to figure out whether they are at heart an engineer -- if they get their kicks solving hard technical problems -- or if they are something else.
There will always be opportunities for great engineers, but as I said earlier, I think the number of these opportunities will shrink as other, less technical personnel play larger roles in the software development process, using more productive, higher-level tools and frameworks than we have used in the past.
Q: And what about you? Are you more an engineer or more of a designer at heart?
A: Ha, that's a great question! I might answer that differently depending on the day, but generally I'm more of a designer. I care far more about the user experience than I do about the internal implementation. I'd give up coding if I didn't have so much fun doing it!
For More Information
- Ben Galbraith's Blog
- Ben Galbraith's JavaOne Conference Sessions:
- Extreme GUI Makeover: In the Real World (TS-6656)
- What's New in Ajax (TS-6807)
With Dion Almaer of Ajaxian, Inc.
- Creating a Compelling User Experience (TS-6929)
|