Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les news > Accueil

Bienvenue sur le Site du Zéro !

Évènements

« Août 2008 »
Lu Ma Me Je Ve Sa Di
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Maintenance pour VosTutos 3.5 06:00:00->18:00:00
21
22
23
24
25
26
27
28
29
30
31

Sondage

Avez-vous déjà imprimé des tutoriels du site ?

Vos Tutos 3.5 : un mythe, une légende

257 commentaires # Par M@teo21, le 20/08/2008 à 11:02:00
Edit : l'accès aux tutoriels est de nouveau possible (modification comprise). Nous pensons avoir corrigé un nombre important de problèmes mais nous vous conseillons toutefois la plus grande prudence dans les jours à venir (sauvegardez aussi vos textes sur votre ordinateur quelque temps). Merci.



Villejuif, 5h30 du matin

La température extérieure me rappelle qu'il fait encore nuit, au cas où je ne l'aurais pas remarqué. La rue est déserte, comme on peut s'y attendre à cette heure. À l'arrêt de bus, personne. C'est tout juste si une voiture passe par là au bout de 5 minutes.

Le silence est total avant la bataille. Au bureau, j'arrive à 6h06. Natim est déjà là depuis 6 minutes. À l'autre bout de la planète, à Sydney en Australie, Karamilo est en ligne comme convenu la veille.

La lutte peut commencer. Bien qu'ayant préparé le moment depuis une semaine, nous ne pouvons nous empêcher de ressentir cette petite (mais délicieuse) pointe de stress avant une mise en production importante. Depuis la sortie de la version 3 du Site du Zéro, il s'agit en effet du plus important changement sur le principal module du site : "Vos tutos", qui gère l'affichage et l'édition des tutoriels.



Vos Tutos 3.5, une histoire mouvementée



Stylo
L'histoire de Vos Tutos 3.5 commence à... oulah, il y a bien longtemps déjà. Pour bien comprendre, il faut au moins remonter à la sortie du Site du Zéro v3 (fin 2005), qui a marqué un tournant dans l'histoire du site en harmonisant entièrement son fonctionnement grâce à un développement maison pensé pour et par le Site du Zéro lui-même. Sans cette nouvelle version du site, nous n'aurions pas pu évoluer comme nous l'avons fait, c'est une évidence.

Malgré tout, quelques temps après la sortie de la v3 et de son tout nouveau module "Vos tutos 3.0" de gestion des tutoriels, karamilo et moi-même avons commencé à réfléchir à un nouveau modèle de données pour Vos tutos, plus flexible mais aussi beaucoup plus complexe. C'était au premier semestre de l'année 2007.

L'objectif était de poser des bases plus solides pour l'évolution des tutoriels car, étant donné que le trafic venait d'augmenter considérablement en l'espace d'une année, il valait mieux ne pas trop tarder à faire cette grosse migration une fois pour toutes afin de pouvoir évoluer plus sereinement par la suite.

Toutefois, le travail à faire (et le cahier des charges que j'ai rédigé pour karamilo, j'avoue :-° ) était conséquent. Vos tutos devenait bien plus complexe à gérer pour le développeur, mais aussi beaucoup plus souple pour l'utilisateur (c'est-à-dire vous).

Nous avons recueilli un certain nombre de suggestions des utilisateurs et des validateurs pour leur faciliter la vie. Bref, nous avons souhaité être à l'écoute pour améliorer notablement Vos tutos. Toutefois, la mise à jour s'est transformé en une montagne à gravir, et bien que karamilo ait posé de solides bases, il lui était difficile de trouver le temps et les moyens de terminer le travail.


Natim à la rescousse



Image utilisateur
Le nouveau Vos Tutos (initialement la version 3.1 mais finalement renommée en 3.5 vu le nombre important de changements) avait besoin de main d'oeuvre. Prévu pour l'été dernier, il aura fallu attendre cet été et l'arrivée de Natim en tant que stagiaire dans nos bureaux pour en découdre.

Natim, particulièrement motivé pour terminer Vos tutos, a donc pris en charge la suite du code très tôt au début de son stage. Le résultat a été payant. Bien que nous avions initialement prévu une sortie pour fin juillet (il y a toujours des retards dans ce genre de cas :D ), nous sommes plus qu'heureux aujourd'hui de vous annoncer qu'un mythe vient de prendre fin : Vos tutos 3.5 est sorti. Ouf.


Les nouveautés de Vos Tutos 3.5



L'accouchement aura été difficile, c'est le moins que l'on puisse dire. Comme je vous l'ai signalé plus tôt, il faut mettre ça sur la complexité du nouveau modèle de données du module.

Sous le capot, tout a changé. Le moteur qui gère Vos tutos est très différent aujourd'hui. La base de données est conçue différemment pour le stockage, d'une manière qui va nous permettre par la suite de faire des évolutions importantes plus rapidement. La structure à représentation intervallaire nous permet notamment une plus grande souplesse pour la gestion du tutoriel. Ci-dessous, voici la représentation d'un tutoriel tel que stocké en bases de données :

Tutoriel


En réalité, ce schéma est très simplifié. Pour bien faire, il faudrait le représenter en 3 dimensions pour prendre en compte toutes les versions possibles de chacun des éléments du tutoriel (toute l'évolution du tutoriel dans le temps en somme).

Je tiens à signaler que le numéro exact de version de ce Vos tutos est 3.5.0. Cela signifie que nous posons les bases pour la suite et que tous les changements prévus ne sont pas encore là, mais qu'ils vont pouvoir arriver avec moins de difficulté par la suite.
Vous pouvez comparer, toutes proportions gardées, Vos tutos 3.5.0 à KDE 4.0. Tout n'y est pas, mais sous le capot tout a changé et cela pose des bases sérieuses pour les évolutions futures.


Considérez donc que vous ne pouvez pas voir la plupart des changements. L'interface est sensiblement la même pour vous, mais il y a tout de même un nombre non négligeable de changements que vous allez pouvoir constater et que je me fais un plaisir ici de lister (de manière non exhaustive) :
Bloc Notes

  • Plusieurs auteurs peuvent travailler simultanément sur un même tutoriel. Les tutoriels peuvent donc avoir plusieurs auteurs associés.
  • Réhabilitation de l'import de tutoriels au format .tuto version 3.5.0 (allelujah !).
  • Sauvegarde de toutes les anciennes versions du tutoriel, ce qui vous permet de revenir à une ancienne version si vous le désirez. Aucune modification n'est donc perdue.
  • Navigation largement améliorée au sein des tutoriels grâce à une liste déroulante qui permet de sauter à n'importe quel chapitre ou sous-partie en 2 clics. L'arborescence lors de l'édition d'un tutoriel est enfin correcte et on peut remonter de niveau sans problème.
  • La liste des tutoriels est améliorée : elle affiche désormais les icônes des chapitres et met mieux en valeur les big-tutoriels en affichant le détail de leurs parties.
  • Le cadre en haut à droite présentant le tutoriel a été revu et corrigé pour présenter uniquement les principales informations sur le tutoriel, et permet d'afficher ou de masquer les informations détaillées.
  • Une navigation transversale au sein du tutoriel, particulièrement agréable pour son auteur mais aussi pour les visiteurs : on peut aisément passer du tutoriel à ses commentaires, mais aussi à sa version éditable si on en est l'auteur. L'accès à la modification du tutoriel n'a jamais été aussi intuitif !
  • Possibilité d'indiquer la difficulté d'un tutoriel.
  • Possibilité de choisir la licence de votre tutoriel parmi les 6 licences Creative Commons, en plus de la licence de base (qui reste par défaut) qui indique que personne n'a le droit de copier votre tutoriel sans votre accord. En savoir plus sur les licences.
  • Possibilité d'indiquer si un zCorrecteur a corrigé votre tutoriel. Le site zcorrecteurs.fr a d'ailleurs été mis à jour pour supporter le nouveau format .tuto qui a légèrement changé pour prendre en compte notamment la difficulté du tutoriel.
  • Les big-tutoriels (comprenant plusieurs chapitres) sont désormais considérés comme des tutoriels et on ne fait plus la distinction en base de données avec les mini-tutoriels. De ce fait, les big-tutoriels peuvent désormais être commentés et notés dans leur entièreté, mais aussi avoir une icône et une difficulté d'ensemble.


Notez qu'il est techniquement possible de rendre un tutoriel éditable par tout le monde (tous les membres et tous les invités) à la manière d'un wiki, mais nous n'avons pas activé cette option dans un premier temps. Cela demande une préparation et une gestion particulières. Nous envisageons toutefois de faire un test dans un bac à sable ("sandbox") pour voir si cela peut produire des résultats intéressants sans altérer bien sûr les tutoriels déjà présents (d'où l'intérêt de faire ce test dans un lieu séparé appelé "bac à sable").

Toutes les URL des tutoriels ont changé avec cette nouvelle version. C'était inévitable étant donné le mode de fonctionnement très différent. Toutefois, un système de redirection transparente a été mis en place pour ne pas perturber les liens pointant vers le site du zéro. Pensez à mettre à jour vos liens et / ou vos favoris pour prendre en compte les nouvelles adresses.


Tous les tutoriels déjà écrits sur l'ancienne version de Vos tutos ont été récupérés grâce à un script automatique fait maison pour l'occasion. Cela a demandé un travail considérable.
Normalement il ne devrait pas y avoir d'erreurs, mais il est toutefois possible de rencontrer des bugs sur d'anciens tutoriels.


La suite ?



Dans un premier temps, nous allons probablement avoir quelques bugs à corriger que les utilisateurs nous soumettront (merci au passage de n'indiquer que des vrais bugs, pas des comportements étranges). Si vous avez des suggestions, nous les analyserons toutes dans le forum suggestions.
Merci de vérifier que le bug que vous allez rapporter n'a pas déjà été rapporté par quelqu'un d'autre avant de poster !

Par la suite, une fois que Vos tutos 3.5.0 sera bien stabilisé, nous envisagerons d'apporter des modifications par petites doses. Nous en avons un certain nombre déjà en tête (notamment la possibilité d'analyser la différence entre 2 versions), mais tout viendra en son temps.

D'ici peu, nous allons aussi mettre en place la recherche sur les tutoriels, promise et demandée depuis longtemps. Il faut dans un premier temps décanter les premiers bugs, puis nous nous en occuperons. Nous vous tiendrons informés dans une news.


Remerciements



  • Natim en premier lieu, car c'est lui qui a fait le plus gros du travail ces dernières semaines et c'est à lui que vous devez la sortie de Vos tutos 3.5.
  • Karamilo, qui a posé les bases de Vos tutos 3.5 et qui a continué à assister Natim dans sa tâche (même s'il était à l'autre bout du monde :p ).
  • Ziame et Arconis, capables de dénicher des bugs là où la main de l'Homme n'a jamais mis le pied, pour leurs bêta-tests tout au long de la création de Vos tutos.
  • L'équipe du Site du Zéro pour les bêta-tests des derniers jours, et notamment les validateurs pour leurs conseils et suggestions sur les fonctionnalités à implémenter.
  • Les zCorrecteurs, notamment Vincent1870, pour leur aide, leurs idées et leurs conseils.
  • Bluestorm et ses collègues pour leurs conseils sur les licences et pour avoir rédigé en un temps record un tutoriel permettant de comprendre les enjeux des licences.

L'internet chinois sous haute surveillance

182 commentaires # Par pandore75, le 19/08/2008 à 17:14:08
Image utilisateur
Pékin, capitale chinoise et ville organisatrice des JO, emploierait près de 280 000 étudiants et fonctionnaires pour poster des messages de propagande sur les blogues et les forums afin d'appuyer les décisions prises par le parti au pouvoir, le Parti Communiste Chinois.

Aperçu de l'Internet chinois



Comme vous le savez sans doute, la Chine est sous un régime autoritaire communiste qui pratiquait la collectivisation des biens et des terres alors que ses frontières étaient fermées au commerce extérieur. Cela a cependant changé il y a environ une trentaine d'années : la collectivisation a laissé place à «l'économie socialiste de marché», c'est-à-dire que le pays a, entre autres, ouvert ses frontières et, de ce fait, a commencé à exporter massivement ses produits. Cette ouverture a été une véritable révolution pour la Chine, car composée d'une population de plus de 1,3 milliard d'habitants et d'une législation du travail très stricte, elle a réussi à se hisser au 4e rang mondial en ce qui concerne le PIB.

Ces fantastiques résultats font évidemment le bonheur du PCC qui y voit la réussite de son modèle communiste à travers le monde. Cependant, bien que l'économie chinoise soit une vraie réussite depuis son ouverture, elle n'en demeure pas moins gérée par un régime autoritaire. Internet, qui permet aux individus de s'exprimer facilement et librement, représente donc un inconvénient de taille majeure pour le PCC. En effet, il est facile de s'imaginer comment 250 millions d'internautes chinois peuvent décrire la Chine à leurs contacts occidentaux ! Profitant de l'anonymat qu'amène Internet, les Chinois se livrent ainsi à de nombreuses critiques visant le régime en place, contrastant avec l'immobilisme d'une presse que l'on sait contrôlée par le Parti unique.

C'est de cette manière que se sont développés de nombreux blogues et forums sur l'Internet chinois depuis 2004. La renommée de certains d'entre eux s'étend même à tout le pays, comme c'est le cas pour ytht.net, le forum de l'Université de Pékin, qui comptait des centaines de milliers d'inscrits ! Afin de stopper ce foisonnement de critiques à son égard, le Parti unique a décidé d'intervenir depuis 2005.

La « Wu mao dang »



Image utilisateur
Un cybercafé chinois
Afin de redorer le blason du Parti, les autorités chinoises ont tout d'abord pris une décision simple : fermer les forums trop dérangeants en donnant comme motif de la maintenance (qui ont duré des années, tout de même). C'est de cette manière qu'a été fermé le fameux ytht.net. De nouvelles lois ont imposé également aux internautes de s'enregistrer sur les forums avec leurs vraies coordonnées. Malgré les plaintes des étudiants, la main de fer du gouvernement tente toujours de stopper l'hémorragie.

Cependant, recréer des forums « clandestinement » est une affaire aisée sur l'Internet et le peuple chinois l'a bien compris. Et ce petit jeu du chat et de la souris démontre que fermer simplement les forums n'est pas suffisant, les internautes ayant toujours de l'avance sur les autorités. Une nouvelle directive est alors mise en place : le PCC engage quelques milliers d'étudiants chinois pour surveiller la Toile et poster des commentaires afin d' « intervenir dans les discussions et orienter les commentaires sur les sujets qui préoccupent le plus d'enseignants et étudiants ». Cette sorte de milice du Net est alors appelée la « Wu mao dang » (la bande à 5 centimes) car il était dit qu'on payait ces gens-là 5 centimes par commentaire. Et la cadence de leur propagande est très élevée, chacun des membres de la "Wu mao dang" doit, par mois, écrire au moins 20 commentaires et 1 article qui vantent l'ouverture de la Chine et de ses universités.

Puis le phénomène s'est accentué au cours des deux dernières années. La propagande s'est invitée à tous les échelons de l'administration du pays. Le président chinois Hu Jintao a même personnellement exprimé le souhait de voir naître une gigantesque « propagande positive ». Et c'est ainsi qu'ont été embauchés pas moins de 280000 étudiants, professeurs et cadres dans tout le pays ! Ce chiffre ahurissant nous indique donc que plus d'un internaute chinois sur mille travaille pour le Parti.


La réaction des internautes



Image utilisateur
Isaac Mao
Évidemment, cette profusion de messages faisant l'apologie du système chinois n'a pas laissé le Web indifférent. Les internautes ont appris à se protéger de ces commentaires qui anesthésient les débats sincères. Tout d'abord, les membres de la « Wu mao dang » sont de plus en plus repérés sur les forums (ce à cause de tant d'enthousiasme dans leurs messages). Ces membres sont alors assaillis d'insultes et de railleries du type : « Avec l'inflation, il est temps de passer à 6 maos! ». Ils sont également ignorés des discussions et l'on pourrait apparenter leurs messages à des polluriels auxquels plus aucune attention n'est portée. Malgré tous les efforts du Parti, l'action de la « bande à 5 centimes » est donc de moins en moins efficace.

De plus, cette sorte de cyberpolice a entraîné l'explosion du nombre de blogueurs indépendants, seul moyen d'exercer sa liberté d'expression à peu près correctement, atteste Zhou Shuguang dit Zuola, 27 ans, blogueur et reporteur vedette en Chine. Sa plate-forme lui permet de s'exprimer librement sur des sujets sensibles par exemple les Jeux olympiques.

Cette montée d'indépendance n'est cependant pas propre aux blogueurs bénévoles. Il en va de même pour les médias. En effet, comme l'État voit que la censure est inefficace et qu'elle entraîne même les conséquences contraires de celles recherchées, l'erreur ne veut pas être reproduite sur la presse écrite ou télévisuelle. Évidemment, il n'est pas encore question de voir la parution d'un quotidien politiquement ouvert ; le Parti souhaite toujours tracer la ligne de pensée directrice de son peuple, mais une brise de liberté souffle néanmoins sur les médias chinois. Par ailleurs, Isaac Mao, un éminent blogueur chinois, auteur du site cnblog.org et expert de l'Internet de son pays nous livre une information fort intéressante : le gouvernement s'attelle à « stériliser les contenus en langue chinoise; si c'est en anglais, ils s'en fichent ». La langue de Shakespeare serait-elle alors la porte qui mènerait le peuple chinois à la liberté d'expression ?

Liens relatifs



Une version de Firefox utilisant Qt, résultat du travail commun de Nokia et Mozilla

