Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
The Rich Client Strikes Back
The Rich Client Strikes Back

Microsoft is redefining the application interface around rich clients, and if Java does not have an answer, it faces being cut off from end users. The answer lies in matching Microsoft's richness while trumping it on security.

There is a movement afoot in the world of enterprise applications toward "rich clients," reversing the past few years' trend that abandoned client/server in favor of Web-based interfaces. One of the most vocal champions of this is Microsoft, which would like to see a return to fat-client software bound to its Windows desktop operating system.

The customers' desire for rich clients is well founded.The deployment ease of HTML into ubiquitous browsers seemed a boon to CIOs, but as end users soon discovered, Web pages are not necessarily well suited to be interactive user interfaces. Studies have shown that poor usability has very significant economic consequences for enterprises (www.useit.com/alertbox/20021111.html). While the switch to HTML may originally have eased deployment issues for developers, users experienced decreased productivity and overall frustration with a poorer application. By contrast, rich client applications use native GUI components and are more interactive and responsive, allowing users to work faster with fewer human errors, as well as for more sustained periods. True rich client applications (unlike "rich browser" applications such as DHTML and Flash) can also integrate with the desktop environment.

Although Java had its beginnings in client-side software, it failed to take root and has now largely retreated to the server, where it has built a veritable stronghold through J2EE. However, it's a stronghold that Microsoft is determined to crack so that it can grow its server market share. Microsoft's main weapon in this siege is .NET and the attack is two-staged: first, conquer the desktop with .NET by leveraging desktop market dominance with the focus being a compelling user experience; second, leverage private synergies between the client and server parts of the .NET Framework to drive from the client back into the server room.

The first part of this campaign is underway. Microsoft is pushing its rich "smart client" model aggressively, touting high usability, desktop/Office integration, and a Java Web Start-like deployment mechanism. For many companies that tried to make Web-based front ends a standard for UI development, their users pushed back on functionality, leaving them to cast around for rich client alternatives. Java has so far failed to offer a viable rich client solution, and the danger is that these tech decision makers may turn to .NET and the allure of a native-style Windows client.

If the Java world does not offer a rich client alternative to .NET, it will be cut off from users and then corralled into a smaller and smaller sphere of influence. However, simply copying Microsoft and trying to offer a client-side programming model won't necessarily win favor. It's very hard for a technology to ever recover from a poorly received initial release, and despite the much-touted advances of previous releases I find that Swing has already been largely discredited among customers. If Java tries to simply copycat .NET, however, there will not be sufficient incentive to provide compelling differentiation for users (aside from cross-platform compatibility, which is often largely irrelevant in most enterprises).

One answer lies in changing the rules of the game. Microsoft is confounding the rich client user experience with a fat client architecture; however, these are two independent concepts. CIOs originally ran to a thin-client model of the Web because it offered real deployment, administration, and security benefits. The Microsoft Smart Client model has come a long way to try to address them, but still falls far short, especially with security - their perennial Achilles' heel.

Security is extremely relevant with the frequency and destructive power of malicious code attacks steadily increasing. A thin-client model is significantly more robust against viruses and hacker Trojan horses than fat- client alternatives. Microsoft's strategic dependence on a fat-client architecture means that they will likely never be able to address this problem completely, which leaves a very large opening for Java technology to offer a secure alternative to .NET. IT managers and CIOs should be reassured that Java hasn't given up on traditional client/server topologies, and we should be actively working to innovate in this area so Java developers can deliver high-end, rich client applications to their end users.

About Phillip Brittan
Philip Brittan is founder and chairman of Droplets (www.droplets.com), which makes rich thin client technology for corporate network applications. Previously, he founded and ran software development firm Spheresoft, and before that he was lead developer and CEO of financial software firm Astrogamma.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 2

I agree that it''s good to see that people are paying attention to fat clients again. However, I think the real issue is that we have suffered from Microsoft''s "planned obsolescence" in the past. Generally, Microsoft-based applications often need to be overhauled when there''s a major operating system change (anyone remember chasing MFC42.DLL around?).

