Skip navigation
ANNOUNCEMENT: is currently Read only due to planned upgrade until 28-Sep-2020 9:30 AM Pacific Time. Any changes made during Read only mode will be lost and will need to be re-entered when the application is back read/write.

The Ideal Crash Blog

Posted by kfarnham Jan 31, 2008

Waiting for a new laptop

So I'm sitting here and watching the FedEx shipment tracking page, awaiting a new laptop. The 12" PowerBook that I had with me just last week atMobile & Embedded Developer Days has died an undignified death. No tears from me: it was due to be replaced this year anyways, suffering from hideously bad wifi reception (I am never buying another metal-encased laptop Mac; plastic just makes more sense), and was powered by a long-in-the-tooth PowerPC G4 CPU that ground to a halt when displaying Flash-based web pages (granted, that's also an indictment of how bad the Flash VM is on PowerPC Macs). Earlier this week, it developed a hard drive rattle, lost the ability to boot, and just after I managed to get some of my wife's files copied over with FireWire, it finally flaked enough that the drive couldn't even be reformatted. I'll eventually spend a weekend afternoon replacing the drive and sending it to a family member, but for now, I do need a travel and "upstairs" computer. And let's face it, we're geeks: who among us doesn't like that new computer smell?

One thing to look forward to is having a dual-core 64-bit Intel CPU, meaning I'll be able to make use of both Apple's JDK 6 DP 8, which is currently 64-bit Intel only (and still not yet final-release quality... sigh), as well as being able to build and run Soy Latte, Landon Fuller's port of the BSD JDK 6 to Mac OS X. On the latter point, I hadn't checked Landon's page in a while, and noticed he's posted some rather ambitious goals for the project:

  • Support for Java 6 Development on Mac OS X 10.4 and 10.5
  • OpenJDK support for Java 7 on Mac OS X
  • On-time release of Java 7 for Mac OS X

Clearly the project is off to a fine start, and a lot of people will be happy if this project gets JDK 7 into Mac-based Java developers' hands at the same time Windows and Linux developers get theirs. But it's a good bet that integrating with the native GUI and sound APIs is going to be a challenge.

Oh, I guess I need to update my bio to say I've now ownedten and a half Macs over the years, and pick partition names consistent with my established scheme.

In Java Today, another participant in Sun's $1 Million Open Source Community Innovation Awards Program, the GlassFish Awards Program has announced its program details, summarized in an Aquarium post. "Phase Two of the Community Innovation Awards Program is now live. Check the Official Announcement, and our Earlier Writeups. Each community has its own set of rules all within an Overall Program. The GlassFishprogram is described at the GAP Home Page. Key points include: • Awards for Best Bug Reports and for Best Projects • Projects can be based on existing Projects in the GF community or not • Goal is to grow Community in Size, Quality, Innovation, etc. • Submission Start Date is Now, • Submission End Date is June 30th • Results Aug 15th • 175K$ in prizes."

Jim Shingler and Christopher Judd have released the first version of FallMEversion 0.5. FallME is a Java ME framework based on the popular Spring Framework but designed for mobile devices including those running MIDP. This framework provides an IoC container as well as aRecordStoreTemplate. You can download it and find more details at the project page.

JavaWorld has kicked off a series highlighting useful open-source projects with a look at the Java Desktop Community project Balloon Tips for Java. In Open source Java projects: Balloontip for Java, Jeff Friesen writes, "Bernhard Pauler's open source balloontip project introduces XP-like balloon tips to Swing GUIs. In this first article in the new "Open source Java projects" series, I'll show you how to obtain and install the balloontip software. I'll also walk you through balloontip's example application, explore the balloontip API, and explain where balloon tips are useful in Swing-based Java development."

In today's Weblogs, Tim


Little Arithmetics Blog

Posted by kfarnham Jan 30, 2008

Will grant programs for NetBeans and GlassFish add up?

Today's big story has its beginnings back at JavaOne 2007, with Rich Green's stated opinion that open-source has become Robin Hood in reverse: steal from the poor and give to the rich. Sun vowed to do something about it, and in December, Simon Phipps started laying out the details of a grants program for open source projects in his blog Getting Paid To Develop.

Two of those programs have just opened up, one of which is theNetBeans Innovators Grants program. "The NetBeans Innovators Grant is a process to provide grants to developers or teams of developers to work on an open source project. A total of 10 large projects will be chosen and awarded a grant of US$ 11,500 dollars. Another 10 smaller projects will be chosen and awarded a grant of US$ 2,000 dollars. Awards will only be awarded upon actual project completion. Projects that excel may receive one of two possible gold awards of US$ 11,000 dollars or two possible silver awards of US$ 5,000 dollars." Submissions open on February 1, and close on March 3, with selected projects announced on April 1

A couple of our bloggers have checked in with praise for the announcement, starting with Fabrizio Giudici, who noted the inclusion of many countries often left out of these promotions. Hewrites:

Just a quick note for now: we have just disclosed the details about the "NetBeans Innovators Grants", an initiative which is part of a bigger effort by Sun spending $1 million dollars on innovative open source developers. The total grants for the NetBeans section are about $160k. Since technically this is a grant, not a contest, the good news is that ITALY THIS TIME IS IN :-) So c'mon, italian guys, go to the link above and find out all the details. Of course, if you're from other parts of the world, you can participate too ;-)

Meanwhile, Masoud Kalali uses his blog to offer some ideas for projects that might get approved for funding:

  • Are you an RCP developer looking for some financial support to implenent some modules on top of NetBeans RCP?
  • Are you familiar with NetBeans IDE and also you have some ideas in your sleeve, ideas to enhance the IDE functionalitis, ideas about new functionalities, etc?
  • Do you know some bugs/ RFEs in issuzilla which you can fix them, but you were looking for financial support?
  • Do you have some cool ideas about some sample projects or blueprints showing How one can develop Java/ J2EE/ J2ME/ Ruby/ C++ projects using NetBeans IDE and its capabilities?

Now I said there were two such programs making their announcements. The GlassFish Awards Programhas also posted its rules. We'll have them on the front page tomorrow, but if you're interested in the details today, by all means, take a look.

Also in Java Today, Milestone 1 of NetBeans 6.1 is now available for download. This stabilized development build contains a number of noteworthy features, including WebSphere 6.0 & 6.1 support, a Mercurial plugin, transparency for slide-in windows, support for downloading and installing plugins in the background (with task progress displayed on the status line), and the addition of new JSF components (accordion, bubble help, and popup menu) to the pallette. For more information see the complete list of new M1 features and overall report for M1.

Registrationis now open for the JavaOne 2008 conference. "This year's conference covers topics and content that is important to the Java technology community and continues to expand its program into areas that play well with Java technology, exploring the rich development platform available to all." JavaOne 2008 runs from May 6-9 -- preceded by the free CommunityOneday on May 5 -- at San Francisco's Moscone Center.

Today's Forums begin with an important update on the status and future of Java3D. In ANNOUNCEMENT: Java 3D plans, kcr writes, "we would like to share with you our plans for Java 3D. As many of you are aware, Sun's emphasis on client technologies has led to the creation of JavaFX -- a platform for creating rich content applications for mobile, set-top, and desktop devices. The majority of our current effort is focused on building out the 3D support for JavaFX. As a result, our plans for improvements to the Java 3D API are on hold at this time. We will continue to provide bug-fix releases as needed, with many of the fixes coming from the community. The plan to deliver the upcoming 1.5.2 release, sometime within the next couple of months, remains unchanged. Specifically, we are working on a new 3D scene graph, as part of the JavaFX player, that will complement the 2D Scenario scene graph. Its initial focus will be 3D effects, casual games, and simple 3D viewing applications. We anticipate that future versions will include additional features that may meet the needs of many existing Java 3D applications."

kader_h joins the thread Re: How was the BD-J event in Barcelona? and seems to have come away from the conference with as many questions as answers. "Hi Francois and all, I was on there for 5 days. About the thursday for Sony's presentation of BluPrint and BD-J. We had a good presentation by Mark J. and Bill F. with good information to start quickly BDJ and test it. To my mind, the level of protection of BD format (certificate, key provider, key studio, AACS, BD+...) show that some paranoiac of security work on specification(?). And there are many thing not clear: Certificate: which company will provide it; ID Organisation: same; BD9: it's available? (AACS and/or Rom Mark are mandatory?)"

bpostow seems to want to try programming a bluetooth printer driver. "I'd like to program, or look at a bluetooth printer driver, so that I can get a feel for how to control devices through bluetooth from a mobile device. Does anyone know of a page that describes how to do this? or has sample code for how to write such a driver?"

Today's Weblogsstarts with more followup from the discussions at last week's Mobile & Embedded Developer Days, as Sean


Include Me Out Blog

Posted by kfarnham Jan 29, 2008

Fishing for Blu-Ray news

Last week, one of the lightning talks at the Mobile & Embedded Developer Days was a 10-minute demo of Blu-Ray Disc, some titles for which are powered by Blu-Ray Disc Java (BD-J), a Java ME platform for rich interactivity. The presenter showed off Blu-Ray's highly attractive menus for the movie War, along with a simple pinball game included with the Blu-Ray Disc of Surf's Up.

There was also a major Blu-Ray event, co-sponsored by Sun, last week in Barcelona. I haven't noticed anyone blogging or putting out press releases about what happened there, so at risk of becoming part of the story, I simply went to our BD-J forumand asked:

I haven't noticed any discussions or blogs about the Sun-sponsored Blu-Ray event in Barcelona. How did it go? Was anything interesting announced?

So far, there's been one interesting reply, posted by francoislionet:

I was there, and really enjoyed it.

