Bug me not !

BugJe n’en peux plus de ces sites qui vous demandent de vous inscrire à tout bout de champ sans raison si ce n’est de constituer une base de données et vous proposer par la suite quelques produits pour enlarge une partie de votre corps. Parfois juste pour télécharger un fichier – spéciale dédicace à Oracle et aux sites affiliés MySQL, etc. – il faut rentrer ses coordonnées, son âge ou ses mensurations.

Alors bien sûr j’ai une boite mail poubelle, je peux créer un faux compte, rentrer de fausses informations, attendre de recevoir le mail de confirmation, activer mon compte pour enfin pouvoir accéder au téléchargement tant attendu. Mais je perds mon temps et le site en question aussi car les informations qu’il récupère ne lui serviront absolument à rien. D’ailleurs je serais curieux de voir les bases de données ainsi constituées…

Pour éviter à tout le monde de perdre son temps il y a bugmenot.com un site qui propose les identifiants de comptes « poubelle » déjà activés et tout et tout. Yeah !

[picto]

4095

binaireNous sommes le 11/11/11 il est 11:11:11 !!

C’est la dernière date binaire avant un peu moins d’un siècle.

[picto]

Heaver-it : un backlog virtuel en JQuery

The Proclaimers - Sunshine on LeithNon ce blog n’est pas complètement à l’abandon. Il est juste moins prioritaire que pas mal d’autres trucs ces temps-ci.

J’ai quand même pris le temps d’apprendre un peu plus à utiliser JQuery. J’en ai profité pour réaliser Heaver-it un petit gestionnaire de Post-it® virtuel en JQuery et PHP.

Post-it® étant une marque déposée et n’ayant pas envie de me prendre un procès, j’emploierai le terme de note dans la suite de l’article.

CE QUE JE VEUX
L’idée donc est de pouvoir gérer le backlog d’un projet AGILE au format électronique (Parce que je trouve que les notes adhésive en papier c’est pas Green IT).
Les données doivent pouvoir être sauvegardées dans le dépôt SVN, GIT ou autre. Ce qui facilite la gestion de projet à distance par exemple.

Une version démo est accessible là : DEMO !

TECHNIQUEMENT PARLANT
Heaver-it est réalisé en JQuery, JQuery UI et utilise PHP pour la sauvegarde des données. Les données sont sauvegardées au format JSON.
Je ne suis pas super satisfait de l’utilisation du PHP car ça oblige à avoir un serveur PHP mais je ne voyais comment faire la sauvegarde autrement. Si Dr Benton passe par là il me dira peut-être d’utiliser Node.js.

PLUS EN DETAIL
Le code est assez simple et je ne présenterai ici que quelques astuces qui m’ont paru intéressantes durant la réalisation. Ça pourra servir à d’autres ou à mon « moi futur » .

ONE PLUGIN TO RULE THEM ALL
Pour chaque transformer une div en une note virtuelle il faut appliquer un certain nombre de plugins. J’ai donc créé un plugin qui regroupe tous les autres.
Le plugin s’appelle comme ça

<script>
$(function() {
$('#mydiv').taskify();
});
</script>

Il permet d’appliquer à « mydiv » en un ligne les plugins click, draggable et editable nécessaire pour en faire une note virtuelle. Yeah !

ONE PLUGIN TO BIND THEM
Lorsqu’on modifie quelque chose sur le backlog le bouton de sauvegarde prend en compte qu’il y a eu une modification. Pour réaliser cela j’ai utilisé la gestion d’évènements de JQuery.
Venant du monde Java ce fonctionnement m’a beaucoup rappelé le système des ActionListener.

J’ajoute donc au bouton « Save » la classe actionlistener.

<a href="#" class="actionlistener">Save</a>

Je définis ce que doit faire le bouton « Save » lorsqu’il y a une modification. Dans mon cas le texte change et devient « Save Now ».

$<span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; line-height: 19px; white-space: normal;">( "#save" ).bind("modification", function () { $( "#save span" ).html("Save Now"); });[/</span>javascript]</pre>
Il n'y a plus qu'à déclencher l'événement "modification" sur tous les éléments implémentant la classe "actionlistener" pour chaque action modifiant le backlog.

1$<span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; line-height: 19px; white-space: normal;">( ".actionlistener" ).trigger("modification");

Le fonctionnement est le même pour la gestion des plans. Lorsqu’on clique sur une note, un événement est déclenché informant toutes les notes que la note du plan N passe au premier plan.

$(".task").trigger("putTaskOnTop", [$$.css('zIndex')]);