Now .Net goes a long way in changing that by introducing an interpretive engine to insulate the application from underlying operating system changes. But this was (and still is) Java''s strong point - portability. And from that perspective it''s Microsoft playing catchup in the fat client development world. And I don''t personally trust Microsoft''s motives yet.

First of all, I''m very happy some ones began understanding HTML based client is really a bullshit for real applications (not for documentation or "vitrine"). I have preached that for some years in desert against this new fashion. So I''m really happy of this more realistic way of thinking.

The article author calls for a shifted Java world response to MS heavy client offensive. I have developed (quite alone) Pollen UML-GUI Designer. And I affirm it is one of the possible answers. Because it combine the advantages of server and client based applications.
Directly from the UML models, it build a web loadable application. An interactive Java Swing one that can run anywhere. It natively connect to servers for database operations or any service calls.

Of course, Pollen is not the answer to all problems (it only generates about 95% of the GUI code), it also needs to be improved, but I hope if the Web HTML applications fashion fails to have one chance doing something with it.

NB : You can download a free version of Pollen on my own company Web site www.e-CompanionSoftware.com

Yes, I too have seen the Macromedia demo. However, the issue I''ve got with a lot of the solutions touted is that they seem to be pitched at web authors and their "all singing all dancing" flashy pictures, blinking text, wacky layouts and ubiquitous links.

Such enterprise applications essentially customer facing and display an enterprise''s shop-window or shop-floor, or some other area of the business, in a way that''s attractive to window shoppers and customers. This is fine with me, by the way.

No, the type of enterprise application I am interested in is your bog-standard Head Office, Warehouse, etc, IT packages by which an enterprise maintains its business. Such apps might be Purchase Order, Invoicing, Master Files, Stock Control systems. With these we do not need web authors, just enterprise application programmers who can do screen layouts and wire them to code on the server.

With the foregoing in mind I would urge readers to look again at Mozilla. Their fundamental aim is that Mozilla is used as a web application development framework with all the functionality required for producing a rich client UI.

If you think the Mozilla 1.5 browser is unsuitable for your needs you can go and build your own, using XUL and Gecko. It''s all there.

For example, in Mozilla 1.5 menu bar, go to Tools | Web Development | DOM Inspector. This is a web application; type in "http://java.sun.com/". If you wish to see the source code for the DOM Inspector look in Mozilla/chrome/inspector.jar. It just happens to be bundled with Mozilla.

This is a rich client application built with the Mozilla framework and satisfies a developer''s need to inspect the internals of a web page in a way which is not met by Mozilla 1.5.

As another example, type into DOM Inspector "chrome://inspector/content/inspector.xul" and see a form of introspection. You can recurse this call but that''s just frivolous.

In fact, in the context of enterprise web apps, we should just get away from the term ''Browser''. The network is ''The Computer'' (Scott McNealy, I believe) and DOM Inspector is just another application running on that ''Computer''. The menu bar accesses functions and data that live on that computer. Their physical location is of little interest, all other things being equal. With such an application we get away from the ubiquitous HTML link and the idea of browsing in a random way. Most enterprise apps have well structured menus, UIs, L&F and predictable navigation paths.

The main issue that I see for SUN is security (assuming that they are looking at Mozilla as a rich client UI development framework).

FYI, Macromedia FLEX looks like a promising declarative alternative to XUL. It leverages their Flash client technology, though it is still in beta, the Flash client is nearly ubiquitous. Worth watching at any rate.

:) Do not forget Mozilla and their XUL project.

Mozilla is now part of Java Desktop and the language in which its (Mozilla) interface is written, XUL, is a rich client markup language. Run "chrome://navigator/content/" in the url search box to view Mozilla running itself as a rich client.

I think Sun are doing some work on XUL at the moment although there are no details; go to "java.sun.com" and search on XUL.