The first 1.5 days was presented by Mark Johnson, and he gave us a complete tour of all the API, files, and necessities of creating a BDJ disc. Then came Bill Foote who talked about debugging your application, and using GRIN (his menu creator).

I was not present at the next two days, and was only there on the Friday to watch Sonic's presentation of Scenarist. We also had a long talk about how to certifie your applications (and this is not simple).

Altogether this was a great event. The thing I will remember most is how many time was said "Don't use this, it is bugged on certain players", or "This had not been fully implemented", or "This will be very slow on a Samsung 1000 player"!!!

And I met a lot of great developer from Europe, USA and even Australia.

The feedback about incompatibilities specific to certain devices is something we've heard before about Blu-Ray, and makes an interesting (if somewhat dispiriting) counterpart to the MEDDs' various discussions about fragmentation in the mobile phone space. But for the small number of BD-J developers, this seems like an interesting field to be in right now, especially as Blu-Ray seems to be in the endgame of winning its format war. Now, does anyone else who attended the conference have more to add? Lots of developers are on the BD-J sidelines and would like to hear more.

Also in today's Forums,sdo explains 64-bit Java practicalities and considerations in Re: -d64 JVM option documentation ? what does it do? "The -d64 option means to use the 64-bit version of the JVM. The JVM has three basic configurations: -client, -server (both for 32-bit JVMs) and -d64. In order to use -d64, you have to separately install the 64-bit JVM for your platform (see, e.g., Supported System Configurations for supported platforms; the option itself is documented in the online man pages for the java tool). You are correct about the usage of that flag in glassfish. However, since this is the performance forum, I'll have to mention that the 64-bit JVM will have a performance penalty vs. the 32-bit JVM. Glassfish is very well tuned to run with a 32-bit heap, though Windows itself limits you to a pretty small heap (1.2 GB or so)."

Kevin Condon says he and his colleagues Need help deploying to Glassfish cluster using netbeans generated ant script. "We've successfully been deploying a headless build using a netbeans-generated ant script to a single glassfish server but have run into problems now that we've tried deploying to a glassfish cluster. We are able to deploy to the cluster using the admin console but we'd really like to use the netbeans ant script. Is there anyway to tweak the run-deploy task of the ant script to deploy to the cluster?"

In Java Today, Jim Weaver, who maintains a Java FX blog, was at the Mobile & Embedded Developer Days and won a Sun SPOT in the conference's contest to find cool uses for the technology. In Seeing Spots at Java Mobile & Embedded Developer Days, he describes (with a full code example) his preliminary FX-based UI to drive a SPOT-controlled toy car. "I plan [...] to evolve this project into the stated vision, and I'll make blog entries periodically as progress in made.

The latest edition, issue 155, of the JavaTools Community Newsletter is out, with a roundup of tool-related news from around the web, announcements of new projects that have joined the community, and a Tool Tip on using Netbeans to help with JavaDocs.

Replying to another blog that infers technology trends from job listings, TheServerSide's Joseph Ottinger context-checks Obie Fernandez's Growth in Ruby Jobs Relative to Java with Ruby jobs increase by 550% - up to 3.3% the size of Java jobs! "Obie Fernandez posted a graph showing Ruby job growth over the last few years, with a final number somewhere in the 550%-660% range. That's great, but according to, it's still very very tiny compared to Java's market."



What We Talk About Blog

Posted by kfarnham Jan 28, 2008

A number of JSF-related items

After focusing so much of the front page's attention last week to mobile and embedded issues, apropos of the Mobile & Embedded Developer Days, it only seems fair to start the new week by turning our attention back to the server side. Today, we've got a couple of items of particular interest to the JSF developer.

Is it a good time to be a JSF developer? It sure seems like it, though just how good is a highly subjective subject. A recent article on JavaLobby is sure to draw both attention and controversy, as contributor rhightower cites historical job listing data to claim JSF catches Swing as the number one GUI component model for Java:

JSF did well in 2007. Let's put it this way: If job demand for the Struts framework and JSF were a stocks and you invested in it in April of 2005 by July of 2007 you would barely break even with Struts but with JSF your investment would have grown 700% as of July 2007. (According to

Struts continues to do really well; it is still number 1. Yet after Struts, JSF is doing well and Struts growth is as flat as EJBs.

The article's graphs also show JSF listings as compared with other Java enterprise frameworks, including WebWork and Wicket. However, JavaLobby founder Rick Ross isn't yet convinced:

I'm going to go out on a limb here and suggest that I have doubts about the "number of jobs" equals "market leadership" relationship that seems to be the underpinning of this post and many others we have all seen over the years. Couldn't it be the case that Swing is still stronger, but employers are not having as hard a time locating Swing talent, so they aren't needing to place job ads? Maybe the employers have invested in cultivating Swing skills in their existing teams through training programs, so they have the staff to meet their needs?

As Rick raises the question about job postings as a measure of a library's popularity, it does make you wonder if that's a truly useful barometer of popularity. Not only does it miss the possibility of finding help through means other than job listings, as Rick notes, it also overlooks the concept that libraries may be popular outside of work contexts. Are people building small business or personal websites with JSF? Are they building small, informally distributed GUI apps with Swing? These uses might not show up with this kind of analysis.

But then again, there's certainly a sense that JSF has been growing strongly over the past few years, so it's not like the job listing numbers are inconsistent with popular conceptions. Maybe it's just a matter of how far you're willing to take the numbers.

Another JSF-related item in Java Today offers help to those frustrated with the complexities of writing a JavaServer Faces component: with the help of's JSFTemplating and Woodstockprojects, you can write a component with only two files. The SDN article JSFTemplating and Woodstock: Component Authoring Made Easyoffers a step-by-step guide, and suggests that the Scales project will host more of these kinds of components in the future.

Meanwhile, the NetBeans team is putting out an invitation for Second Life users: "please join us in Sun's Developer Playground in Second Life on Thursday, January 31 at 10am PST as Brian Leonard and David Botterill, NetBeans Technology Evangelists, discuss NetBeans IDE 6.0. Learn how this latest release enables greater developer productivity with a faster, smarter editor, multi-language support, and a customizable IDE."

Of course, there will be lots of follow-up from last week's ME conference, starting with the latest Java Mobility Podcast. The episode Java Mobility Podcast 35: Live from Mobile and Embedded Developer Days features voices from the first ever Java Mobile and Embedded Developer Days. "We talked to many of the people presenting poster sessions on Sun Microsystems' Santa Clara campus as well as some of the contestants trying to win one of four SunSPOTs."

This week's Spotlightis on the ROME Modules Subproject, which combines a number of contributed ROME plugins into a single distribution for users who want to work with feeds from major RSS sources. Included modules allow you to work with such feeds at iTunes podcasts, A9 OpenSearch, Slash-based blogs, Yahoo! Weather and more. The subproject's wiki page serves as a guide to module-makers, as well as providing guidance to users of the modules.

In today's Weblogs, Ben


Argument Blog

Posted by kfarnham Jan 25, 2008

How does the ME community defeat fragmentation?

800 to 1,000 phones, all of which may run your app differently. And to get on at least half of them, you'll have to jump through manufacturer- or carrier-specific legal, licensing, and marketing hoops.

This was the key topic at the end of the day Thursday, as the Mobile & Embedded Developer Days conference wrapped up with a "fish bowl" session. In this novel format, participants join and leave a set of five chairs with microphones, leaving one chair open at all times and expecting the longest-seated or least active participant to give up his or her seat to a new speaker.

After a few dead ends, the discussion quickly honed in on the challenges facing mobile developers, summed up in a word: "fragmentation". Far from being a unified, predictable, standard platform, Java ME on the mobile device has proven a challenge. It has created some opportunities -- for companies that can test your app on all those devices, for example -- but to the developer looking at developing for the platform, the outlook for developing and deploying a real-world app may well prompt a retreat to the server, the desktop, or the webapp. Or, if the SDK really ships next month, maybe the iPhone, since there's only one model of that darn thing.

So what can be done? Where's the weak link? If there's room for interpretation, does that mean that the standards are broken? Does it serve the purposes of the manufacturers and carriers to have distinctive features (one of which might be low cost, at the expense of functionality and conformance)? Are standards realistic in the mobile space, or is fragmentation inevitable?

And why do the manufacturers and carriers get the final word? What about the developers? Following up on the major themes of the conference, co-organizer Terrence Barr has announced an all-day session to take place today (Friday, Jan. 25, starting at 9AM PST) to "discuss and brainstorm the topic of why developing and deploying content is so hard, what can be done to improve the situation, and about helping developers find their voice."

In another MEDD item highlighted in the Java Today section , Noel Poore's Developing JavaFX Mobile Applications session offered what may be the most significant update on JavaFX Mobile since its announcement at JavaOne 2007. Slides of Noel's talk are now available in PDF form (743 KB). The session shows the evolution of SavaJe into the JavaFX Mobile foundation, illustrates the core system, frameworks, and user-facing parts of the JavaFX Mobile stack, and lists the many capabilities of its various pieces.

Sun acquires MySQL. NetBeans nabs three product wins from There's been plenty of good news in the neighborhood of recent, and podcasters Roman Strobl and Gregg Sporar take us through the headlines in episode 39 of the NetBeans Podcast. Along the way, they also discuss cool new plugins for NetBeans 6.0, some of the features in NetBeans 6.1, upcoming Webinars, their favorite databases, and much more. They add, "be sure to listen till the end for Episode 39's puzzler--the questions may be getting harder, but the prizes are getting better!"

Returning to the rhetorical questions above about ME fragmentation and what can be done about it, the latest Poll asks "Who could do the most to end Java ME fragmentation?" Cast your vote on the front page, then visit the results page for current tallies and discussion.

In today's Weblogs, Volker


Give Me The Cure Blog

Posted by kfarnham Jan 24, 2008

