The feedback to this year's ONJava survey was tremendous. We received 988 responses in just 12 days--well ahead of last year's response. It's great to see that so many people are so interested in Java and how we cover it on the site.
In response to some requests last year for more of a straightforward presentation of the data, we're going to cover this year's survey a little differently than we have in the past. Rather than writing up generalized sections that combine results from different questions, we're going to describe the results of each question, one by one. We'll do a little more comparing to previous results than we've done before, and a little less trying to discern the big picture--we'll leave that to you. We'll also be back next week with a new article on what you specifically asked for in the site and how we're going to respond.
But for now--the results!
We changed the frequency options and response order this year, to find if there were people visiting at frequencies that didn't quite match weekly (21 percent) or monthly (3 percent). Some of the changes you'll see on ONJava--and elsewhere on the O'Reilly Network--are aimed at the frequent visitor, as we try to make the site fresher and more interesting each day.
What? Are we talking up the competition with this new-for-2005 question? Yes and no--a lot of the major Java sites are not advertiser-supported, and we recognize there are many sites of interest to the Java developer, not just ONJava. Aside from the big ones above, JavaLobby is a destination for 30 percent of respondents, and about 15 percent of you read Artima.com and DevX.com on a regular basis. Among the write-in responses, 94 people reported reading JavaHispano regularly: about a 9.5 percent response, and clearly a site we should include as an option next year. Also mentioned several times: Cafe au Lait, PortalJava, ClientJava, JRoller, and general-interest sites like Slashdot.
The responses here are probably pretty typical of the enterprise/web-app audience that we believe is the core of ONJava's readership. Compared to last year, these numbers are pretty stable except for Apache, which is down five percent from 2004.
Also of note: .NET use dropped from 15 percent to 11 percent. Did some of you try .NET and drop it, or did .NET converts abandon Java? It would be helpful to hear anecdotal accounts one way or the other.
Finally, AJAX debuts in this question, with 26 percent of readers saying they use it--a huge splash for such a new technology. On the other hand, we took Groovy off of the list of responses and only two people thought to write it in.
Curiously, the results for the "develop on" question are down for all of the OSes from last year, except for Mac OS X, which went up slightly. Linux is down five points, Solaris four (which drops it behind OS X), and Windows two. Obviously, the Mac didn't pick up all of those developers. This might indicate that fewer developers have two machines on their desk, and are picking one OS to do all of their work in. Deployment responses are down slightly for every OS other than Linux, which went up slightly. Another sign of businesses settling on one OS rather than deploying to many?
Given that J2SE 5.0 launched in 2004, having only half of the developers targeting it seems a little, shall we say, deliberate. Tiger was a well-known commodity for years, and ONJava had articles about its features as early as 2001, such as this Generics piece. So it's a little surprising that with Mustang supposedly due for release in mid-2006, about nine months from now, that the current version of Java has only about half of Java developers actually deploying to it. One possible explanation: lots of legacy code that works in 1.4 and that nobody has any compelling reason to put at risk.
Another interesting result here is that seven percent of respondents said they're deploying to J2ME, with another one percent using the soon-to-be EOLed Personal Java. This presents something of a conundrum to your editors: we think seven percent of the community is enough to occasionally produce content for, especially since "more J2ME" was a frequent request in previous surveys, yet we don't know that the other 93 percent of you will read an article on J2ME. If you're completely focused on the server side, would you be interested in an occasional article on Java apps that run on phones and set-top boxes? What would we need to run for you to be interested?
By the way, one person reported that he or she is still developing for Java 1.0.
What is there to say? We're a site for developers; you're all developers. OK, five percent of you are consultants. There were very few managers represented, and among the write-in responses, the only jobs to show up multiple times were "student" and "teacher."
We can leave the Eclipse-NetBeans rivalry to the marketers and bloggers and just note the fact that both of them are growing. Eclipse's popularity is up six percentage points since last year, and NetBeans is up two. The biggest drop is among those not using an IDE at all, down from 27 percent to 17 percent. Though one hardly expects NetBeans to change its marketing slogan to "Better than Nothing," it's clear that IDE-less developers are in a rapidly shrinking minority. Also shrinking: commercial IDEs. IntelliJ IDEA dropped three points to 13 percent, and JBuilder three points to eight percent, while Oracle JDeveloper held steady at five percent.
Despite Ant's dominance, it's actually off four points from last year--maybe people aren't noticing when it's used under the covers by their IDEs? JUnit is also down two points from last year. Maven is up significantly from the 12 percent who reported using it last year.
A few write-ins were cast for EasyMock, JProfiler, HTTPUnit, and TestNG, but none received more votes than the responses provided by the question.
These results are almost unchanged from last year, except that JBoss is up four points from 29 percent, and WebSphere is up two from 18 percent. We dropped a few responses from last year (JOnAS and WebObjects), and their write-ins accounted for less than one percent each. Orion only ranked one percent this year and JRun has fallen to three percent, so there seems to be more standardization on the major players.
Struts has barely moved since last year, but the action is the growth of the often-paired Spring and Hibernate, which are up ten percent and nine percent, respectively. We added "Rails/Trails" as a dual option this year, and it picked up five percent support--we may need to clarify next time. whether that means you're using the actual Trails project from java.net, or some other framework that employs a Rails-like approach.
There were many write-ins to this question, but only iBatis (two percent) was mentioned a significant number of times.
The biggest change here is the appearance of "None" as a response, based on write-ins from last year. JBoss is up six points from last year, WebSphere three and WebLogic two, and the rest (Oracle, SunOne, and JRun) mostly static or slipping, except for Geronimo, which has doubled from two to four percent.
A few people answered this question with a rhetorical "If I knew that, I'd be a VC instead of a programmer." Granted, no one here is a Cassandra. In fact, of 455 people who answered this question last year, nobody picked AJAX as the hot topic of 2005.
Still, given the 670 responses this year, the technology voted most likely to succeed is JavaServer Faces (JSF), mentioned in 100 responses. Next is Spring at 82, AJAX at 69, EJB 3.0 at 64, and J2ME/embedded with 37 responses. Other interesting responses: 16 people picked Trails or other Rails-like approaches to web app development as the next big thing, 16 people still think Swing's day is yet to come (as opposed to nine for SWT), and aspect-oriented programming is on the radar for 43 of you.
Someone replied "Are there any topics left?" and maybe that's a good question. The O'Reilly Java book line is immense. Some of the specific topics that got a lot of mentions were AJAX (54 mentions, plus another four for DWR), Hibernate (34 mentions--please check out Hibernate: A Developer's Notebook and Better, Faster, Lighter Java), JavaServer Faces (24 mentions--please check out JavaServer Faces), Design Patterns (15 mentions, several of them for "J2EE patterns"), J2ME (13 mentions, plus another three for "embedded Java").
Of the specific O'Reilly series, there were 16 requests for "Head First," 15 each for "Developer's Notebook" and "Cookbook" titles, nine for more "Nutshell" books, and one for a "Java Annoyances."
With so many frameworks available to the Java developer (not to mention the size of the language and its core libraries), it's not surprising that this question had 564 divergent responses. The top responses were Spring (61 mentions), JavaServer Faces (48), and Hibernate (45). EJB was requested 23 times. For building apps, articles on Ant and Maven were requested 11 times each. Off the server, Swing clocked 28 requests, J2ME 19 requests, and SWT eight. Sixteen people wanted more articles on Eclipse, while two wanted more NetBeans coverage.
In the abstract, there were 17 requests for articles on best practices, 15 for design patterns, 11 for performance, and five for security. Eleven people wanted "advanced" articles, while only three wanted articles for beginners.
This might not be the most exciting set of questions for developers, but the results are included for completeness.
Overwhelmingly, the answer to this question was "nothing," usually with a note to the effect that "everything we use is open source." As many readers reported they planned to buy video games as did those planning to buy performance tools (nine), and that was far more than planned to buy WebLogic (three), WebSphere (three), Mac OS X (three) or Windows Vista (two). IntelliJ IDEA, with 11 responses, is the most-likely-to-buy item on the list.
Of 472 responses, 106 people said they planned not to buy any hardware, or at least had no such plans. Of those likely to buy, 85 expect to buy servers, 33 people plan to buy Apple Macs, while 25 people plan to buy PCs. Sixty-six plan to buy laptops, while 19 plan to buy desktops, with 15 planning to buy monitors. A handful of people noted they'd need to buy new video cards to run Windows Vista.
There's an interesting contrast here: "don't know" is the most popular response when it comes to how much a company spends on hardware or software, yet it seems pretty common for respondents to have some input as to what gets bought. Most of the "role" answers filled in a middle tier of responsibility, between having no involvement (25 percent) and authorizing purchases (eight percent). Are a lot of you participating in purchase decisions without knowing what the budget is? Or are you working in companies large enough that you can't speak for the entire company's budget (see next question)?
As was the case last year, the tendency is to work for either very small companies or very large ones, with the above responses accounting for 60 percent of Java developers.
These demographics are very similar to last year's, with computer software up slightly and consulting down slightly. One of the interesting points to make here is that some experts have counseled developers to focus on a single industry and to become a subject matter expert in that field, and not be "just" a programmer. If that were happening, you might expect participation in the end-in-itself field of computer software to go down, not up, as developers picked specific fields in which to develop in-house software, services, etc.
Taken together, these results still indicate that many Java developers gained professional experience in other languages before switching to Java, which is why they have more years of total experience than Java experience. Still, for the younger programmers, it is entirely possible to have built an entire career on Java. On the other hand, the seven percent of Java developers with more than eight years of professional Java experience must have gotten some of the first Java jobs available, as Java is only ten years old, and this is the first year we've offered a "more than ..." response to that question.
Maybe the single most disappointing result in the entire survey is for this question, and it's not the top responses, it's the bottom: of 988 respondents, not one said that he or she was under the age of 18. Considering that Java is now the language for the Advanced Placement Computer Science exam in the U.S., it's greatly disappointing not to see any young readers. I don't know whether to draw conclusions about the site or about Java as a whole from that--if there isn't a next generation of Java programmers, that would be a shame.
Or maybe this is the most disappointing result. Programming may be disproportionately male, but the number of female respondents (18) was nearly outnumbered by "prefer not to say" (13).
The South American readership is up sharply from a reported three percent last year. If this were JavaOne, I could make a gratuitous "Brazil" reference and there would be much cheering from the Brazilian contingent (hi Bruno!). One change we made this year was to add Australia (two percent) and New Zealand (one percent) as options, based on last year's talkbacks. We tried to find a single term that suited both of them, like "Australasia" or "Oceania," but Wikipedia convinced us that either option would make someone unhappy.
226 of you let us know what you like, and don't like, about ONJava, and what you'd like to see from the site next year. To give this feedback the attention it deserves, we're going to return next week with a collection of what you told us, and our corresponding responses. Please join us for that.
Chris Adamson is an author, editor, and developer specializing in iPhone and Mac.
Return to ONJava.com.
Copyright © 2009 O'Reilly Media, Inc.