Java IoT Authors: Elizabeth White, Liz McMillan, Sematext Blog, Richard Hale, Kevin Jackson

Related Topics: Java IoT

Java IoT: Article

Swing Baby, Yeah!!!

With JVMs being pulled from Internet Explorer, Java's attention moved off the desktop and onto the server

Back in 1996, Java was originally hailed as a way of making the Web more appealing through applets, and, with its "write one, run anywhere" philosophy, as the holy grail for desktop apps that would be truly cross platform. The truth is that both were oversold at the time. With the combination of low bandwidth Internet connections and early Swing releases not living up to user expectations occurring in the middle of the Microsoft vs. Sun "pure Java" fight that resulted in JVMs being pulled from Internet Explorer, Java's attention moved off the desktop and onto the server.

It's now 2006 and the world is a very different place. Java Virtual Machines are now present on about 85% of desktop PCs, about two-thirds of which are at 1.3 or higher. The top 10 PC OEMs now redistribute a JRE with their product and, in January 2006 alone, there were over 30 million downloads of the Windows Java SE.

More intelligent and demanding users are become increasing disillusioned with the poor page-based, latency bound user interface model that the browser-centric world delivers. To a large extent all of the AJAX hype being whipped up at the moment is a recognition of this fact, although what it's actually doing is elevating the discussion to be one of "how do we deliver rich content" rather than bun fights over "HTML rocks, Swing sucks, baa."

At JavaOne's opening keynote this year, the absolute highlight for me that showed how far Swing has come was a demo of an application that used Web services APIs from flickr.com and maps.google.com, popular and high-content Web sites in their own rights, and trumped both sites with a beautiful Swing program. Romain Guy, one of the Swing engineers who'd written the program, used it to navigate his photo album pictures from flickr, using 3D smooth animation, reflection techniques, and beautiful user interface effects that fully demonstrated the power of desktop applications. The program then picked up Google maps data to show the route Romain had taken during a recent road trip that merged with photos he'd taken on the way. The power of this message was simple: the desktop can be used to integrate back-end data that is available on the Web (through Web services) and create a user interface experience that is richer than anything the Web could offer and truly puts the user back in control. It was beautiful to watch, and ironically reminded me of how Flash developers used to show off how they could make the Web experience better, except the Swing demo was an order of magnitude higher than anything Web 2.0 could possibly hope to offer. It also struck a chord with the idea that while all the server guys are focusing on SOA and ways for back ends to publish their data and re-usable services, it's now open season again as to what the user interface is going to be. Swing is totally there now: mature, fixed, better, and 100% ready to step up to the challenge.

Leaving bombast aside, technology never wins because it's better. The battleground in traction is largely based on perception, ideas, and adoption by the community. What's encouraging about Swing is that it is doing well on all three fronts.

In a recent Evans Data survey of Java development trends, developers were asked where they spent most of their time building apps. Forty-one percent said they wrote desktop apps, 37% J2EE, 4% Java on mobile devices, while the remainder apparently didn't know what they do at work each day As for the future, when questioned about which Mustang features people were most looking forward to, over 60% answered that they're turned on by the Desktop Java enhancements.

The community around Desktop Java has really grown over the past few years and Mustang is now reaping some of this crop. SwingLabs (http://swinglabs.org/index.jsp) is an umbrella for an open source laboratory of projects whose common goal is to make Swing easier to write, faster, and better and to rally around Desktop Java. It's crop includes the timing framework being showcased at JavaOne, a very crisp and elegant API to do animation effects. SwingX has reaped the cool visual effects like drop shadow borders and custom highlighting that powered the JavaOne keynote demo. In addition to these and other fabulous improvements to Swing on the glass, there is also recognition that serious Desktop Java projects have to wrestle many other types of animal to the ground as well. The Data Binding project is looking at taking away the pain involved when binding Swing GUIs to back-end data sources. The Application Framework project is looking at the life cycle surrounding desktop. This is all good stuff.

One of the features Swing used to always get beaten up about was that it's an emulated widget toolkit and, as such, has to fake out in low-level Java 2D drawing code what the actual native widgets look like. Even though 1.4.1 improved this over previous releases, the arrow didn't quite hit the bulls-eye. Thankfully though this looks like it's now got closure as Mustang is going to use native APIs on Windows and GTK to find out how exactly, pixel perfect, each OS's widgets are being rendered. No more Swing versus SWT fights on newsgroups, phew.

Swing is really coming back hard with some great new features and for me was definitely the star of JavaOne. I talked to many other people who were also impressed with what they saw and are now seriously considering revisiting it. Web 2.0 hysteria is turning the focus of IT away from server-implementation technologies and back onto the user interface experience. When the guy next to you steps up to home plate clutching his JavaScript for Dummies book, let's hear it for the desktop: "Swing AJAX developer swing, swing AJAX developer swing."

More Stories By Joe Winchester

Joe Winchester, Editor-in-Chief of Java Developer's Journal, was formerly JDJ's longtime Desktop Technologies Editor and is a software developer working on development tools for IBM in Hursley, UK.

Comments (5) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
Joe Winchester 06/23/06 10:55:07 AM EDT

Hi David,
I wasn't making fun of Java Enterprise or Java mobil.. I was making fun of the percentage who couldn't answer what they do at work. I am a huge fan of all aspects of Java, my point was that there is a lot of Java desktop stuff still going on, and that Swing is really really good now. Mustang has a lot of very cool stuff in it, Swing labs is creating very solid frameworks, and I've been playing with some of the new JDNC stuff and it is incredibly solid. The Swing team have done an outstanding job, and a lot of people's perception of Swing is probably of Swing 1.1. People are trying to build richer user interfaces, whether it's with Flash or AJAX or whatever, and I just want people to reconsider building first class desktop apps with what is now a modern and very powerful Swing release.

David 06/22/06 07:21:07 PM EDT

You made fun of the java developers who did not do desktop apps, j2ee or mobile. While web apps may contain some "j2ee parts," I think many programmers do no consider these j2ee unless you are doing enterprise javabeans. Those who use pojo with servlets/jsps often do not think of themselves as j2ee -- except when we put it on our resumes!

David Bolsover 06/21/06 03:13:24 AM EDT

Trackback Added: Java Swing; Swing Baby, Yeah!!! ? Back in 1996, Java was originally hailed as a way of making the Web more appealing through applets, an...

JDJ News Desk 06/20/06 03:27:28 PM EDT

Back in 1996, Java was originally hailed as a way of making the Web more appealing through applets, and, with its 'write one, run anywhere' philosophy, as the holy grail for desktop apps that would be truly cross platform. The truth is that both were oversold at the time. With the combination of low bandwidth Internet connections and early Swing releases not living up to user expectations occurring in the middle of the Microsoft vs. Sun 'pure Java' fight that resulted in JVMs being pulled from Internet Explorer, Java's attention moved off the desktop and onto the server.

David Bolsover 06/14/06 06:03:23 AM EDT

I have been following the Swinglabs developments for over 18 months now - this stuff rocks! I have already deployed applications using the JDNC 0.6 libraries and with the promise of JSR 295: Beans Binding the future for Java on the desktop looks very good indeed.

@ThingsExpo Stories
Big Data engines are powering a lot of service businesses right now. Data is collected from users from wearable technologies, web behaviors, purchase behavior as well as several arbitrary data points we’d never think of. The demand for faster and bigger engines to crunch and serve up the data to services is growing exponentially. You see a LOT of correlation between “Cloud” and “Big Data” but on Big Data and “Hybrid,” where hybrid hosting is the sanest approach to the Big Data Infrastructure pro...
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.
"My role is working with customers, helping them go through this digital transformation. I spend a lot of time talking to banks, big industries, manufacturers working through how they are integrating and transforming their IT platforms and moving them forward," explained William Morrish, General Manager Product Sales at Interoute, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
With 15% of enterprises adopting a hybrid IT strategy, you need to set a plan to integrate hybrid cloud throughout your infrastructure. In his session at 18th Cloud Expo, Steven Dreher, Director of Solutions Architecture at Green House Data, discussed how to plan for shifting resource requirements, overcome challenges, and implement hybrid IT alongside your existing data center assets. Highlights included anticipating workload, cost and resource calculations, integrating services on both sides...
"We are a well-established player in the application life cycle management market and we also have a very strong version control product," stated Flint Brenton, CEO of CollabNet,, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Unless your company can spend a lot of money on new technology, re-engineering your environment and hiring a comprehensive cybersecurity team, you will most likely move to the cloud or seek external service partnerships. In his session at 18th Cloud Expo, Darren Guccione, CEO of Keeper Security, revealed what you need to know when it comes to encryption in the cloud.
We're entering the post-smartphone era, where wearable gadgets from watches and fitness bands to glasses and health aids will power the next technological revolution. With mass adoption of wearable devices comes a new data ecosystem that must be protected. Wearables open new pathways that facilitate the tracking, sharing and storing of consumers’ personal health, location and daily activity data. Consumers have some idea of the data these devices capture, but most don’t realize how revealing and...
What are the successful IoT innovations from emerging markets? What are the unique challenges and opportunities from these markets? How did the constraints in connectivity among others lead to groundbreaking insights? In her session at @ThingsExpo, Carmen Feliciano, a Principal at AMDG, will answer all these questions and share how you can apply IoT best practices and frameworks from the emerging markets to your own business.
Ask someone to architect an Internet of Things (IoT) solution and you are guaranteed to see a reference to the cloud. This would lead you to believe that IoT requires the cloud to exist. However, there are many IoT use cases where the cloud is not feasible or desirable. In his session at @ThingsExpo, Dave McCarthy, Director of Products at Bsquare Corporation, will discuss the strategies that exist to extend intelligence directly to IoT devices and sensors, freeing them from the constraints of ...
You think you know what’s in your data. But do you? Most organizations are now aware of the business intelligence represented by their data. Data science stands to take this to a level you never thought of – literally. The techniques of data science, when used with the capabilities of Big Data technologies, can make connections you had not yet imagined, helping you discover new insights and ask new questions of your data. In his session at @ThingsExpo, Sarbjit Sarkaria, data science team lead ...
Extracting business value from Internet of Things (IoT) data doesn’t happen overnight. There are several requirements that must be satisfied, including IoT device enablement, data analysis, real-time detection of complex events and automated orchestration of actions. Unfortunately, too many companies fall short in achieving their business goals by implementing incomplete solutions or not focusing on tangible use cases. In his general session at @ThingsExpo, Dave McCarthy, Director of Products...
Traditional IT, great for stable systems of record, is struggling to cope with newer, agile systems of engagement requirements coming straight from the business. In his session at 18th Cloud Expo, William Morrish, General Manager of Product Sales at Interoute, outlined ways of exploiting new architectures to enable both systems and building them to support your existing platforms, with an eye for the future. Technologies such as Docker and the hyper-convergence of computing, networking and sto...
WebRTC is bringing significant change to the communications landscape that will bridge the worlds of web and telephony, making the Internet the new standard for communications. Cloud9 took the road less traveled and used WebRTC to create a downloadable enterprise-grade communications platform that is changing the communication dynamic in the financial sector. In his session at @ThingsExpo, Leo Papadopoulos, CTO of Cloud9, discussed the importance of WebRTC and how it enables companies to focus...
With an estimated 50 billion devices connected to the Internet by 2020, several industries will begin to expand their capabilities for retaining end point data at the edge to better utilize the range of data types and sheer volume of M2M data generated by the Internet of Things. In his session at @ThingsExpo, Don DeLoach, CEO and President of Infobright, discussed the infrastructures businesses will need to implement to handle this explosion of data by providing specific use cases for filterin...
IoT generates lots of temporal data. But how do you unlock its value? You need to discover patterns that are repeatable in vast quantities of data, understand their meaning, and implement scalable monitoring across multiple data streams in order to monetize the discoveries and insights. Motif discovery and deep learning platforms are emerging to visualize sensor data, to search for patterns and to build application that can monitor real time streams efficiently. In his session at @ThingsExpo, ...
Early adopters of IoT viewed it mainly as a different term for machine-to-machine connectivity or M2M. This is understandable since a prerequisite for any IoT solution is the ability to collect and aggregate device data, which is most often presented in a dashboard. The problem is that viewing data in a dashboard requires a human to interpret the results and take manual action, which doesn’t scale to the needs of IoT.
Internet of @ThingsExpo has announced today that Chris Matthieu has been named tech chair of Internet of @ThingsExpo 2016 Silicon Valley. The 6thInternet of @ThingsExpo will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today the Enterprise IoT Bootcamp, being held November 1-2, 2016, in conjunction with 19th Cloud Expo | @ThingsExpo at the Santa Clara Convention Center in Santa Clara, CA. Combined with real-world scenarios and use cases, the Enterprise IoT Bootcamp is not just based on presentations but with hands-on demos and detailed walkthroughs. We will introduce you to a variety of real world use cases prototyped using Arduino, Raspberry Pi, BeagleBone, Spark, and Intel Edison. Y...
Much of IT terminology is often misused and misapplied. Modernization and transformation are two such terms. They are often used interchangeably even though they mean different things and have very different connotations. Indeed, it is somewhat safe to assume that in IT any transformative effort is likely to also have a modernizing effect, and thus, we can see these as levels of improvement efforts. However, many businesses are being led to believe if they don’t transform now they risk becoming ...
CenturyLink has announced that application server solutions from GENBAND are now available as part of CenturyLink’s Networx contracts. The General Services Administration (GSA)’s Networx program includes the largest telecommunications contract vehicles ever awarded by the federal government. CenturyLink recently secured an extension through spring 2020 of its offerings available to federal government agencies via GSA’s Networx Universal and Enterprise contracts. GENBAND’s EXPERiUS™ Application...