For those interested, check-out http://www.xulplanet.com/ and also the O''Reilly publication "Creating Applications with Mozilla". This is a very illuminating book. Also check
"http://xml.coverpages.org/userInterfaceXML.html" for a quick survey of the available rich client markup languages.
Whatever Microsoft are cooking-up with XAML/Longhorn I''m sure they''ll copy stuff from Mozilla and then claim to have invented the wheel.

My hope is that we can deploy Java rich clients on Mozilla using XUL, rather than the present unsatisfactory situation of using HTML, but this remains to be seen. XUL and its render engine Gecko have been around since about 1998 and so this is not exactly new technology. Its just that very few of us noticed what was going on.

Fellas, you guys are blinded by all this "Java doesn''t have a rich client like .net" and you are wrong on many accounts. There are plenty. First, check out eclipse.org, it has a new 3.0 version in the works that supports a VERY robust rich client experience built around the SWT ui library. Through plugins which are very simple to write, you can make use of the built in features like views, editors, help system, preferences, security, etc. All of this is FREE for you as well. You don''t have to buy .NET studio and such. Further more, there are TONS of plugins already available.

Netbeans, guys, has been around for quite some time, is also free and also allows a "rich client" framework, although frankly Eclipse is better once the RCP is available.

And lastly, my own plugin engine (similar to eclipse) is being wrapped in a few UI frameworks. www.novaworx.org is one such framework, and a few custom ones as well. For those that are moving on, look around, do some googling a bit. Don''t give up so easily. Java Swing has made huge inroads in performance. Also, frankly, having worked on drag/drop .NET stuff where you connect data to UI and such, and worked on MVC like swing and web apps, the MVC approach is far more maintainable, far more scalable, and far better in terms of multiple teams working together.

The sad truth is that many developers are "blinded" by corporate needs, and these are dictated by more and more corporate big wigs that care nothing about quality and all about time to market! Truth of the matter is, MOST of these "get it done, I dont care how, we need to make money.." either fail before they get out, or once they get out they are a nightmare to maintain and end up failing anyway!

Have some respect for the quality of your code, the maintainability of it. By the way, once the RCP is ready, it would take a matter of 20 minutes to build a simple DB connective application complete with user preferences, wizards, help, authentication and so forth. All of that is simple to use in eclipse, and while like most open-source/free programs its not well documented, the user forums are very active with good help.

Take your heads out of the sand, open your eyes and do some research. The tools are there, they are being built, they just need the support of fellow developer rather than the running scared developer who always returns to the "viable" yet overall worse direction to take.

Flash/Rich Internet Applications are a proven way to bring rich functionality to the desktop. Even though Flash is way ahead of anything else right now and integrates easily with J2EE, chances are that Microsoft will leverage desktop integration to a degree that Flash can''t beat.

Flash/Rich Internet Applications are a proven way to bring rich functionality to the desktop. Even though Flash is way ahead of anything else right now and integrates easily with J2EE, chances are that Microsoft will leverage desktop integration to a degree that Flash can''t beat.

I''m becoming more convinced that keeping session data on the server between requests is a flawed model, so this article is particularly interesting. Although I note the author promotes a server-session model on his website.

Neither the Swing/J2EE nor the HTML/JavaScript/JSP/Struts provide a common object model that automatically implements its rules in a distributed way. I am talking about being able to automatically export data validation rules etc to the client while defining them on the server. So you get a validation message directly from the client rather than a round trip to the server.

I am currently working on an application built on a framework that uses such a distibuted model. The server uses a ''web services'' style interaction (ie no context) and there is an MVC and an HTML page renderer built into the (tiny) client.

A nice side bonus is that we really do have to access the client''s file system, which is trivial to implement.

I did a major J2EE backend/Swing Frontend project for my last employer, before I came back to school. My motiviation was that I was tired of dealing with the javascript that inevitably pops up in pure J2EE server side apps that have any sort of dynamic UI.

The overall architecture was: Swing Front End loaded via Java Web Start communicating with (session) EJBs in a Weblogic back end over IIOP. It worked well enough, and we got to do some neat GUI programming, allowing for a lot of UI code reuse (unlike in JSP/HTML/Javascript), but, if I am honest with myself, I''m not sure it was worth the trouble. Swing, at the end of the day, is pretty horrific. Dave is absolutely right about layouts and the default look and feels in swing.

So, unless a client or employer comes along *demanding* swing, I''m going to go with Struts/JSP/Javascript or, depending on how it develops, the new .NET stuff.

Cheers,
Carson

Sorry, typo: "The key to good user experience is NOT vomiting up some database table contents"

J2EE and Swing is very simple. I have been using it for almost 2 years now, and it is an excellent way to provide a good UI to users, but keep business logic centralized and easily maintainable.

The key to good user experience is vomiting up some database table contents into a GUI control, so anything that does that is inherently bad.

I think, though, that Swing is really lacking. I''ve found that there are certain things I do frequently that Swings makes more difficult than it should. For example, I frequently want to display a table backed by a list of datacontainers/DTOs/Value Objects. In every case, I must write a custom model for that DTO. It is very tiring, because the code for all these models is basically the same. Introspection would solve this, but can''t the JTable be redesigned?

Furthermore, the layout manager stuff is kind of a mess, and it is a source of much confusion. Couple that with the complete lack of focus from Sun on Swing Best Practices, Idioms, etc., and you really turn developers off.

And the Metal LnF is totally cheesy looking.

David,
At last year''s JavaOne Sun talked about a technology called JDNC (Java Desktop Network components). If you search java.net you can find stuff about it, but I think it is close to what you''re looking for.
Best regards,
Joe Winchester

Where are the data-bound components in Swing?

I hear the same question over and over again.
So let me explain why Swing has no databound components.

Swing is gui framework, you use Swing (components) to build a graphical frontend for an application.

Databinding should be handled in the application layer NOT in the presentation layer (gui).

I could ask the same question, where are the data-bound components in a web application?

Ah you say but we use Struts! exactly because Struts is an application framework (application layer).

So whatif there was an application framework like Struts for Swing...

Check this out: https://jform.dev.java.net

Regards,
Will

I am sorry to not agree with you David.

I do not see much use for J2EE personally.

Data bounds components ? JBuilder as them from day one and we are at version 10 !

Maybe you should have check some tools before.

I am open to a contest anytime to do web based application with anything else !!


Feedback Pages:


