"…mais ce serait peut-être l'une des plus grandes opportunités manquées de notre époque si le logiciel libre ne libérait rien d'autre que du code…"

Archive for février 2007

Analyse d’une discussion sur les frameworks Web

Posted by patrick sur février 6, 2007

Source: http://linuxfr.org/~ploum/23607.html

Une vidéo longue (30min) et lourde (300Mo) d’une conférence donnée par un gars de la NASA à propos du développement d’une application web avec J2EE, RoR, Zope, Django, Turbogears et Jboss.

Cette vidéo m’a littéralement sciée. Bossant depuis 4 mois avec J2EE et Jboss, je dois avouer que tout ce qui est décrit est entièrement véridique et pas du tout exagéré ! (au contraire, il a même pas parlé de Spring et d’autres joyeusetés).
http://oodt.jpl.nasa.gov/better-web-app.mov

  Sa conclusion, en simple : J2EE et Jboss sucks grave et sont pas du tout amusant. Les 3 frameworks python et RoR rocks grave et sont super « funny ».

Pourtant question simplicité, je trouve pas zope très fun. Leur site donne plutôt envie de s’enfuir quand on le lit, alors que celui de django propose un tutorial ultra-simple pour installer et développer sa 1ere appli django (et pas besoin de cliquer partout sur le site pour le trouver, ce tutorial), qui donne vraiment envie d’aller plus loin.

Seam est un framework web, comme l’est RoR, Django ou TurboGears. Plone pour moi c’est encore une autre histoire : c’est déjà un CMS complet !

Seam est du genre RoR : création rapide de projet, création de vue, création automatique d’un squelette d’appli à partir d’une base de donnée, etc …

Si on utilise seam-gen, que l’on utilise la base de donnée préconfigurée, je pense qu’on est très proche d’un RoR.

C’est fun de créer une appli web avec Seam … avec J2EE *brut*, c’est du suicide !

Essai seam, c’est vraiment bon ! Je ne pourrais plus jamais faire du J2EE pur.

Il y a un forum assez actif et la doc est conséquente. Tu peux avoir du support commercial si tu en as besoin (mais on peut très bien faire sans).

Il n’y a qu’une chose qui me manque actuellement mais qui arrive bientôt : la gestion de la sécurité. C’est prévu pour la version 1.5 pour dans quelques semaines.
Bon bien sur, faut aimer le java. Ca utilise notamment pas mal les annotations (je trouve ca plutôt sympa).
Si non, c’est vrai que plone en tant que CMS, c’est vraiment puissant, j’aime bien …

Je suppose que tu voulais parler de Django http://www.djangoproject.com/

Sinon mon avis rapide:
– JEE c’est effectivement lourd, mais une fois qu’on maîtrise, on peut coder quasiment sans réfléchir (ce qui n’est pas drôle en fait…) :
Le problème c’est que les API sont souvent « over engineered », c’est concu pour résoudre tous les problèmes, y compris ceux dont la chance de rencontre est quasi nulle.
Une petite parenthèse, Spring simplifie plutôt les chose dans ce domaine, au contraire de ce que tu semble penser en employant le terme « joyeuseté »

– Zope: j’ai essayé très brièvement, et ça ne m’a pas vraiment séduit, mais je regarderai la video dès que je serai de retour chez moi 😉

– Django, RoR, et Turbogears sont tous les trois de très bons frameworks. J’ai une préférence pour Turbogears et Django, principalement pour des raison de lisibilité du code (AMA pour un développement en équipe Python est un meilleur choix que Ruby au niveau lisibilité), mais surtout pour la documentation.

 pour info: il ne parle pas de django pour python, ni de zope, mais de Plone qui est un cms tres complet par dessus zope (mais pas tout a fait un framework a mon avis)

la video est assez ancienne, et django etait preque inconnu à l’époque

Pour ceux que ca interesse, aujourd’hui les framework web efficaces, puissants et fun sont django et rails
perso je m’interesse plutot a django, quelques lien: www.djangoproject.com

premiers pas en django si vous causez pas english:
http://www.biologeek.com/journal/index.php/traduction-franca(…)

la meme chose et bien plus en anglais sur http://www.djangoproject/documentation

le livre en cc ecrit par les auteurs de django
http://www.djangobook.com

