vendredi 29 janvier 2010

Veille technologique semaine 4


Pour le bulletin de cette semaine, je vous propose les sujets suivants :
  • le rachat de SUN par ORACLE est effectif : l'icône du site web de SUN est celui d'ORACLE,
  • la FAQ d'ORACLE au sujet des produits SUN,
  • une analyse de ces sujets,
  • le nombre d'adresse IPV4 arrive a épuisement, passage à IPV6 d'ici deux ans,
  • qui sont les développeurs de Linux ?,
  • Point sur les clients riches : les RIA (Rich Internet Applications)
  • Le pair programming, c'est quoi ?
  • La programmation par aspect (AOP) et la programmation objets,
  • La programmation par aspect (AOP) et la distribution de données : comment terracotta transpose le modèle mémoire JVM sur un cluster,
  • JavaFX : interview d'un consultant sur la technologie.

bonne lecture.


Overview and Frequently Asked Questions for the Developer Community
Oracle has finalized the Sun transaction and the deal has closed.
The combination of Oracle and Sun transforms the IT industry and will provide significant benefits and opportunities for the developer communities of the combined companies. For example, the combination of the Sun Developer Network (including
java.sun.com), BigAdmin, and the Oracle Technology Network will result in the largest, and most diverse, community of Developers, Database Administrators, SysAdmins, and Architects. The richness and diversity of these communities will truly be remarkable. We know that you have many questions, and some of them we can answer now. We're also committed to providing updates regularly as more information becomes available. Note that the FAQ below is designed around developer community continuity specifically and does not address product strategy,
support, open source projects, or licensing. For updates on these questions, please see the information that is posted at oracle.com/sun. So, without further delay:


The Sun has Not Set: Oracle Makes Sun Shine Brighter Than Ever
For over nine months the Java world has been waiting with bated breath for definitive
information about the future of Sun's software and hardware portfolios. That day has arrived! Today Oracle held a five hour live webcast outlining their high level strategies for Sun's entire product line. The webcast was recorded and broken up into topics for easy consumption. As a Java developer and Sun customer, I am very excited about Oracle's acquisition of Sun and their plans for the software. I have summarized the topics that interest me:


Le stock d'adresses IPv4 arrive à bout de souffle
La Number Resource Organization (NRO) estime qu'il reste moins de 10% d'adresses IPv4 disponibles. Il devient urgent pour tous les acteurs de l'Internet d'engager la migration vers l'IPv6.


75% of Linux code now written by paid developers
Forget lofty ideals about the open-source community: most Linux kernel code is written by paid developers at major corporations.


Typology of Rich Client Technologies
Chances are, if you are an software architect and need to make applications available over the network, you are asking yourself what client technology to use. In this article, I will try to list the solutions used previously and then elaborate on the solutions available today.


Le pair-programming comment ça marche ?
Stuart Wray de la Royal School of Signals, s'est fendu d'un article sur le fonctionnement du pair-programming dans l'édition de Janvier du magazine de l'IEEE. Dans l'article, il liste quatre bonne pratiques permettant de garantir selon ses termes, l'efficacité du développement par pair. Il ne s'agit pas de simplement développer à deux l'un au clavier et l'autre le doigt sur l'écran.
  • Dialogue entre les développeurs :
    Il est important de verbaliser les problèmes rencontrés de façon intelligible. Présenter une difficulté à un tiers permet de garder le focus dessus et l'effort de présentation force à clarifier la situation. Il faut sortir la tête du mur pour résoudre les problèmes et parfois le seul fait de présenter le blocage permet de trouver la solution. L'auteur identifie la conversation comme un point clé permettant aux paires d'être et de rester productifs.
  • Voir plus de détails :
    Un phénomène bien connu de tous, deux personnes ne voient pas les même choses au même moment. C'est à cela que sert la relecture sur le blog Xebia. Il y a toujours des fautes d'inattention, liés à des centre d'intérêts différents par exemple. En paire, un développeurs trouve plus rapidement certaines erreurs que son collègue qui en voit d'autres. Celui qui ne tape pas au clavier repère toujours beaucoup plus rapidement les coquilles.
    Stuart lève notre attention sur la fatigue des paires, en travaillant ensemble, les développeurs commencent à repérer les mêmes erreurs et à fixer leur attention sur les mêmes points. La productivité est alors en chute libre et l'apport du pair-programming se perd. Il faut prévoir des rotations régulière entre les paires pour se prémunir contre cet effet de bord.
  • Combattre les mauvaises pratiques :
    Les deux développeurs doivent prendre l'engagement de coder en respectant une convention, en utilisant des bonnes pratiques. Chacun est juge du travail de son voisin, pourtant a terme c'est le travail des deux ensemble qui sera jugé. Cet engagement nécessaire des deux parties augmente la responsabilité de chacun sur la qualité du code produit. Posez vous la question : faites vous plus propre en développant seul dans votre cave ou en développant sous le regard attentif de votre paire ?
  • Partager et juger l'expertise :
    Aucun individu n'a la même productivité et la différence varie au moins d'un facteur de un à dix entre deux individus. Cela implique des erreurs d'estimation temporelle par exemple si votre héros Java qui code les yeux fermés annonce une journée pour une tache et qu'elle est réalisée par un autre le temps passé ne sera sûrement pas d'une journée (Tous le monde ne peut pas coder les yeux fermés). C'est seulement en collaborant étroitement avec un développeur qu'il devient possible de juger de ses capacités. Mais avec le pair programming et la rotation des paires chaque développeur connait les domaines d'expertise des autres et sait se positionner par rapport aux autres. Les estimations seront donc plus réaliste dans une équipe en pair programming.

Aspect-Oriented Design Principles: Lessons from Object-Oriented Design
For aspect-oriented design (AOD) to become mainstream, appropriate design principles are needed to guide its use in real, evolving systems. The principles should tell us what types of coupling are appropriate between aspects and the software entities they advise, how to use non-invasiveness effectively, how to preserve correct behavior in the advised entities, and how to use aspects with other design constructs. I examine these topics using several object-oriented design (OOD) principles, considered from an AOD perspective. I demonstrate how AOD contributes design solutions to satisfy these principles, while it also introduces
nuances in their interpretations. I also derive several AOD specific principles from the OOD principles.


Clustering the Java Virtual Machine using Aspect-Oriented Programming
Clustering (and caching) is a crosscutting infrastructure service that has historically been implemented with API-based solutions.
As a result, it has suffered from the same code scattering and tangling problems as other crosscutting concerns.

In this paper we will show how Aspect-Oriented Programming (AOP) can help to modularize clustering and turn it into a runtime infrastructure Quality of Service. We will show how AOP can be used to plug in directly into the Java Memory Model, which allows us to maintain the key Java semantics of pass-byreference,
garbage collection and thread coordination across the cluster, e.g. essentially cluster the Java Virtual Machine underneath the user application instead of the user application directly.


Java Champion Adam Bien on JavaFX
Java Champion Adam Bien is a self-employed consultant, lecturer, software architect, developer, and author in the enterprise Java sector in Germany who implements Java technology on a large scale. He is also the author of several books and articles on Java EE technology as well as distributed Java programming. His latest book,
Real World Java EE Patterns — Rethinking Best Practices, explores lean and pragmatic approaches. In addition, he has been named a Java Rock Star for his popular session at the 2009 JavaOne conference. We met up with him to get his latest thoughts on JavaFX.

Aucun commentaire: