In my tenure as java.net editor, I've come to realize that NetBeans is much more than simply an IDE. Geertjan Wielenga has undertaken a research project to discover interesting applications that have been developed using the NetBeans platform. He's finding so many that he's invented the acronym YANPA (Yet Another NetBeans Platform Application). In today's Java Today I'm featuring the latest three YANPA apps Geertjan has discovered.
I have spent between 2/3 and 3/4 of my time as a professional developer in the scientific realm, as opposed to the business realm. It's interesting to me that so many scientific oriented research projects seem to find NetBeans the ideal platform on which to develop their applications. Geertjan's latest three YANPA projects involve:
Oracle pushes JDeveloper and Sun NetBeans. Because Oracle is about to buy Sun, only one of the IDEs will be officially supported in long term. From strategic point of view, NetBeans would be the better choice ...
And Adam goes on to list eight rather convincing arguments to support his viewpoint.
I'd suggest that Geertjan's YANPA research provides another reason for Oracle to "push NetBeans." NetBeans isn't just a project, it's not just an IDE. It's not even "just" a community. It's a platform that has engendered some incredible apps! That doesn't happen in the absence of significant underlying capabilities, and the stability and reliability that makes development teams trust the platform.
Take a look at what Geertjan is discovering (there's more than just what I'm featuring today) to see what I mean.
Spectroscopy comprises any measurement of a quantity as a function of either wavelength or frequency. It is often used in physical and analytical chemistry for the identification of substances through the spectrum emitted from or absorbed by them. How do I know all this? Well, to be honest, Wikipedia. SpectraSuite from Ocean Optics is, yes, an advanced modular spectroscopy application created with the NetBeans Platform as its starting point...
Quantitative Biology Tool is a SBML-compliant application on the NetBeans Platform. It supports both qualitative and quantitative modeling of biological systems. It is designed to support "the iterative nature of the scientific method, which alternates between experimentation and model refinement. Researchers may utilize either hypothesis-driven or data-driven approaches with QBT." QBT is developed by SemanticBits in collaboration with the National Heart, Lung, and Blood Institute (NHLBI) and is being adopted there...
YANPA (Yet Another NetBeans Platform Application) is... NG-Screener, by NetGuardians in Switzerland. (Switzerland sure has a lot of stuff happening around the NetBeans Platform.) NG-Screener is a Security Information and Events Management (SIEM) appliance that enables medium-sized organizations to harness their log data resources. Really cool screenshots ...
JUnit 4.7 introduced a few features that make it a little easier to work with exceptions. JUnit 4 introduced the expected parameter, which makes a test succeed if and only if a certain exception is thrown. For example, in the following code sample, we are testing a UserManager class. When the login() function is called, it should throw an UnknownUserException when no user is found. Our UserDao class will return null in this case, so we mock out the UserDao class (using Mockito here), and use the expected parameter to ensure that the exception is thrown ...
Today we're going to talk about two features of JSF 2.0's f:ajax tag: the event attribute and the listener attribute. The use of both of these is really, really simple - so I'll just briefly cover the basics, and then launch directly into the sample code. The "event" attribute of the ajax tag indicates which event to use to trigger the ajax request. There are any number of possible events allowed: You can use the standard browser DOM events (like click, change, keyup, etc. You can also use two special event values - action and valueChange. These two special values correspond to the same events that happen on the server side in JSF. On the client side, action is typically mapped to click, while valueChange is mapped to change or click, depending on the component...
I found a cool feature in Google Chrome browser and would like to thank who did it and share it with you :-) It is "Reopen Closes Tabs" it is available in FireFox using the same short cut but founding it in the right click menu is much easier and visiable to the user.
In the Forums, averyanov wants to know How can I lock panel without repaint all component: "Hello! If I use the standart glasspane than Swing will repaint entire frame. Is it possible to lock frame with transparent panel but without invoke repaint all component. I tried // the component to be..."
abailey has a problem with asadmin: --user and --passwordfile not working: "Hello. I'm writing an init.d script for my ubuntu server to run on boot that will start my glassfish domain, and I am trying to nail down the exact command to use. First, I have a password file (/home/alpha/glassfishv2/toilet/password.txt) ..."
And wetravel is trying to perform an lcdui to lwuit conversion: "I'm porting parts of my existing J2ME application to lwuit and ran into some problems: 1. I can't find a good way to switch back from lwuit forms to native lcdui canvas. Setting the canvas with setcurrent seems to work when there are no menu's on..."
Our current Spotlight is this week's Economist magazine feature on "The power of mobile money": "mobile phones have evolved in a few short years to become tools of economic empowerment for the world’s poorest people. These phones compensate for inadequate infrastructure, such as bad roads and slow postal services, allowing information to move more freely, making markets more efficient and unleashing entrepreneurship ... With such phones now so commonplace, a new opportunity beckons: mobile money, which allows cash to travel as quickly as a text message..."
Our Feature Articles include Jeff Lowery's A Finite State Machine Supporting Concurrent States, which demonstrates how Java enums and EnumSets can be used as a basis to define and validate application states and state transitions. We're also featuring Jeff Friesen's article Introducing Custom Paints to JavaFX, which shows how you can leverage undocumented JavaFX capabilities to support custom paints in JavaFX Version 1.2.
Registered users can submit event listings for the java.net Events Page using our events submission form. All submissions go through an editorial review before being posted to the site.
Archives and Subscriptions: This blog is delivered weekdays as the Java Today RSS feed. Also, once this page is no longer featured as the front page of java.net it will be archived along with other past issues in the java.net Archive.