07 Jun 2007 Does Sun make money out of Java?
… or is that the wrong question?
It has been bothering me for a while that I can’t understand why Sun spends money on Java. Don’t get me wrong, I love the fact that they do. But surely there is a wider financial goal rather than pure technology benevolence?
Thankfully the Java Posse posed the same question to Bob Brewin (CTO of Sun Software) in podcast #123. The question was framed as to how the strategy compares to the South Park underpants gnome episode where the the plan was “1. Steal underwear, 2. ???, 3. Profit”.
Unfortunately the answer was fairly vague and basically came down to “volume equals profit”. The theory seems to be that Java is part of a plan to create opportunities for hardware, services, training and consulting. Seems to be a fairly roundabout way of making a market for yourself. The ‘old’ way would be to focus on the products you are selling. Make them better, cheaper, faster. Be better than your competition and let your potential customers know it.
If you take the strategy as read, Sun is supporting a language that works on any environment (many that Sun don’t have hardware for) for a range of customers (many that won’t ever need Sun services). In essence, they are creating many market places, but only a small proportion of them are in a space where they actually compete. To use a rock analogy, isn’t that like running and paying for an open air festival with free admittance just so you can be one of the acts?
In particular, where is the money for JavaFX Mobile? Sun doesn’t make phone handsets (yet?). Are they going to ask for licence fees? Apparently not since it is open source.
So I mostly get why Sun pushes Java Enterprise. It helps them push the hardware and services for high end applications in the corporate arena. Along the way they also help every other hardware and software consulting business as well.
But why the focus on the desktop of late? What’s in it for them if mobile handsets start running JavaFX mobile? I still feel like I am missing something…