Interview à:Ludovic Dubois [ludovicdubois]
PROGRAMMATION
 | Comment avez-vous commencé à programmer, et à quel âge? Vers 13 ans... avec un papier et un crayon, n'ayant pas d'ordinateur!
Vers 12 ans, je m'intéressais à l'électronique et m'amusais à faire des petits circuits.
Mon père suivait des cours du soir en informatique et m'a proposé son premier livre sur les circuits électroniques des ordinateurs "C'est quoi ça?"
J'ai fini très rapidement le premier livre et lui ai demandé les suivants. Ce n'était plus de l'électronique, mais de l'informatique "C'est quoi ça ?"
J'ai mis quelques mois à avaler l'ensemble des volumes. J'ai donc commencé avec des portes ET, des portes OU et j'ai fini par du Fortran, du COBOL... |
 | Quels langages utilisez-vous, et quels environnements de développement? Je travaille beaucoup en Microsoft.NET avec Visual Studio/Resharper et j'utilise beaucoup Visual C#, mais aussi Visual T# (un langage de programmation .NET compatible C# que j'ai élaboré et développé pour simplifier l'écriture et la gestion des tests unitaires. T# est développé en C#, mais, depuis T# 2.0, T# est testé en... T#!)
Certaines fonctionnalités exigées par T# ne peuvent être faites en .NET, donc je travaille aussi en C++ natif.
J'ai aussi des clients en VB.NET et je fais beaucoup de macros en VBA: je ne veux rien faire manuellement. Tout est automatisé au bureau.
J'ai aussi encore quelques clients en Java.
Autrement, je travaille en Objective-C avec xCode quand je développe pour iOS.
En gros, j'aime faire de tout. Une fois que l'on maîtrise l'orienté objet... |
 | Quelle configuration de machine et de système opératif utilisez-vous? En général une bombe en portable DELL que je change aux trois ans sous Windows le plus récent.
Mais j'ai aussi un Mac (portable aussi) lorsque je développe pour iOS. |
 | Quelques travaux que nous pourrions voir sur le net? Le plus simple est d'aller voir la documentation de Visual T#: http://www.prettyobjects.com/fr/Produits/TSharp/Documentation.aspx
Ou mieux encore de le télécharger sur notre forum: http://forum.prettyobjects.com/forum2-t-download.aspx |
 | Qu'est-ce qui vous motive à entreprendre un nouveau projet? Il faut que je pense avant tout que c'est nécessaire pour quelqu'un (plusieurs de préférence...) et ensuite qu'il y a un défi intellectuel à le réaliser.
Sans ces deux conditions... cela ne m'intéresse pas.
Le défi va mettre en activité mes neurones (mon activité préférée) et va me permettre d'apprendre...
J'adore.
Cela fait près de 30 ans que je développe et je veux toujours apprendre beaucoup pour progresser et pousser au maximum dans les limites de la technologie. |
 | Quelle partie du développement est la plus gratifiante? Tout... tant que ce n'est pas du travail de copiste ou dactylo!
J'adore l'analyse du besoin, l'analyse, la conception, le codage avec tests unitaires, les tests d'intégration, les tests systèmes car ils ont chacun leur défi et j'adore changer d'activité (mais toujours à base de neurones) |
 | De l'extérieur cela paraît un travail très rationnel, mais faut-il également être créatif pour programmer? Complètement !
La création est dans le choix de l'algorithme, dans l'exploitation optimale du langage/de la bibliothèque disponible.
On peut faire de la poésie en programmation! (mais sans vers... peut-être pas aussi accessible à monsieur et madame tout le monde) |
 | Quelles sont les conditions nécessaires pour vous concentrer sur la programmation? Avoir un ordinateur rapide avec un bon environnement de développement... :-)
Le reste: ça n'a pas d'importance! |
 | Avez-vous déjà ressenti le syndrome d'être dans une bulle après une longue période de travail? Très souvent !
En fait quand je suis dans mon travail, je m'immerge.
Il faut que je m'en sorte pour aller manger, pour rentrer à la maison, pour aller me coucher (je travaille le soir à la maison).
Quand le travail est une passion... ce n'est pas tout à fait du travail.
Cela m'arrive régulièrement quand je sors chercher de quoi manger le midi, de voir tous ces gens dehors, de me croire comme dans Matrix quand ils retournent dans la matrice: il y a un autre monde sur terre!
Mais bon, rassurez-vous, ce n'est pas pathologique! |
 | Lors de la révision de votre code de temps, quelle est la principale différence que vous ressentez en comparant avec le code que vous écrivez maintenant? Je réutilise beaucoup le code que j'ai écris, même des années auparavant, car je met l'effort qu'il faut pour qu'il soit le mieux possible et robuste grâce aux tests unitaires automatisés.
Cependant, si je reviens quelques années en arrière, la révolution dans mon écriture de code a été la découverte des tests unitaires automatisés.
Je peux ainsi développer beaucoup plus sereinement des systèmes auxquels je n'aurai pu m'attaquer sans tests unitaires. De plus, je ne perds presque plus de temps dans le débogage et le produit sort plus vite: pas de phase de beta-tests! |
 | Achetez-vous encore des livres de programmation ou apprenez-vous tout déjà on line? J'apprend surtout par moi-même.
Je lis un peu en ligne, puis je m'essaie.
Je me dis qu'idéalement cela devrait se faire ainsi avec cette technologie et j'essaie.
Cela ne fonctionne pas toujours alors j'essaie autre chose... en essayant de toujours me diriger vers un idéal (de moins en moins idéal si cela ne fonctionne pas du premier coup!)
Finalement, si je ne m'en sors pas, je vais voir sur Internet des exemples. Puis je m'en sers pour comprendre ce que j'aurai dû faire et je repars vers une quête de l'idéal. |
 | Pensez-vous que l´on devrait enseigner la programmation à l'école primaire? Non!