How do we reconcile small ME developers and big mobile carriers?

Day one of the Mobile & Embedded Developer Days conference has come and gone in a flurry of presentations, poster talks, conversations and tacos, the latter being from a well-attended offsite social event that concluded the long day. The nature of the conference has been an interesting mix: it's still mostly based on eyes-forward presentations from acknowledged experts, but it has a loose, informal, and even personal feel. It's a nice mix, avoiding the stuffiness that you sometimes get at JavaOne, and the mob rule that an unconference can devolve into. The size helps too: enough people to stay interesting, but not so many that everyone else becomes anonymous. Roger and Terrance might be on to something really good here.

Don't feel like you're missing out, though. The conference's live broadcast is available on With a Flash-capable browser, you can watch today's sessions live.

Sean O'Sullivan presenting "Past, Present, and Future of JSR 82 (Java Bluetooth APIs)" on Wednesday at ME Developer Days

You can also participate in a real-time chat with other on-site and off-site attendees, and many of the sessions are taking questions from off-site participants during their Q&A time. You can follow along with the talks by downloading their slides from the sessions list.

One of the major themes that has come up in sessions and Q&A is the long-acknowledged but little discussed disconnect between the developer's view of the mobile world and the carriers'. You may be able to develop a nifty application with the various APIs available to mobile Java developers, but then what? There are somewhere between 800 and 1,000 phones you may want to run it on, and getting your app signed to use some of those APIs may be limited by the handset manufacturer and/or the carrier, and how they manage access to their platform.

A panel at the end of the day yesterday addressed this conflict, positing a hypothetical developer of a "cool app" in front of a panel, whom he asked how he could get his application out to the public. If this were just a developer conference, the only point of view might well be grousing about carrier policies, but with marketing people from some of the carriers there, we got the full picture. And while as a developer you might not want to hear the answer, it's important to understand the real story: mobile and desktop are two different things, and the romanticized notion of the indie developer with the great app that everyone wants may just not be realistic in today's mobile world. Testing on hundreds of devices and joining carrier programs (to get your app signed or even pre-installed) takes serious money, and the "cold, hard truth" feedback from some of the panelists was to ask: "do you want to go big time, or are you just playing around?" If you want to make it big, then maybe you need to think about finding a publisher, someone who will open doors with carriers. Or maybe you need to develop your app in the context of a company that can provide the resources to pay for testing your app on hundreds of phones.

Having said all that, the mobile world is being profoundly challenged by disruptive new entrants, such as the iPhone and the Open Handset Alliance, so things may change. And if developers want change, the panel said that they need to organize around a simple message: many developers vaguely grumbling about similar issues won't accomplish as much as a small, highly-motivated group with very specific desires and a plan to get them.

So, there's your controversy and devil's advocacy for day one. Today, the sessionsinclude Java FX Mobile development, gaming, mapping, databases and more. Tune in to the broadcast and join us for Day Two.


In Java Today, we focus on some of the projects spotlighted at Mobile & Embedded Developer Days. Open-sourced yesterday, Squawk is the JVM that powers Sun SPOTs, which use Java "on the metal" (rather than atop an operating system). "Squawk is an open source virtual machine for the Java language that examines better ways of building virtual machines. Most commercial virtual machines are written in low level languages such as C and assembler. We believe that virtual machines can be simplified by writing them in a higher level language, and further simplified by implementing the VM in the language that the VM is implementing."

The Marge project is a framework to simplify development of Bluetooth applications for Java ME or SE. "The main idea of this project is to facilitate the use of JSR 82 (Java APIs for Bluetooth), because this API is quite complex to people that does not know a lot about Bluetooth. So, the framework will abstract things related to the Bluetooth communication: connections, protocols, messages exchages, inquirying for devices and searching for services."

In today's Weblogs, Sean


Waiting Room Blog

Posted by kfarnham Jan 23, 2008

Mobile & Embedded Developer Days begins

I'm blogging from the auditorium on Sun's Santa Clara campus, where the Mobile & Embedded Developer Days is just getting started with a "Welcome, Update, and Roadmap" session from Roger Brinkley and Terrence Barr.

I could try to give you a sense of it, but since I'm tired from getting in at 2AM (how the heck does SFO "sell out" of rental cars), and since a picture is worth a thousand words and a video even moreso. The conference is being broadcast in the form of a web-embedded video, and by going to the UStream Sun page, you can see what's going on right now, live. Sessions are being held on two floors of the auditorium, and both are available on the feed.

James Gosling's keynote is coming up in 10 minutes (9AM PST), followed by sessions on Bluetooth, SunSPOTs, dev tools, JXTA ME and more. If you're not here, tune in and see what's going on. While I've typed this blog, three projects just got open-sourced, including Project Squawk. Things are hopping!

In Java Today, Robert Cooper has released the initial 0.1 version of the Yahoo! Weather Plug In, allowing ROME-based code to make use of theYahoo! Weather Service. A brief code sample shows that adding weather information to your feed only takes a few lines, and full JavaDocs are available.

The Thread Dump Analyzer(TDA) project offers "a small utility helping with offline analysis of production environments like application servers." Version 1.6, released earlier this week, offers a number of new features, including a new filter rule for "stack line count greater as", clipboard operation in logfile view, enhanced monitor view, "expand all nodes" and "sort by thread count" added to popup, drag-and-drop support for opening files, and more.

The SDN's latest Enterprise Java Tech Tip offers help for Using JAX-WS with Maven. "JAX-WS provides two tools for web services development: wsimport and wsgen. The JAX-WS Maven plugin provides Maven adapters for these tools. The plugin offers the tools' functionality as two goalsjaxws:wsimport and jaxws:wsgen. A goal is roughly the Maven equivalent of an Ant task. For each of the two goals, the plugin accepts all the configuration options that can be passed to corresponding CLI or Anttasks."

In today's Weblogs, Arun


Suggestion Blog

Posted by kfarnham Jan 22, 2008

If you want innovation, open things up

Here's a bit of compare and contrast for you, using today's front page. Start in the Java Today section, where we find that IcedTeacontributor Gary Benson has been blogging about his efforts to develop a Hotspot implementation for Linux that requires no assembler code, potentially making it infinitely portable:

"Lately I've been experimenting with the idea of a generic Linux port of Hotspot. I updated the templater and generated a new set of stubs, fixed the build system to build them, then started filling them in. I got into interpreter code in a couple of days, which is where the fun starts."

Dalibor Topic, who originally pointed me to Gary's blog, clarifies what this effort involves: eliminating the CPU-specific assembly parts of the Hotspot code base. Since Gary had already been working on a PowerPC port of Hotspot, he was presumably already well aware of how much assembly is in Hotspot, and where.

Last Friday, Gary reported that Hello World was working, and just over an hour later, he got the zero-assembler javac to compile Hello World.

A lesson to take away from this: was anyone considering doing this before Java was open sourced? Discussing the project on the#javaposse IRC this morning, Dalibor pointed out that before OpenJDK, most companies would license the JDK and then only tweak it enough to run it on their own platform. Gary Benson's effort to "run anywhere" anywhere may have been technically possible before OpenJDK, but perhaps wasn't practical from a business standpoint, and apparently wasn't on anyone's radar.

Contrast that with a still very-closed Java API, the BD-J standard that provides the interactivity of the Blu-Ray Disc format. Last year at JavaOne, speakers on BD-J panels indicated that the Blu-Ray Disc Association hoped to make some sort of overture to the open-source and independent developer communities, but hadn't decided how or when to do so, and were keeping the standard close to their chest for now. In today's Forums, userbillshepp indicates this is still the case:

Many of us agree, but for better or for worse some of the BDA Director companies take a far more cautious approach to the platform. We're working to find a good compromise that makes developer information accessible to those with a bona fide interest without lowering the bar so far that tire-kickers clog up the system...

That prompted a vociferous reply from Endre St


Promises Blog

Posted by kfarnham Jan 21, 2008

Even more stuff added to this week's M&E Developer Days

So, here I am coding over the weekend, thinking at some point I need to move everything over to the laptop for Tuesday night's trip to M&E Developer Days, when who should IM me but conference co-organizer and M&E community lead Roger Brinkley.

So, OK, I figure, we've had something about the conference (either a blog or a Java Today item) on the page almost every day for the last week, and registration closed Friday, so he's probably just IM'ing to say "hi" and ack that we'll meet up Wednesday morning.

Nope. Turns out there's still more pre-conference announcements to pack in, not the least of which is the fact that registrationis still open. Oh, and now there's a contest. And big news coming in the form of a conference announcement, but that's embargoed until at least Wednesday, so my lips are sealed.

So, we begin Java Today with these late announcements about the Mobile & Embedded Developer Days conference, posted by Roger in a pair of blogs. As mentioned above, the first is that registration is still open, despite an earlier announcement that registrations would close last Friday. Those attending the conference will have a shot at winning one of four Sun SPOTs in theSPOTs Away contest: "Throughout the first day attendees will hear several presentations on SunSPOTS. Any attendees that wants to enter the contest will submit a proposal on "What I would do if I won the SunSPOT Java Developer Kit" to conference organizer by 4:30 pm on Wednesday January 23."

Also relating to the M&E community, the latest episode of the Java Posse podcast is a pair of Open Source Java ME and SE Interviews. In the first, Dick Wall interviews Terrence Barr about the Mobile & Embedded Community, phoneME's open-source licensing, the future of CLDC, the pick-up in ME development, and this week's Mobile & Embedded Developer Days conference. In the second part, Mark Reinhold talks aboutOpenJDK, the sub-projects it has spawned, the state of encumbrance-clearing, outside contributions to OpenJDK, the Mercurial transition, the project's governance, and more.

