Pages : 1
#1 Le 05/06/2007, à 13:38
- Hiéroglyphe
Dev GNU/Linux: par ou commencer ?
Salut à tous,
J'aimerai m'impliquer dans le développement libre en tant que codeur, en participant à des projets déjà existants comme Gnome, Pidgin etc.
Seulement si j'ai une relativement bonne connaissance de la programmation (C/java/php/python/etc.) , je n'ai absolument jamais travaillé en groupe, ni utilisé d'outils comme CVS/SVN.
Alors est-ce qu'il y a quelque part un petit tuto décrivant comment se lancer dans un tel projet ? Quels logiciels installés ? Quels sont les erreurs à ne pas faire ? Est-ce que certains projets sont plus ou moins "accueillant", ou facile d'accès ?
Si certains d'entre vous pouvaient raconter leur première fois... avec un projet libre, ça me rendrait service
Hors ligne
#2 Le 05/06/2007, à 13:45
- BookeldOr
Re : Dev GNU/Linux: par ou commencer ?
Salut
La plupart des projets sont en général très ouvert, et la technique est la suivante :
1/ Tu trouves un bug non corrigé qui t'embête vraiment ou une feature qui manque, et puisque c'est ta première participation, choisis un truc trivial et qui ne touche pas au cœur de l'appli
1'/ Tu vérifies que personne n'est déjà en train de le coder
2/ Tu télécharges les sources depuis le cvs ou svn (en général il y a une page su comment faire ça dans les pages du projet)
3/ Tu lis un peu le code pour voir comment le modifier en respectant les règles de codage du projet
4/ Tu corriges le bug ou codes la fonctionnalité
5/ Tu fais un patch (c'est un fichier de différences entre la version officielle et ta version modifiée)
6/ Tu postes ton patch sur un bugzilla ou tu l'envoies par mail à un dév du projet
Si tu as des préférences un peu plus précises sur ce que tu aimerais faire (entre autres, quelle plateforme utilises-tu? quel desktop? plutôt interface ou système?) dis les et si tu veux je regarderai quels projets semblent ouverts.
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#3 Le 05/06/2007, à 13:49
- BookeldOr
Re : Dev GNU/Linux: par ou commencer ?
Pour ta 2e question, ma première participation c'était un truc bateau: la fenêtre des smileys de gaim utilisait une grille et quand un seul smiley était énorme toutes les cases devenaient de la même taille et la fenêtre devenait trop grosse et dépassait l'écran.
J'ai donc codé un algo qui réordonne les smileys par lignes à hauteur variables et c'était nettement mieux.
Mon patch cependant ajoutait des options, etc. et ce n'était pas correct vis-à-vis des règles de codage de gaim, le dév qui suivait le rapport de bug avec mes patches m'a donc bien dit ce qui n'allait pas et j'ai pu soumettre un meilleur patch qui a été accepté ensuite. En général, tu es bien accueilli et même pris par la main, mais ça dépend des projets quand même.
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#4 Le 05/06/2007, à 14:42
- Hiéroglyphe
Re : Dev GNU/Linux: par ou commencer ?
Merci pour ta réponse !
Si tu as des préférences un peu plus précises sur ce que tu aimerais faire (entre autres, quelle plateforme utilises-tu? quel desktop? plutôt interface ou système?) dis les et si tu veux je regarderai quels projets semblent ouverts.
Je suis sous Ubuntu (parfois via Ion3) et j'utilise Vim pour coder.
Je pensais m'impliquer dans une des applis que j'utilise tous les jours: peut-être pas Firefox/Thunderbird (trop usine à gaz: ils me font peur ), mais quelque chose comme Pidgin ou un élément de Gnome (Rythmbox ? Nautilus ? Il faudra que je me mette à GTK aussi...).
En tout cas je vais suivre tes conseils: repérer un petit bug ou une petite amélioration à mon niveau et partir de là...
Bon celà dit je vais d'abord commencer par comprendre comment SVN fonctionne
Dernière modification par Hiéroglyphe (Le 05/06/2007, à 14:43)
Hors ligne
#5 Le 07/06/2007, à 09:24
- kaworu
Re : Dev GNU/Linux: par ou commencer ?
Salut !
Si tu t'interesse aux logiciels de gestion de versions, CVS/SVN sont très utilisés. Etudie un peu aussi git et Mercurial. Les deux sont fondamentalement différent dans le fonctionnement (par rapport à CVS/SVN), mais très semblable dans l'utilisation. CVS/SVN utilisent un dépot centralisé, alors que git/Mercurial utilisent des dépôts décentralisés.
git est sûrement très performant etc. mais bordélique (tu met bash/perl/C dans un mixer...), pas facile à utiliser et la doc manque cruellement (la doc est uniquement les man..).
Mercurial c'est git sans les défaut (décentralisé, utilise SHA-1, facilite les merges). Facile à utiliser, bonne documentation, bien codé (Python et un poil de C pour les algos de performances). Son seul défaut est la maturité, il n'a pas une foule de fonctions avancées, mais il possède un système de plugin qui permet de facilement adapter à tes besoins.
Bref, tu aura compris, je suis pas très objectif (Mercurial Rulez). Pour finir, git est utilisé pour le dev du kernel Linux (en faite, Linus a codé git pour le dev du Kernel), et Mercurial est utilisé pour des projets comme Xine, Xen, Mozilla.
Dernière modification par kaworu (Le 07/06/2007, à 09:27)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#6 Le 07/06/2007, à 10:59
- BookeldOr
Re : Dev GNU/Linux: par ou commencer ?
Il faut aussi citer darcs. En plus c'est écrit dans un vrai langage.
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne