L'actu sur Geek Arlier.com

La programmation est avant tout une affaire d'humains

Langages de programmation
Comme vous le savez, j'aime les trolls gentillets que l'on s'échange sur les forums ou sur Twitter. Je suis loin d'être le dernier a user de mauvaise foi pour défendre un langage ou une technologie que j'apprécie ... il faut avouer que dans le domaine de l'informatique, c'est presque un art !
Une question me taraude toutefois : Dans ce genre de discussions, on parle souvent de "mauvais langage de programmation" ... Mais qu'est-ce à dire, au juste 8-) ?

Qu'est-ce qui définit un mauvais langage de programmation ? Son manque de portabilité ? Sa syntaxe austère ? Son manque de polyvalence ?
Plus généralement, je crois qu'on associe l'idée de "bons langages" en fonction de ceux que l'on connait : L'inconnu fait peur, et on aura naturellement tendance à déprécier ce qui sort de notre champ de connaissances, du moins dans un premier temps ;).

Je suis tombé l'autre jour sur ce schéma de la "Hiérarchie des programmeurs" (via @HTeuMeuLeu), basé sur la perception que pourraient avoir les développeurs les uns vis à vis des autres, en fonction de leur langage de prédilection.
S'il n'y a rien de sérieux dans ce diagramme, je crois que l'appréciation générale de "Langage de merde" est implicitement lié à un concours de quequete dont nous sommes tous acteurs, souvent à notre insu :P.

Ainsi, ceux qui étalonnent la qualité d'un langage en fonction de la "hauteur" de son niveau (en quelque sorte, sa "distance" par rapport au fonctionnement direct de la machine) seront naturellement plus enclins à considérer des langages plus "humains" (haut niveau) comme étant moins bons. Les utilisateurs de langages "haut niveau", quant à eux, auront tendance à considérer les langages plus proche de la machine comme un outil de néandertaliens tentant d'inventer la roue à chaque programme :).

Si on ajoute à ceci la guerre des paradigmes et les guerres entre langages aux possibilités et caractéristiques similaires, nous obtenons un nombre de trolls possibles assez extraordinaire !

Quant à moi, sur ces bonnes paroles, il est évident que je continuerais à dire que "C# c'est tout pourri parce que c'est du KroSoft !", que "C++, c'est quand même un très grand langage" ou encore que "ce n'est pas parce que la bibliothèque standard de PHP est en pagaille que c'est un mauvais langage" : Nous continuerons tous à troller bien tranquillement, et c'est très bien comme ça =) !

La programmation n'est pas qu'une affaire de machines, mais aussi et surtout une affaire d'humains, avec tout ce que ça implique de mauvaise foi ;).
 Par : Geek Arlier    Le : 25/08/2010 - 15:59   14 Commentaire(s)    Réagir    Twitter
 Tags :  Programmation Troll Mauvaise Foi
10 Votes

Du neuf sur Mi-Ni.Me ! Version 1.5 de sortie !

Minime v1.5
Voila un peu moins d'un an désormais que Mi-Ni.Me est en service,
et je suis particulièrement ravi de voir que de plus en plus de personnes utilisent au quotidient mon petit réducteur de liens :).

J'ai entrepris une série de travaux assez conséquents sur le site, j'espère que vous apprécierez cette version 1.5,avec au programme :
=> Une toute nouvelle interface utilisateur, dynamique gràce a Ajax
=> La possibilité de dévoiler une url Mi-Ni.Me avant d'y accéder
=> La possibilité d'accéder aux statistiques de ses liens grâce à un mot de passe (sans inscription)
=> Une api ouverte à tous
=> Un moteur de recherche de liens promus amélioré

Je vous laisse découvrir tout ça sur Mi-Ni.Me, pensez à vider votre cache si nécessaire, et à bien lire les instructions pour les nouvelles fonctionnalités ;).
Pensez également à mettre à jour votre bookmarklet pour ceux qui utlisent cet outil (il se trouve dans Api et Outils).

N'hésitez pas à me signaler tout bug que vous pourriez rencontrer, et à me faire part de vos impressions =).

A toute !

IMPORTANT : Si vous avez mis à jour votre bookmarklet avant 17h30 et que vous avez des problèmes sous Firefox, mettez le de nouveau à jour =) le problème est résolu.

PS : Voici ce à quoi devrait ressembler le site sous tous les vrais navigateurs ( sauf IE donc =) ) Screenshot
 Par : Geek Arlier    Le : 16/08/2010 - 16:03   7 Commentaire(s)    Réagir    Twitter
 Tags :  Mi-Ni.Me Update Elseif
6 Votes

Ruby : Chroniques de mon apprentissage

Ruby Programming Language - Geekarlier.com

Disons le tout de suite, cet article sera un peu plus "ciblé" que les autres : Je comprends tout à fait que bon nombre d'entre vous ne soient en aucun cas intéressé par la programmation, nonobstant, il me fallait vous parler du langage Ruby.
En effet, il y a quelques semaines, j'ai entrepris d'apprendre ce langage qui m'avait plus ou moins tapé dans l'oeil : On me l'avait décris comme original, puissant, polyvalent, booster de productivité et grand allié du développement web, j'ai voulu vérifier par moi même ;-).