Toutes les notes sont informées du déclenchement. Celle par qui l’événement a été déclenché passe au premier plan. Les notes qui se trouvent sur les plans supérieurs descendent d’un cran.

// Puts task on top
 $$.bind("putTaskOnTop", function(event, zIndex) {
 // Lows tasks currently on higher levels
 if (zIndex < $$.css('zIndex')) {
 $$.css({
 zIndex: $$.css('zIndex') - 1
 });
 }
 // Puts the one task on top
 else if (zIndex == $$.css('zIndex')) {
 $$.css({
 zIndex: $(".task").length - 1
 });
 }
 });

ONE PLUGIN TO BRING THEM ALL AND IN GITHUB SHARE THEM
Heaver-it est disponible sous licence GPL. Tout est publié sur GitHub ici.

CONCLUSION
Voilà ma première publication Open Source. Mon premier plugin JQuery. C’est ma Maman qui va être fière de son fiston.

Pour réaliser cet article et le plugin taskify, je me suis pas mal inspiré d’un article Jay Salvat sur la conception de plugin JQuery.

[picto]

Note de service

Clé anglaiseJe viens de corriger un bug : on ne pouvait plus voir les applications générées en ligne. Voilà c’est reparti.
En passant j’en profite pour vous dire que je bosse toujours sur la prochaine version du K-MetaModule et que ça devrait sortir dans pas longtemps.

[picto]

Déménagement

Après moult tergiversations ce blog change d’adresse. Mettez à jour vos bookmarks comme on dit. Le K-MetaModule a désormais un vrai nom de domaine à lui, avec une nouvelle home dont je reparlerai sûrement dans quelques temps.

Nouvelle adresse du : blog.k-metamodule.com.

Si vous utilisez feedburner aucune modification à faire sinon il n’est jamais trop tard pour bien faire : http://feeds.feedburner.com/k-metamodule.

[photo]

Mon test d’Opera Unite

Salut tout le monde !

Je suis pas mal pris en ce moment. Je me demande si « en ce moment » n’est pas de trop d’ailleurs… mais bon je ne pouvais rester muet aujourd’hui car je viens de tester Opera Unite !!

On croyait qu’on avait tout vu en matière de navigateur Web depuis Firefox mais Opera Unite introduit de nombreux services inédits. Si la mayonnaise prend, on pourrait même assister à une petite révolution. Le principe de base est de transformer votre navigateur en serveur. La communication n’est alors plus unidirectionnelle mais bidirectionnelle. Mais les vidéos de présentation expliquent cela très bien.

Image de prévisualisation YouTube

Image de prévisualisation YouTube

Au niveau des services déjà disponibles dans la version 10.00 Beta on trouve :

  • Un service de partage de photo qui permet de… bah partager des photos ;

  • Un service de partage de fichiers pour… non là je vois pas ;

  • Un média player pour partager vos compositions musicales ;

  • Un serveur web sur lequel on ne peut héberger qu’un site statique d’après ce que j’ai compris. Cependant j’ai lu dans les commentaires que certains ont réussi a faire tourner du ruby dessus.

  • Une chat room pour communiquer avec Tata Martine.

  • Un frigo… oui mais juste pour coller des post-it dessus, pas pour stocker des bières.

Tout ça disponible sur votre machine ! Ainsi vos amis, votre famille ou le monde entier pourront accéder tous ces services… si votre machine est allumée et connectée avec Opera lancée. Vous pouvez voir ma page Opera Unite ici (quand je suis connecté bien sûr ;) )

Alors à votre avis révolution ou flop ? L’avenir nous le dira mais Opera Unite est ouvert aux développeurs et pourrait donc rapidement voir arriver de nouveaux services innovants. Et dire qu’il y en a qui sont encore sous IE 6.

Et pour finir petite dédicace Christine A. et Nadine M. avec le service de partage de fichiers et le Media Player… ah ah !

Gloubi-boulga de blogs #3

Bon allez cette fois je m’y met. J’ai maintes et maintes fois repoussé. Ça y est il est temps, grand temps, des rires et des chants.

C’est le gloubi-boulga de blogs !

Il s’est passé tellement de trucs depuis le dernier que certaines news sont plutôt des olds… hu hu !

On commence avec Internet Explorer 8, parce que si vous n’êtes pas encore au courant (coma de longue durée ou autre…). Microsoft nous ressort son navigateur à grand renfort de marketing et de pizza… j’ai dit pizza ? Oui j’ai bien dit pizza.
Mais alors quoi de neuf ? A la lecture du test de Jay Salvat et de la terrible semaine passé par Stephen Shankland, je ne vais pas me précipiter. Allez-y les gars passez devant je vous rejoins… ou pas…


A moins de faire du vaudou pour bannir à tout jamais IE 6 d’Internet, il va donc désormais falloir tester son site sous IE 6, 7 et 8… On est pas sorti de la berge. Il existe heureusement quelques solutions pour nous simplifier la vie. Voici 7 façons de tester votre site sur tous les navigateurs.

Je parlais ici des nouvelles balises video et canvas. Voici une nouvelle démo de ce qu’on peut faire avec. C’est rigolo mais pour l’instant je vois pas à quoi ça peut servir. A part pour présenter la météo sur Internet… Sébastien Folin si tu m’entends…

Sur travailleur du web un post qui date un peu mais qui n’a pas vieilli : Qu’est ce qui fait un bon développeur ? Ça m’inspire pas mal pour un prochain billet : Qu’est ce qu’un bon générateur de code ?

A lire aussi, une étude intéressante sur les formulaires d’inscription sur Web Design Tuts.

Le monde est petit il parait mais des fois ça donne un peu le tournis quand même et quand tout le monde s’y met c’est super puissant. C’est beau Internet ! Un moyen de réunir les gens. Une grande communauté sans frontière. Et d’autre l’utilisent pour se foutre sur la gueule. Arf !

Et puisque vous avez été sages un test de jeu vidéo qui m’a bien fait rire. Voici chez Korben le jeu vidéo de l’année : Bigs Rigs Racing !

Bon allez j’en garde pour la prochaine fois.

Mon test d’Aptana Cloud

Aptana Cloud n’est pas un IDE en ligne à la Bespin. Aptana est bien un client lourd type Eclipse dont il est issu d’ailleurs. Il apporte cependant quelques réponses aux problèmes que nous rencontrons quotidiennement lors de nos développement et que je vais essayer de détailler ici. Pour ce test j’ai utilisé la version d’essai gratuite d’Aptana Cloud, les versions payantes proposent peut-être plus de fonctionnalités. La première offre payante est à 20$/mois.

1- Premièrement une solution d’hébergement de votre site
Aptana vous propose d’héberger votre site qu’il soit en PHP, Java, Python, Coldfusion ou encore Rails sur un serveur Apache associé à une base de données MySQL. Pour chaque projet, Aptana créera en fait 3 sites : un site de développement, un site de pré-production et un site public. 3 sites donc mais une et une seule base de données. Il serait peut-être préférable d’en avoir plusieurs… peut-être disponible dans une version payante ?
Plus qu’un simple hébergement la solution permet par exemple de redémarrer MySQL, impossible sur un hébergement mutualisé classique.

2- Une palette d’outils d’aide au développement
Aptana Cloud ajoute à cet hébergement, un grand nombre d’outils d’aide au développement configurés et disponibles instantanément.

  • Subversion avec gestion de comptes
  • SSH
  • SFTP
  • et serveur mail

En conclusion Aptana Cloud simplifie la vie du développeur en lui offrant les outils classiques d’aide au développement en ligne et immédiatement disponibles.

L’avenir est dans le Cloud

Mozilla avec Bespin n’est pas seul à croire que l’IDE du futur sera dans le Cloud. Lors de leur conférence « Darwin Among the IDEs » jeudi dernier au EclipseCon 2009, Tim Wagner (Microsoft Visual Studio) et Kevin McGuire (IBM) sont allés dans ce sens. Un résumé est disponible ici [en].

« I think that’s a natural evolution, and I think that the Bespin technology is leading the way« , Kevin McGuire

Il y a donc fort à parier que les prochaines versions de Visual Studio et d’Eclipse se tourne vers le Cloud et ils ne seront pas les seuls. Je suis tombé sur 2 autres initiatives du genre.

  • Le projet Enlide mené par une société française actuellement en Beta privé. Je n’y ai pas eu accès mais je suis ça de près.
  • Ecoder un projet OpenSource d’IDE en ligne. (Via JaySlavat et son Twitter)

Parmis les autres évolutions qu’on peut attendre une meilleure gestion du multi-écran. Comment vous n’avez encore qu’un écran ? Mouah ah ah !

Coin… euh… Tweet ! Tweet !

Ouvert il y a un moment puis laissé à l’abandon, j’ai dépoussiéré mon compte Twitter (Ménage de printemps oblige !). J’y posterai au fur et à mesure mes découvertes sur le net.

Alors rejoignez-mon tweet tweet !

 

Images hosting provided by ImageShack Via ImageShack Migration plugin