The latest edition, issue 154, of the JavaTools Community Newsletter is out, with updates from the editors about last week's big mergers and the judging process for the 300 submissions to the JavaOne tools track, tool-related news from around the web, a new community project, and a Tool Tip on profiling JavaScript code.

We're not done with Mobile & Embedded items yet. The latestJava Mobility Podcast is Java Mobility Podcast 34: Manfred Kube on Siemens AySystem, about "the AySystem: connecting you to anyone or anything -- from anywhere in the world and all of the time." In this episode, Monfred Kobe discusses this new end to end Java solution from Seimens.

This week's Spotlightpoints over to the SDN's latest Ask The Experts session, which is on "Developing and Deploying Java SE-Based Applications on Solaris". "Are you developing or deployingJava SE applications in the Solaris Operating System? Do you have a question about Java SE technology in Solaris? Post it during this session and get answers from three people at Sun Microsystems who have lots of experience with the intersection of Java SE and Solaris: Dave Dice, Alan Bateman, and Valerie Peng."

In today's Forums,hwinkler posts a Deployment Toolkit RFE: "deployJava.js needs a function to detect whether a particular web start application has been installed. Use case: My web start app registers to handle a certain mime type and file extension. I have pages with links to resources of that type. Until users launch the first time, links to that mime type will fail, so I want to hide those links and force them to launch the JNLP just once. To be clear: Users don't ordinarily launch this web start app by clicking the JNLP link. They just click the links to its documents, and Web Start launches the application, passing the document to it on the command line."

irockel announces the latest version of an interesting project in TDA - Thread Dump Analyzer for SunVMs 1.6 released. "I just released Version 1.6 of my little tool TDA - Thread Dump Analyzer. Changes from 1.5 are: Added new filter rule "stack line count greater as", Added clipboard operation in logfile view, Enhanced Monitor View, added expand all nodes and sort by thread count to popup, Added View operations for root tree,Added Drag and Drop for new files to open, Threads are now displayed in a table, the thread ids and native ids are transferred from hexadecimal to decimal, [...] You'll find further information in my blog. The tool can be downloaded or started using Webstart on the tool's homepage."

nsimpson says upcoming updates from Project Wonderland will make things easier for some users, writing in Re: how to make slideshow to be a shared cell?, "if your goal is a shared slide viewer, with synchronized state between all clients then the simplest solution might be to wait a few days. We're about to release some new Wonderland applications, one of which is a PDF viewer. This app does exactly what you're looking for. The current slide viewer will probably be replaced with the PDF viewer."

In today's Weblogs, Ahmed

Seems like Java programmers use a lot more than just Java

Apropos of the discussion of whether to "freeze" the Java language, there's a side discussion of whether the best place for new and potentially nichey advancements is not in Java at all, but in other languages running on the JVM. Advocates of this position argue that if you really need closures, and the Java language isn't amenable, then you could just drop into Ruby. Need a high level of extensibility? Mix in some Scala. Scripting with tight Java integration? Maybe look at Groovy. The argument is perhaps stronger when you consider languages that are highly-specialized or wildly different: crunching rules with Prolog, for example. A counter-argument to this says that using a bunch of arbitrarily-chosen languages will necessarily be chaotic and hard to maintain, so be conservative and stick with Java, extending it if necessary.

This reminds me of the case made against building GUIs with a tool like NetBeans' Matisse. The argument there is that you've added a dependency, one more thing to learn and be tied into. Better, say the doubters, to just bang out a bunch ofGridBagLayout code; it'll be easier to maintain to just do everything in Java, right?

But who really does everything in Java today? Is your webapp client a Java applet, or is it HTML markup? And if you're doing Ajax, then you've pulled in JavaScript as well. Sure, these are extremely common technologies -- nearly everyone in our field knows them -- and that serves to make the point that we all pull together multiple technologies, Java being just one of them, to get our jobs done. So why shouldn't we be open to new languages, tools, and technologies, particularly if they look like they're well-suited to the problem domain?

And that brings us to the latest Poll, which asks "What application development techniques do you use other than coding?" Cast your vote on the front page, then check out the results page for current tallies and discussion.

In Java Today, the Scene Graph Demos Project contains applications and examples which demonstrate the capabilities and usage of the Scene Graph API. Available demos include the jPhone demo presented by Chet Haase in recent blog. Chet has also written another blog about the history of the demos and what it took to get them ready for public viewing.

JavaFX Script, which made its debut last spring, is a scripting language that runs on top of Java Platform, Standard Edition 6 (Java SE) and makes it easy to code sophisticated user interfaces. In the article Create rich applications with JavaFX Script, you can learn the essentials of the JavaFX scripting language and gain an understanding of some basic UI components with the help of the sample application detailed within.

Java ME expert Jonathan Knudsen has a new book that is lean, accessible, and occasionally funny: a practical guide to building MIDP 2.0/MSA (JSR 248) applications. Kicking Butt with MIDP and MSA offers solutions for the complex challenges of coding efficiency, application design, and usability in constrained mobile environments, and it comes with downloadable code.

Even if you're not coming to next week's Mobile & Embedded Developer Days -- BTW, today is the last day for official registration-- you'll be able to check in from your desk, according to an announcement in today's Weblogs. In M & E Developer Days - Remote Broadcast, Roger


Pictures To Prove It Blog

Posted by kfarnham Jan 17, 2008

Snow, a breakdown, and a very late editor's blog

It started last night with snowflakes falling just before dinner time. Understand that this is Atlanta, where we get snow once every 3-4 years. It kept falling for a few hours, and I ended up letting my two-year-old daughter, Quinn, go outside and check it out before bedtime:


Unfortunately, it turned to rain overnight, and then our car died while dropping off our five-year-old at school, so I ended up getting to wait for the tow truck in a cold rain for an hour this morning. All of which explains why the page and editor's blog are late today. Sorry about that. At least we got some snow.

Fortunately, things are slower today, with yesterday's Day Of Huge Announcements (Sun buys MySQL, Oracle buys BEA) behind us. The only thing I can't keep up with now are the CodeMash podcasts, recorded at last week's CodeMash conference in Sandusky, Ohio, and now being released at a furious rate, so fast that the interview with Java concurrency expert Brian Goetz went right through my iTunes library and got overwritten before I had a chance to listen to it. Actually, we did the same thing with our JavaOne 2006 podcasts, and after we realized we were putting stuff out faster than anyone could actually handle, slowed back down to a two-a-week schedule for our 2007 podcasts.

In Java Today, the Aquarium reports that visualvm supports GlassFish. "If JConsole was one of your reasons for moving to Java 5, you'll probably like VisualVM. This recent project is building on top of the NetBeans profiler technology (néeJFluid) to provide a NetBeans Platform-powered standalone tool to monitor Java VMs. This tool strikes an interesting balance between monitoring, profiling, and troubleshooting tools. Some plugins such as the MBeans browser are already available from its update center."

NetBeans IDE has won the Best Development Tool and Best Java Tool categories in the Product of the Year 2008 Awards. NetBeans Mobility Pack also nabbed a win as the Best Wireless/Mobile Development Tool, providing a nod to its new mobile game builder and integrated UI for CLDC/MIDP development. No other IDEs won any of the prizes. Congratulations NetBeans!

Expanding on five brief predictions provided for JDJ, Sun's Tim Bray offers five interesting and sometimes controversial predictions for 2008 in a series of blogs: RIA vs. Ajax, Windows looks bad, Rails rules, PHP runs into problems, and Social networking will experience massive churn.

In today's Weblogs. James Gosling reports that he's Jazzed about MySQL. "I'm at the MySQL company meeting where we've just announced that Sun is aquiring MySQL. Everyone from Sun is excited, and everyone from MySQL that I've talked to so far is excited too."



Simmer Down Blog

Posted by kfarnham Jan 16, 2008

It would be a busy day even if Sun hadn't bought MySQL

So the front page was already looking like it was chock full of good stuff to blog about: an announcement of an all-night BarCamp in the middle of the Mobile & Embedded Developer Days, Simon Morris with another clever and insightful desktop Java manifesto, a Blu-Ray event in Barcelona next week, and so many good forum posts that I ended up using four of them.

And then Sun goes and buys MySQL AB, announcing that Sun will also be "unveiling new global support offerings into the MySQL marketplace."

Jonathan Schwartz has a lengthy blog, titled Helping Dolphins Fly, describing the deal and Sun's MySQL plans moving forward:

So why is this important for the internet? Until now, no platform vendor has assembled all the core elements of a completely open source operating system for the internet. No company has been able to deliver a comprehensive alternative to the leading proprietary OS. With this acquisition, we will have done just that - positioned Sun at the center of the web, as the definitive provider of high performance platforms for the web economy. For startups and web 2.0 companies, to government agencies and traditional enterprises. This creates enormous potential for Sun, for the global free software community, and for our partners and customers across the globe. There's opportunity everywhere.

Tim O'Reilly has also blogged his reactions praising Sun, who he says has "staked its future on open source":

This seems to me to be a great deal both for Sun and for MySQL. Anyone who follows this blog or has heard my talks will have seen me say "Data is the Intel Inside" of the next generation of internet applications, the very heart of Web 2.0. And of course, most of those Web 2.0 applications are built on the LAMP stack, where M stands for MySQL, far and away the leading open source database.

Years ago, John Gage, Sun's chief scientist, made the provocative statement "the network is the computer." And bit by bit, the industry has been realizing that dream. What we didn't understand when we first started thinking about that emerging network operating system was just how much it would be a data-oriented system, such that you might more accurately say, "the network plus the database is the computer."

So what does this mean for the community? Well, for one thing, with Sun offering MySQL services and support, it might get a whole lot easier to sell your boss on a totally open-source GlassFish/MySQL architecture. In the Java Today section, The Aquarium's Eduardo Pelegri-Llopart saysWelcome Aboard, MySQL! "MySQL (theM in LAMP) is extremely popular in new "Web 2.0" applications. For example MySQL is #4 at behind Firefox, Subversion and Apache, and ahead of PHP. Adoption is strong even in the enterprise: 6 out of our 13 Adoption Stories use MySQL. We are all extremely excited about the possibilities; both for developers and for deployers. We will keep you posted of developments as they happen. Fun times ahead!"

In other interesting developments, you can stop worrying aboutCrypto Code and OpenJDK: Andreas Sterbenz writes that the encumbrances have been resolved. "Let me give a quick update on that: Brad spent quite a bit of time on this and eventually those issues were resolved, as announced in a message to the mailing lists. That means all the crypto code is available on OpenJDK now. There are a couple of checks (relating to signed providers) which are present in Sun's binaries but that are not present in OpenJDK, but that is simply because those checks are neither needed nor particularly appropriate for an open source project. Everything else is exactly the same as in Sun's releases. Bottom line is that you can modify and build your own versions of the crypto framework and the crypto providers now. Have at it!"

Kenneth Roper offers some guidance and surprisingly counter-intuitive advice -- like reducing your heap size -- for dealing with OutOfMemoryErrors, in JVM Lies: The OutOfMemory Myth. "There are times when an OutOfMemoryError means exactly what it says. Try adding new objects to an ArrayList in a while(true) loop and you'll see what I mean. However, there are times when it doesn't."

In today's Weblogs, Simon


Numbered Days Blog

Posted by kfarnham Jan 15, 2008

ME Developer Days are approaching

The early crush of 2008 conferences is now well underway, both big and small. Last week in the Java world, it was CodeMash and Sun Tech Days Atlanta (BTW, I forgot to give a shout-out to the former Pathfire colleagues I met at STD-ATL, so hi to to Kelly, John, and new-hire Marty. Unless you were supposed to be at work, in which case, I didn't see you and hope you'll drop me a line sometime). Robert Cooper, ONJava blogger and former Soul Caliburopponent, was also there and has blogged about the good and bad of the enterprise track.

Next week, it's all about the Mobile & Embedded Developer Days, being held on Sun's Santa Clara campus. Registrationis open through Friday, and on-site registration will not be available, so if you're still thinking of attending, you need to sign up this week. Community Leaders and conference organizers Roger Brinkley and Terrence Barr have posted several blogs recently to get attendees ready for the event, with Roger lining up buffet-style Mexican dinner for Wednesday night.

So, today's Weblogs with a few more items of interest regarding the ME Developer Days. Terrence


Where'd You Go? Blog

Posted by kfarnham Jan 14, 2008

Looking for articles on new topics

Between sessions at Sun Tech Days Atlanta last week, I stopped by one of the booths and said hi to Gregg Sporar, and thanking him for the strong session on Beans Binding. Seeing that I was with O'Reilly, specifically as the editor of, he said straight out that he really wanted to see a feature article on Beans Binding and JSR 295.

Consider it added to the Wish List.

That and a couple other articles are on my to-do list. Lately, the kinds of topics submitted out of the blue have been really hit or miss. Heavy on the miss, as potential authors apparently haven't found the Writer's Guide and its topic interest list. The focus is plenty broad: anything in the core Java platforms (ME, SE, EE), plus the projects hosted on, or useful meta-topics related to development (process, etc.). And yet, a lot of the proposals I get are topics that have nothing to do with our community (e.g., Spring), or have already been covered to death (Spring again).

I'm going to update the suggested topic list this week, and start directly contacting project leads to see if they know any potential writers in their user communities, but here are a few topics I'd be highly interested in seeing proposals on:

  • Swing Application Framework and Beans Binding -- combined with NetBeans, these really offer the fundamental building blocks of putting much of an application together with a GUI builder. Not all of it, of course, but once you come to realize you have better things to do than manually wire/unwire all your event listener relationships, or build your GUI from the cold start of public static void main(), these become highly appealing.

  • NetBeans Rich Client Platform -- same idea, bigger scale. Why write all this stuff from scratch when you can just pick up a best-in-class application platform, and focus on the functionality specific to your domain?

  • Hudson -- this may be the best, most popular project that too few people know about. Use it for your continuous build system, or to make sure the many parts of your enterprise system stay up and running. There are many potential uses, and there'll be more as people discover this project.

  • ROME -- we covered this in a 2006 article, but with important sub-projects like ROME Propono and lots of companies using ROME for their RSS and podcast feeds, it's well worth another look.

  • Java and multi-core -- I don't feel like the definitive article has been written on this topic. Is it really enough to say "we have threads, we're fine", or "let the app server worry about it?" Are you really writing optimally concurrent code, and are you just using Threads, or are you exploiting the power and convenience of the java.util.concurrent package? Remember, two cores is just the beginning; Apple thinks some of its users need eight coreson two CPUs, and of course the UltraSPARC T2gives you eight cores (and 64 threads) on one CPU. Are we coding to make the best possible use of this power?

This is of course an incomplete, off-the-cuff list. There are lots of other topics that fall within our purview that would be of interest to the readership. In fact, if there's something you'd like to see a feature article on, please followup with a comment to this blog. And if your project would benefit from an introductory feature article, and you're up for writing it, send me an e-mail (cadamson at oreilly dot com).

You don't have to be a world-class expert on a topic to write an article about it. Frankly, a lot of times, writing is an investigatory experience for me, and the value that a writer provides is to be one of the first to really dig into something and clarify it for others. Elliotte Rusty Harold isn't a JDK build engineer, but I'll bet his piece on Building the JDK, based on a day of working through all the build challenges, has saved its readers a lot of hassle.

Oh, and did I mention we pay for feature articles? Sun employees are exempt, unfortunately, but if a paycheck's enough to seal the deal, to say nothing of getting your name and your topic attached at the hip by search engines, then take a look at the writer's guide and drop me a line with your proposal.

In Java Today, Java SE 6 Update 4 is now available for download. Along with a time zone update and a command-line option allowing explicit System.gc() calls to run concurrently and unload eligible classes, the release notes show 377 bug fixes and feature adds, including the integration of JAX-WS 2.1 (bug 6535162), as noted in weblogs by Rama Pulavarthi and Arun Gupta.

The latest edition, Issue 153 , of the JavaTools Community Newsletter is out, with a new year's greeting from the community leads, tool-related news from around the web and from the community's projects, announcements of new projects that have joined the community, and a Tool Tip on using Maven with Eclipse.

The NetBeans project is proud to announce that the Woodstock JSF Components4.1.1 upgrade is available on NetBeans Update Center. The new version includes performance improvements, bug fixes, and an upgrade to dojo 1.0.1. The Woodstock 4.1.1 Release notes have complete details about all the changes in this version.

Having mentioned Beans Binding earlier, Fabrizio


Congratulations Blog

Posted by kfarnham Jan 11, 2008

10 years of Tech Days, 11 questions for James Gosling, and then some cake

The highlight of the second day of Sun Tech Days Atlanta was probably the wide-open Q&A with James Gosling. In this season of rehearsed, orchestrated, and fully-landscaped tech conference keynotes -- think Bill Gates at CES this week, or Steve Jobs at MacWorld next week -- it's really saying something that Dr. Gosling will put himself out there for any question submitted by attendees. The questions could be about topics that he's not well-equipped to handle, or could be patently asinine, but he took an hour to fully consider and reply to 11 questions submitted by attendees.

And lucky for you, I took notes. Do understand that these are parahprases of Dr. Gosling's full remarks; I'll try not to lose anything in translation, but don't treat these as exact, attributable quotes, because I didn't have an audio recorder rolling.

Question 1. How do you incorporate Microsoft applications with Sun frameworks?

Dr. Gosling said he was probably the worst person in Sun to ask this question to, then continued that most of their integration work was built around the designed interfaces, particularly for web services. He said the whole "alphabet soup" of WS- standards had been implemented and tested for interoperability with Microsoft and works reasonably well.

Question 2. Universities are teaching antiquated views on Java, focusing on old performance problems. What is Sun doing with universities to appeal to upcoming developers?

Gosling pointed out the specialized IDEs that target education, like BlueJ and GreenFoot. He also pointed out that Sun funds Curriki, a curriculum-building education site that's used around the world. There are also tech days, and evangelists going from school to school giving talks. He added that the big problem with schools and universities is that "there are so damn many of them."

Question 3. Are you aware of performance problems rendering HTML inside a JTable with default JLabel renderer?

Gosling said he could froth at the mouth about HTML, noting how utterly "massive" the spec is, as are the problems of dealing with all the non-spec-compliant HTML seen in the wild. Having said all that, he advised that if you really wanted italic text in yourJButton, than instead of putting the button String in HTML, you could just set an italicized font on the button. From this, he noted that sometimes developers choose "big hairy things", like HTML, when there are simpler alternatives. Similarly, he said that a lot of people who crack open books on EE, which was designed for large scale systems, might do better to just write a servlet or even work with raw sockets. "I love raw sockets," he added.

Question 4. Why doesn't Wall Street think highly of Sun?

"I have no idea," was the initial reaction. Gosling pointed out that if Sun were measured by cash flow, it should value Sun much more highly. "Our cash flow is great and our stock price sucks," he said, noting that a lot of companies were in the exact opposite position. He also pointed out the irony that much of Wall Street runs on Sun products. In particular, the NASDAQ exchange is "a Java app running on a bunch of Sun boxes", and they seem happy as clams.

Question 5. Do you have any plans to develop a tool to let a common user like housewives be able to develop applications?