Note : Je ne parlerais pas dans cet article du célèbre framework web Ruby On Rails, pour la simple et bonne raison que c'est habituellement la seule chose dont on parle lorsqu'on évoque Ruby.

L'apprentissage

Langage libre apparu en 1995, Ruby nous viens du Japon ou il fut crée par Yukihiro Matsumoto.
Il se démocratisa dans le courant des années 2000 avec l'apparition du framework web Ruby On Rails.
Enfin ... démocratisé reste un bien grand mot : Il est bien plus difficile de trouver de grand tutoriels de qualité sur le net pour Ruby que pour Python (par exemple), un autre grand langage interprété, et ce, alors que Ruby est situé au 12eme rang des langages les plus populaires.
Face à cette pénurie, j'ai décidé de me procurer ce livre français relativement mauvais (je vous en reparlerais plus loin :) ) pour appuyer mes recherches.

Comme je l'indiquais, Ruby est donc un langage interprété, multi-plateforme, multi-paradigme mais très fortement orienté objet : Tout est objet, même les entiers, et les opérateurs ne sont rien d'autre que des méthodes de classe.
Depuis la version 1.9.x du langage, l'interpréteur a pris du coffre et on note une très nette amélioration des performances.

Ruby est un langage polyvalent : Applications console, graphiques, web, 3D, rien ne lui fait vraiment peur =P. Sa très complète librairie standard ainsi que son système de gestion d'extensions Gem en font un outil complet.

Ce langage est plutôt "haut niveau", et son apprentissage assez facile et rapide. Sa syntaxe originale est cependant parfois un peu difficile à appréhender lorsqu'on est habitué aux langages dont la syntaxe dérive du C (C++, Php, Javascript, Java ect...).
Il est tout à fait accessible aux débutants, bien que pour ma part je recommande plutôt de commencer avec un langage plus "commun" et surtout beaucoup plus documenté (mais la n'est pas la question =P).

En parlant de documentation, celle-ci est loin d'être exemplaire : Générée automatiquement au build de la dernière version de Ruby (avec le très pratique RDoc), celle-ci se révèle être particulièrement lacunaire et difficile d'accès.
Mauvais point donc, qui ne participe pas à la démocratisation du langage.
Mais il serait vraiment dommage de s'arrêter à ça ;).

La pratique

En pratique, Ruby pourrait porter le même slogan que le framework Javascript jQuery "Code less, Do More" : L'aspect "tout objet", couplé à un syntaxe logique, élégante et efficace (qui peut déplaire, c'est aussi une question de goût), aident à mieux coder, plus vite et plus efficacement.
Il faut certes un temps d'adaptation un peu plus important pour devenir vraiment efficace que pour un langage à la syntaxe "C-Like", mais, à mon sens, le jeu en vaut clairement la chandelle.

Il s'agit d'un langage dit "moderne" dans le sens ou il comporte nombre d'outils désormais considérés comme incontournables : Ramasse-miettes, génération automatique de documentation, bibliothèque standard très fournie, ect ...
Plus original, on notera l'intégration des expressions régulières à la syntaxe même du langage ! Ce qui permet, encore une fois, d'augmenter radicalement sa productivité et de produire un code élégant et lisible.

Pour ce qui est des "bémols", en dehors du manque de documentation, coté développement web, on notera que l'installation de mod_ruby pour Apache ne peut pas se faire sur tous les serveurs (Je n'ai, par exemple, vu aucun serveur mutualisé offrir cette possibilité).
Mon hébergeur actuel, Gandi, propose l'installation automatisée de mod_ruby et mod_rails sur ses offres d'hébergement cloud.

En bref ...

J'ai beaucoup aimé apprendre ce langage. Sa singularité et son efficacité m'ont séduit. Sa polyvalence en fera très certainement un de mes langage de prédilection dans un futur proche.
Quant à la comparaison que beaucoup s'amusent à faire entre Ruby et Python (source incommensurable de trolls en tout genre), je pense qu'elle n'a pas lieu d'être : Il s'agit de langages singuliers, aux possibilité équivalentes. Le reste, c'est une question de goût ;-).

J'espère vous avoir donné envie de l'essayer =). Notez bien que je n'ai traité que très peu d'aspects du langage dans cet article, faute de place et de temps, mais aussi parce que je n'en connait certainement pas encore toutes les subtilités ;).

Annexe : Mon support d'apprentissage

Comme je l'indiquais plus haut, j'ai acheté ce livre français, s'adressant surtout à des personnes connaissant déjà la programmation, pour m'aider dans mon initiation.
Si le cours tiens relativement bien la route, les coquilles sont nombreuses, surtout dans les exercices !
Ainsi, on se retrouve avec des exercices tout bonnement infaisable, contenant des choses du style " i += >2 " (p60), ce qui ne veut strictement rien dire ...
Malgré ces évidents défaut, je ne peux pas vous encourager à l'éviter, dans le sens ou il est tout de même relativement complet, entièrement en français et que les tutoriels pour Ruby de cette envergure manquent sur le net.

