wikiHow est un wiki, ce qui veut dire que de nombreux articles sont rédigés par plusieurs auteurs(es). Pour créer cet article, 51 personnes, certaines anonymes, ont participé à son édition et à son amélioration au fil du temps.
Cet article a été consulté 10 868 fois.
La création et l’utilisation de logiciels gratuits ne sont pas seulement une forme de programmation, c’est aussi une philosophie. Même s’il vous suffit de connaitre un langage informatique pour créer des logiciels, cela peut aussi vous aider à rejoindre une communauté, à vous faire des amis, à faire du bon travail ensemble et à devenir un spécialiste respecté avec un profil qu’aucune autre filière ne vous permet d’obtenir. Dans un monde de logiciels gratuits, vous pourriez arriver facilement à obtenir des postes que seuls les programmeurs de haut niveau ont le droit d’obtenir. Réfléchissez à l’expérience que cela peut vous apporter. Cependant, si vous décidez de devenir un programmeur de logiciels libres, vous devez investir du temps pour arriver à cet objectif. Cela reste vrai même si vous êtes déjà étudiant en informatique.
Étapes
-
1Trouvez une bonne distribution d’Unix. GNU/Linux est l’une des plateformes les plus populaires pour les logiciels libres, mais GNU Hurd, BSD, Solaris et (dans une certaine mesure) Mac OS X sont les plus souvent utilisés.
-
2Apprenez à utiliser l’invite de commande. Vous pouvez en faire beaucoup plus avec un système d’exploitation basé sur Unix si vous savez utiliser l’invite de commande.
-
3Apprenez un langage de programmation. Continuez jusqu’à atteindre un niveau qui vous satisfait. Sans en connaitre un, vous ne pouvez pas contribuer au code, la partie la plus importante de tout logiciel. Certaines sources suggèrent de commencer au moins avec deux langages : un langage compilé (par exemple C, Java, etc.) et un langage interprété (par exemple Python, Ruby, Perl, etc.).
-
4Utilisez un environnement de développement. Pour être plus productif, apprenez à vous servir de NetBeans ou d’autres environnements de développement.
-
5Apprenez à utiliser des éditeurs plus avancés. VI ou Emacs demandent un certain temps d’apprentissage, mais vous pouvez faire beaucoup de choses avec ces logiciels.
-
6Apprenez le contrôle de version. C’est probablement l’un des outils de coopération les plus importants dans la communauté des développeurs. Comprenez comment créer et appliquer des patchs (des fichiers avec des modifications de logiciel). La plus grande partie du développement dans la communauté de programmeurs de logiciels libres tourne autour de la création, de la discussion et de l’application de différents patchs.
-
7Trouvez un petit projet que vous pouvez rejoindre. La plupart de ces projets se trouveront sur SourceForge et Github. Voici les caractéristiques principales d’un bon projet :
- il utilise un langage de programmation que vous connaissez,
- il est actif avec des mises à jour récentes,
- il y a déjà au moins entre trois et cinq développeurs qui travaillent dessus,
- il utilise le contrôle de version,
- il y a une partie du projet à laquelle vous pouvez contribuer tout de suite sans modifier le code existant,
- à part le code, un bon projet présente aussi des discussions actives, des rapports de bug, des demandes d’amélioration ou des activités similaires.
-
8Contactez l’administrateur du projet. Dans un petit projet avec peu de développeurs, votre aide devrait être immédiatement acceptée.
-
9Lisez avec soin les règles du projet et suivez-les. Les règles à propos du style de code ou de la nécessité de documenter vos changements dans un fichier texte séparé pourraient vous sembler ridicules au début. Cependant, le but de ces règles est de rendre le travail plus facile à tout le monde. En plus, la plupart des projets en ont.
-
10Travaillez sur le projet pendant plusieurs mois. Écoutez avec attention ce que l’administrateur et les autres membres du projet vous disent. En plus du côté programmation, vous avez beaucoup de choses à apprendre. S’il y a quelque chose que vous n’aimez vraiment pas, trouvez un autre projet.
-
11Ne passez pas trop de temps sur le projet. Dès que vous arrivez à travailler correctement en équipe, il est temps de trouver un projet plus sérieux.
-
12Trouvez un projet open source. La plupart de ceux-ci sont détenus par les organismes GNU ou Apache.
-
13Attendez-vous à un accueil plus froid. Vous allez probablement commencer votre travail sans avoir d'accès direct au dossier avec le code source. Cependant, votre projet précédent devrait vous avoir enseigné beaucoup de choses. Après plusieurs mois de contribution active, vous pouvez essayer de demander les droits d’accès que vous pensez mériter.
-
14Assumez une tâche sérieuse. C’est le bon moment. N’ayez pas peur. Continuez même si vous vous rendez compte que la tâche est beaucoup plus difficile que ce que vous pensiez. Lors de cette étape, il est important de ne pas baisser les bras.
-
15Intéressez-vous au « Summer of Code » de Google. Ne vous en faites pas si votre candidature n’est pas retenue, car il y a beaucoup moins de places que de candidats potentiels.
-
16Trouvez une conférence près de chez vous. Il pourrait y avoir bientôt une conférence sur les logiciels libres et vous pourriez aller y présenter votre projet (pas tout le projet, seulement la partie à laquelle vous contribuez). Après avoir dit que vous représentez un projet open source sérieux, les organisateurs devraient généralement vous laisser participer gratuitement. S’ils ne le font pas, c’est aussi peut-être parce que ce n’est pas le genre de conférence auquel vous voulez assister de toute façon. Apportez votre ordinateur portable avec Linux (si vous en avez un) et faites une démonstration. Demandez à l’administrateur du projet de vous indiquer le matériel que vous pouvez utiliser lorsque vous préparez votre discours ou votre démo.
-
17Trouvez une « install party » sur Internet. Essayez de vous y présenter pour la première fois en tant qu’observateur (observez les problèmes indiqués et la manière dont les développeurs les résolvent) et la prochaine fois en tant que développeur.
-
18Complétez la tâche. Passez les tests et contribuez au projet. Vous avez terminé ! Pour être sûr, essayez de rencontrer des développeurs du projet en personne et allez boire un verre.
-
19Renseignez-vous sur l’histoire de la programmation. Pour avoir une meilleure compréhension, essayez de trouver un exemple réel dans l’histoire du développement d’un vrai logiciel libre. Chaque courbe montante représente la contribution d’un programmeur au projet. Les développeurs ont tendance à devenir moins actifs au fil des années, mais le projet accélère fréquemment lorsque de nouvelles personnes le rejoignent. Une fois que vous venez avec des compétences intéressantes, il n’y a pas de raisons que vous ne vous fassiez pas accepter.Publicité
Conseils
- Avant de poser une question à propos des règles dans un projet, essayez de faire une recherche pour trouver la réponse dans la documentation ou les archives de correspondance.
- Continuez toujours le projet que vous avez commencé. Y a-t-il des bugs et des comportements inattendus ? Tout cela se produit pour une raison et si vous avez accès au code source, cela signifie en général que vous pouvez forcer le système à faire ce que vous voulez, surtout si vous faites des recherches pour savoir comment faire. Cette règle a ses limites, mais vous ne devez jamais baisser les bras facilement.
- Vous ne serez développeur de logiciels libres que lorsque les autres membres de la communauté vous ont reconnu comme tel.
- Depuis le début, choisissez une classe, un module ou un autre module sur lequel personne ne travaille activement. Il faut plus de compétences et de soins des deux côtés pour travailler à deux sur une même classe ou fonction.
- Certains employeurs de développeurs ont l’air suffisamment motivés pour les laisser contribuer pendant leurs heures de travail (généralement parce que la compagnie en question utilise le logiciel gratuit que développe cet employé). Vous pourriez peut-être obtenir la moitié du temps nécessaire de cette façon.
- Si vous ne vous faites pas encore suffisamment confiance, commencez avec une partie du code que vous pensez être manquante et que vous pouvez écrire depuis le début. Les changements dans le code existant vont plus souvent attirer des critiques.
Avertissements
- Le terme « pirate informatique » n’est pas péjoratif dans le milieu des développeurs, mais certains individus mal informés l’associent à des gens qui pénètrent des systèmes sécurisés ou commettent d’autres crimes informatiques. À moins que vous soyez prêt à vous expliquer, évitez de vous appeler un « pirate » devant les autres. Les développeurs dont il est question dans cet article ne rejoignent jamais d’activités potentiellement illégales. Tout d’abord, vous devez vous enorgueillir de suivre l’étiquette du pirate. Ensuite, vous n’allez pas forcément gagner plus d’argent en violant les lois.
- Pour la même raison, vous ne devez jamais vous attendre à ce qu’un développeur plus expérimenté vous donne une description détaillée de la tâche ou même vous surveille. Même si les projets open source obéissent à de nombreuses règles, ils suivent en général les règles de ce qu’on appelle l’Extreme Programming.
- Votre statut de développeur dans la communauté reflète plus votre présent que votre passé. En particulier, si vous voulez une recommandation de votre chef de projet ou quelque chose de similaire, demandez-la-lui pendant que vous contribuez encore activement.
- Dans le monde du logiciel libre, votre code et parfois même le projet en entier pourrait être remplacé de manière inattendue par une autre contribution. Harmony Toolkit est un exemple célèbre de projet à grande échelle stoppé net. Les développeurs expérimentés accueillent le changement avec le sourire et tirent avantage du nouveau code disponible, et il n’y a pas de meilleure façon de réagir. Cependant, cela ne vient pas naturellement et vous devez l’apprendre. Vous trouverez différents documents sur Internet pour apprendre cette attitude.
- Ne commencez pas avec de petites optimisations de code, des commentaires, des améliorations du style ou d’autres petites modifications. Cela pourrait vous attirer plus de critiques que de louanges. Essayez plutôt de les faire d’un seul coup en un seul « patch ».
- Si vous voulez rencontrer d’autres développeurs en personne, laissez votre ordinateur portable Windows à la maison. Mac OS est plus toléré, mais vous pourriez les faire lever les yeux au ciel. Si vous l’amenez, il doit tourner sous Linux ou un autre système d’exploitation considéré comme libre.
- Ne vous portez pas bénévole à des projets détenus par des sociétés qui ne propose pas leur code sous licence open source. Dans ce genre de cas, les parties vraiment importantes du projet vont probablement rester inaccessibles, ce qui va vous empêcher d’apprendre des choses plus utiles.
- Si votre client de messagerie permet l’affichage du code HTML, désactivez-le. N’attachez jamais de documents que seuls des logiciels propriétaires (comme Microsoft Word) peuvent ouvrir correctement. Les autres développeurs vont le voir comme une insulte.
- Évitez de poser des questions à propos des bases de la programmation ou des outils nécessaires. Le temps d’un développeur de logiciel libre est précieux. Allez plutôt discuter de vos problèmes de programmation dans une communauté pour débutants.
- Les projets qui ont déjà rencontré le succès pourraient présenter des règlements écrits ou non, qui vous empêchent d’obtenir quoi que ce soit de votre travail (pas de salaire, pas de possibilité de promotion, pas de statut au regard de la contribution, etc.). Si cela ne vous intéresse pas, trouvez-vous plutôt des projets moins importants avec un règlement plus flexible.
Éléments nécessaires
- Linux (de nombreux projets de logiciels libres sont soit trop compliqués à coder sous Windows ou ne vont pas produire un bon résultat, c’est d’autant plus vrai pour les projets avancés, par exemple pour la programmation sur téléphone portable, sur clés USB ou d’autres appareils).
- Un ordinateur avec une bonne connexion Internet (vous pouvez avoir une partition avec Windows si vous le souhaitez).
- Des connaissances de base au moins dans un langage de programmation et une bonne volonté d’apprendre. Parmi les langages les plus populaires, on retrouve le C et Java.
- Beaucoup de temps, au moins cinq heures par semaine (un développeur typique contribue jusqu’à 14 heures).
- Même si une formation standard en informatique pourrait vous faciliter la vie, vous n’avez pas besoin d’avoir usé les bancs de l’école et aucune communauté de développeur ne vous demandera de diplômes. Ils se jugent les uns les autres par rapport à leurs performances, pas par rapport aux diplômes des uns et des autres. Cependant, au moins 60 % des développeurs qui surveillent vos patchs ont une formation universitaire et ils ne vont pas vous laisser faire n’importe quoi.
- Pendant les dernières étapes (en conférence par exemple), votre propre ordinateur portable pourrait être un plus. Cependant, ce n’est pas l’idéal pour travailler à la maison, achetez-en un seulement si vous pouvez vous le permettre.
- La filière décrite dans cet article pour devenir un développeur de logiciels libres prend au moins deux ans.