Your Feedback
Jack Ginnever wrote: I agree that it''s good to see that people are paying attention to fat clients again. However, I think the real issue is that we have suffered from Microsoft''s "planned obsolescence" in the past. Generally, Microsoft-based applications often need to be overhauled when there''s a major operating system change (anyone remember chasing MFC42.DLL around?). Now .Net goes a long way in changing that by introducing an interpretive engine to insulate the application from underlying operating system changes. But this was (and still is) Java''s strong point - portability. And from that perspective it''s Microsoft playing catchup in the fat client development world. And I don''t personally trust Microsoft''s motives yet.
Luc Laforets wrote: First of all, I''m very happy some ones began understanding HTML based client is really a bullshit for real applications (not for documentation or "vitrine"). I have preached that for some years in desert against this new fashion. So I''m really happy of this more realistic way of thinking. The article author calls for a shifted Java world response to MS heavy client offensive. I have developed (quite alone) Pollen UML-GUI Designer. And I affirm it is one of the possible answers. Because it combine the advantages of server and client based applications. Directly from the UML models, it build a web loadable application. An interactive Java Swing one that can run anywhere. It natively connect to servers for database operations or any service calls. Of course, Pollen is not the answer to all problems (it only generates about 95% of the GUI code), it also needs to be improved, but I h...
Gerry Fisher wrote: Yes, I too have seen the Macromedia demo. However, the issue I''ve got with a lot of the solutions touted is that they seem to be pitched at web authors and their "all singing all dancing" flashy pictures, blinking text, wacky layouts and ubiquitous links. Such enterprise applications essentially customer facing and display an enterprise''s shop-window or shop-floor, or some other area of the business, in a way that''s attractive to window shoppers and customers. This is fine with me, by the way. No, the type of enterprise application I am interested in is your bog-standard Head Office, Warehouse, etc, IT packages by which an enterprise maintains its business. Such apps might be Purchase Order, Invoicing, Master Files, Stock Control systems. With these we do not need web authors, just enterprise application programmers who can do screen layouts and wire them to code on the server....
brian leroux wrote: FYI, Macromedia FLEX looks like a promising declarative alternative to XUL. It leverages their Flash client technology, though it is still in beta, the Flash client is nearly ubiquitous. Worth watching at any rate.
Gerry Fisher wrote: :) Do not forget Mozilla and their XUL project. Mozilla is now part of Java Desktop and the language in which its (Mozilla) interface is written, XUL, is a rich client markup language. Run "chrome://navigator/content/" in the url search box to view Mozilla running itself as a rich client. I think Sun are doing some work on XUL at the moment although there are no details; go to "java.sun.com" and search on XUL. For those interested, check-out http://www.xulplanet.com/ and also the O''Reilly publication "Creating Applications with Mozilla". This is a very illuminating book. Also check "http://xml.coverpages.org/userInterfaceXML.html" for a quick survey of the available rich client markup languages. Whatever Microsoft are cooking-up with XAML/Longhorn I''m sure they''ll copy stuff from Mozilla and then claim to have invented the wheel. My hope is that we can deploy Java rich c...
Kevin wrote: Fellas, you guys are blinded by all this "Java doesn''t have a rich client like .net" and you are wrong on many accounts. There are plenty. First, check out eclipse.org, it has a new 3.0 version in the works that supports a VERY robust rich client experience built around the SWT ui library. Through plugins which are very simple to write, you can make use of the built in features like views, editors, help system, preferences, security, etc. All of this is FREE for you as well. You don''t have to buy .NET studio and such. Further more, there are TONS of plugins already available. Netbeans, guys, has been around for quite some time, is also free and also allows a "rich client" framework, although frankly Eclipse is better once the RCP is available. And lastly, my own plugin engine (similar to eclipse) is being wrapped in a few UI frameworks. www.novaworx.org is one such framework, and...
marc schipperheyn wrote: Flash/Rich Internet Applications are a proven way to bring rich functionality to the desktop. Even though Flash is way ahead of anything else right now and integrates easily with J2EE, chances are that Microsoft will leverage desktop integration to a degree that Flash can''t beat.
marc schipperheyn wrote: Flash/Rich Internet Applications are a proven way to bring rich functionality to the desktop. Even though Flash is way ahead of anything else right now and integrates easily with J2EE, chances are that Microsoft will leverage desktop integration to a degree that Flash can''t beat.
Roger Parkinson wrote: I''m becoming more convinced that keeping session data on the server between requests is a flawed model, so this article is particularly interesting. Although I note the author promotes a server-session model on his website. Neither the Swing/J2EE nor the HTML/JavaScript/JSP/Struts provide a common object model that automatically implements its rules in a distributed way. I am talking about being able to automatically export data validation rules etc to the client while defining them on the server. So you get a validation message directly from the client rather than a round trip to the server. I am currently working on an application built on a framework that uses such a distibuted model. The server uses a ''web services'' style interaction (ie no context) and there is an MVC and an HTML page renderer built into the (tiny) client. A nice side bonus is that we really do have to a...
Carson wrote: I did a major J2EE backend/Swing Frontend project for my last employer, before I came back to school. My motiviation was that I was tired of dealing with the javascript that inevitably pops up in pure J2EE server side apps that have any sort of dynamic UI. The overall architecture was: Swing Front End loaded via Java Web Start communicating with (session) EJBs in a Weblogic back end over IIOP. It worked well enough, and we got to do some neat GUI programming, allowing for a lot of UI code reuse (unlike in JSP/HTML/Javascript), but, if I am honest with myself, I''m not sure it was worth the trouble. Swing, at the end of the day, is pretty horrific. Dave is absolutely right about layouts and the default look and feels in swing. So, unless a client or employer comes along *demanding* swing, I''m going to go with Struts/JSP/Javascript or, depending on how it develops, the new .NET...
Dave wrote: Sorry, typo: "The key to good user experience is NOT vomiting up some database table contents"
Dave wrote: J2EE and Swing is very simple. I have been using it for almost 2 years now, and it is an excellent way to provide a good UI to users, but keep business logic centralized and easily maintainable. The key to good user experience is vomiting up some database table contents into a GUI control, so anything that does that is inherently bad. I think, though, that Swing is really lacking. I''ve found that there are certain things I do frequently that Swings makes more difficult than it should. For example, I frequently want to display a table backed by a list of datacontainers/DTOs/Value Objects. In every case, I must write a custom model for that DTO. It is very tiring, because the code for all these models is basically the same. Introspection would solve this, but can''t the JTable be redesigned? Furthermore, the layout manager stuff is kind of a mess, and it is a source of much...
Joe Winchester wrote: David, At last year''s JavaOne Sun talked about a technology called JDNC (Java Desktop Network components). If you search java.net you can find stuff about it, but I think it is close to what you''re looking for. Best regards, Joe Winchester
Will wrote: Where are the data-bound components in Swing? I hear the same question over and over again. So let me explain why Swing has no databound components. Swing is gui framework, you use Swing (components) to build a graphical frontend for an application. Databinding should be handled in the application layer NOT in the presentation layer (gui). I could ask the same question, where are the data-bound components in a web application? Ah you say but we use Struts! exactly because Struts is an application framework (application layer). So whatif there was an application framework like Struts for Swing... Check this out: https://jform.dev.java.net Regards, Will
Serge Bureau wrote: I am sorry to not agree with you David. I do not see much use for J2EE personally. Data bounds components ? JBuilder as them from day one and we are at version 10 ! Maybe you should have check some tools before. I am open to a contest anytime to do web based application with anything else !!
David Avraamides wrote: This to me is the big flaw in the whole Java movement: the assumption that developers will be building web-based apps. We''ve been using rich Swing clients, Java Web Start and J2EE (JBoss) here and have found we have had to build so much infrastructure and library code that should be in Java/J2EE simply because we choose and architecture that diverged from the assumptions of the architects. Where are the data-bound components in Swing? Why doesn''t a J2EE server support a distributed dynamic cache mechanism such that rich clients can have useful data in memory and stay in sync with one another? Granted, some of these things are being addressed in JSRs but obviously they were afterthoughts and feel like grafted on solutions rather than part of a holistic design. I''ve really tried to like Java, but its time to move on.
Serge Bureau wrote: What are you talking about ???? JavaWebStart is the best rich client I have ever seen. Where is the equivalent .Not. Please get serious
Latest Cloud Developer Stories
Swisscom, the Swiss telecom, is going into the cloud business. Its subsidiary Swisscom IT Services AG has signed up with Red Hat as a Certified Cloud Provider and launched a public cloud Infrastructure-as-a-Service (IaaS) cloud targeting enterprise-class customers primarily in ...
Apache Deltacloud, the Red Hat-contributed ReSTful API that abstracts differences between clouds so services on any cloud can be managed – provided of course there’s a driver – has graduated from the Apache Foundation’s incubator and is now a full-fledged Top-Level Project (TLP)....
In a surprise move on Tuesday, January 10, Oracle wheeled out its Big Data Appliance. That’s the one it said in October would be ready sometime in the first half. Only nobody believed it meant early in the first half. Heck, it’s not even clear anybody thought Oracle could make ...
Rackspace Hosting, the service leader in cloud computing, on Thursday announced its acquisition of SharePoint911, an industry leader in SharePoint consulting, training, and "JumpStart" services within SharePoint. The unification of both companies provides capabilities to deliver ...
Wyse Technology, the global leader in cloud client computing, on Thursday announced it's working with Microsoft to market school IT labs and one-to-one computing solutions that allow a cost effective delivery of innovative IT enabled education. These solutions are available throu...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News