|
July 2007
July 27, 2007
Ubiquitous Wireless and Java-based Cell Phones
Imagine a free coast-to-coast wireless network and cheap Wifi-based cell-phones running Java.
With Sun’s acquisition of SaveJE (which led to JavaFX Mobile), and then the release of the iPhone and its ability to communicate over a Wifi wireless network, a light bulb went off in my head. Wouldn’t it be nice if someone introduced a free nation-wide wireless network for everyone to connect to, coupled with a JavaFX Mobile-based cell phone that can also connect to it? Imagine - VOIP-based cell phone calls without a carrier! It's time to remove the phrase "cell phone" from our vocabulary and just call them all plain "phones," regardless of whether you carry them with you or leave them at home.
I’ve been using a VOIP-based phone exclusively at home for a year now, and the experience has been excellent. The technology is proven and well-baked as far as I’m concerned. Whether it’s Skype, Vonage, or a local cable provider, the technology is already main-stream. But why limit that to the home? I’d love to be able to take my VOIP calling ability with me on the road. It really should be just like adding another phone jack or network port at home, except it’s a handheld device that looks and acts like a cell phone. Ubiquitous wireless networking would make this possible, almost for free.
It all started with Sun’s acquisition of SaveJE around the time of JavaOne this year. My aspirations of having a “virtual cell phone” are coming closer to reality. What I mean by “virtual” is a cell phone implemented in Java; it can run on my desktop at home, my laptop, and any mobile device I choose. Skype Mobile comes close to this, but it’s not Java-based, and it’s not quite that transparent.
Does ubiquitous, coast-to-coast, wireless networking with Java-based mobile VOIP devices that can communicate over this network interest you? Enter your opinion in the comments section below.
-EJB
Posted by Eric Bruno at 12:18 AM Permalink
|
July 24, 2007
I like Java and I like movies
But the whole Blu-ray vs. HD-DVD issue is moot in my opinion.
Why? For the same reason I don't buy CDs anymore; the ability to download or play music on demand has rendered them obsolete to me. If there's one thing I've learned from pay-per-view, iTunes, Apple TV, and the pile of scratched DVDs that I have, it's that buying physical media is so "five minutes ago." Just let me download and play it anywhere I want (i.e. on my laptop, or any TV in my house). No more searching for disks; worrying about them being scratched; or having them get lost. With backup drives as cheap as they are, and with storage space available with access over the internet, I really don't need to worry about having a physical DVD "just in case."
Admittedly, high-definition movies require quite a bit more storage than standard DVD movies. Blu-ray DVDs have between 25GB to 50GB of capacity, or more with the newer revisions. HD-DVD, by comparison, has between 15GB to 30GB of capacity. What makes Blu-ray really cool is that every player has Java built-in, allowing DVD makers to include dynamic content such as interactive menus and games. However, I just can't help but to wonder if this is enough to make consumers rush out and buy new players and DVDs.
Therefore, although Blu-ray and HD-DVD are nice, just give me the ability to purchase, download, selectively store, and play high-def movies anywhere I'd like, at anytime, and end the issue. Let me know if you agree.
-EJB
Posted by Eric Bruno at 05:52 AM Permalink
|
July 16, 2007
NetBeans 6.0, Buildr, GlassFish v2, IONA Fuse...
While many of us have been busy vacationing, it seems many Java developers are busy being productive. (Isn't that what winter is for?) While summer has been heating up, so has the global Java community.
NetBeans 6.0
The NetBeans team at Sun recently released milestone 10 of the future NetBeans version 6. This version is particularly interesting because it contains many new features, as well as improvements to existing features. For instance, code highlights act like automatic searches; when you place the caret on any word in your code, NetBeans 6 automatically highlights all instances of that word throughout the file. Simply scroll through to see all instances of that word. You no longer need to pull up the "Find" dialog box to type or paste the word. Simple, but cool.
NetBeans 6 also adds UML support with forward engineering and code generation. Not only can you assemble useful UML diagrams with the Diagram Editor, improvements allow you to automatically align or distribute shapes within diagrams to make them more visually appealing. Code can then be generated from your UML diagrams. Generated code will comply to your customizations to the built-in code templates, or you can create your own domain-specific code generation templates.
Other features include:
- Better, and quicker, code completion: works with methods, fields, variables, and full blocks of code, as well as the Java APIs
- Ruby, JRuby, and Ruby on Rails support: create Ruby projects, edit and debug Ruby applications with support for Rails
- GUI development: Automatic beans binding; Swing-based database application development with the Java Persistence API; fast desktop GUI application development
- Built-in code profiler and heap walker
- Support for Ajax-enabled JSF development
- New integrated user interface for CLDC/MIDP and CDC application development with and without GUIs
- Built-in graphing and graph library for data modeling
- Lots of new tools and features for SOA and Web service development
Buildr
Written in Ruby, Buildr is meant to be a "simpler and more intuitive" build system than Maven for Java projects. Here is a summary of what Buildr is:
- An Ant-based build system with sophisticated dependency for more efficient system builds
- A drop-in replacement for Maven 2.0
- Buildr uses the same file layout, artifact specifications, local and remote repositories
- A simple way to specify projects and build large projects out of smaller sub-projects
- A set of pre-canned Ant tasks that require the least amount of configuration
- Faster than Maven
For another opinion on Buildr, read Jim Alaleras' blog here.
Glassfish v2
The latest version of the next version of GlassFish, Sun's open-source Java EE application server, is setting records for performance on Sun hardware. It's recently become the highest performing application server for SPECjAppServer 2004, on Sun's Niagra-based T2000 hardware.
This version of GlassFish includes JBI and Open ESB, WSIT (formerly Project Tango), Sun's recently open-sourced clustering technology, performance enhancements, and many other features, either completed or proposed.
IONA Fuse
A few months ago, IONA purchased LogicBlaze and inherited their Fuse suite of messaging and integration products. The fruits of this relationship have brought forth a complete set of upgrades for the following Fuse applications:
- FUSE ESB - JBI-compatible Enterprise Service Bus (ESB) based on the Apache ServiceMix project. It's lightweight and easily embeddable, offering several deployment options.
- FUSE Message Broker - A high performance, distributed JMS messaging platform based on the Apache ActiveMQ project. It supports Java, C, C++, C#, Ruby, Perl, Python, PHP, and others.
- FUSE Services Framework - Based on the Apache CXF project and formally known as the Celtix Advanced Service Engine, the FUSE Services Framework is designed to deliver high performance, fully featured service creation, integration and flexible reuse of technical and business service components. It supports SOAP, WS-RM, JAX-WS and others.
- FUSE Mediation Router - Based on the Apache Camel project, FUSE Mediation Router offers powerful rules-based routing and mediation engine that provides a POJO-based implementation of the Enterprise Integration Patterns. It works with protocols such as HTTP, JMS, JBI, SCA, MINA and others.
- FUSE Services and Support - IONA offers a complete set of enterprise-quality support offerings for FUSE users to help ensure success with open source SOA deployment.
For a full description of Fuse and other IONA Java-based products, go here.
That's it for now. Happy coding!
-EJB
Posted by Eric Bruno at 11:50 PM Permalink
|
July 02, 2007
Java RTS Download Available
Sun has made their recently-released Java Real-Time System (Java RTS) version 2 available to the public through a 90-day evaluation download.
On Friday, Sun announced a free 90-day evaluation license (and perpetual academic-use license) and download on their Java site. You can also download the full set of documentation, which includes the JavaDocs for the real-time libraries; information on how the real-time garbage collector (RTGC) works; pre-compilation and pre-initialization of classes; and a "getting started" guide that walks you through the basics, as well as an example application.
Java RTS is Sun's Real-Time Specification for Java (RTSJ)-compliant implementation for Java. It provides predictability and determinism for applications subject to time constraints. If you need guarantees regarding maximum overall system latency, GC pause times, thread priority implementations, and high-resolution timers, you should try Java RTS.
Almost no code changes are required to get started; you simply need to identify your time-critical code, ensure it executes within a javax.realtime.RealtimeThread instead of a standard java.lang.Thread, and set its priority accordingly. If your code uses classes that extend Thread or implement Runnable, then all you'll need to do is either extend RealtimeThread instead, or create a RealtimeThread for your Runnable, respectively. This will amount to only a handful of lines of code overall. Give it a try and see what you think.
Happy coding,
EJB
Posted by Eric Bruno at 01:46 PM Permalink
|
|