Un bon développement est complexe. Je pense qu'il est important de maîtriser les langues et les maths avant d'aborder le développement.
Cependant, il serait bon de faire un maximum de jeux/exercices de logique... c'est très important pour être un bon développeur. |
 | Quelle a été votre expérience dans la commercialisation de vos programmes? Pas terrible: on ne peut pas être bon en tout!
Maintenant cela fonctionne mieux: Visual T# (notre langage de programmation pour .NET) est gratuit :-) |
 | Qu´apprenez-vous des utilisateurs? Leur domaine d'affaires, leur processus d'affaires, leur façon de travailler.
Un système doit répondre à leurs besoins. |
 | Quelle serait votre solution contre le piratage? Je ne pense pas qu'il y en ait vraiment.
Tant qu'il y a des règles, il y aura des tricheurs.
Comme cela n'a pas de sens de supprimer les règles...
Il faudrait changer l'état d'esprit des gens! En premier des informaticiens eux-mêmes! |
 | Vous sentez-vous très rigoureuse dans votre organisation du code que vous écrivez et lorsque vous le commentez? SUPER IMPORTANT !
Je n'hésite pas à réécrire mon code si j'estime que j'aurai pu mieux faire... même s'il répond au besoin actuel!
Je me dis (et le temps me le prouve) que c'est un gain de temps global que d'avoir un code très bien écrit. On gagne du temps en débogage et surtout en maintenance: c'est plus limpide.
Au niveau commentaire, j'en mets moins qu'avant. Pour moi, la première forme de commentaire est des identificateurs très clairs quand à leur objectif. |
 | Comment calculez-vous le budget pour un projet de logiciel? Difficile à dire... mais il faut le multiplier par trois ensuite... :-) |
 | Quels sont vos jeux préférés et la plate-forme sur laquelle vous jouez? Je ne joue qu'à FarCry sous Windows! |
 | Avec quelle fréquence nettoyez-vous la poussière qui s'accumule sur votre clavier? Aléatoire?! :-) |
 | Comment vous sentez-vous lorsque des amis ou des proches vous demandent de l´aide pour résoudre les problèmes de leurs ordinateurs? Oups! Est-ce un problème informatique ou électronique?
J'ai lâché l'électronique à ses débuts (pour moi) donc... pas certain de pouvoir résoudre leur problème. Si c'est logiciel, je m'en sors généralement bien. Je suis heureux de les avoir aidé. |
 | Quelle opinion méritent les Mac comme machines pour le développement? J'en utilise un: c'est du très beau matériel.
De plus, xCode (environnement de développement d'Apple) s'améliore beaucoup... mais c'est loin encore de Visual Studio/Resharper. |
 | Comment protégez-vous votre machine des infections? Deux anti-spams sur le serveur.
Un antivirus sur le serveur.
Un antivirus/anti-spam/anti-banner/anti-tout sur ma machine!
Je fais un "FullScan" chaque jour.
Je n'ouvre jamais d'attachements provenant de personnes que je ne connais pas. Je n'installe jamais de jeux provenant d'Internet... |
 | Réveillez-vous l´intérêt dans votre entourage social lorsque vous dites que vous êtes développeur de logiciel? Pas vraiment, au contraire! Dommage car j'adore partager sur ce sujet... |
 | Travaillez-vous seul ou en équipe? Qu'aimez-vous le plus? Souvent seul car c'est ma compagnie: une TTE (tit' tit' entreprise) et le nombre d'employés oscille en fonction des crises économiques... :-(
J'aime beaucoup travailler seul ou en petite équipe. |
 | Êtes-vous parmi les premiers à mettre à jour votre logiciel quand il vient de sortir, ou avez-vous l'habitude d´attendre l´apparition de versions plus stables? En général: mise à jour automatique à la version la plus récente (j'utilise Ninite Updater qui le fait tout seul pour moi :-)) |
 | Quelle est la principale raison de retard dans les dates de livraison des projets? Retard ? Quel retard ? :-)
En fait, en ce qui concerne nos produits: ils sont grand publics. Donc les sorties sont à notre discrétion, donc pas de retard officiellement.
Officieusement: nos produits étant gratuits, il nous faut aussi d'autres activités/développements pour pouvoir manger.
En ce qui concerne les clients nous demandant des développements: pas de retard. Si une bonne gestion avec tests unitaires (qui nous permettent de beaucoup mieux gérer notre avancement et donc notre temps) les nuits ont été inventées pour cela :-) |
 | A votre avis, quelle compagnie aide davantage les développeurs de logiciels? Sans aucun doute: Jetbrains
Je les adorent! Ils font beaucoup de produits et tous excellents!
Mieux: certains sont gratuits! |
 | Combien de pauses faites-vous par jour? De quoi?
1 pour manger, 1 pour dormir ? |
 | Quel serait votre emploi ou projet rêvé à l'heure actuelle? Mon emploi actuel :-) |
 | Quel est votre prochain projet? Visual T# v3.0 et un autre produit (qui sera intégré dans T# v3.0) mais dont je ne parlerais pas tout de suite: beaucoup trop tôt! |
 | Quels sites Web ou forums de programmeurs fréquentez-vous? Sans ordre:
msdn.microsoft.com
codeplex.com
sourceforge.net
stackoverflow.com |
 | Quels conseils donneriez-vous à quelqu'un qui veut devenir programmeur? De bien apprendre l'orienté objet, le vrai pas technique (cela vient après). |
|
493 visites Whohub [ludovicdubois] Ludovic Dubois Montréal
|