L’évolution de la fonction IT

Je suis observateur attentif, travaillant au sein d’entreprises diverses et variées, de l’évolution des métiers de l’informatique.

Nous aurions pu parier, étant donné la dépendance de plus en plus forte de nos organisations à l’informatique, sur un renforcement d’un secteur et d’un ensemble de métiers associés, cela au sein même de nos entreprises. Malheureusement, et sans vouloir nous la faire à l’envers, la réalité est tout autre.

Nous avons en France la particularité d’avoir vu naître, certaines des plus grosses entreprises de services informatiques au monde. Plus qu’une tendance liée à l’éducation et la qualité de nos ingénieurs, elle est surtout celle d’une manière toute particulière que nous avions de consommer le numérique. Et la tendance voudrait que cette particularité se mondialise …

Paupérisation interne

Les sociétés de services en ingénierie informatique (SSII) ne sont pas nées d’une idée révolutionnaire. Mais celle de pouvoir, spécialement dans un pays où la flexibilité du travail est une utopie, s’en offrir un minimum.

Passé donc, la possibilité d’embaucher un ingénieur ou un développeur, il est de coutume de faire appel à des SSII pour s’offrir la mise à disposition d’une compétence ou d’un profil (notez que l’aspect humain est ici volontairement mis de côté) : en somme, un service.

Sans vouloir débattre de la nature même des SSII (je travaille pour celles-ci depuis mes débuts professionnels … je ne cracherais donc pas volontairement dans la soupe), une réalité rattrape tout paramètre lié au contexte français et européen : celle de vouloir externaliser et faire faire aux autres.

Fortement accéléré par l’émergence de nouvelles nations compétentes en la matière (on parle souvent des développeurs indiens), tout autant que la fonction informatique se trouve asséchée et transformée par une révolution telle que le Cloud Computing, ce besoin d’externalisation fait donc écho à une certaine paupérisation de la fonction IT en interne de ses mêmes entreprises clientes.

La mort du technicien

Cela reste d’ailleurs paradoxal (on a quand même l’habitude de dire qu’il est toujours plus simple de servir soi-même), car l’informatique étant devenue si axial et vital.

De plus, et j’en parlerais plus précisément dans un autre billet, l’évolution des budgets et la perception même de la valeur rendue par l’informatique évoluent également et poussent à consommer autrement.

Mais l’externalisation sous toutes ses formes à de cela de pratique qu’elle transforme un besoin technique, technologique, fonctionnel … en réalité purement contractuelle. Et cela s’applique aujourd’hui à l’intégralité du système d’information :

  • Développement
  • Support
  • Logiciels
  • Infrastructures
  • etc.

Ces métiers vont donc tout naturellement migrer vers fonctions organisationnelles, seules aptes à valider le calibrage des besoins métiers, spécialistes de l’urbanisation d’un système d’information maison de plus en plus externalisé et délégué.

La connaissance, la compétence, et d’une manière générale l’informatique, en s’externalisant de plus en plus, deviendra rapidement une facilité, une matière première pour laquelle toute technicité deviendra obsolète. Ne restera qu’à priori que deux types de profils d’informaticien :

  • Ceux qui produiront et intégreront des services
  • Ceux qui consommeront et mettent en conformité ces mêmes services

Et cela est paradoxal, dans un monde si empreint de technologie et où l’on ne cesse de nous répéter que l’informatique est et demeure une priorité aussi bien économique, que sociétale ou pédagogique.

Tout ce que vous connaissez sera obsolète dans 5 ans

Une des particularités du développement de logiciels est la rapidité avec laquelle la connaissance devient obsolète. Dan Appleman a cité une parabole du livre de « L’autre côté du miroir » de Lewis Carroll qui illustre cela merveilleusement :

 – Allons ! Allons ! criait la Reine. Plus vite ! Plus vite !

Elles allaient si vite qu’à la fin on aurait pu croire qu’elles glissaient dans l’air, en effleurant à peine le sol de leurs pieds ; puis, brusquement, au moment où Alice se sentait complètement épuisée, elles s’arrêtèrent, et la fillette se retrouva assise sur le sol, hors d’haleine et tout étourdie.

La Reine l’appuya contre un arbre, puis lui dit avec bonté :

– Tu peux te reposer un peu à présent.

Alice regarda autour d’elle d’un air stupéfait.

– Mais voyons, s’exclama-t-elle, je crois vraiment que nous n’avons pas bougé de sous cet arbre ! Tout est exactement comme c’était !

– Bien sûr, répliqua la Reine ; comment voudrais-tu que ce fût ?

– Ma foi, dans mon pays à moi, répondit Alice, encore un peu essoufflée, on arriverait généralement à un autre endroit si on courait très vite pendant longtemps, comme nous venons de le faire.

– On va bien lentement dans ton pays ! Ici, vois-tu, on est obligé de courir tant qu’on peut pour rester au même endroit. Si on veut aller ailleurs, il faut courir au moins deux fois plus vite que ça !

Alice - Lewis Carroll

Je suis pour l’apprentissage des nouvelles technologies, mais vous plonger dans l’une entre elle est simplement courir aussi vite que vous pouvez pour rester à la même place. Pour arriver à quelque chose d’autre, vous devez vous exécuter deux fois plus vite. Cela signifie étudier des sujets qui ne seront pas obsolètes dans cinq ans : l’humain.

Traduction de « Everything You Know Will Be Obsolete in Five Years » du blog Coding Horror par Jeff Atwood

Arrêtez de prendre les utilisateurs pour des c**s

Je perçois de manière générale que les entreprises attendent, plus que des solutions informatiques, des propositions à leurs problèmes (logique Watson !). Et dans une époque où la guerre des prix fait de plus en plus rage, force est de constater que cette dernière est irrémédiablement contre-balancée par l’innovation.

Mais notre monde digital est instable, toujours mouvant et déroutant. D’où le besoin de plus en plus insistant d’une vision qui puisse englober le passé, le présent et surtout le futur. Chose que bien peu s’évertuent  à comprendre car nous vivons dans un monde malheureusement court-termiste.

Marre d’entendre des « mais tu sais, les utilisateurs n’ont pas besoin de ça » ou « chez nous, les gens ne sont pas aussi [X] que toi » (X = remplacez par la qualité souhaitée). Etc.

A côté de ça, les utilisateurs en question adoptent des technologies de rupture et modifient durablement leurs façons de percevoir le monde. L’innovation continue est maintenant devenu normative, allant au  delà du supposé conflit générationnel que certains s’évertuent à nous faire croire.

Donc s’il vous plait, concentrez-vous sur un seule et unique objectif : fournir aux utilisateurs la meilleure expérience possible. Et cela, quel-qu’en soit les conditions !

Hello, Android

Rapide Feedback sur le développement sous Android, la nouvelle plate-forme de développement mobile de Google (pour ceux qui restent terrés dans une grotte).

Je ne vais pas vous abrutir de code ou autre, mais juste vous faire partager ma découverte du Framework de développement et principalement l’installation de ce dernier, avant de vous lancer dans les premiers tutoriaux.

Je tiens également à rappeler qu’à la base je ne suis pas un spécialiste du développement Java. Bien évidemment, avec des yeux, un cerveau et quelques notions de développement tout le monde peut à priori s’auto-former pour venir à bout des premiers ateliers de développement sous Android.

J’utilise l’IDE Eclipse (Ganymede), non-inconnue des spécialistes Lotus Notes. Tiens d’ailleurs, en parlant d’IBM, on trouve également des références à Android sur le developerWorks : Introduction to Android. Encore une vertu de l’Open Source ?

Pour ma part je me suis documenté à partir de la source qui paraissait la plus fiable, à savoir le réseau Android Developer de Google.

android

Première étape, l’ installation du SDK (le 1.6 pour ma part) dont voici les grandes lignes (oui, oui, je suis sous Windows):

  • Télécharger et extraire le SDK dans le dossier de votre choix (au hasard, le répertoire d’Eclipse).
  • Insérer le chemin du répertoire tools du SDK dans la variable d’environnement PATH.
  • Installer les Android Development Tools (ADT)
  • Configurer Eclipse pour qu’il pointe correctement sur votre SDK Android

A partir de ce moment là, votre environnement de développement est fin prêt … histoire de développer notre bon vieux Hello, World (sic !).

emulateur-android

D’ailleurs, ce qui m’a de suite amusé, c’est l’utilisation de l’émulateur de terminal (surtout si comme moi, vous avez un smartphone sous Android). Pour pouvoir lancer cet émulateur, vous allez devoir créer un Android Virtual Device (AVD). Pour se faire il va nous falloir utiliser un utilitaire du SDK :

android create avd –target 4 –name MonAVD

Note : L’option –target représente l’environnement de développement sur lequel l’émulateur s’exécutera (en l’occurrence 4 pour la version 1.6 du SDK).

Pour finir, côté développement, puisqu’il faut bien en parler un peu, la création d’une application se décompose en deux parties, à savoir le code et la mise en page (layout).
Les différents tutoriaux de base fournis par Google, nous permettent donc d’explorer les différentes possibilités du Framework :

  • Disposition graphique
  • Eléments standards (boutons, choix, liste, etc.)
  • Utilisation de Google Maps
  • Localisation d’une application

Bref, voilà de quoi vous forger un avis sur le développement sous Android. Le reste étant plus lié à Java, et donc à vos talents de développeur pur.