43 commentaires # Par wgmpgp, le 18/08/2008 à 17:58:41
Image utilisateur
De nos jours, les programmes affichant une interface graphique permettant une interaction entre l'utilisateur et les fonctionnalités le font par le biais d'une bibliothèque de fenêtrage. Il en existe un grand nombre, toutes différentes mais remplissant un rôle similaire. On peut notamment citer wxWidgets, Qt, Tk, GTK ou la partie GUI de l'API Win32. Parmi toutes ces bibliothèques, deux se détachent des autres : il s'agit de Qt et de GTK. En effet, ces deux bibliothèques Open Source (sous licence GPL pour la première, et LGPL pour la deuxième) sont très utilisées dans le monde du libre. Elles permettent de créer facilement des fenêtres dans vos programmes libres, et permettent de faire cela de manière portable (c'est-à-dire que le même code source fonctionnera sous Windows, Linux ou Mac OS).

L'inconvénient de cette multitude de bibliothèques de fenêtrage est simple : tout d'abord, pour l'utilisateur, c'est un nombre assez important de choses à installer, qui souvent prennent en plus de la place sur le disque dur. Ensuite, le style des applications (comment sont affichés les boutons, les menus, etc.) est différent selon les bibliothèques. Finalement, si deux applications utilisent la même bibliothèque, les paramètres de cette dernière ne sont mis en mémoire qu'une seule fois. Inversement, plus on utilise de bibliothèques différentes, plus la mémoire vive est sollicitée.

Image utilisateur
L'un des logiciels bien connu programmé avec la bibliothèque GTK est le célèbre navigateur libre Firefox. Cependant, puisque ce navigateur n'était disponible qu'avec la bibliothèque GTK jusqu'à maintenant, il était plus ou moins bien intégré à l'environnement KDE, qui utilise Qt (dont bluestorm a déjà parlé dans une news il y a quelques mois, et dont j'ai également parlé à l'occasion de la sortie de la version 4.1). De plus, Nokia, nouvelle société en charge de Qt, était intéressée par le fait de pouvoir utiliser Firefox sur ses téléphones mobiles ou PDA basés sur la bibliothèque Qt.

C'est ainsi que les développeurs de Nokia et du projet Mozilla ont travaillé conjointement à la réalisation d'une version du moteur Mozilla (utilisé notamment par Firefox, Thunderbird et XULRunner) utilisant Qt plutôt que GTK. À l'occasion de l'Akademy 2008 (organisée par le projet KDE), des résultats concrets de cette version ont été montrés au grand public, commençant maintenant à être utilisable.

Le travail à réaliser pour Nokia



Image utilisateur
Tout d'abord, un navigateur Web comme Firefox est divisé en deux parties bien distinctes au niveau de l'interface :
  • Le moteur de rendu Web, nommé Gecko chez Firefox, qui traduit le code XHTML d'une page web en image affichée dans le navigateur. C'est la partie la plus conséquente d'un navigateur web, et également la plus complexe pour les développeurs.
  • Le navigateur en tant que tel : les menus, les barres d'outils, les boutons et tout le reste. Dans Firefox (comme dans les autres programmes utilisant le moteur de Mozilla), toute cette partie est programmée en XUL (un dialecte de XML) et en JavaScript. Cela permet aux extensions de modifier l'interface du navigateur. Ce XUL est ensuite traduit en éléments graphiques puis affiché à l'écran.


Le moteur de rendu Web, Gecko, utilise en interne la bibliothèque de dessin vectoriel Cairo (du dessin vectoriel permet de créer des graphismes redimensionnables à l'infini sans perte de précision) pour créer des images à afficher. Le travail des développeurs a tout simplement été de programmer un backend Cairo utilisant la classe QPainter de Qt pour dessiner dans un élément graphique en utilisant Qt. L'affichage d'éléments graphiques dans la page Web (comme par exemple les boutons, les textarea ou les champs d'édition) sont gérés très facilement avec Qt, permettant de dessiner très facilement ce genre de choses dans une surface de dessin.

Ce travail sur Cairo est actuellement terminé et les développeurs sont en train de demander son intégration officielle aux développeurs de Cairo pour en faciliter la tâche (l'exemple de swfdec, le lecteur Flash libre, a notamment été avancé par Jonathan Riddell).

Le travail sur XUL et le support des thèmes est actuellement encore en cours de travail. Ainsi, la version actuelle de Firefox utilisant Qt est encore dépendante de GTK pour tout l'aspect extérieur du navigateur, mais cela ne devrait plus durer longtemps (comme le dit Oleg Romaxa, de Nokia, « it works but doesn't currently draw anything »).

L'intérêt d'un Firefox utilisant Qt



Image utilisateur
L'idée de créer une version de Firefox utilisant Qt n'a probablement pas été mise en oeuvre par Nokia uniquement dans l'intérêt commun des utilisateurs. Il est légitime de se poser des questions sur le pourquoi de ce travail, surtout en sachant que QtWebKit, moteur Web intégré à Qt depuis les dernières versions, réalise également le travail de Gecko et aurait demandé moins de travail pour les développeurs de Nokia.

La raison avancée par la plupart des gens est simple : Nokia réalise la plupart de ses affaires dans le marché du téléphone mobile, où la technologie Qt devient de plus en plus présente (notamment avec le projet Qtopia, permettant l'intégration de Qt dans des systèmes embarqués). Un navigateur Web devient maintenant le standard dans ce genre d'appareils. Cependant, Nokia n'a pas utilisé Webkit pour une raison très simple : ce projet est très lié à Apple, qui l'utilise dans son navigateur Web Safari. Or l'iPhone d'Apple est l'un des principaux concurrents de Nokia sur le marché du téléphone portable. Il est donc important pour Nokia d'utiliser un autre moteur de navigateur Web, en l'occurrence Gecko, celui de Firefox.

Ce projet présente aussi un avantage considérable pour les distributions Linux basées sur l'environnement KDE, qui sont souvent obligées de fournir les bibliothèques GTK de base pour permettre aux utilisateurs d'utiliser Firefox. Un Firefox basé sur Qt permettra à ces gens de fournir une version de Firefox tout à fait intégrée dans l'environnement et sans s'encombrer d'une bibliothèque supplémentaire.

Liens externes





Le travail entamé par Nokia sur cette branche de Mozilla est tout simplement une bénédiction pour les utilisateurs d’environnements basés sur Qt tels que certains téléphones portables ou tout simplement KDE. Il permettra ainsi d’avoir un système uniforme et plus léger, tout en utilisant le navigateur Firefox, que l’on a plus besoin de présenter.

Merci aux quelques personnes de #sdz qui se sont fait un plaisir de me relire (elles se reconnaitront).
Merci également au Chapelier Toqué pour la zCorrection de cette news.

Tutoriel Java : 5 nouveaux chapitres

76 commentaires # Par cysboy, le 17/08/2008 à 22:12:29
Bonjour à toutes et à tous !

Le tutoriel Java s'est encore agrandi...

C'est les vacances pour beaucoup d'entre vous, mais, comme vous pouvez le voir, il y a toujours quelques irréductibles qui ne s'arrêtent jamais ! ;)
Pour ces Zér0s-là, j'ai concocté cinq nouveaux chapitres qui devraient vous plaire.

Nous continuons donc sur notre lancée avec la programmation événementielle en Java. Les choses commencent à devenir intéressantes, et vous commencez à être habitués. Je me suis donc permis d'accélérer un peu le rythme de croisière (et ce n'est que le début) ! :-°

Voici donc les nouveautés du mois :

10/ Les champs de texte : l'objet JTextField



Image utilisateur
Dans ce chapitre, nous verrons comment utiliser les objets de saisie.
Vous verrez que lorsque vous proposez aux utilisateurs de saisir des informations eux-mêmes, vous vous exposez à certains risques.

En effet, rien ne les empêche de saisir ce qu'ils veulent...
Nous aborderons donc une manière de contrôler les données saisies ! :)
Je ne vous dis rien sur ce sujet... Je vous laisse la surprise...

