The Mobile Java Lull
Matt posted about the lack of articles on J2ME in this month's JDJ:
So why did JDJ drop J2ME from its lineup? There simply were not enough articles to fill the secion. There always seem to be enough J2EE or J2SE articles, but never enough J2ME. It is not as if everything there is to say about J2ME has been said. Quite the opposite. J2ME may no longer be in its infancy, but it is still quite young. New JSRs are constantly coming out that pertain to J2ME. Just check out Sun's J2ME page and look at all of them.
Here's my thought. I think we're in the transition period right now between the commercial mobile Java developers and the corporate market. All the games that Mobile operaters are offering (you can see a bunch of Midlets here) were started years ago. There's lots of work going on in that area, but that area itself is relatively small. Basically, if you were trying to find work as a J2ME developer only, I think you would have a hard time of it right now.
I can tell you from experience that operators are still looking for applications and the demand for mobile Java apps is increasing, but that doesn't mean much to Joe corporate developer. Until the corporations start thinking of mobile phones as an integral part of their business, there's not going to be much demand for mobile Java apps in the all-important corporate developer world. I say "all-important" because that's where most professional programmers are. They're not creating the next word processing app, they're creating the next data-processing app for some random electrical company or something (hi guys at Orcom!).
So here's how I see the next year playing out. The 100 million Java phone number is crap because only a subset of those have compelling features such as decent memory and color screens. Now that those phones are starting to seep into the marketplace, the CEO is going to get them and want to start using them. He's going to first want his sales guys on the road to be able to check back to the home base instantly without having to mess with laptops, etc. (Ever see a sales-guy use a computer? It's not pretty.) Then once the infrastructure is in place for a "mobile extranet", the suddenly the CTO is going to approve a million other projects that will make use of this stuff.
Now, once Corp-A has mobilized its workforce like that, Corp-B is going to take notice and do the same. *That's* when the mobile Java market is going to explode. Back end developers will be needed to concentrate on services targeted at mobile apps - because client side apps are that powerful and need a lot of intelligence on the server - and experienced J2ME guys will needed to push the limits of the phones for all that data.
The only wrinkle I see in this scenario, of course, is Sun's lack of vision for the corporate market and concentration on the lowest denominator phones. What that means is that Corporations will be more likely to standardize on Microsoft phones which support integration with Exchange and other BackOffice tools, or with Palm Phones because of their usability and features like keyboards and syncing. Maybe they'll even focus on Symbian phones, which are the most advanced, feature-rich phones on the market and backed by names like Nokia and SonyEricsson.
However, I think that Java has a good chance because of its ubiquity. Corps will look at the cost benefits of standardizing on phones that have Java on them, and go that way. There will be lots of companies also offering custom solutions, and they'll go with Java as well for that same reason.
So it's coming. The demand may not be here yet, but very soon, and when that comes, so will the interest and the articles. And I say "soon" not as in "god knows when", but "soon" as in "within the year." 2004 is the year of the mobile. By year's end, companies without a mobile strategy will be in trouble, as will developers looking for work without mobile on their resume. :-)