NB : cet article a été très difficile à écrire - 25 jours. Je voulais éviter de diviser, entre l’homme du peuple, simple utilisateur des ordinateurs, et le hacker. Nous vs Eux. Non. Je voulais partager ce regard particulier, assis sur la bordure entre ces deux groupes.

Comment cela a-t-il commencé ?

90 % de ce que je sais des ordinateurs, je l’ai appris par moi-même. J’ai bien eu quelques cours au collège, au lycée, puis à l’université, mais franchement, si ce n’avait été que cela, je n’aurais pas pû atteindre mon niveau de compétences actuelles en informatique.

Je n’ai pas eu de cours sur l’adressage ipv4/ipv6, sur le DNS, sur les serveurs. Tout ça je l’ai appris en lisant des tutoriels et en essayant moi-même des commandes depuis mon propre ordinateur.

J’ai construit mon propre serveur et mon propre routeur en suivant des instructions détaillées par des gens que je voyais comme des professionnels ou des experts.

En fait, tout a été très progressif.

J’ai joué à l’ordinateur, puis un jour j’en ai eu marre d’un énième plantage windows, j’ai installé une distribution Linux (Mandriva à l’époque). Puis au bout de quelques années je me suis monté un mini serveur (pour faire du torrent) et j’ai commencé à heberger un mini site web ainsi qu’un serveur de courrier - c’était super bancal - avec un nom de domaine gratuit.

Puis je me suis payé mon nom de domaine en bonne et due forme, le tout hebergé chez moi. J’ai changé aussi entre les distributions Linux. Ubuntu, puis Gentoo, puis Debian. Puis un jour, à nouveau enervé par un bug (avec Dbus, je me rappelle) de Linux à OpenBSD. Une fois là, j’ai continué : quand tu as un serveur BSD, monter un routeur n’est pas si compliqué. J’ai aussi beaucoup appris autour de ipv6 et du réseau juste en lisant et en lancant d’autres commandes depuis mon ordinateur personnel.

Je suis constamment en train d’approfondir ma connaissance des ordinateurs, du réseau, chaque fois c’est une nouvelle marche sur un escalier.

Mais je suis toujours un autodidacte. Et ça, ça veut dire que bien souvent, il me manque d’importantes références.

Un éternel recommencement

Comme je n’ai pas suivi de cours d’informatique, je ne connais pas certains des logiciels les plus importants à connaître dans ce domaine.

Git par exemple. Ce logiciel est très connu et très utilisé pour distribuer du code, des logiciels et de la configuration. Git a de très nombreuses options et j’en connais très peu. Et il est probable que je n’en apprenne pas beaucoup plus.

Parce que je n’ai pas l’intérêt ou le temps de les utiliser.

À chaque nouveau projet, il faut presque que je demarre à zero. Parce que je n’ai - probablement - jamais utilisé ce truc.

J’ai écris un script shell avec l’aide d’un développeur. Ceci était en fait assez compliqué. Parce que je n’ai jamais écris de script de cette envergure.

Prochain projet ? Écrire un programme en python. À nouveau une première fois.

Pourquoi ? Pourquoi ne pas m’en tenir à l’écriture de script shell ? Parce ce projet (écrire un module python pour Unbound pour vérifier la connectivité ipv6 de certains sites web) ne peut être fait en shell. Et Unbound a un module d’extensions python.

Alors il me faut me replacer sur la ligne de départ.

Où rencontrer des hackers ?

Comme je n’ai pas suivi de cours d’informatique, je n’ai pas non plus développé de véritable cercle social au sein de la communauté informatique.

Alors, on les trouve où, les hackers ? IRC, Mastodon, Diaspora, un peu sur Reddit…

Et comme je n’ai pas développé de réseau social en informatique, je n’ai aucune raison de traîner sur IRC. Ce qui est un problème car c’est là que je pourrais obtenir de l’aide dans mes projets quand je veux démarrer quelque chose.