11/ Les applets



Image utilisateur
Ici, nous verrons une définition de ce qu'est une applet et surtout, la différence entre une applet et une servlet...
Nous ne nous attarderons pas non plus sur le sujet mais il était important que vous sachiez faire la différence.

Le chapitre se poursuit avec la création ainsi que l'exécution d'une applet sous Eclipse (avec passage de paramètres). Nous aborderons aussi l'incorporation d'une applet dans une page web (tout de même... ^^ ).

Il s'en suit la communication entre la page web et votre applet (en utilisant le JavaScript).
Vous pourrez constater que ceci est très simple mais que les possibilités que ce genre de communication offre donnent envie !
Pour faire communiquer votre applet avec votre page web, nous verrons qu'une bibliothèque doit être importée dans votre projet : ce point sera donc traité.

Enfin, nous parlerons brièvement des normes de sécurité imposées aux applets.
Un chapitre bien chargé en somme... ;)

12/ Les boîtes de dialogue



Image utilisateur
Vous saurez tout ! Oui, tout !
Les boîtes de dialogue n'auront plus aucun secret pour vous après ce chapitre... :p

Nous verrons comment créer :
  • des boîtes de confirmation,
  • des boîtes de saisie,
  • des boîtes d'information,
  • des boîtes personnalisées.


Nous verrons aussi un point important concernant les boîtes de dialogue : la modalité.
En effet, celles-ci peuvent être modales ou non et ça change tout, vous verrez.




13/ Les menus



Image utilisateur
Le titre de ce chapitre semble assez clair.
À la fin de celui-ci, vous saurez créer, incorporer et utiliser des menus dans vos IHM.
Par là, j'entends aussi bien :
  • les menus standard : ceux que vous pouvez voir en haut de votre navigateur,
  • les menus contextuels : ceux que vous utilisez lorsque vous faites un clic droit dans une application,
  • les barres d'outils : celles que vous trouvez sous les menus standard dans des applications comme OpenOffice ou the Gimp.

Nous apprendrons beaucoup de choses dans ce chapitre... Et, je pense qu'il va vraiment vous plaire. :D

14/ TP : l'ardoise mazique



Image utilisateur
Le but de ce TP est, comme dans tous les TP, de vous faire travailler ce que vous avez appris jusque là !

Néanmoins, une difficulté supplémentaire s'est glissée dans ce TP.
En effet, vu que nous souhaitons dessiner ce que notre souris trace à l'écran, nous allons devoir intercepter ses déplacements sur notre composant...

Nous n'avons pas encore parlé de ce type d'événement, mais rassurez-vous, si je m'octroie le luxe de vous initier à cette notion dans un TP, c'est que vous devez avoir les compétences pour la comprendre, l'assimiler et l'utiliser facilement ! ;)

Je ne vous gâche pas le plaisir... Et je vous souhaite bonne chance.

J'espère que ces chapitres combleront vos attentes et que vous apprendrez beaucoup de choses !
Je n'ai plus qu'à vous dire : à la prochaine fois.

Travaillez bien, profitez bien du restant de vos vacances (pour les Zér0s qui en ont) et je pense vous retrouver en septembre pour de nouveaux chapitres.

La partie sur les design pattern est commencée avec ses trois premiers chapitres (bientôt quatre). Nous aborderons :
  • les flux d'entrée/sortie,
  • d'autres composants, plus complexes (JEditorPane...).

Voilà de quoi vous donner envie...

En attendant, pour ceux qui le veulent, allez lire le tuto :

Lire le tuto : Programmation en Java

Keyczar : le chiffrement à la portée de tous les programmeurs

70 commentaires # Par wgmpgp, le 16/08/2008 à 11:04:17
Image utilisateur
La cryptographie est un procédé utilisé depuis l’antiquité pour transporter des informations sans en permettre l’interception par des éventuels ennemis. En effet, certains messages sont parfois cruciaux et leur découverte pourraît être grave en conséquences. Ainsi, elle fut notamment utilisée à des fins militaires dans ses débuts : on peut notamment citer l’exemple de la machine de chiffrement Enigma, qui était utilisée par les allemands durant la seconde guerre mondiale.

De nos jours, les méthodes utilisées pour le chiffrement d’informations ont bien évolué depuis l’antiquité  : en effet, les contraintes ne sont pas les mêmes qu’à l’époque, et empêchent donc une utilisation pratique des vieilles méthodes de chiffrement (j’en donnerai quelques exemples plus bas). De plus, la cryptographie s’est maintenant démocratisée et est utilisée dans la vie de tous les jours pour rendre nos communications confidentielles : en effet, on peut notamment citer l’exemple du SSL sécurisant les communications sur l’Internet, ou même nos téléphones portables, qui chiffrent nos communications grâce à des informations contenues dans leur carte SIM.

Cependant, malgré de nombreuses bibliothèques, la mise en place de chiffrement dans un programme est souvent compliquée et nécessite beaucoup de connaissances théoriques. C’est sur ce constat que les équipes de la Google Online Security ont développé leur nouveau bébé, nommé Keyczar, permettant en une ligne de crypter des informations en faisant abstraction des détails techniques. De plus, cette bibliothèque est libre, c’est à dire que son code source est ouvert à tous et réutilisable dans vos applications.

Avant de vous expliquer quels sont les avantages et les fonctionnalités de Keyczar par rapport aux autres bibliothèques de chiffrement existantes, faisons tout d’abord un petit rappel des principes de base de la cryptographie, qui vous permettront ensuite de mieux comprendre les fonctionnalités de Keyczar.

Le chiffrement : comment ça marche ?



Tout d’abord, on peut dissocier deux cas de chiffrements : les algorithmes de chiffrement symétriques, et les algorithmes asymétriques. Alors que les premiers nécessitent de communiquer une clé pour crypter ou décrypter le message, les seconds utilisent eux deux clés différentes : une pour le chiffrement et une pour le déchiffrement.

Les algorithmes de chiffrement symétriques



Chronologiquement, ces algorithmes ont été les plus utilisés car ce sont les plus simples à mettre en place, et car c’est également le moyen le plus intuitif. Déja dans la Grèce antique, en 600 avant J.C, ce genre de chiffrements existaient via l’usage d’un scytale, un baton en bois. Les romains utilisèrent ensuite une autre méthode de chiffrement, qui consistait en un décalage des lettres de l’alphabet. On utilise encore ce genre d’algorithmes, comme le montre l’adoption du standard AES en octobre 2000.

Cependant, le chiffrement symétrique pose un problème : pour que l’interlocuteur puisse déchiffrer notre message chiffré, il doit connaître la clé que nous avons utilisée. Mais pour lui fournir la clé, il n’y a que deux moyens : soit l’avoir communiquée directement de manière sûre avant d’être séparés, soit la communiquer chiffrée… ce qui nous fait un beau cercle vicieux obligeant la plupart du temps à transmettre la clé de façon non sécurisée, rendant ainsi le chiffrement vulnérable.

Les algorithmes de chiffrement asymétriques



Les algorithmes de chiffrement asymétriques se basent sur l’arithmétique (un domaine des mathématiques) pour créer deux clés réciproques par interlocuteur. Pour communiquer à deux, nous avons donc chacun deux clés, générées automatiquement par un programme par exemple (on peut notamment citer openssl, très utilisé de nos jours à cet effet). La première clé, aussi appelée clé publique, n’est utilisée que pour crypter les informations, on peut donc la diffuser sans soucis (d’où son nom de clé publique). La seconde, clé privée, ne doit pas être diffusée : elle est la seule à pouvoir déchiffrer des messages chiffrés avec la clé publique qui va de paire.

Ainsi, si Alice veut envoyer un message secret à Bob, elle va demander à Bob sa clé publique (en pratique, on peut la trouver dans des annuaires de clés sur Internet par exemple), chiffrer son message avec la clé publique de Bob, et lui envoyer le message chiffré. Ainsi, Bob, seul détenteur de la clé privée, est le seul à pouvoir décrypter le message.

Pour reprendre une analogie que l’on trouve souvent pour simplifier l’explication, on peut imaginer que Alice possède un coffre-fort et sa clé. Elle envoie le coffre-fort ouvert à Bob en gardant la clé. Bob va ensuite placer le message dans le coffre et le refermer, avant de le renvoyer à Alice. Alice était la seule à posséder la clé du coffre, elle peut maintenant l’ouvrir.

Les fonctionnalités de Keyczar



Image utilisateur
La visée de Keyczar est d’être un outil à la fois simple et fiable à l’utilisation. Ainsi, il permet le chiffrement et le déchiffrement, aussi bien symétrique qu’asymétrique, et cela en une ligne de code. Les deux langages pouvant actuellement utiliser cette bibliothèque sont Java et Python, et une traduction du projet vers le C++ est actuellement en cours.

Ainsi, pour crypter symétriquement un message, on fait très simplement comme ceci en langage Python :

Code : Python
1
message_crypte = Crypter.Read("/chemin/vers/les/cles").Encrypt("Message")


On fait de cette façon abstraction de tous les détails d’implémentation derrière, qui sont de toute façon gérés par Keyczar. Les clés sont générées par un outil fourni avec la bibliothèque, très simple d’utilisation lui aussi. À côté des fonctionnalités de chiffrement, cette bibliothèque permet aussi de signer des messages pour en assurer l’intégrité et l’expéditeur (ainsi, vos messages ne pourront pas être modifiés à votre insu).

Un des plus gros défauts de cette bibliothèque est cependant sa jeunesse : en effet, sortie le 11 août dernier, pratiquement aucune application ne l’utilise à ce jour, et la documentation est encore loin d’être abondante. De plus, elle n’est actuellement utilisable que dans deux langages différents, mais cela risque de changer dans les semaines à venir. ;)

Liens externes



Libérations de tutos en série

128 commentaires # Par bluestorm, le 13/08/2008 à 14:49:54

Le crime



En l'espace de quelques heures, un petit groupe de tutos a été placé sous une licence libre Creative Commons. C'est peut-être le signe d'un début d'ouverture pour le contenu créé par les membres du SdZ, qui fait maintenant partie intégrante des documents pédagogiques francophones.

Si vous vous êtes déjà dit "tiens, j'aimerais bien citer un bout de ce texte sur mon blog", ou encore "si on pouvait modifier / mettre à jour telle partie de ce tuto, je pourrais le suggérer à l'auteur et ce serait mieux pour tout le monde", cette nouvelle a de quoi vous réjouir.

Les victimes



gnu méditant sur son code

Les tutos concernés par cette soudaine poussée de liberté se trouvent tous dans la partie "Programmation" du SdZ. Ce n'est pas très étonnant, étant donné l'importance du logiciel libre dans ce domaine. Cela reste cependant regrettable : tous les auteurs peuvent choisir de diffuser librement leurs connaissances, et pas seulement les libristes barbus (ou non).

Le mouvement avait été initié il y a quelque temps déjà par les tutoriels OpenGL d'Yno : les extensions, les shaders GLSL et les rendus optimisés. Les programmeurs 3D continueront à trouver leur bonheur redistribuable avec la libération du petit guide d'Irrlicht, présentant un moteur 3D de haut niveau.

Un autre secteur très touché fut la section "Algorithmique", avec une bonne partie de ses articles sur le tri : le tri par insertion (version itérative et version fonctionnelle), le tri à paniers et enfin le tri rapide.

Les changements les plus nets se sont produits dans la (jeune) section "Erlang", où tous les tutos, sauf un irréductible, basculent du côté barbu : un avant goût du langage, erlang graphical drawer, le hot code swapping et un wiki en 13 minutes.

Enfin, on note aussi la libération d'articles (des textes un peu plus généraux que les tutoriels), placés faute de mieux dans la section "Général" des tutoriels de programmation : la récursivité présente un concept très répandu en programmation, faire de son programme un logiciel libre évoque (justement) le choix d'une licence pour un logiciel et le typage : présentation thématique et historique expose et décortique la notion de typage dans un langage informatique.

Le mobile présumé



Le droit d'auteur en général



tous droits réservés

Quand on écrit un texte, il est automatiquement placé sous le droit d'auteur. Cela veut dire que, quand l'auteur du tuto ne le précise pas, ce sont les règles du droit d'auteur qui s'appliquent. Elles varient légèrement selon les pays (a priori le SdZ est concerné par la législation française), mais en deux mots, c'est "tous droits réservés" : vous n'avez pas le droit de reproduire ou modifier un tutoriel du SdZ, cela constitue un plagiat.

La licence des tutos



Il est possible pour l'auteur de préciser la manière dont il souhaite diffuser son oeuvre : c'est le concept des "licences". Un auteur peut déclarer par exemple que les écoles ont le droit de reproduire et utiliser gratuitement son texte.

Il n'est cependant pas très facile de créer une licence à partir de rien (que faut-il autoriser ? que peut-on interdire ? comment rédiger correctement ?). Pour faciliter le travail des auteurs, des licences sont déjà disponibles : leur fonctionnement est très connu et l'auteur n'a plus besoin de rédiger sa licence lui-même.

De nombreuses licences différentes sont disponibles pour satisfaire les besoins d'un grand nombre d'auteurs. Les plus connues sont peut-être les licences libres, qui permettent de redistribuer librement et de modifier l'oeuvre (avec ou sans certaines restrictions selon les licences).

Dans le monde de l'informatique, la plupart des licences sont conçues pour des logiciels : elles sont destinées à protéger du code source, et ne s'appliquent pas très bien à un document comme un tutoriel. Il existe cependant un groupe de licences, les Creative Commons, créées spécialement dans ce but.

Vous trouverez une description plus détaillées des Creative Commons dans la news du SdZ à ce sujet.

Les Creative Commons



Toutes les Creative Commons ne sont pas des licences libres. Il est possible par exemple d'interdire la modification de l'oeuvre (ce qui peut se comprendre par exemple s'il s'agit d'un texte d'opinion où l'auteur s'implique personnellement).

La licence choisie pour ces tutoriels (mais il y en a d'autres possibles) est libre, c'est la CC-By-Sa, qui est assez proche de la licence GPL pour les logiciels : la distribution et la modification de l'oeuvre sont permises, mais il faut conserver l'auteur et la licence du document.

paternité

Concrètement, cela veut dire que vous pouvez par exemple placer un de ces tutoriels (ou une citation d'une partie) sur votre site, à condition de bien préciser que vous ne l'avez pas écrit, qui est l'auteur et d'où il vient. Vous devez de plus conserver la licence, donc donner les mêmes droits à vos visiteurs : si vous reproduisez ou même améliorez un tutoriel, vous ne pouvez pas interdire la diffusion ou la modification de votre version (cela permet de s'assurer que toutes les versions d'un document restent libres).

Il faut savoir que Creative Commons propose aussi des licences non libres pour satisfaire certains besoins (par exemple Zopieux a publié deux tutos sur Photoshop (les scripts et une ombre) sous une licence interdisant toute utilisation dans un cadre commercial). Le choix d'une licence libre facilite cependant notablement la diffusion (elle permet par exemple des traductions vers d'autres langues ou l'inclusion sans problème sur un site avec publicité).

Vous trouverez plus d'informations sur la licence By-Sa, ainsi que son texte complet (du blabla pour avocats) sur la page de la licence By-Sa. Vous trouverez plus d'information sur les autres licences (si les termes de celle-ci ne vous conviennent pas) sur le site de Creative Commons.

Affaire à suivre



Nous espérons que ce mouvement inspirera d'autres auteurs de tutoriels du SdZ. Certains préfèrent conserver toutes les restrictions du droit d'auteur sur leurs tutoriels, et c'est leur droit le plus absolu (l'auteur est le seul en mesure de décider).

Cependant, nous pensons que cette mesure peut permettre une diffusion des connaissances contenues dans les tutoriels, ainsi que leur évolution : si les personnes choisissant de modifier un tuto sont assez gentilles pour faire part de leurs modifications à l'auteur initial, il est possible de mettre en place un cercle vertueux d'améliorations successives de vos tutoriels.

Nous avons jusqu'ici entendu beaucoup d'avis positifs, y compris d'une partie de l'équipe du SdZ. Il semblerait qu'ils s'intéressent aussi à la question, et qu'il sera peut-être possible à l'avenir d'intégrer plus facilement votre licence au SdZ (source).
Attention : l'équipe du SdZ a prévu la possibilité de choisir la licence d'un tuto sans modifier son contenu très prochainement. Pas la peine de modifier et de revalider votre tuto dans l'immédiat.

Un ordinateur à 12 dollars

197 commentaires # Par Phoenix.31, le 12/08/2008 à 20:11:41
Image utilisateur
Fabriquer un ordinateur qui coûterait 12 dollars, tel est le défi que se sont donnés plusieurs étudiants du Massachusetts Institute of Technology (MIT). Cet ordinateur serait destiné aux enfants et étudiants des pays du tiers monde (pays en développement).
Un tel challenge avait déjà été entrepris par Nicolas Negroponte en 2005 pour la création d'un ordinateur à 100 dollars, OLPC, qui se vend actuellement à 188 dollars.

Une idée de Derek Lomas



Derek Lomas eut l'idée de construire un ordinateur à un tel bas prix lors de son voyage en Inde où il a rencontré des personnes qui se servaient d'ordinateurs connectés à leurs téléviseurs, afin de faire tourner quelques programmes. Selon lui, une organisation indienne serait déjà intéressée par ce projet.

Architecture et programmation



Une architecture simple



Ce nouvel ordinateur sera basé sur l'architecture d'un Apple II à laquelle sera ajouté un avantage considérable et nécessaire de nos jours : l'accès à Internet via un téléphone mobile (pour les habitants qui en possèdent un).

Si vous avez plus de 16 ans, peut-être avez-vous déjà eu la chance d'approcher un Apple II. Sinon, voici les principales caractéristiques de la machine :
  • Processeur : MOS Technology 6502 8 bit à 1 MHz
  • Bus système : 1 MHz
  • RAM : 4 Ko extensible à 64 Ko
  • ROM : 12 Ko
  • Affichage : 24x40 caractères. 6 couleur en 280x192, couleur 4 bit en 40x48
  • Audio : haut parleur interne
  • Lecteur : cassettes audio


Côté programmation



Un groupe de six programmeurs du MIT ont contacté des nostalgiques de l'Apple II (considéré de nos jours comme une pièce de musée) afin de programmer les divers logiciels qui constitueront l'ordinateur. N'ayant pas la puissance des configurations actuelles, ces machines ne disposeront pas de webcams ou d'autres périphériques de ce genre qui demandent une puissance bien supérieure.

Néanmoins, malgré leur très faible coût, ils disposeront d'une mémoire suffisante qui aurait fait rêver la majorité de la population des années 1970.

Une utilisation prometteuse



Comme je le disais plus haut, ces ordinateurs sont destinés aux habitants des pays en voie de développement. Alors que son prix est dérisoire pour tous les occidentaux, les futurs détenteurs devront dépenser plusieurs journées de salaire pour pouvoir se le procurer.

Cependant il faut voir plus loin, une personne qui ne gagne actuellement qu'un dollar par jour pourrait voir son salaire journalier atteindre les 10 dollars.
De même les étudiants auraient de plus grandes opportunités pour réussir leur scolarité et ainsi leur intégration sociale.

Quelques liens utiles





Et pour finir, voici une citation de Jesse Austin-Breneman, membre de l'équipe du MIT, (source : Futura-Sciences) :

Citation : Jesse Austin-Breneman
Nous estimons que nous pourrions développer un outil pédagogique vraiment excellent qui pourrait donner à des enfants du tiers-monde l’accès aux claviers, de les familiariser à l’usage de l’ordinateur et de la souris à un âge précoce.

EEE PC, encore un nouveau, mais pas low cost

89 commentaires # Par gigedine, MathX et Ziame, le 10/08/2008 à 16:25:00
Asus n'en finit pas. Après les EEE PC 701, 900 et 901, c'est au tour d'un petit nouveau de se démarquer sur le nouveau marché des ordinateurs portables low cost (de faible coût).
Faisant malgré tout partie de la gamme des UMPC d'Asus, ce dernier qui répond au doux nom d'EEE PC S101 s'engouffre dans une nouvelle voie qui la différencie des autres portables de sa série.

Changeons les habitudes



Image utilisateur
L'Eee PC S101.
Si l'on demande la définition d'un EEE PC à quelqu'un qui s'intéresse à l'informatique, il vous répondra sûrement qu'il s'agit d'un portable peu onéreux et assez faible côté performances.
Cependant, tout ceci risque de changer fortement. En effet, lors de la dernière annonce publique d'Asus, on a appris que celui-ci compte instaurer sur le marché un nouveau portable haut de gamme dont le prix serait nettement plus élevé que ses prédécesseurs. Soit tout à fait le contraire de ce qu'Asus proposait depuis le lancement de sa gamme d'UMPC.

L'EEE PC S101 possédera un processeur Intel Atom cadencé à 1.6Ghz, 1 ou 2 Go de RAM, un SSD 32 ou 64 Go et une autonomie de 4 à 5 heures selon les utilisations du portable.
Quant à l'esthétique, on retrouve un écran fin de 10.2 pouces à rétro éclairage LED, une couleur blanche ou chocolat et le tout avec une épaisseur de 19 à 25mm.
Notons que le prix d'un S101 avec un disque dur de 32Go sera de 669 dollars et de 899 dollars pour une capacité de 64Go.

Quand le S101 s'attaque au MacBook Air...



Comme les caractéristiques du S101 l'indiquent, ce dernier souhaite rivaliser avec le fameux MacBook Air de chez Apple.
Mettant donc de côté temporairement les utilisateurs possédant un budget plus restreint pour l'informatique, Asus vise cette fois-ci la clientèle perdue des MacBook Air qui ne jurent que par Windows ou Linux, au grand détriment d'Apple.

Asus EEE PC S101Apple MacBook Air
Processeur Intel Atom 1,6 Ghz Intel Core 2 Duo 1,6Ghz ou 1,8Ghz
Mémoire vive (RAM) 1 ou 2 Go 2 Go
Disque dur 32/64 Go en SSD 80 Go
Autonomie 4 à 5 heures 5 heures
Écran et résolution 10,2 pouces en 1024x600 pixels 13,3 pouces en 1280x800 pixels
Poids Un peu inférieur à 1kg 1,36kg
Système d'exploitation Windows ou Linux Mac OS X 10.5 Leopard
Prix 699 à 899 $,
soit environ entre 450 et 585 €.
À partir de 1699 €

Comparatif entre le dernier EEE PC d'Asus et le MacBook Air d'Apple.

Comme on peut le distinguer, les deux portables sont très similaires en dehors du système d'exploitation.
Bien que le MacBook soit un poil plus performant que le S101, le prix du EEE PC est nettement inférieur, et en fera ainsi réfléchir plus d'un avant de se tourner vers l'achat du dernier UMPC d'Asus.
Image utilisateur

Conclusion



Asus sort de l'ordinaire avec ce portable haut de gamme et garde tout de même un faible prix comparé au MacBook Air qui pourtant possède les mêmes technologies avancées. Le S101 possède donc bien des chances de détrôner le portable d'Apple, ce qui le différencie d'un Eee PC standard.
Notons cependant que des périphériques normalement internes au portable (bluetooth, Wi-Fi, etc) ne sont pas officialisés et pourraient donc être la cause du faible prix du nouveau EEE PC d'Asus.


Liens relatifs


Page : 115  114  113  112  ...  3  2  1 

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | Fil RSS | XHTML 1.0 | CSS 2.0
Édité par Simple IT SARL : Nous contacter | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 77 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0612s (0.0432s)