vendredi 27 avril 2012

Veille technologique semaine 17

Pour le bulletin de cette semaine, je vous propose les sujets suivants :
  • le logiciel comme un service (SaaS)
  • Google propose gratuitement 5Go d'espace disque pour tous avec Google Drive , plus en location.
  • Microsoft met à jour son offre d'espace disque SkyDrive avec 7Go
  • Mise à jour du JDK 7 avec l'update 4 qui propose : première installation de Java par Oracle pour OSX, JavaFX 2.1 avec les éléments multimédia audio et vidéo et son composeur visuel, le garbage collector G1 avec un temps de latence réduit, ...
  • un article sur les très gros logiciel : > 10M Loc : pour doubler la production de code il faut tripler le nombre de développeurs.
  • Le choix des technologies par les développeurs ?
  • Le passage du langage C# (Microsoft) au langage Objectif-C (Apple)
  • Comment faire des IHM "sexy" avec JavaFX
  • JavaFX et le RIA (Rich Internet Application).

Bonne lecture.


SaaS (Software as a Service) : vers un nouveau modèle de logiciel ?
Depuis quelque temps, un nouveau modèle d'informatique se développe : le "logiciel comme-service". Il ne s'agit plus de concevoir le logiciel comme un produit, mais comme un jeu de fonctions évolutives, en lien étroit avec le nuage.
On parle beaucoup de solutions telles qu'OnLive (lire OnLive Desktop fait des jaloux & OnLive arrive en Europe), certains rechignant à la perspective d'une dépendance renforcée auprès des développeurs, mais le SaaS (Software-as-a-Service) est en réalité déjà partout. La frontière entre contenus et fonctions devenant de plus en plus ténue, il peut être difficile de s'en rendre compte, mais des services comme le moteur de connaissances Wolfram-Alpha utilisé notamment par Siri aux États-Unis ou tout simplement la majorité des services de Google (recherche, cartes, mail…) appartiennent à cette catégorie.


Google Drive is here, and you can install it right now
After years of speculation, Google Drive was released today, giving users 5GB of free storage to sync across computers, and finally giving Google a viable competitor to Dropbox, Microsoft's SkyDrive, Apple's iCloud, and the like.
Google announced the new service today and it's available at drive.google.com. Like Dropbox, it makes a special folder in your computer's file system, and any file put in the folder will sync across devices. It's available for Windows, Macs, and Android. Google said it's "working hard" on a Drive app for iOS devices.
On the Web, numerous third-party vendors have already integrated Chrome apps with Google Drive, and Drive has a browser-based file manager as well as integration with Google Docs to display any documents that Docs is compatible with.