Gosling's initial answer was "no", but he came around a little bit in the course of a long reply. "One of the things we're trying to do with tools," he said, "is to make it so that differently talented people can write apps easily." He pointed out that as part of the research and preparation for Java FX, they did a survey of shops doing Rich Internet Applications, and found that more than half of the developers are people who went to art school, not coming from the usual engineering background. "They have a different idea of what a tool should do." So the next generation of tools is meant for a mix of art school and engineering types, with Java FX Script "designed around the kind of scripting that the art school crowd does, and the way they think about scripting." He also noted GreenFoot, an IDE built around writing sprite-based games, as a means of getting young kids to code.

Question 6. What do you think of the state of Java observabillity in production, and where it's going?

He said that again, he probably wasn't a particularly good person to ask about this, but noted that a great deal of work has gone into improving Java observability and manageability, particularly with production systems, which is where all the hard problems happen. "You need to be able to attach to a production server and do your testing and diagnosing," and noted that NetBeans 6 has management tools "baked into the core system". He also spoke about the power of DTrace on Solaris, and encouraged Java track attendees to switch over temporarily to the Solaris track and find out more about DTrace.

Question 7. Why is there no support for unsignedbytes, ints, andlongs?

A quick answer here: "because you don't need it." Saying that most people do the same operations with signed and unsigned bytes, making unsigned primitives largely redundant. "The real reason" that he didn't do unsigned primitives, he says, is that he walked the hallways in Sun with a stack of questions about unsigned operations, and most people got them wrong. "I kept trying to figure out a way to make unsigned comprehensible, and failed completely." One alternative would be a performance-killer: arbitrarily raising precision. So he left them out, adding that while a few people use unsigned primitives correctly, most are kidding themselves.

Question 8. A standing criticism of statically typed languages is that they bloat the code and lead to boilerplate. Dynamically typed languages like Python let you do more with less. Can you comment on this "statically typed equals bloat" mindset?

"Boilerplate has nothing to do with static typing," replied Gosling, and then brought up the kinds of examples people usually use to demonstrate the efficiency of other language. He cited one example, where someone complained that setting the compression factor of a JPEG using the Java API, whereas this was a one-liner with Python. Gosling pointed out that JPEG compression has "like a hundred parameters, and we handle them comprehensively." These APIs were written by people from Kodak, and they really cared about color calibration. "If you try to do color calibration with Python, you are completely [hosed]." In other words, the Python advocates can boast about the simplicity of their JPEG APIs only because they don't do nearly as much. The "big bug" in the Java world is that it was designed for large, complex systems, and scales down. By comparison, "Ruby works well, but doesn't scale." He asserted that Rails seems to offer high performance, but does so by moving the problem to the database, meaning that as your system grows, you'll quickly outgrow MySQL and have to move to an expensive enterprise database. Strong typing is all about performance, he said. "Benchmark Ruby," he said, "and it's two orders of magnitude behind Java."

Question 9. Apple support for Java has been lagging behind, with JDK 6 absent from Leopard. Is Sun working to improve this?

With a sigh, Gosling said that Sun has been working with Apple for years on Java for the Mac. "I'm fairly frustrated about it," he admitted, saying that "if any of you are members of Apple developer program, you know their support of developers is pretty shoddy." He says the problem may be one of development priorities, with Apple pulling developers off of the Mac and putting them on other projects. He said he'd been working on paging problems on the Mac, and when he contacted his friends in the company, they'd say they couldn't help because they'd been reassigned to iPod. Summarizing his feelings about Apple, Gosling said, "they're justdifficult."

Question 10. What is the most fascinating Java application you have ever seen?

In terms of changing people's lives, Gosling said he'd choose the Brazilian National Healthcare System. "It sort of sets my standard for 'Holy Crap!'" The system tracks every caregiver-patient transaction throughout the entire country, all of which propagate from village to state to national datastore. If you're in an ambulance in one city and say you had an X-ray in another city yesterday, they can pull it right up. On a tour, Gosling said that the system had paid for itself five times over just in the elimination of drug fraud. He also said that the JavaCard-based identification system made name records optional, a crucial trait in indigenous areas where people share their names only with family members, not with outsiders.

Question 11. What would be the impact of Sun if Java was moved to another company?

Gosling said "it depends", primarily on the kind of company involved. With a benign party, it would be fine, but could be nasty with "certain other companies." To express the potential nastiness, he told an anecdote about being at Carnegie Mellon, feeling it was effectively a research shop for the military, but discovering the military people were "really cool", and coming around to their outlook that their job was actually peace. "And then I went to IBM, and I was like 'holy crap.'" Having found that the military people really weren't interested in starting fights, he found that "in most capitalist outfits, the goal is total destruction." That said, he carved out an exception for Sun, which has always stayed small enough, adding that "Scott never had any delusions of grandeur."

And with that, the hour was about up and the Q&A concluded. With one surprise. Announcing that the Sun Tech Days started in January 1998, this event marked the 10th anniversary of Sun Tech Days. So a cake was rolled out in front of Dr. Gosling and the organizers of the event, and then sliced up during the Filthy Rich Clients and Metro sessions, served as a snack for the late afternoon break.

Now, here's a look at the front page for today, starting with the Java Today section. Over on Artima, Frank Sommers has posted Data Binding in Java: A Conversation with Shannon Hickey about the Beans Binding API, JSR 295. Shannon, the Spec Lead for JSR 295, explains Beans Binding, both the problems it solves and the theory behind it. He also talks about how Beans Binding is a separate issue from the various proposals to add properties to the Java language, and distinguishes the project from similar efforts to bind JavaBean properties.

Naoto Sato has posted a proposal for Easy localization in JavaFX Script. "We are thinking of a new easier way to localize strings in the JavaFX Script. It would be pretty much like GNU's gettext() function where the key itself becomes the default translation. So the above code would be written in JavaFX Script like: var greetings = ##"Hello, World!"; Yep, just one line. How simple is that! Here"##" works like a unary operator to the string literal, in which it looks for the proper localized string with the key of "Hello, World!". " A complete Proposal for the string literal translation has been posted to the Planet JFX Wiki.

In December, the JUGs Community started a campaign to refresh and cleanup its incubator, the place where new JUGs experiment with the infrastructure. The ESJUG is one of the first JUGs that have been graduated from the incubation status. The Espírito Santo Java User Group is the only JUG of

A hefty afternoon schedule at Sun Tech Days Atlanta

Sun Tech Days Atlanta got started yesterday with parallel tracks for NetBeans Day and Open Solaris Day. Actually, the schedule wasn't what you might expect: the sessions kicked off at 1PM and went fairly late into the evening (I think the last one wrapped up at 7PM), which left the morning free to get some work done or meet up with colleagues.

I shared a table for an hour with Marina Sum, and we swapped stories of projects long gone, working with authors on articles, and big picture overviews. One thing we came to agree on is that development is a far more social exercise than one might think. Whether it's working on a team, dealing with QA, or leaving your code in sufficiently presentable shape for someone else to maintain (and if it's even remotely useful, someone else probably is going to need to work with it), the ability to work with peers and build bridges, collaborate, and even build community, is essential to success.

Gregg Sporarand Jeet Kaul offered the first few sessions on NetBeans, covering new features, the Spring Application Framework, and Beans Binding. Combined with NetBeans' visual editor, these make for a very compelling way to build a desktop application: build the GUI visually, bind components to their values (rather than writing dozens of event listeners and wiring them all up in code), and work within a practical framework for application lifecycle management (instead of writing the whole public static void main..., andJFrame mainFrame = new JFrame ("My cool app"), andsetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE), and...). If you haven't seen these pieces put together, they do make a very compelling package deal.

According to the schedule on the back of the badge, today will offer four tracks: Enterprise, Rich Applications, Solaris, and Sys Admin / Hands-On Labs, all convening together in the middle of the afternoon for a Q&A with James Gosling. I'll probably be checking out the Java FX and deployment sessions, while I suspect the enterprise developers will be interested in the Metro and REST session, JRuby and Rails, and the look forward to the future of EE and GlassFish.

Again, if you're at the event, stop by and say hi.

In Java Today, InfoQ is combining recent opinion pieces by Bruce Eckel, Kevin Dangoor, Cay Horstmann, and others, collecting, comparing, and contrasting their arguments in the opinion piece Debate: Should the Java language stop adding new features? "Recently, there has been a lot of debate over the future of the Java platform, with some arguing for more features to compete with languages such as C# and Ruby, and others saying that Java should become a more stable language lest it become too complicated to use. Bruce Eckel started a new round of debates by stating that Java should stop adding new features entirely."

Over on Artima, Frank Sommers looks at the recent debates over language changes and asks How Does Language Impact Framework Design?. "Developer productivity is as much a factor of productive frameworks as it is of language capabilities. Is there anything in Java that limits framework architects in their quest to design more productive APIs and frameworks? How do language features impact framework design?"

From The Aquariumcomes this announcement that The GlassFish troubleshooting guide is yours to improve: "Some time before the holidays the Sun Java System Application Server Troubleshooting Guide was migrated to a wiki format. Of course this document applies equally to GlassFish v2. With the recent releases of both GlassFish V2 ans V2 UR1, this is probably good timing. Of course the wiki format really means that we would like people to contribute to this document and have a better flow of information between this one-stop-shop document and the GlassFish User FAQ. Specifically, hands-on experience and troubleshooting tips on enterprise features such as clustering is welcome. Maybe an idea for the Community Awards Program?"

In today's Weblogs, Joshua


Heading For The Light Blog

Posted by kfarnham Jan 9, 2008

CodeMash and Sun Tech Days Atlanta begin

New year, new conference schedule. On this first full week of 2008, the first two events on the calendar are underway. Up in Sandusky, Ohio, it's CodeMash, a novel conference that seeks to bring together top people of different stripes -- Java, .NET, PHP, etc. -- and get them to share ideas, experiences, and opinions. Among their Java presentations are sessions on JVM scripting languages, Groovy, and the Java Posse's Dick Wall speaking on Android and Guice.

