Categories
Technology

Le combat des DVCS

Mercurial vs Git

Ces derniers temps je vois de plus en plus de billets contenant la chaîne de caractère “git has won” ou “github has won“. Cela m’attriste un peu. Bien sûr il ne faut pas comprendre ici que Mercurial se porte mal. Au contraire. Mercurial c’est cool, simple à utiliser et puissant. Je me demande juste pourquoi tellement de développeurs adoptent la gitattitude.

Concrètement, pour qu’elle raison Git est-il plus tendance que Mercurial? Pour une raison technique? Parce que Linus? Pourquoi pas Guido? Sur un plan technique l’image de ce billet reflète certainement bien les différences. On peut aussi voir Git comme MacGyver et Mercurial comme James Bond.

Personnellement, je pense que Mercurial n’a rien a envier à Git sur le plan technique.
La bataille semble plutôt sociale. Git a le vent en poupe en partie grâce au réseau github et aussi (un peu moins) au réseau gitorious.
Il faut le dire, github est sacrément bien fait comparé à bitbucket. github est surtout plus rapide. L’aspect communautaire est aussi mieux pensé. Sur bitbucket il n’est même pas possible de mettre des tags sur un projet ou de rechercher par licence.

J’aimerai beaucoup que bitbucket utilise la même licence que gitorious. Une licence AGPL.

Finalement on se trompe peut être de combat. Il s’agit plutôt d’un combat de services d’hébergement de code source.

Il ne faut pas oublier que le code est roi. L’important reste toujours de développer ces logiciels ouvertement. Qu’il s’agit d’un dépôt Mercurial ou Git, le dépôt doit être ouvert et le code doit être sous licence libre. Et le service Web de préférence doit utiliser une licence libre, comme le fait gitorious.

Je me suis récemment ouvert un compte github et gitorious. Je vais me servir de ces comptes pour tester le plug-in Mercurial Hg-Git.

P.S.: si vous avez un argument technique de poids je suis preneur, merci.

Categories
Steganography Technology

Simple Art of Steganography

J’ai reçu il y a quelques jours de Vincent le mail ci-dessous.

----------  Message transmis  ----------
Sujet : Simple Art of Steganography
Date : jeudi 21 octobre 2010
De : ***
À : ***

(1) Download and open "hug me.jpg" , it is a simple jpg picture, representing
my Teddy bear hugging ...;  rename the extension of this file to MP3, so you'll
have "hug me.mp3" , you used to think that it wont work if you simply change
the extension of a file? well you were wrong ! try it, open it [ i used
WINAMP].

can u hear it? can you hear the picture file?!  again change the file extension
to JPG and it is still a pictre file .

(2) Download and open "veronamania.jpg",  change the file extension to RAR, so
you will have "veronamania.rar",  use WinRAR [or other RAR handlers]  to
extract this file and see the other JPG file inside !

well it is called "steganography", refere to link below for complete
definition:
http://www.garykessler.net/library/steganography.html

http://en.wikipedia.org/wiki/Steganography
-------------------------------------------------------

Je vais donc lui (par la même occasion, vous) répondre. Donc je pense qu’il n’y a rien de bien compliqué. Il s’agit de la technique qui consiste à concaténer un fichier (image, musique, etc.) à une archive. Test:

$ zip test.zip test.txt $ cat Stop_And_Stare.ogg test.zip > Stop_And_Stare-1.ogg

Vous pourrez toujours écouter votre musique. En renommant l’extension vous retrouverez le fichier texte. En gros, c’est du au fait que votre logiciel se contente d’interpréter les données qu’il attend (tar/zip décodent les données compressées). Je préfère de loin les méthodes évoquées précédemment sur ce blog. Elles sont plus marrantes et n’agrandissent pas la taille du fichier.

§

Tout autre chose, les archives de pyAggr3g470r présentent maintenant mieux les articles. Évidemment on peut toujours exporter en fichier brut.

Categories
Technology

Le MacBook va disparaître

D’un côté c’est une très bonne nouvelle. D’un autre il sera remplacé en quelque sortes par l’iPad avec le même principe de Market que l’iPhone.

Tout ce qui se passe en ce moment me fait penser à ces anciens (excellents) billets [Tinkerer’s Sunset, In pursuit of root]. D’ici peu le compte administrateur n’existera plus sur les ordinateurs Mac. Je sentais cela arriver depuis un moment (on peut comparer par exemple la méthode pour installer une application non présente sur le Market entre Android et l’iPhone).

Aujourd’hui, je suis convaincu de la vérité de ces propos (même si pour le moment Apple ne bloquera pas d’autres sources que le Market pour le MacBook, pour le moment). Que pourra-t-on encore faire avec ce genre d’ordinateur?

Le hacker sous Mac va donc disparaître. Vos enfants n’auront plus le plaisir de démonter la machine familiale 😉 En tout cas pas avec un produit Apple. Nous devons être une des dernières générations à avoir eu cette chance

Ce qui me chiffone. Comment peut vouloir un iPad? Et pour faire quoi avec? Et surtout c’est quoi de nos jours un MacBook (de même qu’un iPad)?

Pour ne pas faire un billet trop pessimiste, il faut quand même dire qu’il est toujours possible d’installer des logiciels à partir des sources.

Categories
Python Technology

MAS (SMA) et MapReduce

Ces derniers temps je m’intéresse un peu à MapReduce (les personnes ayant le bon goût d’apprécier OCaml connaissent parfaitement le principe;-) ). Lisez ce papier de Google par exemple.

Vous trouverez de nombreuses implémentations. En voici une en Python, mincemeat. Regardez le petit exemple. C’est simple et ça fonctionne remarquablement bien.

Voilà. Donc mincemeat ma donné envie d’utiliser le principe de MapReduce avec la programmation multi-agent. Pour le moment je cherche une manière propre et originale de faire cela. Mais je me demande surtout quel sera l’intérêt réel, puisque mincemint (par exemple) fait cela très bien déjà.

Qu’en pensez vous? Dois-je marier SPADE et le principe MapReduce? J’ai peur de développer quelque chose d’inutilement compliqué (mincemeat c’est 400 lignes de code) et pas forcément plus utile que mincemint.

Je pense que l’avantage en faisant ça proprement serait d’avoir à la fin quelque chose de pus “souple”, plus “puissant” et plus facilement adaptable à différents problèmes. Ça vaut peut être le coup d’essayer…

Et si vous avez des idées/conseils…