theClimber

To content | To menu | To search

Tag - tools

Entries feed - Comments feed

Thursday, October 1 2009

Open your OpenOffice files in MS Office 2003 and 2007 !!

I love OpenOffice.org, and have been using it for years. One of the benefits is the sheer amount of space that one can save when using OpenOffice Writer - the ODT files are much smaller. In an age where hard drives and other storage doesn't limit the size of files as much, it seems I am a dinosaur for even considering the amount of bytes I can save. Still, the more free space I have, the more I can store. Plus, when it comes to sending and receiving documents, the smaller they are the less impact it is on a network. In the grand scheme of things, I think bloated documents are as bad as low bandwidth in some areas.

This benefit of OpenOffice.org is lost when I have to send someone a Microsoft Office format for a text file. It bugs me, and I often forget to wipe the converted files to save space - maybe I am getting old. Thus, when I came across How to open ODT (openoffice.org text) files in Microsoft Word, I was surprised and happy.

Quoting from the original site:

Office 2007

  1. Install Service Pack 1 for Office 2007.
  2. Install Sun ODF Plugin for Microsoft Office.
  3. Open ODT document via File > Open, or by double-clicking the ODT file and when prompted for the application to open it with, choose Word.

If you have Office 2003, installing the Sun ODF Plugin should just work.

If you don’t have administrator privileges to install software, you can try an online converter such as Zamzar or Media Convert. You can also upload ODT documents to Google Docs or Zoho Writer.

Thank you. Now, when I accidentally send a smaller file and am short on time, I can simply point people to that and allow me to stop converting files because Microsoft itself had never supported ODT - an open standard with open source software that they could easily have allowed for to be intercompatible.

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...

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...

Saturday, February 14 2009

Lavoisier : une police OpenSource

J'aime bien découvrir des nouvelles typographies et polices qui sont sympa et chouette à utiliser dans le documents un peu pro. Or je viens de découvrir une nouvelle police Sans-Serif OpenType appellée Laoisier, avec pas mal de characteres, diacritics et autres symboles utiles dans un style que j'aime bien : épuré, petit et simple.

La famille typographique lavoisier est aussi disponible en italique, gras et gras-italique et est sous licence SIL Open Font. Voyez un exemple dans l'image ci-dessous.

Comme c'est libre et open-source, vous pouvez vous-même l'utiliser, l'améliorer et la compléter comme bon vous semble. Les fichiers sources sont disponibles au format FontLab qui n'a par contre pas l'air d'être libre (je ne l'ai jamais utilisé et je ne sais pas s'il tourne sous Unix).

N'hésitez pas à faire un tour sur la page perso du concepteur de cette police pour lui donner un feedback ou des critiques constructives. Vous pourrez aussi trouver les sources sur son site.

lavoisier

Et alors le comble de tout c'est que vous avez même la police en cyrilique si vous voulez !! Je suis sur que ça va intéresser les lecteurs de ce blog ;)

Comment installer des polices sous linux

Ca vous fait une belle jambe d'avoir des fichiers otf si vous ne savez pas les installer sur votre machine. Alors voici un petit mot pour ceux que ça intéresse :

  • Allez dans votre répertoire utilisateur : cd /home/user
  • Créez un répertoire .fonts : mkdir .fonts
  • Copiez vos fichiers .otf dans ce répertoire : cp Desktop/*.otf ~/.fonts/

Et voilà, le tour est joué.

Wednesday, February 11 2009

Ma configuration Vi / Vim / gVim

Ce billet n'apporte pas grand chose au monde, mais juste ma configuration vim du moment qui se trouve dans mon fichier ~/.vimrc (et que vous pouvez aussi mettre dans votre fichier /etc/vim/vimrc. C'est pas grand chose c'est vrai, mais en même temps c'est vraiment pratique d'avoir bien configuré son éditeur de fichier préféré pour optimiser sa vitesse de travail.

vim-editor_logo.png

Si vous avez vous aussi des configurations particulières et perso que vous trouvez bien pratiques et que vous ne retrouver pas ici, n'hésitez pas à m'en faire part dans les commentaires. Autant optimiser au maximum pour avoir une configuration parfaite (même si chacun a ses petites manies, j'en convient ;) )

Continue reading...

Configurer son interface sans fil avec wireless-tools

irkick.png

J'ai constaté sur internet une grosse sur-information en matière de la configuration de votre interface wifi sous linux avec des logiciels divers (network-manager, wicd, ...), mais très peu d'information claire et concise concernant le fond du problème qui est de configurer son interface wifi à la main dans le terminal à l'aide de wireless-tools. En effet, les logiciels que vous utilisez ne sont d'une façade à ce qui se fait dans le terminal. Alors pourquoi ne pas mettre les mains à la pâte et essayer de configurer votre interface vous-même?

Petit rappel

Pour bien comprendre comment ça marche, je me permet de vous rappeler comment fonctionne une interface réseau et comment elle se connecte à un réseau. Il y a plusieurs éléments à tenir en compte. D'abord il faut établir la connexion réseau à proprement parler (connexion par ondes radio dans une fréquence qui varie entre 2 et 2.5 GHz). Ensuite, en fonction que vous souhaitiez établir une connexion ad-hoc ou managée, vous devrez fixer votre adresse IP à la main ou utiliser un serveur DHCP.

Continue reading...

Tuesday, January 13 2009

MEMO : créer plusieurs instances de postgresql sur un serveur

postgresql.png

Je ne dois plus présenter postgresql pour les spécialistes des bases de données. C'est évidement une des solutions largement utilisée sur les serveurs pour gérer les bases de données.

Maintenant le truc c'est que dans le cadre de mon boulot nous allons devoir travailler avec plusieurs bases de données qui seront répliquées sur plusieurs serveurs avec des règles de load_balancing et autres. En d'autres mots, il faut mettre tout ça en place pour que ça marche.

Alors pour pouvoir effectuer des tests je me demandais comment on pouvais lancer plusieurs instances de postgresql sur un même serveur. Je veux dire par là, avoir accès à plusieurs serveurs de base de données sur différents ports de mon localhost. Eh bien figurez vous que c'est archi-simple à créer :

sudo pg_createcluster [options] <version> <cluster_name>

Et voilà le travail. Ca va vous créer un nouveau répertoire dans /etc/postgresql/<version>/<cluster_name> dans lequel vous avez un fichier postgresql.conf qui vous permet de personnaliser ce serveur. Vous pouvez donc stocker les données dans un autre endroit et tout. Voilà donc une manière légère de pouvoir bosser sur plusieurs instances de bases de données sans pour autant risquer de tout foutre en l'air.

Thursday, January 8 2009

Memo : la commande screen

Voici un petit mémo pour moi pour ne plus oublier comment ça marche.

Screen est un petit programme qui permet d'émuler un terminal, rendant possible l'exécution de plusieurs applications terminales full-screen à partir d'une seule instance de terminal. Il vous permet de manipuler et de sauver vos session, votre input et votre output, et même de faire du copy/paste entre plusieurs instances. Pour les détails je vous renvoie bien évidement vers la page de manuel.

screen [options] [command [args] ]

Donc pour faire ce dont j'avais besoin :

  • Créer un screen :
screen -R nomDuScreen
  • Détacher un screen :
CTRL + a + d
  • Récupérer un screen :
screen -R nomDuScreen