84 lines
5.6 KiB
Markdown
Executable file
84 lines
5.6 KiB
Markdown
Executable file
<!-- title: Mon bilan 2016 -->
|
|
<!-- category: Humeur -->
|
|
<!-- tag: planet -->
|
|
|
|
C'est le moment du bilan personnel de l'année écoulée. <!-- more -->Si je regarde mon compte
|
|
GitHub, je vois peu de code cette année et
|
|
[Mail2Diaspora](https://github.com/kianby/mail2diaspora) est mon seul nouveau
|
|
projet. Si je jette un œil au blog, j'ai réussi à réduire ma production en deçà
|
|
d'un billet mensuel. Pourtant je n'ai pas diminué mon temps passé sur
|
|
l'informatique au sens large. Alors il est vrai que je suis beaucoup plus
|
|
régulier sur Diaspora, ce qui explique en partie la baisse du nombre de
|
|
billets. Il est plus simple de partager un lien technique avec un commentaire
|
|
rapide (mais pertinent hein) que d'élaborer un long article après une
|
|
expérimentation plus poussée. Ma consommation de jeux vidéos a diminué
|
|
elle-aussi et je ne me suis pas encore jeté à corps perdu dans le bricolage ou
|
|
la cuisine. Finalement, en repassant l'année au ralenti, j'ai passé énormément
|
|
de temps à apprendre et me perfectionner dans mon métier de programmeur, dont
|
|
je ne parle pas souvent. Apprendre, c'est une pratique que j'exerce régulièrement depuis
|
|
une dizaine d'années suite à un licenciement où j'avais réalisé être un peu
|
|
largué techniquement : la faute à la routine d'un poste et la fainéantise.
|
|
Depuis cette époque je me tiens informé : langages, méthodes, conception tout
|
|
ce qui touche à mon métier. Je lis beaucoup : de la documentation, des retours
|
|
d'expérience d'experts, et j'expérimente un peu.
|
|
|
|
J'ai beaucoup joué avec Javascript l'année dernière et la moitié de ce que j'ai
|
|
appris est déjà *has-been*. Mais ce n'est pas grave ; ça n'a pas été inutile
|
|
car cela me servira pour aborder d'autres outils et d'autres Frameworks.
|
|
J'avais aussi suivi une formation sur la programmation fonctionnelle en Scala
|
|
avec l'organisme de cours en ligne Coursera. Il est possible que je ne fasse
|
|
plus jamais de Scala mais l'éclairage sur la programmation fonctionnelle est
|
|
transposable, il ouvre l'esprit sur d'autres façons de penser et de coder.
|
|
|
|
Et il ne s'agit pas que de langages et de frameworks. On n'est pas largué parce
|
|
qu'on ne connaît pas un langage. Si un recruteur voit les choses de cette
|
|
manière c'est qu'il a une vision limitée du potentiel de la personne, juste
|
|
réduite à des mots clefs dans un CV. Pour voir plus loin, il faut qu'il
|
|
connaisse le métier, pose les bonnes questions et surtout comprenne les
|
|
réponses. Ce n'est pas un tâcle, mais on voit une catégorie de recruteurs
|
|
sortis tout droit d'écoles de commerce qui ne connaissent absolument rien au
|
|
métier et dont le seul talent est finalement de faire correspondre des
|
|
mots-clés dans des annonces avec des mots-clés dans des profils. Quel gâchis
|
|
pour eux et quelle frustation pour les candidats qu'ils approchent...
|
|
|
|
Au delà des technos, rester en phase avec le métier de développeur c'est
|
|
s'intéresser à tous les aspects, réfléchir verticalement, ne pas rester
|
|
cantonné au code et aux langages : s'intéresser à l'agilité, à la qualité du
|
|
code : un vaste sujet qui va des tests unitaires à l'intégration et au
|
|
déploiement continus et qui amène à aborder des outils comme Jenkins, Docker,
|
|
Sonar. Et puis il y a les bonnes pratiques, mon dada en prenant de l'âge. Faire
|
|
n'est plus suffisant, réaliser selon l'état de l'art dans le domaine est
|
|
beaucoup plus gratifiant. Ces bonnes pratiques sont présentes dans tous les
|
|
domaines. Ce sont les design patterns en programmation, la compréhension des
|
|
concepts et de la philosophie derrière une techno pour l'utiliser dans le bon
|
|
cadre et en tirer la quintessence. Ne pas utiliser la programmation orienté
|
|
objet en JAVA ou utiliser Ansible comme un bête installeur via SSH, c'est
|
|
dommage et c'est passer à côté de la puissance qu'on aurait pu en tirer.
|
|
|
|
Quand on a étiré ses connaissances dans plusieurs domaines avec cet état
|
|
d'esprit on atteint la satisfaction de l'artisan qui sait choisir l'outil le
|
|
plus approprié pour chaque tâche, on peut prétendre faire de l'architecture
|
|
logicielle : être capable de choisir le bon langage et le bon paradigme de
|
|
programmation pour un projet, les bons frameworks, et mettre en place les
|
|
outils nécessaires à une production de qualité. Le seul hic c'est le temps. Il
|
|
y a tellement de sujets et cela prend déjà tant de temps pour se maintenir dans
|
|
son cœur de métier, qu'il faut obligatoirement sélectionner. Dans mon cas, le
|
|
cœur c'est d'abord le développement avec des solides compétences en JAVA et
|
|
PYTHON, deux écosystèmes qui évoluent en permanence. En parallèle ce sont les
|
|
méthodes et outils transverses, valables pour tout langage : tests,
|
|
intégration, méthodes agiles. Et comme j'ai une fibre système, de par ma
|
|
formation initiale, que j'ai bien fait évoluer depuis 6 ans, je me maintiens
|
|
sur les outils de déploiement, la virtualisation et les conteneurs.
|
|
|
|
Pour en revenir à l'année écoulée, j'ai mis le paquet sur le langage PYTHON que
|
|
je pratique pourtant depuis 15 ans et sur lequel j'ai décidé de grimper en
|
|
compétence. Remise à niveau sur l'aspect fonctionnel du langage, découverte de
|
|
nouvelles librairies. J'ai aussi appliqué un conseil lu chez
|
|
[Sam](http://sametmax.com) : la lecture de bon code écrit par d'autres. Et
|
|
c'est ainsi que j'ai disséqué le code de quelques librairies standard de
|
|
PYTHON, notamment les collections. Et c'est un très bon conseil, on en tire des
|
|
façons de faire, des conceptions élégantes et cela démystifie le côté un peu
|
|
magique de certaines librairies en regardant sous le capot. C'est un effort que
|
|
je vais continuer en 2017.
|
|
|
|
Bonnes fêtes de fin d'année à tous.
|