theClimber

To content | To menu | To search

Tag - internet

Entries feed - Comments feed

Tuesday, October 13 2009

Utilisez bazaar avec Launchpad avec un workflow décentralisé

Mais c'est quoi ce bazar? me direz vous ... :) eh oui, vous ne le connaissez peut-être pas tous, mais Bazaar est un système de gestion de version libre et sponsorisé par Canonical Ltd. C'est un peu comme CVS, Subversion ou Git, mais en différent. Je ne peux malheureusement pas vous faire une comparaison objective de tous les systèmes de versionning n'ayant pas encore eu l'occasion de les utiliser tous à leurs capacités maximales. Mais aujourd'hui je découvre bazaar et je trouve qu'il a pas mal d'attouts. Tout d'abord, il faut dire qu'il appartient à la catégorie des systèmes de gestion de version décentralisée, ainsi chaque copie de travail est un dépôt complet et celui-ci contient tout l'historique. Ceci permet donc une gestion plus facile qu'avec d'autres tel que Subversion (par exemple) qui nécessite l'utilisation d'un serveur central.

Les développements de bazaar se focalisent sur la facilité d'utilisation et la flexibilité. Bazaar repose donc sur un jeu de commande très restreint. Il est aussi possible de l'utiliser avec différents schémas de développements (chaque développeur dispose de sa propre branche, les développeurs disposent d'un dépôt commun, …). Bazaar est développé dans le langage Python. Il existe déjà plusieurs outils qui permettent une utilisation aisée de Bazaar, n'hésitez pas à vous renseigner sur leur site pour en savoir plus.

Etant donné que je me suis inscrit sur le Launchpad et que j'ai décidé de voir ce qu'il avait dans le ventre je me suis donc mis à utiliser Bazaar et à le tester. Voici donc un petit tutorial que j'ai écrit pour ne pas oublier comment s'y prendre par rapport au workflow choisi pour mon projet. En espérant qu'il puisse aussi servir à d'autres. Et peut-être qu'avec mon expérience et mon utilisation plus fréquente de Bazaar j'adapterais et j'améliorerais ce workflow.

Continue reading...

Monday, September 28 2009

Setup i18n gettext in your PHP application

What is gettext and why use it?

i18n.jpg

gettext is the GNU internationalization and localization (i18n) library. It is commonly used for writing multilingual programs. It has an implementation in a lot of different languages and it's also commonly used in PHP applications.

But what does you mean by internationalisation? Actually, when you write computer code you are also going to write into your code some sentences which will be prompted to the used who is running the application. Those sentences are always written in a language of your choice. But what if that person doesn't understand that language.

The first reaction to solve this problem would be to say : "Ok, but I'm gonna make another version of the code in an other language. I'll translate all those sentences so that my application could be used by other people". And we agree, this is indeed the first solution we get. But this is not optimal since you decide to modify your intial app, you'll have to modify all the translated app too and this is not an issue. It's totally broken to work like this because it imply an enormous quantity of duplicated code and a big amount of work !

That's the moment when gettext came and solved all your problems ! Indeed, the gettext solution proposes te replace all those strings with a call to a gettext function with your sentence as parameter. This function check the chosen language and if it knows a translation of the sentence in that language, it returns the translated sentence, otherwise it returns the initial sentence.

Continue reading...

Wednesday, June 17 2009

Trics & Tips : configurer son client ssh

Flash_by_allanced.jpg

Quand vous êtes un utilisateur fréquent de machines distantes, il arrive que ça soit pratique d'optimiser un peu votre client ssh pour ne pas toujours devoir tapper une ligne de commande hyper longue, juste pour se connecter à un serveur. Si vous utilisez votre client ssh comme le commun des mortels, voici la ligne de commande que vous utilisez d'habitude :

login@hote:~> ssh login@server.domain.extension
Password:
login@server:~>

Et je vous propose d'obtenir après quelques manips :

login@hote:~> ssh server
login@server:~>

Ce qui est déjà nettement plus court, admettez-le ;)

Continue reading...

Wednesday, June 3 2009

En vrac quelques liens

Thursday, May 28 2009

Le mail du futur releasé par Google !

io2009.png

Je viens de sortir de la salle de conférence et tout le monde en parle, aujourd'hui Google a présenté au monde une technologie qui risque bien de révolutionner la manière dont nous utilisons internet tous les jours de manière assez révolutionnaire. En effet, je suis actuellement en Californie à San Francisco pour la conférence internationale du Google I/O. C'est une conférence organisée par Google.

Hier au keynote Google nous en avait déjà mis plein la figure en offrant à tous les participants de la conférence un HTC Magic Android (Google-Phone) gratuiement ... sachant que nous sommes environ 4000 ici, c'était déjà un gros cadeau !

Aujourd'hui au keynote, Google a présenté son nouveau produit révolutionaire : Google Wave

google_wave_logo.png wave_logo.png

Ici je ne parle pas d'un service google comme un autre. En effet, ici il s'agit vraiment d'un produit qui va avoir de grande implications au niveau du web. voyons d'abord de quoi il s'agit.

Google Wave est un service qui a pour but de revoir notre manière de communiquer avec le mail. En gros c'est un nouvel outil qui permet de communiquer par mail, rédiger des documents de manière collaborative, partager des infos, partager des photos, des documents, et tout ça en temps réel. Ces mails peuvent aussi être traduits en temps réels (tout en étant envoyés en temps réel).

Bref, un principe en temps réel. De plus, inutile d'envoyer des mails, de les forwarder, d'avoir de la duplication de code dans tous les sens, ici ça fonctionne comme une chambre de discussion ou tout le monde a accès au contenu, peut le modifier et l'adapter.

Tout ça est évidement complètement basé sur les fonctionnalités de streaming de l'HTML 5 qui permet de faire toutes ces choses assez terrible. C'est aussi basé sur le protocole XMPP qui permet de partager l'info en stream vers plusieurs serveurs en même temps de manière optimale.

ss1.gif

Mais vous allez me dire : "oui, mais comme tous les produits google, ça ne marchera qu'avec ceux qui ont aussi un compte google". Et là je vous arrête tout de suite. Ici Google va proposer son protocole de manière OpenSource ... tout le monde pourra implémenter son serveur wave chez lui. Au même titre qu'on pouvait avoir un serveur IMAP ou SMTP chez soi avant.

De la même manière, les personnes utilisant encore l'ancien système de mails resteront compatibles avec le wave, ils n'auront juste pas accès à toutes les fonctionnalités proposées par ce nouveau protocole.

J'ai évidement un peu de mal à vous partager mon enthousiasme car la démo a duré 2 heures et pendant 2 heures je suis resté sur mon cul de toutes les fonctionnalités qui ont été présentées. Pour bien comprendre à quel point c'est révolutionnaire il faudrait pouvoir vous montrer une démo. Peut-être que la keynote du Google IO sera disponible sur youtube bientôt, je viendrais mettre à jour mon billet si je la trouve. Pour le moment la keynote de hier est on-line donc celle d'aujourd'hui le sera très prochainement à la même adresse.

La release du code n'est pour le moment pas publique car c'est encore en beta et Google le réserve en prémium aux participants de la conférence du Google IO afin d'avoir des beta testeurs (on est quand même 4000 développeurs, donc ça leur fait déjà un bon set de testeurs). Mais la release publique arrivera bientôt je l'espère. En tout cas Google nous promet de proposer ce protocole en Open Source. De toute façon, si Google veut que ça marche, il n'a pas le choix. Si on veut pouvoir utiliser ce protocole à grande échelle c'est la seule manière de s'y prendre.

Donc voilà, rendez-vous dans 6 mois / 1 an pour la release publique... en attendant je m'en vais tester ce nouveau protocole révolutionnaire avec mes collègues du bureau ... je sens que ça va être assez terrible.

Mise à jour :

La vidéo du keynote de ce matin :

D'autres sources :

Monday, April 6 2009

Arrêtez de spammer vos amis avec vos tests

email11.jpg

C'est chaque fois un peu ennuyant d'envoyer des email à ses amis ou des clients pour tester une applications web n'est-ce pas?

Pour éviter ça, vous pouvez changer d'application mail ou modifier votre configuration postfix, mais c'est lourd en manipulation et pas toujours évident pour tout le monde. De plus, je viens de trouver une solution bien plus simple et facile :

python -m smtpd -n -c DebuggingServer localhost:2525

Et désormais tous les mails envoyés en local seront affichés dans le terminal (si vous utilisez un port plus petit que 1024, vous devez être root)

Bref, une solution bien pratique pour faire des tests avec votre application web et voir si les mails sont bien envoyés là où il faut !

Bon développement !

Tuesday, February 24 2009

Gmail est mort : panique à bord

gmailnew.PNG

Comme quoi, même les sociétés ayant pignon sur rue peuvent encore avoir parfois des petit soucis. C'est ainsi qu'aujourd'hui, depuis 11h ce matin, le fameux service de mail de la société Google est victime d'un crash qui n'est visiblement pas bénin (sinon déjà corrigé je pense). Beaucoup de gens réagissent, sur twitter ça part dans tous les sens, sur identi.ca c'est pareil et sur facebook, après avoir mis dans mon statut que gmail était mort, je me retrouve avec plein de commentaires de réactions.

Continue reading...

Tuesday, February 17 2009

How to create a SSH tunnel

First of all, this is a small memo for me because I'll need to use this quite often the next weeks. So if it can be usefull for others, I post it here ;)

openssh.gif

  • I want to access to a private port on a remote host. This port will be mapped on a local port with the tunnel.
  • After creating the tunnel, the service will be accessible on the port localhost:LocalPort
  • All the communications will pass trough the SSH connection (so it will be ssl-encrypted)
ssh -f -N -L LocalPort:RemoteHost:RemotePort Login@RemoteHost
  • -f is to hide the session
  • -N and -L are there for the tunnel

Sunday, February 15 2009

Installer NS-2 sur Mac OS X

NS-2 (Network Simulator) est un environnement de simulation réseau très réputé et très utilisé dans le monde de la recherche. Ici j'explique en quelques mots comment recompiler et mettre en place NS-2 sur un ordinateur Mac-Intel tournant sous Mac OS X. J'explique comment recompiler la dernière version de NS-2.

Une version de NS-2 est disponible dans les dépôts de MacPort (anciennement appelé DarwinPort), cependant c'est une ancienne version est la compilation n'est pas spécialement évidente. En effet, moi j'ai eu des erreurs de compilation et je n'ai pas pu l'installer via cette méthode ci.

Cependant, si vous ne souhaitez pas nécessairement utiliser la dernière version en date de NS-2 il existe une version pré-compilée de NS-2 disponible sur le wiki officiel (Version dmg disponible ici).

Continue reading...

Thursday, January 29 2009

Un concours pour améliorer Mozilla

design_challenge_logo.gif

La Fondation Mozilla a lancé mardi dernier le Design Challenge, premier événement de toute une série de concours lancés dans le cadre des "Mozilla Concept Lab Series".

Pour qui ? Pour quoi ? La Fondation vise les "étudiants du monde entier spécialisés dans la conception". Ils sont invités "à développer et présenter de nouvelles idées et prototypes pour le Web de demain." Rien que ça. Les détails vous attendent sur le blog des laboratoires de Mozilla. Je trouve l'initiative super et je pense sincèrement qu'on peut se retrouver avec des idées très originales et peut-être des nouveaux concepts de navigation si des jeunes n'ont pas peur de proposer leurs idées !! En d'autres mots, je suis curieux du résultat !

Continue reading...

- page 1 of 4