Down here in Atlanta, we've got the latest round of the Sun Tech Days, which I need to head out to in about 40 minutes, as I'm scheduled to do coffee with blogger Marina Sum at 10:30. Fortunately, the event is just 10 miles down the freeway at the Cobb Galleria, which will be a little odd for me, because I usually only go to this convention center once a year, for Anime Weekend Atlanta. I have to expect that Sun Tech Days will involve a lot fewer people dressed as Narutoor Aerith, but you never know... after all, the latter did inspire the name of theaerith photo mashup project on

The Java development track looks to have a number of good sessions, covering Java SE 7, OpenJDK, the consumer JRE, JavaFX Script, and an extreme GUI makeover for the phone. And that's just on the client/user-facing side. The server-side attendees will enjoy talks on JSF, GlassFish, Project Metro, and more.

Should be a good couple of days. If you're a Java developer in this part of the U.S., I hope I'll see you there today or tomorrow. Stop by, say hi, and let me record you for our upcoming podcasts.

Marina Sum blogged about Sun Tech Days before heading east yesterday, and we link to her blog in today's Weblogs section. She says When an Assignment is Fun... "it's not work at all. But I should qualify that: It's not grunt work but fulfilling and satisfying work instead. That's what Tech Days Atlanta (January 9-10) is shaping up to be like for me."

Continuing the follow-up to Bruce Eckel's blog about Java evolution, Cay


Dirty World Blog

Posted by kfarnham Jan 8, 2008

How Java's faring in the rough-and-tumble

There were a few interesting items in this morning's news that aren't germane enough to the community to be on the front page, but might bear a little discussion here in the editor's blog.

Daring Fireball had a link to the Financial Times story Paramount in HD DVD blow (free registration required), which suggests that the Java-powered Blu-Ray format is in the endgame of its format war with HD-DVD and will soon be able to finish it off:

Paramount is poised to drop its support of HD DVD after Warner Brothers' recent backing of Sony's Blu-ray technology, in a move that will sound the death knell of HD DVD and bring the home entertainment format war to a definitive end.

Many Java developers have been cheering for Blu-Ray in this battle, and will presumably be pleased with Blu-Ray's apparent victory. After all, Blu-Ray was front and center at JavaOne 2007's interactive TV day, and we've had an active Blu-Ray Disc Java forum for some time, along with BD-J-oriented projects, like Blu-Dahlia. But actual BD-J development is difficult to get started with, since licensing the API is prohibitively expensive for independent developers. Supposedly, this is an issue that's being worked on, as I covered in a blogabout the JavaOne Blu-Ray BoF:

One comment that Sun's Bill Foote made indicated that there was disagreement within the Blu-Ray Disc Association as to how to approach non-licensee developers. The current situation, with tools and specs only available to licensees (basically just the studios, as licensing costs are extraordinary), leaves the format with too few programmers to be viable, and while participants like Sun would clearly prefer to get information out to independent developers, this apparently doesn't sit well with some BDA members, even though Foote reports agreement that some kind of overture to indie developers needs to be made.

Well, it's been over seven months since JavaOne, and it doesn't look like there's been any kind of public announcement on this front. We also have yet to see Blu-Ray living up to some of the functionality that BD-J promises. While the vision documents and white papers include things like chat-enabled group viewings of Blu-Ray video and downloadable enhanced content, we're still mostly seeing BD-J used for fancier menus and very simple games. If Blu-Ray is to be a Java success story, it'll help when Java is put to more sophisticated use, and proves it can do what other technologies can't.

The other item I noticed today is sure to bring hackles from most of us, posted on Slashdot with the arguably flame-baiting title Professors Slam Java As "Damaging" To Students. It links to a paper by two New York University professors, Computer Science Education: Where Are the Software Engineers of Tomorrow? Here's what they're arguing:

As faculty members at New York University for decades, we have regretted the introduction of Java as a first language of instruction for most computer science majors. We have seen how this choice has weakened the formation of our students, as reflected in their performance in systems and architecture courses. As founders of a company that specializes in Ada programming tools for mission-critical systems, we find it harder to recruit qualified applicants who have the right foundational skills. We want to advocate a more rigorous formation, in which formal methods are introduced early on, and programming languages play a central role in CS education.

In the course of the article, they make several familiar arguments, including bemoaning a lessened focus on mathematics and other formal approaches to computer science (some Slashdot readers have noted the blurred distinction between "computer science" and "software engineering" in the paper), as well as concerns about using Java as a first language. Here's the money quote:

What we observed at New York University is that the Java programming courses did not prepare our students for the first course in systems, much less for more advanced ones. Students found it hard to write programs that did not have a graphic interface, had no feeling for the relationship between the source program and what the hardware would actually do, and (most damaging) did not understand the semantics of pointers at all, which made the use of C in systems programming very challenging.

Well, maybe, but 20 or 30 years ago, couldn't you have made the same complaint about programmers who learned on BASIC and were challenged without a graphic interface or who couldn't handle pointers at first? Don't we see exactly the same problems with Visual Basic programmers moving to any of the curly-brace languages? Don't you suppose the kids doing JavaScript browser hacks, or developing Flash apps with ActionScript, aren't also going to face exactly the same problems? Pointers are always a big hill to climb, no matter what language you start with. Everyone's got to start somewhere, and unless we're seriously going to dictate C as the first language, it's probably going to be something more approachable, and something that generates visible results. Seriously, beginners don't write device drivers.

So that I don't monopolize all the fun, here's one more quote to think over:

The irresistible beauty of programming consists in the reduction of complex formal processes to a very small set of primitive operations. Java, instead of exposing this beauty, encourages the programmer to approach problem-solving like a plumber in a hardware store: by rummaging through a multitude of drawers (i.e. packages) we will end up finding some gadget (i.e. class) that does roughly what we want. How it does it is not interesting!

Care to comment on that, or the other items presented in today's blog? Please contribute some feedback at the bottom of the page.

In Java Today, Kelly O'Hair considers the challenges of building the JDK on different platforms and lists the pieces you'll need in his blog Building and Porting the OpenJDK: A Shopping Cart. "What is the difference between Building the OpenJDK and Porting it? Certainly porting requires you to build it, but porting can mean much more, and with different levels of porting effort. A different operating system or hardware architecture is certainly a major porting effort. But a different C++ compiler could also be a porting effort, probably to a lesser degree, but don't underestimate it."

The Mobile & Embedded Community home page is linking to Damith C. Rajapakse's paper Device Fragmentation of Mobile Applications. "Device fragmentation is having to produce multiple versions of an application to run on multiple devices. It increases the required effort in almost all aspects of software life cycle. This article analyzes various aspects of device fragmentation, such as the reasons behind it, the current state of the art in tackling it, and the directions we can expect it to evolve in the future."

"Many of today's applications require dynamic capabilities, such as enabling users to supply an abstract form of computation that extends an application's static capabilities. package, added to Java Platform, Standard Edition 6 (Java SE) as a standard API for compiling Java source, is a superb way to achieve this goal." In the article Create Dynamic Applications with, David Biesack provides an overview of the major classes in the package, demonstrates how to use them to create a fa


Handle With Care Blog

Posted by kfarnham Jan 7, 2008

This blog brought to you by a weird new keyboard

