Some voters in this past week's java.net poll questioned whether the question could be answered, but the result showed that a plurality of voters considered Europe to be region where Java has the greatest market share among competing technologies.
A total of 268 votes were cast. The exact question and response options and results were:
In which region does Java enjoy the greatest market share among competing technologies?
4% (10 votes) - Africa
11% (29 votes) - Asia: Indian Subcontinent
9% (23 votes) - Asia: Japan, China, and other
3% (8 votes) - Australia and New Zealand
38% (101 votes) - Europe
22% (60 votes) - North America
14% (37 votes) - South America
The poll had barely been posted when ronaldtm asked "How could anyone know?":
I'm familiar with my country's market (my city's market to be more precise). How could I know how is the market in 'Asia: Indian Subcontinent'? How could an Australian guy know how is South America's market? Or does everybody here work for multi-national consulting companies, and keep traveling around the world?
I was certainly aware that this particular poll was more in the nature of asking people to take an educated guess than asking them to express a well-defined opinion. My assumption was that we all have a sense of Java's market share in our own country, and we all know Java is a global technology, and many of us have been to international conferences, and we read news about technology in other countries and on other continents... My hope was that people might just take their best guess.
Indeed, there were 268 votes cast, which is a fair amount. But weeanon was also displeased by the poll question ("this is a bad poll question").
As for the results, while I wasn't surprised by a high value for Europe, I expected the number for South America to be higher than it was. It seems to me that Java is a very major technology South America, especially in Brazil. For example, see the Java Today item that features the "JEDI-Brasil" article from the java.net Java User Groups community. Brazil seems to have some of the largest JUGs in the world.
New poll: 'the Cloud'
So, enough of "bad poll questions" created by your editor! Our new poll was submitted by a member of the java.net community, Geertjan Wielenga. The poll question is: "What's your opinion of 'the Cloud'?" The poll will run through next Thursday.
If you have an idea for a poll, you can easily get it to me by using the java.net Submit Content form. Select "Poll Question" on the "Please choose where you think this item should go on the homepage" pull-down.
In Java Today, the java.net Java User Groups community is featuring an article titled "JEDI-Brasil - A DFJUG Brasilia Initiative to expand Java training in Brazil":
The Java Users Group of the Federal District of Brazil in Brasilia - DFJUG (www.dfjug.org) was established in 1998 out of a need for qualified Java professionals. Today, with 46,983 members, DFJUG is considered one of the largest Java User groups in the world. It is DFJUG's educational focus which is the main driver that keeps this community together and growing --- Why?
Daniel deOliveira (currently working at the Brazilian Ministry of Planning) explains, that in Brazil, there is a shortage of IT professionals. There are currently 40,000 java-related jobs that are open and unfilled in Brazil. Furthermore, Brazil's formal educational sector (universities, colleges, technical and IT schools) has not been able to meet the demand. So, DFJUG began searching for answer(s) and asking questions like: Where does one find individuals that fit the IT developer profile? Where to find these "geniuses" that, without any formal or academical training, are capable of disassembling and reassembling a cell phone or even program these devices? ...
And, on a separate but related topic, Kohsuke just came back from
Presenting at JavaZone and it seems it went very well. The recordings are now available and they look very good - see the
Full List ...
Yesterday, a Hudson committer Alan Harder discovered an EOFException in Hudson, which only happens on 64bit JVM on Solaris. This was happening in the part of Hudson (or more precisely, in a separate library called Akuma) where we look at the memory space of the process to figure out the command line arguments of the current process (the /proc/ID/as file — an equivalent of /proc/ID/mem in Linux)
It turns out that the problem was because this sparse file is 264 bytes long on 64bit systems. So for Hudson to look at arbitrary positions in the process memory space, it needs be able to seek beyond Long.MAX_VALUE (263-1.) ...
Here is a review of some concurrency tips from Joshua Bloch, Brian Goetz and others.
Prefer immutable objects/data
Immutable objects do not change after construction. Immutable objects are simpler, safer, require no locks, and are thread safe. To make an object immutable don't provide setters/mutator methods, make fields private final, and prevent subclassing. If immutability is not an option, limit mutable state, less mutable state means less coordination. Declare fields final wherever practical, final fields are simpler than mutable fields...
Rule of thumb: Avoid to use {variables} as the first path of a
Jersey's @Path
I am working on the Arena PUJ Project, a RESTful web-service to
support PUJ competitions. We are in the early stages of the project but
we already got some resources published on the web. Let me show you a
few URL samples: ...
In the Forums, socalvin had a problem where Shifting failed. Permission denied?: "I am running some Ruby on Rails application with JRuby 1.3.1 + GlassFish (v3-b34-01_26_2009 build) and just found out the Ruby logger is unable to shift and the stack trace is below. I guess it has something to do with the GlassFish because..."
cdr09 has a question about Lwuit Virtual Keyboard access: "I'm currently developing a j2me application for a HTC Diamond using NetBeans with the micro edition SDK 3.0. Scenario is: User clicks into a text field and up pops the LWUIT virtual keyboard. Only thing I can get it to do is to go..."
And ttwdev has a Question on VideoFormatControl.DFC_ constants...: "Hi - Am I mistaken in thinking there's no difference between DFC_PROCESSING_FULL and DFC_PROCESSING_LB_16_9 when the input is 16:9 and the output is 4:3? Seems like they'd both result in 16x9 letterbox - black bars on top & bottom..."
Our current Spotlight is Media Streams Player Release 1.0.0: The Media Streams Player Project has announced the release of Version 1.0.0: "Aalhamdulillah! Most probably this is going to be the very first release of a complete cross-platform media player which is written in the Java Programming Language. Media Streams Player is entirely written in the Java Programming Language using the Java Media Framework (JMF) API. This cross-platform media player can play Video & Audio files of most of the popular media file formats on different popular Hardware & OS platforms. This application is currently under development. But this demo version which is ready to be released is a stable version of the application. End users of the application can use the Windows version of the media player just downloading & installing the Windows executable of Media Streams Player. They can find it at the Home Page of the project located at the given URL."
Our Feature Articles include Jeff Lowery's A Finite State Machine Supporting Concurrent States, which demonstrates how Java enums and EnumSets can be used as a basis to define and validate application states and state transitions. We're also featuring Jeff Friesen's article Introducing Custom Paints to JavaFX, which shows how you can leverage undocumented JavaFX capabilities to support custom paints in JavaFX Version 1.2.
Registered users can submit event listings for the java.net Events Page using our events submission form. All submissions go through an editorial review before being posted to the site.
Archives and Subscriptions: This blog is delivered weekdays as the Java Today RSS feed. Also, once this page is no longer featured as the front page of java.net it will be archived along with other past issues in the java.net Archive.