S’ouvrir l’esprit

C’est en lisant l’article tout récent de Troy Hunt que j’ai mis des mots sur une sensation ressentie dernièrement:

There’s this odd thing that tends to happen in many peoples’ careers and I suggest it’s particularly prevalent in technology: you get really, really good at something and then it hits you – you have to stop it. Well actually, you could continue doing it, but not if you want to “progress” against traditional measures such as seniority and income.

En français dans le texte:

Il y a cette chose étrange qui se produit dans la carrière de beaucoup, et qui je crois est prévalent dans la technologie: lorsqu’on devient vraiment, vraiment bon dans son domaine, l’évidence se fait: on doit arrêter. En fait rien n’empêche de continuer, mais cela va à l’encontre d’une progression sur des métriques comme la séniorité et le salaire.

C’est d’ailleurs une idée qui se marie très bien avec certaines théories dont on a déjà parlé ensemble, particulièrement le fait que les sur-performeurs ont tendance à rester coincés sur le poste qu’ils occupent (pourquoi les promouvoir, ils sont tellement bons là où ils sont!). Une autre problématique c’est que plus le gap est important entre son niveau d’expertise et repartir à 0 dans un nouveau domaine, plus le cerveau fuit la possibilité: ça fait trop mal à l’égo. Et tout un tas d’autres raisons.

Bien évidemment, rien de dramatique de mon côté: j’aime la BI sur SQL Server et cela reste mon gagne pain principal. Cependant je prends conscience de certains faits: le sujet n’est plus qu’une part minime de ma veille technologique, et au final, les projets excitants qui se dessinent à l’horizon concernent des technologies différentes.

Quels sont justement les sujets sur lesquels je creuse en ce moment? J’en ai déjà parlé:

  • Le Machine Learning, via le parcours Data Science de l’Université John Hopkins sur Coursera.
  • R, le langage de manipulation de données, via le même parcours
  • Python, un langage objet avec une syntaxe simple, pour me remettre gentiment dans le bain du « vrai » développement. L’excellent tutorial pour Python c’est Learn Python the Hard Way
  • L’intégration de données moderne, via des lectures et vidéos dont je vous reparlerai plus tard, à transposer sur Azure avec entre autres Event Hub et Stream Analytics

Evidemment ça fait beaucoup de front, alors j’alterne sur des cycles de 2/3 mois: Coursera, Intégration, Python… Et tant qu’à causer logistique, je me suis équipé de Coach.me, qui permet de rester motiver dans la durée grâce au principe des chaînes/streaks. L’autre nouvelle habitude c’est de pousser mes développements perso sur Github, comme ça je m’améliore aussi sur la partie ALM. L’avantage d’avoir commencé par Coursera c’est qu’une partie des premiers cours était dédiée à Github et au Markdown.

Franchement je m’éclate. L’ensemble débloque des scénarios d’usage vraiment sexy, genre « Internet of Things » (marketing power!), avec par exemple: la mise en place d’un dashboard web qui affiche en temps réel la température de la pièce. Rigolo non?

Pour ça on mélange un tas de technos et c’est ça qui est top:

  • Une board Arduino Yun
    • Jouer avec les composants électroniques pour cabler le capteur
    • La logique embarquée (du pseudo C) pour relever la température chaque seconde
    • Le module wifi pour envoyer le relevé vers Azure, auquel en accède en Python en y intégrant le SDK Azure
  • Côté Azure
    • Paramétrer l’Event Hub en PowerShell
    • Implémenter la logique d’agrégation dans Stream Analytics via du pseudo SQL et une logique de streaming
    • Finalement écrire les résultats dans Power BI avec l’API Rest

Et je vous avoue que voir la courbe de température évoluer en temps réel quand on réchauffe le capteur en le touchant, c’est bête mais ça provoque de la vraie joie!

Tout ça pour dire que je vous dois une série d’articles sur tout ça, et que je m’y mets de ce pas! En attendant, n’hésitez pas à vous y mettre de votre côté. Oui ça peut faire peur toutes ces technos étranges, mais en persévérant ça finit par rentrer 😉

Un sauteur de haie qui oublie de sauter, mais qui finit quand même la course!

Une rentrée bien silencieuse…

S’il est vrai que mon rythme de publication a bien ralenti dernièrement, ne vous inquiétez pas, c’est pour de saines raisons !

J’en avais déjà parlé, et vous l’avez certainement vu à travers mes récentes lectures, je travaille à fond sur ma veille technologique. Avec David nous avons la chance de disposer d’un peu de bande passante pour la R&D, on ne pourra pas nous reprocher de n’avoir su en profiter :

  • Big Data avec Pig et Hive sur HDInsight (Hadoop sur Azure, le cloud Microsoft). David présente même une session sur le sujet au SQLSat ce samedi
  • Passage de la certification ScrumMaster. Alors oui le plus gros critère de notation c’est la présence à la formation payante, mais bon… C’est qui les patrons de la BI Agile maintenant ? 😉
  • Et surtout un gros focus sur Machine Learning à travers : la formation Coursera de Stanford (spéciale dédicace à notre camarade de classe Geoffrey), 10 semaines de cours sur la théorie et son application dans Octave (un dérivé Open Source de MatLab). Et là on enchaine sur le parcours certifiant de Data Scientist de l’Université Johns Hopkins, toujours sur Coursera, 10 modules de 4 semaines, cette fois en employant R.

Maintenant je peux le dire : franchement, le Machine Learning, ça déchire.

Je vais bien sûr vous faire découvrir (ou dépoussiérer) la discipline prochainement via une série d’articles, mais je voulais avant cela bien digérer le tout. En effet une des premières leçons qui m’a été transmise est la suivante (via Drew Conway) :

Diagramme des compétences requises en Data SciencePetit jeu: saurez-vous placer le spécialiste BI là-dessus ?

  • Hacking Skills (capacité technique) : Check !
  • Expertise métier ? Derrière une bonne modélisation dimensionnelle se cache une belle compréhension du métier : Check !
  • Math et Stats : bof bof…

Vous l’avez deviné, en plein dans la Danger Zone !

Archer et Lana, quote Danger Zone

Je vous laisse lire l’article qui va avec pour creuser, mais vous comprendrez donc que j’avance prudemment sur le sujet. Parce qu’il ne faudrait pas que sous prétexte d’occuper le terrain, je vous enduise d’erreurs 😉