la version 1.0 de django va arriver dans quelques semaines

son test est pas super je trouve, mais il met en evidence la difficulté de faire des choses rapidement et simplement en java.
ce qu’il fait avec plone est discutable je trouve… mais bo

http://www.django-fr.org/

. ..

 Pour me situer, je dirais que j’ai fais et je fais toujours pas mal d’applis en PHP. J’ai utilisé Zope avec CPS (gestion documentaire en gros), et développé des produits dessus. Je connais RoR de nom et vois à peu près la simplicité.

J’ai récemment utilisé le framework Symfony (PHP) qui s’approche de RoR et je me met à J2EE par JBoss/Seam et les EJB3.

Commençons par Zope. C’est un serveur d’appli en python qui à mon sens vieillit un peu. Ca fait quelques années qu’ils comptent généraliser Zope3, mais force est de constater que ça prend pas. Le gros problème avec Zope c’est pour le déploiement.
Tu fais des modifs dans la ZMI (Zope Management Interface) en interface Web, mais pour packager le tout, il faut bien faire des produits en Python, redéployer, redémarrer le serveur etc… Les IDE ne sont pas légion. Nuxeo, la société qui développe CPS (sous Zope) a récemment migré la solution sous Jboss/J2EE, ils donnent les raisons sur leur site.

Je vais parler de Symfony qui est à mon avis un très bon Framework en PHP, qui se veut l’équivalent de RoR pour PHP. J’ai beaucoup aimé le découpage en module, l’ORM (object relational mapper), le routing utilisé avec le Path info… Enfin la doc est très bien foutue, en une après midi, j’avais finie ma première appli avec support Ajax etc… La seule réserve est sur les performances avec la montée en charge que je ne peux pas trop mesurer pour l’instant mais 300ms pour servir une page en mode Debug je trouve ça beaucoup.

Enfin, la dernière techno à laquelle je me mets, J2EE/Jboss. J’avais essayé il y a quelques années, mais j’avais trouvé ça énormément lourd en terme de configuration. Pour afficher une simple table avec des Beans, il fallait je sais pas combien de fichiers de conf….
EJB3 semble changer la donne et tirer parti des avantages de Java5. C’est beaucoup (beaucoup) plus simple à configurer et à lire. Le framework Seam propose un petit utilitaire qui crée automatiquement un projet Eclipse et les première vues, il n’y a plus qu’à mettre un peu de code pour tes bean et ça fonctionne pas trop mal. Seam enlève en plus la lourdeur des managed beans et ajoute pas mal de facilité (gestion des workflow métiers etc…)
Ca semble lourd et comme il a été dit précédemment c’est un peu over-engineeré dans le sens où tout a été prévu pour beaucoup de cas. Je pense que pour de très grosses applications où ça communique beaucoup, l’architecture EJB est très intéressante. C’est très facile de faire des WebServices, et des frameworks Ajax s’intègrent plutot bien dedans.
L’autre avantage que je vois c’est la standardisation de certaines pratiques via les JSR. Par exemple les JSR sur les portlets. Si je fais un appli qui implémente cette JSR (168 il me semble), ça me permet d’inclure cette appli dans tout portail gérant cette spécification. Au fur et à mesure, ça permet d’intégrer des modules parlant ensemble (on peut inclure des portlets codés en PHP ou autre je crois…)

Mon impression globale, c’est que pour une application relativement autonome, je choisirais des framework du type de RoR (j’inclue Symfony) et pour des plus grosses applications il me semble (j’en ai absolument pas la certitude) que J2EE apporte des fonctionnalités de scalabilité que n’ont pas PHP ou Python. En PHP par exemple, ton application recommence à chaque requête de zéro. Il faut réinstancier les composants essentiels, réévaluer le contexte etc…. Avec J2EE, les objets restent « vivants » sur le serveur et du coup le contexte applicatif ne se recharge pas à chaque requête.

Ce ne sont que des impressions, je peux bien sur me tromper. Autant je connais très bien PHP, autant je débute avec les EJB. L’impression que j’ai c’est qu’il se sont quand même grandement améliorés.

….

Je n’ai jamais utilisé de framework Python à part une petite expérience avec Zope, j’ai pas trop apprécié l’interface d’admin un peu déroutante pour les débutants. Puis j’ai eu une expérience avec J2EE+Springs et j’ai trouvé ça plutôt lourd, compliqué mais bien architecturé et structuré.

Vu que je n’avais que de l’expérience en PHP de base, j’ai apprécié ce dernier point. J’ai cru un instant qu’il n’existait pas de framework qui puisse allier la rapidité, la facilité et la souplesse de PHP avec les avantages de J2EE sans les inconvénients.

Après j’ai effectué un stage de licence où j’ai développé des petites applis internes en PHP 5 avec les bibliothèques PEAR et ça m’a plu. Enfin un peu de développement rapide en PHP, sans perdre de temps avec la validation des formulaires, l’accès au BdD (ORM simple), etc. Mais ce n’était toujours pas structuré, « cadré ».

En faisant des recherches sur PEAR, je suis tombé par hasard sur le site de Ruby on Rails et ça a été très rapidement le coup de foudre ;).

Ce que j’ai fait : j’ai très rapidement acheté le livre « Agile Web Development with Rails » écrit par les développeurs de RoR.

J’ai lu beaucoup de livres informatiques, mais rarement un livre aussi bien écrit. J’étais littéralement scotché par ce livre, par sa manière de présenter le framework RoR, le faire découvrir à des développeurs dont la plupart n’ont jamais développé en Ruby, sa philosophie de développement (méthode « agile »), ses touches d’humour… Un livre extrêmement complet, couvrant tout le développement d’une application Web, de la conception sous forme de schéma, le développement, l’AJAX, les Webservices (REST), la sécurité, jusqu’au déployement.

C’est simple, que vous veniez de Java, d’un autre framework ou que vous soyez simple développeur amateur PHP, procurez-vous ce livre en version PDF et/ou papier, vous ne regreterez pas.

http://www.pragmaticprogrammer.com/titles/rails/index.html

Bon fini la pub, j’ai pas d’actions chez eux :-).

Si vous voulez avoir une belle et courte introduction gratuite de ce framework, je vous conseille ce beau PDF en français :
http://people.no-distance.net/ol/documents/rails-intro/rails(…)

Je développe aujourd’hui qu’avec Ruby on Rails, je me considère encore comme un débutant, j’en apprends tous les jours, je suis souvent étonné par certains points, par l’aspect « magique » de ce framework (bien que rien ne soit magique, mais j’adore le côté Convention over Configuration). Je trouve la documentation de l’API vraiment « pro » et proche des docs d’un logiciel d’entreprise (http://api.rubyonrails.org) alors que la doc de certains frameworks ressemblent plus à du wiki.

J’adore la manière de créer des formulaires autour d’un objet relié à une base, la validation, le mappeur BdD objet vraiment très complet, dynamique et compatible avec tous les SGBD connus (y compris Oracle et MS SQL Server), la gestion de l’AJAX et les vues RJS qui permettent d’utiliser Script.aculo.us et ses effets entièrement en Ruby, les nouveautés de Rails 1.2 : gestion parfaite de REST, ActiveResource…

Sans compter que le futur de Ruby on Rails est rose : Ruby 2 va arriver avec une belle explosion des performances (Ruby n’aura plus à craindre les benchmarks contre PHP et Python) et Mongrel, le mini serveur Ruby avance vite et permet de développer ET déployer en prod des applications Rails à vitesse grand V.

….

Je n’ai jamais utilisé de framework Python à part une petite expérience avec Zope, j’ai pas trop apprécié l’interface d’admin un peu déroutante pour les débutants. Puis j’ai eu une expérience avec J2EE+Springs et j’ai trouvé ça plutôt lourd, compliqué mais bien architecturé et structuré.

Vu que je n’avais que de l’expérience en PHP de base, j’ai apprécié ce dernier point. J’ai cru un instant qu’il n’existait pas de framework qui puisse allier la rapidité, la facilité et la souplesse de PHP avec les avantages de J2EE sans les inconvénients.

Après j’ai effectué un stage de licence où j’ai développé des petites applis internes en PHP 5 avec les bibliothèques PEAR et ça m’a plu. Enfin un peu de développement rapide en PHP, sans perdre de temps avec la validation des formulaires, l’accès au BdD (ORM simple), etc. Mais ce n’était toujours pas structuré, « cadré ».

En faisant des recherches sur PEAR, je suis tombé par hasard sur le site de Ruby on Rails et ça a été très rapidement le coup de foudre ;).

Ce que j’ai fait : j’ai très rapidement acheté le livre « Agile Web Development with Rails » écrit par les développeurs de RoR.

J’ai lu beaucoup de livres informatiques, mais rarement un livre aussi bien écrit. J’étais littéralement scotché par ce livre, par sa manière de présenter le framework RoR, le faire découvrir à des développeurs dont la plupart n’ont jamais développé en Ruby, sa philosophie de développement (méthode « agile »), ses touches d’humour… Un livre extrêmement complet, couvrant tout le développement d’une application Web, de la conception sous forme de schéma, le développement, l’AJAX, les Webservices (REST), la sécurité, jusqu’au déployement.

C’est simple, que vous veniez de Java, d’un autre framework ou que vous soyez simple développeur amateur PHP, procurez-vous ce livre en version PDF et/ou papier, vous ne regreterez pas.

http://www.pragmaticprogrammer.com/titles/rails/index.html

Bon fini la pub, j’ai pas d’actions chez eux :-).

Si vous voulez avoir une belle et courte introduction gratuite de ce framework, je vous conseille ce beau PDF en français :
http://people.no-distance.net/ol/documents/rails-intro/rails(…)

Je développe aujourd’hui qu’avec Ruby on Rails, je me considère encore comme un débutant, j’en apprends tous les jours, je suis souvent étonné par certains points, par l’aspect « magique » de ce framework (bien que rien ne soit magique, mais j’adore le côté Convention over Configuration). Je trouve la documentation de l’API vraiment « pro » et proche des docs d’un logiciel d’entreprise (http://api.rubyonrails.org) alors que la doc de certains frameworks ressemblent plus à du wiki.

J’adore la manière de créer des formulaires autour d’un objet relié à une base, la validation, le mappeur BdD objet vraiment très complet, dynamique et compatible avec tous les SGBD connus (y compris Oracle et MS SQL Server), la gestion de l’AJAX et les vues RJS qui permettent d’utiliser Script.aculo.us et ses effets entièrement en Ruby, les nouveautés de Rails 1.2 : gestion parfaite de REST, ActiveResource…

Sans compter que le futur de Ruby on Rails est rose : Ruby 2 va arriver avec une belle explosion des performances (Ruby n’aura plus à craindre les benchmarks contre PHP et Python) et Mongrel, le mini serveur Ruby avance vite et permet de développer ET déployer en prod des applications Rails à vitesse grand V.

….

Exactement. Dans Rails 1.2 (REST), Rails peut directement fournir au client du XML, HTML, etc selon la requete.

Ce qui est tueur dans Rails 1.2 c’est d’associer l’application RESTful avec le plugin ActiveResource.
ActiveResource reprend un certain nombre des fonctions du mappeur BdD objet ActiveRecord comme find, delete, etc. En faisant un find(1) il va automatiquement aller fetcher le XML correspondant et l’intégrer dans un objet.

Au final, on a une abstraction complète de la source des données (qui peut etre un SGBD en local ou un serveur Web au Japon) tout en utilisant des technologies ultra-standard (XML et HTTP).

Exemple tout bête :
employe = Employe.find(1)
employe.prenom ==> « Nicolas »

Si Employe est un objet ActiveRecord, en backoffice on a un SELECT dans une base quelconque puis un mapping objet.
Si Employe est un objet ActiveResource, en backoffice on a un fetch http://serveur_distant/employes/1 qui va retourner un XML puis un mapping objet.
On peut meme gérer la suppression d’enregistrement, l’édition, etc, avec possibilité de gérer une authentification à distance via HTTP(S) Auth.

Vraiment très bien pensé, absolument simple et efficace.

Et pour ceux qui trouvent ça déjà avancé, ne vous inquiétez pas, Rails est aussi génial pour faire des choses basiques : formulaires HTML, accès aux bases, etc…

globalement on est donc tous d’accord avec la conclusion de la vidéo. Même si c’est vrai qu’elle ne compare pas les bonnes choses.

A mon avis, le bon comparatif serait :

Rails / Django / Turbogears / Grok (qui arrive lentement)/ Seam/Java ?
et :
Zope3 / J2EE

(Quant à Zope2 il a toujours été un peu à part et ne compte plus vraiment.)
Et je ne sais pas quels seraient les équivalents dans le monde microsoft.

Publicités

Posted in java, php, python, ruby | Leave a Comment »

Architecture logicielle web avec Ajax/REST, HTTP

Posted by patrick sur février 6, 2007

Source: http://www-128.ibm.com/developerworks/xml/library/wa-ajaxarch/

J’ai découvert l’architecture REST en lisant l’excellent livre de Christophe Porteneuve « Bien développer pour le Web 2.0 ». Je continue d’approfondir mes connaissances sur ce sujet en lisant cet article.

Immersive Web applications are certainly useful, but the server-side immersive Web application style is in fundamental disharmony with REST architectural principles. Specifically, it violates a key REST constraint and fails to take advantage of one of REST’s most important advantages, thereby spawning a new set of problems. REST’s « client-stateless-server » constraint forbids session state on the server. Designing within this constraint promotes the system properties of visibility, reliability, and scalability. But immersive server-side Web applications wish to provide a great deal of personalization to a single user, so they must choose between two designs. The first is to send a massive amount of state information with each client request, so that each request is context-complete and the server can remain stateless. A second, ostensibly simpler, solution favored by application developers and middleware vendors alike is to send a simple user identity token and associate this token with a « user session » object on the server side. The second design directly violates the client-stateless-server constraint. It certainly enables desirable user functionality (especially personalization), but it places tremendous strain on the architecture. ava™ Servlet’s HttpSession API provides an example of this strain. HttpSession lets you associate session state with a particular user. This API seems deceptively simple to novice developers. Indeed, it appears that you can store any object in HttpSession and pull it out without ever coding any special lookup logic yourself. But as you start putting more objects in HttpSession, you start to notice that your application server uses more and more memory and processing resources. Soon you decide that you need to deploy your application in a clustered environment to help with growing resource needs. Then you realize that for HttpSession to work in a clustered environment, each object must implement Java’s Serializable interface so that session data can be transmitted between servers in a clustered environment. Then you must decide whether or not your application server should persist session data in the case of a shutdown/restart cycle. Soon you begin to question whether violating the client-stateless-server constraint was such a good idea after all. (Actually, many developers are ignorant of this constraint.)

But why centralize so much resource consumption on an overburdened server, when in theory you could distribute processing and memory needs to clients? The simple answer is that given traditional Web browser constraints, this wasn’t feasible (see Client-side processing without Ajax). But the Ajax architectural style lets developers distribute processing and state requirements to the client. Read on to learn why immersive applications that choose an Ajax-style architecture can regain harmony with REST and enjoy its benefits.

….

The Dojo Toolkit is a good example (see Resources). Dojo provides build-time tools to create a compressed JavaScript file containing all of your application’s logic, presentation, and styles. Because it’s ultimately just a file, a Web browser can cache it, meaning that the second time you visit a Dojo-enabled Web application, you’re likely loading the Ajax engine from your browser’s cache rather than from the server. Compare this to a highly immersive server-side Web application where every request results in significant server processing because your browser and network intermediaries can’t cache the ever-changing resources.

….

What about the business data? Because the application logic and state reside and execute on the browser, the application’s interaction with the server becomes very different from that of a traditional Web application. Instead of fetching amalgamated pages of content, it simply needs to fetch business data.

Another benefit of the Ajax architectural style is the ability to deal easily with server failure. As I mentioned before, server-side Web applications with immersive user experiences tend to hold large amounts of user session state on the server. If a server fails, the session state goes away and users experience odd browser behavior (« Why am I back to the home page? And where are the items in my shopping cart? »). In an Ajax application with a stateful client and stateless services, a server crash/restart can be completely transparent to the user because the server crash can’t affect session state, which lives in the user’s browser; a stateless service’s behavior is idempotent and determined solely by the content of user requests.

Rappel (http://fr.wikipedia.org/wiki/REST) :
REST (Representational state transfer) est une manière de construire une application pour les systèmes distribués comme le World Wide Web. Le terme a été inventé par Roy Fielding.

REST n’est pas un protocole ou un format, c’est une architecture, c’est l’architecture originale du Web, bâtie sur quelques principes simples :

  • l’URI est important : connaître l’URI doit suffire pour accéder à la ressource;
  • HTTP fournit toutes les opérations nécessaires (GET, POST, PUT et DELETE, essentiellement);
  • chaque opération est auto-suffisante : il n’y a pas d’état;
  • utilisation des standards hypermedia : HTML ou XML qui permettent de faire des liens vers d’autres ressources et d’assurer ainsi la navigation dans l’application REST.

Cette architecture n’est pas limitée à la réalisation d’application pour un utilisateur humain. Elle est de plus en plus utilisée pour la réalisation de services Web destinés à la communication entre machines. Dans ce cadre là, les requêtes et les réponses sont typiquement encodées en XML. REST dans ce cas là se pose en alternative à RPC et SOAP, alternative censée être plus simple à mettre en œuvre. Les systèmes qui suivent les principes REST de Fielding sont souvent appelés RESTful.

La thèse de Roy Fielding précise les avantages de cette architecture par rapport à d’autres architectures d’applications web. Citons entres autres :

  • L’absence d’état sur le serveur conduit à une consommation de mémoire inférieure et donc à une capacité plus grande de répondre à un grand nombre de requêtes simultanées.
  • L’absence d’état sur le serveur rend le fonctionnement plus simple à appréhender. Le résultat d’une requête ne dépend pas de variables cachées difficilement identifiables. Cela conduit à une mise au point plus simple.
  • L’absence d’état serveur permet une répartition des requêtes sur plusieurs serveurs avec une meilleure granularité et de manière plus souple. Cela permet aussi une meilleure tolérance aux pannes d’un des serveurs.
  • Le respect de la philosophie du protocole HTTP, à la différence de SOAP conduit à une architecture plus cohérente et plus simple.
  • l’utilisation d’URI comme représentant d’une ressource, permet la mise en place de serveurs cache.

http://tools.ietf.org/html/rfc2616  (« 9 Method Definitions ……………………………………..51

   9.1   Safe and Idempotent Methods .................................51
   9.1.1    Safe Methods .............................................51
   9.1.2    Idempotent Methods .......................................51
   9.2   OPTIONS .....................................................52
   9.3   GET .........................................................53
   9.4   HEAD ........................................................54
   9.5   POST ........................................................54
   9.6   PUT .........................................................55
   9.7   DELETE ......................................................56
   9.8   TRACE .......................................................56
   9.9   CONNECT .....................................................57)")

Posted in Architecture logicielle, http, javascript, REST | Leave a Comment »

Tagging

Posted by patrick sur février 3, 2007

source: http://www.generation-nt.com/actualites/23825/internet-web-2-tag-flickr-pew-etude

La pratique du tagging, à savoir marquer un contenu de mots-clés s’y rapportant, est devenue une activité courante pour les internautes du Web 2.0 puisque selon une récente étude, 30 % d’entre eux en sont adeptes.

Parmi les internautes états-uniens, 28 % ont marqué du contenu en ligne, comme des billets de blogues, des photos, des sites Web, des clips vidéo et des articles, selon l’étude du cabinet Pew Internet American Life Project.

En moyenne, chaque jour, 7 % des internautes pratiquent cette activité et catégorisent ainsi le contenu qu’ils ont mis ou trouvé sur le Web. nos confrères d’InfoWorld relatent d’ailleurs le cas de Justen Deal, manager de Los Angeles qui tague les articles faisant l’actualité sur des sites comme Slashdot et qui estime que l’utilisation de ce procédé est de plus en plus courante, ce qui donne à la pratique du blogue et au Web en général une dynamique significative en rendant le contenu plus facile à organiser et, par conséquent, à découvrir.

 » Nous avons désormais une grosse somme de contenus sur le Web, et en particulier dans la blogosphère. (…) Avec le tagging, à la fois par le public et par l’auteur, je pense qu’il y aura une bonne opportunité pour déplacer le contenu dans des endroits plus spécifiques, ce qui aiderait à traverser la blogosphère un peu plus facilement et ce qui serait plus pratique pour beaucoup de gens.  » a t-il indiqué selon InfoWorld.

 

C’est la première étude du cabinet Pew Internet sur le sujet, ce qui explique pourquoi le groupe de chercheurs ne peut pas quantifier la croissance de l’utilisation de cette pratique. En revanche, il dénote la popularité de sites Web comme le portail de partage de photos FlickR appartenant à Yahoo ou bien encore del.icio.us. En France, on peut par exemple citer Jamendo ou Dailymotion.

Cependant, ce concept de tagging est encore très peu répandu, de nombreux internautes ne connaissant pas ce procédé. Pour autant, le tagging est un outil pratique pour organiser, classer ou re-trouver du contenu et devrait à l’avenir, selon toutes vraisemblances, prendre plus de place sur le Web.

Pour cette étude menée auprès de résidents états-uniens, Pew Internet a par ailleurs découvert que hommes et femmes l’utilisaient tout autant, et que le stéréotype du tagueur est un internaute âgé de moins de 40 ans, avec un haut niveau d’éducation et de revenus possédant en outre une connexion haut débit.

Posted in blogs, web2.0 | 1 Comment »

Mes blogmarks de ces derniers jours

Posted by patrick sur février 1, 2007

  • http://www.01net.com/article/339763.html (Le libre en Europe : un patrimoine de 2 milliards d’euros

    Un déploiement plus généralisé des logiciels libres pourrait compenser la faiblesse de l’investissement européen en matière de technologies de l’information – notamment par rapport aux Etats-Unis. Et ça tombe bien : le nombre de développeurs et de responsables de projets libres en Europe devance légèrement celui des Etats-Unis. L’Asie et l’Amérique latine sont, elles aussi en très forte progression. Ces tendances ont été dégagées par le rapport Merit (*), publié sous l’ombrelle de la Commission européenne en fin 2006.)

  • http://www.zoho.com/notebook/ Introducing Zoho Notebook – the online application for gathering and creating multiple types of content that can easily be shared with others. Designed with a simple user interface, Zoho Notebook solves the problem of managing multiple sources of information and content that is typically spread all over the place: your desktop, e-mail, websites, applications etc. With Notebook, you now have a single place to access and share the information that matters to you.
  • http://page2rss.com/ (it is a service that helps you monitor web sites that do not publish feeds. It will check any web page for updates and deliver them to your favorite RSS aggregator. Add Page2RSS button to your browser You can add a button to your browser’s bookmarks toolbar that will create Page2RSS feed for the page you are currently viewing. This is an easy and convenient way for you to create feeds for pages you are surfing)

Posted in python | Leave a Comment »

La nouvelle 9Box v4 et la FONERA

Posted by patrick sur février 1, 2007

Etant un abonné de 9Télécoms, voici une nouvelle qui m’intéresse:

Neuf Cegetel lance sa NeufBox v4

La nouvelle NeufBox est désormais disponible pour tous les abonnés du FAI.

Annoncée depuis quelques temps, la nouvelle version de la NeufBox est maintenant disponible pour tous les abonnés, moyennant 49 euros pour les anciens membres, envoyée directement pour les nouvelles recrues du FAI.

C’est donc une petite révolution chez Neuf Cegetel ; la nouvelle NeufBox fonctionne en s’appuyant sur le noyau Linux version 2.6, compatible ADSL et ADSL 2+. Elle propose dorénavant une connexion sans fil WiFi b et g, avec les codecs de téléphonie sur IP G.711, G.726 et G.729. Une nouvelle sécurisation par encodage fait son apparition, à savoir la WPA ( WiFi Protected Access ) encore appelée WEP ( Wired Equivalent Privacy ) 128-bit.

Point de vue branchements, la NeufBox est équipé de 2 ports USB 2.0, d’un port USB 1.1 de type B, d’un commutateur 4 ports RJ-45 compatible Ethernet 10/100 BaseT et de 2 ports RJ-11, un pour la téléphonie IP et l’autre pour la connexion ADSL.

Elle reste compatible avec les environnements Windows à partir de la version 98 Second Edition, ainsi que Mac OS à partir de la version 9.1 et avec Linux.

De plus on apprend que la Fonera peut être installée sur une neufbox.

Posted in Internet | Leave a Comment »

Test de Xfruits

Posted by patrick sur février 1, 2007

Ce qui m’intéresse c’est l’agrégateur de flux RSS.

voir http://www.xfruits.com/

Posted in web2.0 | Leave a Comment »