Donc là encore, un début assez difficile.

Les logiciels comme outils, ou comme mode de vie ?

Certains logiciels sont en fait créés par des hackers, soit comme un hobby, soit comme un outil pour répondre à certains de leurs besoins personnels ou professionnels et c’est pourquoi ils se sentent si bien avec eux. Ils ont créé ces outils qui se sont ensuite étendus à un environnement dans lequel les hackers vivent et créent. Ils socialisent également beaucoup à travers cet environnement, tout comme le reste du monde d’ailleurs.

Mais ils ont créé eux-mêmes ces environnements, ces réseaux sociaux, pour répondre à leurs propres besoins, à leur éthique, à leur style de vie. Les hackers ne traînent pas tant sur Facebook ou Instagram que sur Mastodon, Diaspora ou IRC, qui sont des réseaux sociaux créés et gérés par des hackers et qui se soucient beaucoup de la vie privée de leurs utilisateurs - un élément essentiel de l’éthique hacker.

Mastodon ressemble un peu à Twitter. Et qu’est-ce que je lis beaucoup sur Mastodon ? Pour l’essentiel, je lis des hackers qui parlent de sujets de hackers. La vie privée, les lois relatives aux réseaux et à l’informatique.

Des priorités différentes pour des personnes différentes

Lorsque vous lisez les quatre libertés dans le logiciel libre - libre comme dans liberté d’expression, et non comme dans bière à volonté - vous comprenez que les hackers accordent une grande importance à la possibilité de lire et de modifier le code.

Si vous ne pouvez pas lire ou modifier le code source d’un logiciel, vous ne pouvez pas reconstruire un environnement dont vous avez le contrôle.

Le noyau Linux a été créé par Linus Torvalds en tant que hobby, et Git a été écrit par Torvalds lui-même parce qu’il estimait que les autres logiciels ne répondaient pas à ses besoins.

Ainsi, très souvent, les programmes sont créés par un hacker pour répondre aux besoins de ce hacker. À mon avis, c’est l’un des problèmes de l’open source / du logiciel libre. La philosophie du logiciel libre est qu’en ayant accès au code, en étant capable de le comprendre, on peut l’améliorer. Les hackers considèrent que c’est au bénéfice de l’utilisateur. Ils considèrent cette capacité de détournement comme la liberté majeure pour un utilisateur.

Alors, qu’est-ce qui compte ? L’éthique ou l’usage ?

Pour moi, cette liberté, de detournement, ne semble pas si important, ou plus exactement, ce n’est pas ça qui est le plus important.

Le logiciel libre profite avant tout au développeur et à l’utilisateur qui a des compétences techniques. Pas au commun des mortels. Du moins pas directement.

Je pense que la chose la plus importante pour un utilisateur de logiciel est …

Est-ce que ce logiciel exécute la tâche que j’attends de lui ? Je veux écrire un long texte, calculer quelque chose à partir de ces données, le programme execute-t-il ce calcul comme je le souhaite ?

Le logiciel fait-il ce que j’attends de lui ?

Je me préoccupe de savoir si un logiciel est libre, dans une certaine mesure, parce que j’ai généralement un meilleur contrôle sur celui-ci. Je peux bricoler plus en profondeur avec.

Mais si votre logiciel est libre mais qu’il ne répond pas à mes besoins… eh bien, tant pis.

Dans mon domaine, les logiciels les plus importants, ceux que je maîtrise ne sont pas libres. Je dois donc me débrouiller.

Un hacker m’a dit un jour …

de toute façon, aujourd’hui on travaille tous dans un gros environnement Node/Javascript…

Errrrrh. Non. Toi, peut-être. Qu’est-ce que j’utilise professionnellement ? AutoCAD. Revit. Robot et d’autres logiciels de structure.

Pour une grande partie de l’humanité, les logiciels sont avant tout des outils. Il faut s’en souvenir.