Pour mettre le pied à l'étrier, ce tutoriel du SDZ est assez bien fichu ;).

Enjoy !
 Par : Geek Arlier    Le : 15/08/2010 - 18:40   12 Commentaire(s)    Réagir    Twitter
 Tags :  Ruby Programmation Apprentissage Tutoriels
7 Votes

Alien Swarm : L'arme de séduction massive de Steam

Alien Swarm - Shoot en coop 4 joueurs gratuit sur Steam
On parle de plus en plus de Valve et de son service de jeux dématérialisés Steam : Nouvelles fonctionalités par ci, portage Mac et bientôt Linux par là ... La firme fait cette fois le buzz avec Alien Swarm, un jeu de shoot d'Aliens vu de dessus, jouable jusqu'à 4 joueurs en coopération, mais surtout GRATUIT.
L'opération promo que tente de réaliser Valve en sortant un titre exclusif et gratuit est évidente. Mais que vaut vraiment le jeu une fois téléchargé ?

Un jeu old school dans un écrin (presque) neuf

Largués au beau milieu d'Aliens en tout genre, les marines que vous incarnez dans Alien Swarm doivent se débrouiller pour accomplir des taches somme toutes assez simple (Récupération d'informations, ouverture de portes blindées) tout en explosant joyeusement de la bestiolle au sang vert ... Oui, le scénario du jeu est particulièrement original =P.
Plusieurs "classes" de personnages sont disponibles, comme par exemple les infirmiers ou ingénieurs qui se révéleront être nécéssaire à l'execution de certaines missions (hack de portes, ect...).

L'action est prennante, le mode multijoueur est bien conçu, le gameplay "vu de dessus" est agréable, les armes et bonus nombreux, la difficulté bien reglée et le système de "rôles" assez intéressant ... Bref, ce jeu est une réussite :).
Le titre semble reposer, comme la grande majorité des jeux Valve, sur le moteur Source, qui offre des graphismes très corrects et des effets convaincants sans mettre à genoux votre configuration.

Défaut principal : La durée de vie. Le titre ne propose pour l'instant qu'une poignée de missions, qui, bien que très réussies et proposant parfois un réel défi, risquent de laisser sur leur faim un grand nombre de joueurs.

Pour l'avenir du titre et de sa durée de vie, plusieurs options : Soit Valve a prévu la sortie ponctuelle de nouvelles campagnes gratuites pour attirer l'attention (sorte d'appât), soit Alien Swarm deviendra une foire au micro paiement : Missions suplémentaires, équipements bonus et classes particulières sont autant d'éléments qui se prêtent parfaitement bien à cet exercice.

Toujours est-il qu'Alien Swarm est un jeu qui m'a séduit par sa simplicité, son action brute, sa mise en scène parfois redoutable et son gameplay très old school.
Steam a potentielement déclenché une arme de séduction massive en lançant un jeu gratuit au concept simple qui séduira le plus grand nombre.
Je ne suis pour autant pas convaincu que le jeu déclenchera un phénomène d'addiction aussi fort que Counter Strike ou Left 4 Dead : On en fait tout de même vite le tour !

Verdict : Testé et approuvé, idéal dans une petite soirée LAN. Ne pas oublier les chips.
 Par : Geek Arlier    Le : 22/07/2010 - 01:54   3 Commentaire(s)    Réagir    Twitter
 Tags :  Alien Swarm Valve Steam Gratos Lan
10 Votes

V.NF - Un serveur iRC pour les Twitterers Francophones

V.NF - Twitter Fr irc network
Aaahh IRC ... Lorsqu'on évoque ce protocole de "tchat", nombreux sont les souvenirs qui ressurgissent pour les geeks ...
Pas que des bons, certes (n'oublions pas que le boom d'iRC, c'est aussi la grande époque du 56K, des serveurs de Tchat Voila.fr et Caramail ;) ), mais ça reste mythique.
Le protocole est toujours utilisé, bien qu'il n'ait plus l'aura de sa jeunesse ... Pour les nostalgiques de cette époque, et pour tout ceux qui (comme moi) ont parfois tendance à confondre la timeline de Twitter avec un channel IRC, @un_geek à crée V.NF, un serveur IRC "comme au bon vieux temps" pour la Twittosphère Francophone.

Le site propose une interface de connexion via le navigateur en plus de l'accès classique via un client iRC, il est possible de créer son propre channel, d'enregistrer son pseudo et même de s'enregistrer avec son compte Twitter.
V.NF fonctionne comme un serveur iRC classique : Les commandes /me, /join, /nick et compagnie fonctionnent parfaitement.

Son auteur a réalisé un petit guide de mise en route pour ceux qui n'auraient jamais utilisé iRC.

C'est l'occasion de papoter sans flooder sa timeline, et surtout, de se retrouver entre Twitterers quand les serveurs du service de micro-blogging flanchent 8-) (Ce qui arrive bien trop souvent) ...

 Par : Geek Arlier    Le : 02/07/2010 - 18:28   0 Commentaire(s)    Réagir    Twitter
 Tags :  v.nf irc twitter
14 Votes