OK, I need to type the blog with a fair amount of care today, because for the new year, I've committed myself what some may consider a bizarre piece of hardware, a keyboard meant for use with video editing programs, the Bella Pro Series 3.0 for Final Cut Pro. It replaces the arrow keys with a media jog/shuttle wheel, and color codes all the keys with icons for their functions in the Final Cut Pro video editing software, something I've resolved to do more work in this year (starting with transferring all our family's home videos to the hard drive before the camcorder mangles another tape).

It's great for media work, but is it practical for everyday writing and editing? Jury's still out. The keypress feel is good, but moving the arrow keys down to the wrist rest is a touchy compromise. They're really far out of the way down there. Curiously, most Mac apps quietly support emacs keybindings, so that's a pretty comfortable workaround for me, having used emacs since the 80's. Unfortunately, though, NetBeans doesn't seem to default to emacs keybindings for cursor navigation --ctrl-n works for "next line", but notctrl-p for "previous line", ctrl-b for "back char", or ctrl-f for "forward char" (and yes, anyone who doesn't use emacs is probably appalled at those default key mappings). Interestingly, NetBeans does handle some higher level emacs key commands appropriately, like ctrl-x ctrl-s for "save", but not ctrl-x 2 for "split window into two panes", or anything involvingmeta-x.

Well, at least the jog/shuttle may help me log tapes well enough to not need to write that footpad-control that I wanted to do in Java a while back.

So are you passionate about your input devices, like a favorite mouse or a particularly comfortable keyboard? Since we spend so much of our lives using these tools, and since they're the interface between our thoughts and the computer, doesn't it make sense to make sure you're using a device that makes you most efficient and comfortable? Is anyone out there using variant keyboard layouts (Dvorakfor example) or input managers to code with? How's that working out for you?

Anyways, excuse the indulgence of your editor's extraneous digital pursuits, and watch for typos as we head into today's highlights...

Starting off with the Java Today section, the GlassFish community is organizing itself to participate in Sun's Open Source Community Innovation Awards Program, and Eduardo Pelegri-Llopart updates their status in The Aquarium post GlassFish Grants and Awards Program. "Now that most people are back from the holiday's break, we need to close on the GlassFish Grants and Awards Program. If you are interested please check theOriginal TA post, the two posts at Users@GF ([1], [2]), the threads at the Advocacy@GF alias and the Program Page at our Wiki. The intention is to design as simple a program as possible, possibly borrowing the programs that other communities are using. We will be using the advocacy mailing list for any further announcements."

The 2008 O'Reilly Open Source Convention, being held July 21-25 in Portland, Oregon, has opened its Call for Participation. "We want to hear about your winning techniques, favorite life-savers, and the system you've made that everyone will be using next year." There's a Java track once again, and last year's Java talks included a number of speakers, including Kirill Grouchnikov on advanced effects in Java desktop applications, Chet Haase on Beans Binding and the Swing Application Framework, Roger Brinkley on phoneME, and more. The CFP closes on February 4.

Mobile & Embedded Community Evangelist, Terrence Barr, discusses the Community's members, projects and the upcoming Developer Daysconference in the JDJ article the Mobile & Embedded Community Fosters Greater Innovation . "The open source Mobile & Embedded Community is a gathering place where developers can collaborate, innovate, and drive the evolution of the Java Platform Micro Edition (Java ME). Launched in November 2006, more than 500 active members are participating in more than 80 projects, most of them created by the community's members."



Yours Truly Blog

Posted by kfarnham Jan 4, 2008

Are you and Java going in the same direction?

I was trying to think of a poll question this morning, with a desire to do one last sort of "look ahead to 2008" item, when I realized there was a chance to re-use a poll and see how much opinions have changed.

To wit, in our last poll of 2006, we asked What version of Java do you expect to be using at the end of 2007? The majority voted for the just-released Java SE 6, suggesting they were either using it already, or planned to do so within the next twelve months. The next highest result was 5.0, which about a quarter of the community figured they'd be using throughout 2007.

In retrospect, it's interesting that 17% thought they'd be using Java 7.0 by this point, even though 6.0 had only just been released a few weeks before the poll was taken. With Java's multi-year release cycle, thinking 7.0 would be ready by now was perhaps a little optimistic. In fact, Danny Coward said at JavaOne 2007 that 7.0 is looking like late 2008 or early 2009. But to be fair to everyone who took last year's poll, it's hard to predict the future: who would have thought in late 2006 that Apple still wouldn't be shipping a final Mac JDK 6 over a year later?

Still, at the beginning of 2008, we're actually in more or less the same position that we were for that poll a year ago: 6.0 is the current version, 7.0 is still a ways out, and there may well be a lot of people still on 5.0 or earlier for various reasons. Given that similarity, we can use the same question with the same responses, and see how adoptions and attitudes have changed in the last twelve months.

And so, the new Poll asks "What version of Java do you expect to be using at the end of 2008?" Cast your vote on the front page, then check the results page for current tallies and discussion.

And what's with the 1.4 contingent anyways? Y'all know you can use modern JVMs and still ignore Generics and autoboxing and the rest of 5.0's changes with javac -source 1.4 -target 1.4, right? Well, no, you can't really ignore it, not with everyone else adopting those changes. And this still-controversial set of changes to the language was apparently a major topic of discussion at Javapolis last month. Bruce Eckel came back from those talks wondering if it's time to dramatically rein in changes to the Java language.

In Java Today, we feature his new opinion piece, Java: Evolutionary Dead End, in which he argues, "if Java is to be saved at all, it needs to become like C; a workhorse that you can rely upon. In fact, any future changes to the language need to be things that simplify and clarify the language and its use (say, fixing the classpath problem), and flesh out (for example) incomplete libraries that have languished (like JMF)."

In a wide-ranging interview in Redmond Developer News called The Original, Java creator James Gosling discusses the open-sourcing of Java, JavaFX and its competitors in the RIA realm, the rise of the mobile app and its increasing similarity to the desktop, and his opinions on falling enrollment levels in college Computer Science departments.

The Aquariumnotes a New GlassFish Podcast episode on V3: "in this episode, GlassFish architect Jérôme Dochez gets into how GlassFish V3 is being built using the HK2 modules sub-system. He goes into what the nucleus is, the role of grizzly, how easy embedding GlassFish V3 will be but also into the challenges of building a Java EE 6 Application Server implementation on top of a micro-kernel."

In today's Forums,kbr follows up on surprising bug report against the new Java Plug-In, in the thread Re: Cached JSObjects are invalidated automatically. "I've tracked down the root cause of the JSObject invalidation bug in the new plug-in and it was a staggering bug where a comment in the code said one thing and the code did exactly the opposite. Frankly I'm amazed we got this far in our testing without running into this. Thanks again for the excellent test case. This will be fixed in 6u10 build 11."

Following up on a topic we featured yesterday, araeoffers a counter-proposal in Re: Why doesn't use weak references?"I've had the situation with a long-lived stream where I've had to do a reset() after every so many writes to prevent these memory problems. If weak references are too expensive then it would be nice to have a new property on ObjectOutputStream to tell it not to bother storing references - a sort of auto-reset."

Finally, arialph is looking for some ideas for Sending SMS message to cellphone from PC using a cellphone connected to PC. "Hi, I'm developing an application for my school project. Is there a tutorial or sample application for sending SMS message to cellphones from the computer? *note: the computer is connected with a mobile phone which is used to send out SMS messages. The application is in the computer not on the mobile phone. I don't have any idea what package/function to use for this, please help."

And in today's Weblogs, Jayson


High Horses Blog

Posted by kfarnham Jan 2, 2008

More discussion amongst the closures theorists

The ongoing and still-unresolved "closures for Java 7" debate isn't scoring very high in our poll of the top Java-related developments in 2007, but there's no doubt that this remains a topic being closely followed by much of the Java community. Beyond the obvious constituencies -- those who love closures (many of whom love one particular proposal) and those who hate them and don't want to "junk up" the Java language any further -- there's also a crowd that isn't invested yet but knows their lives will be impacted by any syntax that's adopted by the language. It's tempting to call this the "just don't make it another Generics" camp, if you buy the premise that a number of developers who didn't follow the Generic proposals in advance of Java 5 were badly burned by not liking (or not understanding) the syntax that was eventually approved.

This latter crowd has much to gain from the fact that the closures debate is being carried out in public, in blogs and prototypes, which gives interested parties a much better idea of what's on the table and why. The downside is that there are so many proposals now, it's hard to keep track of them. Would you like "real" closures with a new syntax, or just beefed-up inner classes? Will you take your closures as autoboxed quasi-objects, or honest-to-Gosling Objects? Coke or Pepsi? Paper or plastic?

We start the Java Today section with a pair of perspectives on the closures debate at the dawn of 2008. On his JRoller blog, Stephen Colebourne continues his series of comparisons of the major closure proposals for Java 7 in Closures - Comparing control structures of BGGA, ARM and JCA. "In this blog I'm going to compare the second major part of the three principle 'closure' proposals - control structures. This follows my previous blog where I compared one method callbacks." He argues there are two basic approaches to control structures: let anyone write them (as the BGGA and JCA proposals do), or restrict them to language designers.

That said, there are other proposals to add to the mix. In An Alternative to Closure Conversion and to Restricted Closures, Dr. Howard Lovatt of the Artima "Pattern Centric" blog proposes an alternative where the closure is an object:

Closure conversions, both normal and restricted, have a number of catches, a bit like autoboxing of primitives does. The problem is that a closure, like a primitive, is a bit like an object but not quite and this difference is patched over by boxing the closure within an object. I think we should be striving for a more consistency, i.e. everything as an object, not introducing more none-object types.

Also in Java Today: JSR 271, Mobile Information Device Profile 3, entered a three-month public review in late December. This major JSR for the ME platform seeks to accomplish a number of goals, including enabling and specifying proper behavior for MIDlets on each of CLDC, CDC, and OSGi, enabling shared libraries for MIDlets, tightening spec in all areas to improve cross-device interoperability, improving functionality in a number of areas, specifying standard means of MIDlet provisioning (Bluetooth, removable media, MMS, JSR 232, etc.), and more. The public review ends on March 18.



Time Breaks Down Blog

Posted by kfarnham Jan 1, 2008

Welcome to 2008

Ack! Is it 2008 already? The holiday vacation here flew by in a whirl of visiting relatives, Wii Sports bowling, year-end financials, and high-calorie leftovers.

When I was younger and had more free time over the holidays, I used to see those long, empty days between Christmas and New Year's as a prime time to mess around on the computer. When I was in middle school... and this would have been about 1979 or so... there was one year where my school let some of the more computer-oriented students take home Commodore PETcomputers from the computer lab to work with over the holidays. Which was great, except for one thing: the PETs used a customized cassette recorder for program storage, and we had fewer of those than we had computers. So I got the computer over the holidays, but not a cassette deck, meaning that while I had all the time I wanted to write programs on the PET, I had no way of saving them. At one point, I wrote a maze game in BASIC, then left the computer on for two days straight because I couldn't stand the thought of losing all my work.

Ah, youth and exuberance. You can still get that buzz off a new year of course, with new starts, new perspectives, and resolutions to do new stuff on this lap around the Sun. There's the usual stuff you see this time of year: resolutions, reflections, and of course the annual "this will be the year that Linux on the desktop really takes off" blog.

But let's get more specific: what do you want out of this year? What can we do to help you build community, collaborate, and enjoy your membership in the broader Java community? Are there topics you'd like to learn more about, or services you'd like to see provided? We have our own plans for changes in 2008, and to get it right, we need to hear from you. Comment on this blog, send e-mail, talk amongst yourselves... if you have an idea of how to make better in 2008, please let us know.

Speaking of letting us know about stuff, the Events List only has events listed up through February. Surely there are more conferences, JUG meetings, and other events that you're part of. If you want to get your event listed, send us the essential details via the events submission form, and (pending an editorial review) we'll add it to the website and the daily editor's blog. Similarly, you can discuss upcoming events on the conferences forum.

To begin the new year in the Weblogs section, Marina

Filter Blog

By date: