lo2k


Weblog

04/02

2010

2 Comments

Pourquoi j’ai décidé d’utiliser CSS3 sans attendre.

Lorsque l’on voit les possibilités apportées par CSS3 comme on peut le voir sur smashingmagazine… ça donne envie !

Mais voilà… certaines fonctionnalités ne sont supportés que par le moteur Gecko, d’autre dans webkit et on se retrouve vite a se rendre compte que de toute façon, ce n’est pas supporté par InternetExplorer 9 voir même 10 ou 11.

Une compatibilité nécessaire “historique”

Si on se plonge un peu dans l’histoire du web on se rend vite compte que les problèmes de CSS remonte  a cette rivalité “Internet Explorer” vs “Firefox” qui a engendré pas mal de cauchemard. Cette compatibilité était réellement nécessaire car souvent les “div” n’étaient pas affichés au même endroit. Le design partait en “sucette” et le site devenait vite complètement illisible.

De nombreux “framework css”, “css hack & tricks” ont vu le jour pour essayer de faire en sorte que notre bon code CSS ne soit pas aussi compliqué que la compilation d’un code source C natif sur plusieurs processeur.

Petite apparté sur les jeux vidéos

Lorsque vous achetez un jeu PC vous regardez bien les “specifications techniques”. Souvent vous pouvez lire “ce jeu requiert une carte graphique compatible DirectX10″ ou encore “le support des shaders 2.0″.

Certaines personnes n’ont pas envie de changer de carte graphique voir même d’OS pour avoir tout en “high details”.

Certains jeux ne se lancent pas si vous n’avez pas les “prérequis” mais d’autre se lanceront en mode “dégradé”.  Les joueurs peuvent donc s’amuser avec leurs jeux en ayant pleinement conscience qu’ils n’ont pas “tout”.

Mon site est compatible Netscape Navigator 4.0 GOLD

Au final, pourquoi ne pas faire pareil pour le web ? Pourquoi ne pas dire aux utilisateurs “Vous n’aurez pas tout en high detail sur IE. Si vous le voulez utiliser Chrome” ?

Bien sûr la condition est de faire en sorte que le site reste utilisable et que la navigation n’est en rien géné sous IE. En prenant l’analogie avec les jeux vidéos, les jeux restent utilisable et fluide même sur des cartes graphiques moins bonnes !

Un bord arrondis, un petite ombrage bien placé, ces choses ne changent en rien la navigation. Faites donc votre site pour tout les navigateurs et rajoutez plein de CSS3 pour rendre le site plus beau et plus kawaï ;) .


01/02

2010

0 Comment

Les handicapés numériques

Internet fait à présent parti de notre vie. Facebook, Twitter, Msn, les mails, il est de plus en plus rare de recevoir une “carte postale” de voir un album photo qui n’est pas en ligne ou encore de chercher dans un annuaire papier un numéro de téléphone. Pourtant le développement d’internet a des avantages mais aussi beaucoup d’inconvénient.

Un monde qui s’adapte à la vie numérique mais un monde numérique qui ne s’adapte pas toujours a la vie des gens.

Internet a clairement changé notre mode de fonctionnement pour nous simplifier la vie, mais qu’en est-il des personnes qui ne peuvent pas s’adapter au monde numérique ?

Je vous vois venir “ils ont qu’a s’adapter !”. On a souvent l’image d’octogénaire qui vont encore a la banque pour savoir combien de sous ils ont sur leurs comptes alors que 3 clics sur Internet nous permettent de le savoir. Ils n’encombreraient pas les fils d’attentes ! Sans compter qu’en plus, ils veulent papoter !

Vous seriez très surpris de voir que dans le cadre d’un projet que j’ai eu l’occasion d’entrevoir au centre de recherche où je travaille, de nombreux octogénaires n’ont aucun problème avec l’outil informatique. Ils se sentent même d’ailleurs frustré d’avoir des interfaces “restreinte” car au final, ils se considèrent comme des utilisateurs normaux.

L’image du 3ème age complètement largués par l’outil informatique est ARCHI FAUSSE.

Qui demain risque d’être un handicapé de la vie numérique ?

Vous, moi, n’importe qui !

Beaucoup de choses peuvent impacter notre capacité a utiliser les outils informatiques.

  • Problème de coordination (Parkinson)
  • Problème de vision (Mal voyant/Aveugle)
  • Problème cognitif  ou perte de mémoire

On se rend vite compte que d’ici 30 a 40 ans, ces problèmes n’auront pas disparu pourtant l’utilisation d’Internet sera encore plus présente d’ici là. Et dans 40 ans c’est nous qui auront peut être des soucis de cet ordre.

Lire la suite »


18/12

2009

0 Comment

Comment réutiliser son propre code (et ne pas réinventer la roue) ?

Cela fait bientôt… longtemps que je dev :) . Ouh là ! Bien plus de 10 ans ! Je prend un coup de vieux là d’un coup mais fort est de constaté que ma mentalité a pas mal évolué avec le temps.

J’ai envie aujourd’hui de vous faire partager un certain nombre de choses dont je me rend compte en même temps que je commence a perdre mes cheuveux :-) .

La réutilisabilité.

Ahhh la jeunesse, la fac ! Quel nostalgie !

Je me souviens a chaque fois que j’avais une idée d’amélioration dans un programme, je reprogrammais TOUT. Repartir d’un projet vide et tout refaire pour atteindre le code “ultime”, celui qui sera maintenable et rapide à la fois.

Mais voilà… en prenant de l’age. Il n’y a plus maman pour faire les courses, la vaisselle, la lessive et du coup il y a forcément moins de temps pour dev. Alors forcément, si j’ai quelque chose qui marche, j’ai pas très envie de réinventer la roue (surtout carré). Lire la suite »


27/11

2009

0 Comment

Scrutator V3 arrive

Scrutator ? C’est quoi ?

A la base, c’était juste un petit bot irc qui surveillait le chan #funradio pour savoir ce que disait mes potes, histoire de ne pas perdre un seul lien “croustillant”.

Mais voilà… il a pris de l’ampleur, multi chan, multi serv (la V2) et la CATASTROPHE. Bots sur plusieurs machines qui communique pas trop entre eux. Ils partent pas des chans, mise à jour difficile, et quand il y a un bug, PATATRAC, ils l’ont tous !!!

J’ai donc ressortis il y a un an et demi, une idée que j’avais eu chez Linbox/Mandriva lors de mon stage. Faire un “agent” a qui l’on donne des ordres et qui, si il n’a pas le code pour l’executer, le télécharge a la volée. Une sorte d’import “on the fly”.

Voilà ! J’y suis ! Il est terminé http://github.com/xblaster/scrutator.

J’ai enfin mon système de robot qui peut se mettre à jour a la volée basé sur python twisted. Les premiers tests sont très concluant. Je commence a implementer le protocole IRC puis viendra surement Twitter, Facebook et autre.

Certains de mes amis pensent que c’est possiblement Skynet car à terme j’aimerais que tout soit décentralisé. Que les bots s’échangent le code directement entre eux avec un système de confiance par clé GPG :-) . Une sorte de réseau de surveillance incassable. Dans la pratique ça serait possible… il me manque juste encore du temps.

Si vous voulez m’aider, n’hésitez pas à me contacter et à forker mon git ;)


04/11

2009

0 Comment

Une petite application de reconnaissance de formes en Java Web Start

Voilà le résultat de quelques petits tests que j’ai effectué.

neural_ocr

Ceci est un petit java web start où on apprend à une application a quoi ressemble des pommes, des poires des maisons (ou autre) en les dessinant.

Après 3 ou 4 symboles de chaque, vous pouvez lui demander de deviner ce que vous avez dessiné en lui proposant un nouveau dessin.

Enjoy :) .

Derrière, rien de bien miraculeux, juste un petit réseau de neurones très basiques au final…


29/10

2009

2 Comments

Une Intelligence Artificielle peut-elle devenir raciste ?

Une partie de mon nouveau travail consiste à réfléchir et à mettre en place des systèmes pour faciliter le traitement des données. Réseaux de neurones, systèmes expert, statistiques, etc.

C’est un monde merveilleux :-) . Je dessine un “1″ et l’ordinateur trouve tout seul grâce a son apprentissage que j’ai bien dessiné un… et bien oui, haha… un “1″. INCROYABLE ! Mais comment a t-il trouvé cela ? Parce qu’il s’est basé sur un jeu de test.

En fait toute intelligence artificielle repose plus ou moins sur une base de connaissance ou une modélisation plus ou moins humaine de la problématique.

Mise en place d’un système prédictif

Imaginons que je veuille avoir un système prédictif sur le potentiel d’une personne a commettre un délit aux États-Unis. Mon intelligence artificielle va se basé sur l’historique, sur un jeu de test existant pour apprendre. L’IA va s’adapter et va très vite se rendre compte que statistiquement, quand on est noir on arrive plus souvent en prison. Résultat ? L’IA va peut être dire (et cela serait presque légitime) que lorsqu’on est noir, on a plus de chance de commettre un délit et d’aller en prison.

Au final ce n’est pas parce qu’il est noir ou parce qu’il a vécu dans une banlieue qu’il est devenu criminel mais c’est surtout par son vécu, ses parents, ses amis… mais cela n’est pas modélisable.

Lire la suite »


20/10

2009

0 Comment

Un moteur physique avec des canvas grâce à GWT

Chose promise… chose promise !!!

Je viens de faire un petit “proof of concept”.

Qu’est-ce qui est plus difficile que de faire un petit moteur 2D en full javascript/canvas ?
Un petit moteur 2D en full javascript/canvas avec un moteur physique !

jbox2d_in_gwt

Il n’y a aucune bidouille et le rendu est entièrement fait par votre navigateur préféré. Je note qu’a part Google Chrome, les autres s’en sortent assez rapidement très très mal.

Pour la réalisation, j’ai tout simplement intégré JBox2D dans un module GWT.

Il faut être clair c’est rapidement “TRES LENT” et soumis a encore quelques petits glitches, cependant cela montre que “c’est possible” sans trop se prendre la tête.

Pour ceux qui sont intéressés, je pourrais fournir le code source.

Edit:

Un 2eme exemple avec “spawn” des caisses avec la souris.


14/09

2009

0 Comment

La mort annoncée de Flash

Quand Flash est arrivé sur le marché, il répondait à un besoin. Faire des petits films/jeux/videos.

Alors qu’il est actuellement partout et quasi incontournable pourquoi je prédis sa mort d’ici quelques années ?

Flash, un plug-in non standard

Flash 4,5, MX, 9. Action scripts 1, 2 et 3. Il y a un peu de quoi se perdre surtout si par dessus tout cela on rajoute encore un “flex”.

Flash a beaucoup évolué et malheureusement, les développeurs ont eu un peu de mal a suivre et les utilisateurs aussi. Les évolutions successives ont obligé les utilisateurs a devoir mettre a jour Flash et cela n’a pas toujours été possible (on pense au plug-in flash linux qui a eu du mal a venir).

La plupart de ces problèmes ont été résolu a ce jour mais Flash commence a montrer des premiers signes de faiblesse face à la concurrence.

Le concurent: HTML5

HTML5 arrive avec beaucoup de nouveauté et la plus importante a déjà fait l’occasion d’un article de ma part, la balise <canvas>.

Cette balise permet tout simplement de “dessiner”. Dessiner quoi ? J’ai envie de dire “tout” ! :) . Pourquoi continuer a utiliser une technologie qui nécessite un plug-in et un langage particulier alors que le navigateur est apte a le faire nativement ? Il suffit de jeter un œil sur chromexperiments pour se rendre compte des possibilités à moyen terme.

Pourquoi le basculement ne se fait pas maintenant ?

  1. Les moteurs JavaScript des vieux navigateurs ne tiendrons pas la charge
  2. Le JavaScript est un langage qui est fait pour du simple scripting et sa syntaxe n’est pas très adapté a faire de l’objet par exemple.

Lire la suite »


29/07

2009

2 Comments

GIT n’est pas magique !

Après un article qui explique “pourquoi GIT c’est mieux que SVN ?“, j’ai jugé qu’il pouvait être intéressant de faire un petit retour sur mon expérience et d’expliquer les bonnes ou mauvaises pratique autour de ce merveilleux logiciel de versionning.

Pourquoi GIT n’est pas magique ?

Certaines personnes pensent que GIT est “magique”. Il permet de merger mieux que SVN c’est donc l’occasion de faire plein de fork ? GIT permet de décentraliser, est-ce une bonne idée de le garder centraliser ? Autant de bonnes questions auquel il est important de répondre.

Comment savoir si vous utilisez mal git ?

  • Vous avez plus de 20 branches en cours de développement sur votre serveur GIT
  • Votre serveur GIT est centralisé et tout le monde utilise ce même serveur
  • Tout le monde a le droit de push
  • Aucune personne n’est en charge des merges
  • Vous n’avez pas l’habitude de signer.

Si vous vous reconnaissez dans un ou plusieurs de ces choix, il faut revoir votre politique de développement :) .

Lire la suite »


26/07

2009

0 Comment

Petite mise à jour

Petite mise à jour du site web avec une photo retouchée de Pauline dispo sur mon flickr.

sky

Lire la suite »



Exponential Fault is proudly powered by WordPress
Entries (RSS) and Comments (RSS). Theme by Jérôme Wax
Contact