Microsoft takes on Dropbox with major SkyDrive update
A couple of years ago we lamented the state of Microsoft's cloud storage services. On the one hand, there was SkyDrive, with gobs of storage. On the other hand, there was Mesh, with file synchronization and remote access. Two separate products, when really there should have been one.
And now there is. Microsoft has rolled out a set of new SkyDrive apps and new online capabilities to make SkyDrive the one-stop shop for file syncing and remote file access. On the software side, there are new clients for Windows and Mac OS X to sync files with the cloud, and updated versions of the Windows Phone and iOS clients (there's no first-party Android app, but Microsoft recommends a couple of third-party programs).


Oracle Releases Java SE 7 Update 4 and JavaFX 2.1

Java SE 7 Update 4
This release marks Oracle's first delivery of both the Java Development Kit (JDK) and JavaFX Software Development Kit (SDK) for Mac OS X. The Java SE 7 Update 4 JDK includes the next-generation Garbage Collection algorithm, Garbage First (G1), which has been eagerly anticipated by the Java developer community. G1 provides predictable garbage collection even for very large applications.

JavaFX 2.1
  • JavaFX 2.1 introduces playback support for digital media stored in the MPEG-4 multimedia container format containing H.264/AVC video and Advanced Audio Coding (AAC) audio.
  • The JavaFX 2.1 release adds enhanced font rendering for modern LCD displays with Windows-style LCD sub-pixel rendering.
  • JavaFX 2.1 is available now for Windows and Mac OS X. A developer preview for Linux is also available.

JavaFX Scene Builder 1.0 Early Access


Java Facts and Figures
  • 97% of enterprise desktops run Java
  • 1 billion Java downloads each year
  • 9 million developers worldwide
  • More than 3 billion devices are powered by Java technology
  • 80% of mobile developers target the Java platform
  • More than 125 million Java-based TV devices have been deployed

Update Release Notes Java™ SE 7 Update 4 Highlights
This update release contains the following enhancements:
  • JDK Support for Mac OS X
  • New JVM (Java HotSpot Virtual Machine, version 23)
  • New Supported Garbage Collector: Garbage First (G1)
  • JavaFX 2.1 Runtime co-installs with JRE 7 during auto-update
  • JAXP upgraded to 1.4.6
  • Java DB upgraded to 10.8.2.2
  • SPARC T4 specific crypto optimizations in the security area
  • New flag to unlock Commercial Features

New JVM (Java HotSpot Virtual Machine, version 23)
HotSpot 23 features JRockit JVM feature convergence. Some of the value-add features of the JRockit JVM are re-implemented in the HotSpot JVM.

New Supported Garbage Collector: Garbage First (G1)
Starting in Java SE 7u4 the Garbage First Collector is fully supported. The G1 collector is targeted for applications that fully utilize the large amount of memory available in today's multiprocessor servers, while still keeping garbage collection latencies under control. Applications that require a large heap, have a big active data set, have bursty or non-uniform workloads or suffer from long Garbage Collection induced latencies should benefit from switching to G1. For more detailed information about G1 see the G1 documentation page and command line options.


100x better approach to software?
Alan Kay speculates in this talk that 99% or even 99.9% of the effort that goes into creating a large software system is not productive. Even if the ratio of overhead and redundancy to productive code is not as high as 99 to 1, it must be pretty high. Note that we're not talking here about individual programmer productivity. Discussions of 10x or 100x programmers usually assume that these are folks who can use basically the same approach and same tools to get much more work done. Here we're thinking about better approaches more than better workers. Say you have a typical stem of 10,000,000 lines of code. How many lines of code would a system with the same desired features (not necessarily all the actual features) require?


Why Developers Keep Making Bad Technology Choices
Today, software developers are faced with a great abundance of options when choosing how to design and implement systems. We are constantly bombarded with choice and are used to dealing with buzzwords like NoSQL, the cloud, REST, Map-Reduce and so on. However, developers in charge of designing systems can be easily seduced into incorporating technologies that don't provide a clear benefit over simpler solutions that aren't as modern or hip. It seems like the KISS principle (Keep it simple, stupid!), while often referenced, is often neglected in favour of more "enterprisey" solutions. Why is this?


From C# to Objective-C
A couple years ago tablet computers were seen mostly as a novelty or consumer toy. But recently a major shift has been occurring in the business world. Many consulting companies that traditionally write line-of-business applications in XAML, Flex, or HTML have suddenly found themselves with an overwhelming demand for iPad applications. Not just toys either, there are a lot of projects gearing up with price tags in the hundreds of thousands or even millions of dollars. While .NET and Java will still be viable back-end platforms for years to come, there are a lot of opportunities for teams that are willing to cross-train.


JavaFX 2: Making Client Apps Sexy Again!
Something strange is happening … Client apps are becoming sexy again!
Wherever we go these days, there is huge interest in JavaFX – developers are getting increasingly excited about the quantum leap that JavaFX 2 provides. Stuff like:
  • Super-fast and eye-popping graphics
  • Feature-rich, styleable, and extensible UI components
  • Full HTML5/JavaScript/CSS integration and interoperability
  • High-definition cross-platform media support
  • Ability to leverage JavaFX with alternate languages such as Groovy, Clojure, Scala,
  • Fantom, and Visage
  • Easy migration from Swing and SWT
  • Full integration into the Java runtime and ecosystem
… and much more
JavaFX 2 is much more than just eye candy – it enables developers to reinvent their client
applications and integrate technologies in ways not possible before. Check out this video
(recording by JavaOne attendee) – especially the last 2 minutes .

JavaFX 2 is coming in rapid-fire succession: JavaFX 2 was released in October of last year, JavaFX 2.2 is now in Developer Preview for Windows/Mac/Linux, and the JavaFX Scene Builder 1.0 is now also available as a Developer Preview. JavaFX 2 is bundled with JDK 7 and
JavaFX will be a standard part of JDK 8 going forward.

For developers, the question is no longer "Is JavaFX real?" but "JavaFX is here to stay – How can we reinvent our client strategy?"


When to use JavaFX 2 instead of HTML5 for a Rich Internet Application (RIA)?
These days, we are starting a new project for realizing a Rich Internet Application (RIA). One of the first questions is: Which technologies and frameworks shall we use? The backend will be Java or another modern JVM language, as we are mainly experienced Java developer. In most use cases, we also prefer web frameworks, which allow to code mostly in Java, as many of us just have basic knowledge regarding HTML and JavaScript.
A decision has to be made for the upcoming project: Shall we use HTML5 or JavaFX 2 for realizing the web client? If you ask Google for "javafx or html5", you do not find much information. In the majority of cases, you end up with a presentation hold at several IT conferences in 2011: "Moving to the Client:
JavaFX and HTML5 Presentation". Here is the Slideshare link (from JavaOne 2011):
http://www.slideshare.net/steveonjava/moving-to-the-client-javafx-and-html5.
Because this presentation does not help much, we took a look at pros and cons, which are listed below in this blog post.
But let's start from the beginning…

Aucun commentaire: