Rémy Giard’s blog

“Always program as if the person who will be maintaining your program is a violent psychopath that knows where you live” - M.Golding

Archive for the ‘Software development’


September 13th, 2007

Mes irritants avec Visual Studio

Cet été, j’ai vécu mes deux premières expériences à travailler sur des projets utilisant les technologies .Net. J’ai rencontré plusieurs difficultés et frustrations que j’énumère ici.

Tout d’abord, il est important de mentionner que mon expérience est surtout en Java. Donc, naturellement, je pense en fonction des technologies / architectures / outils Java. Je considère que je maitrise l’outil de développement Eclipse que j’utilise aussi pour les langages Python, Ruby et PHP.

Cela dit, Visual Studio est pour moi un nouvel IDE et à vrai dire, je préfère de loin mon bon vieux Eclipse. Voici une liste de mes points irritants de Visual Studio. La plupart sont des « goodies » qui nous aident à se sentir en contrôle de notre IDE.

  • Il n’existe pas de raccourci pour se déplacer facilement et rapidement à une classe ou une ressource.
  • La gestion des « using » ou « import » en Java est ardu. L’IDE ne détecte pas automatiquement les « using » à faire. En plus, il ne donne pas d’avertissement / erreur pour un « using » non utilisé.
  • Visual Studio n’utilise pas les clés standards (CTRL-PgDown, CTRL-PgUp) des autres applications pour se déplacer d’un tab à un à autre. Il existe une clé pour se déplacer d’un tab à l’autre ?
  • La génération des getters / setters doit être fait champ par champ avec un écran de confirmation à chaque fois pour chacun. Il serait intéressant de pouvoir tous les générer d’un coup.
  • Il n’existe pas de méthode « refactor » pour ajouter un paramètre à une méthode existante et modifier tous les appels existants à cette méthode à spécifiant un valeur par défaut.
  • En ASP.Net, il arrive trop souvent que l’ouverture du fichier .aspx prenne un temps fou. Pendant ce temps, on voit le poste travailler à ….. quoi ?
  • Je déteste l’auto-génération du fichier designer pour un fichier .aspx. Trop souvent, un contrôle ASP.Net ne pas être trouver dans le « code-behind » parce que le designer ne la pas générer. Ceci est supposé arriver seulement quand le fichier .aspx présente une / des erreur(s). Cependant, ces erreurs sont souvent anodines ou transparentes. Évidemment, une erreur est rarement triviale. Mais si au moins il avait un moyen d’avoir une piste sur la nature de l’erreur en question. L’affichage des erreurs dans les fichiers .aspx est très limitée.

Évidemment, cette liste n’est pas exhaustive. Ce sont les points que me viennent rapidement à l’esprit quand je pense aux problèmes que j’ai avec Visual Studio. En compsaraison avec Eclipse, je considère que ces points me ralentissent lors de mon développement d’application, ce qui est à l’inverse de l’objectif d’un IDE.

 

August 8th, 2007

Mon buzz word de la première de Montreal on Rails, Simplicité !

Hier j’ai assisté à la première de Montreal on Rails. À mon avis, ce fût une première réussie. L’évènement a attiré une trentaine de personnes dont plusieurs expérimentant ou travaillant avec Rails régulièrement.

Tout d’abord, j’ai assisté à cette rencontre en cherchant à comprendre et découvrir le pourquoi de l’enthousiasme qu’on peut lire ou entendre de la communauté Ruby on Rails. Préalablement, je me suis documenté sur Ruby et sur Rails pour en comprendre l’architecture mais sans avoir développer d’application.

La démonstration de Marc-André Cournoyer était la première où je pouvais voir un développeur expérimenté à l’oeuvre “live” avec le framework. Et bien, la simplicité de Rails m’a vraiment impressionné. De regarder Marc-André travailler semblait facile, c’était compréhensible pour un non-habitué quoique peut-être un peu rapide. L’outil de développement qu’il, TextMate, semblait complet, avec un interface léger et facilement manipulable à l’aide de raccourcis clavier. L’architecture du framework avait l’air complète et je me sentais aucunement depaysé par tout ce que je voyais. La présentation portait sur ce qui touche les test unitaires dont les “fixtures”. Bref, après la première démonstration, j’étais vraiment content d’être dans la salle.

Par la suite, Carl Mercier a présenté HAML, un outil permettant d’accélérer le développement des fichiers .rhtml / .html. Quoique moins technique, cette présentation demeure intéressante par son contenu. HAML réduit considérablement la taille du code nécessaire pour générer du contenu html en plus d’en faciliter la lecture. À noter qu’il a un impact d’environ de 30% sur la performance lors de la génération du html. Tout de même, HAML demeure prometteur et un outil à en suivre le développement.

Finalement, ce premier réel contact avec la communauté Ruby on Rails m’a charmé par l’enthousiame des gens et l’amour qu’ils ont pour leur framework. En autre, cette enthousiame s’explique par l’élégance du langage Ruby et du framework Rails mais aussi par leur simplicité respective. Évidemment, je serai présent dans un mois et prêt à découvrir de nouvelles facettes de Ruby on Rails. D’ici là, je me promets d’expérimenté Ruby on Rails plus profondément.

June 11th, 2007

Installation/configuration d’un environnement de développement pour Django sur Windows

Voici les étapes que j’ai parcourues pour installer et configurer un environnement Django sur mon poste Windows. Comme IDE, je me sers de PyDev dans WTP (Eclipse). Je connais déjà bien Eclipse et PyDev est quasi-transparent à l’intérieur d’Eclipse en plus de permettre le débuguage. Au lieu d’installer MySQL indépendement, j’utilise WAMP qui installe en même temps Apache et PHPMyadmin qui me sert pour le contrôle de MySQL.

  1. Installer Python 2.5
  2. Installer WAMP 1.7.2
  3. Installer MySqlPython 1.2.2 pour Python 2.5
  4. Installer Java 2 Standard Edition 5
  5. Installer WTP 1.5.4
  6. Dans WTP, installer le plugin PyDev à l’aide du Eclipse Update Manager en ajoutant la location suivante : http://pydev.sourceforge.net/updates/ (Attention de décocher le support pour Mylar sinon PyDev ne s’installera pas)

L’environnement de développement est maintenant installé, il faut indiquer à PyDev où est l’interpreteur Python :

  1. Dans WTP, allez à Windows -> Preferences, PyDev - Interpreter Python
  2. Cliquez sur New et pointez le fichier python.exe dans le répertoire choisi lors de l’installation de Python 2.5
  3. Cliquez OK

Voilà, l’environnement de développement est installé. Il suffit maintenant de créer un projet Django …… à suivre

Références :

Configuring pydev to work with django

May 15th, 2007

Video Rails - Java

J’aime toujours voir les discussions et les flèches lancées entre les différents environnements de développement. Ici, Rails qui se compare à Java. Très comique, à la manière des fameux commerciaux Mac/Pc.

http://www.railsenvy.com/2007/5/14/ruby-on-rails-commercial

May 6th, 2007

Langages fonctionnels, de nouveau intéressant ?

Les langages fonctionnels semblent redevenir populaires. D’après un article tiré du Linux Journal, on les voit de plus en plus souvent dans les conférences, les blogs et listes email.

Bref, je trouve intéressant ce regain de popularité. On reproche souvent à ces languages d’être complexes et non intuitifs. Cependant, ils sont réputés pour être puissants, facilement adaptables et productifs. Il serait agréable qu’on puisse voir des frameworks web basés sur ces langages devenir populaires et grandement utilisés.

Référence : The Rise of Functional Languages