View previous topic :: View next topic |
Author |
Message |
ratch3t.x n00b
Joined: 19 Dec 2006 Posts: 60
|
Posted: Sat Jan 06, 2007 9:16 pm Post subject: i want to become a linux/gentoo dev some day |
|
|
i have always wanted to become a developer. where do i start? what languages should i learn? any information telling me what to learn helps, thanks |
|
Back to top |
|
|
anello Guru
Joined: 17 Jul 2005 Posts: 557 Location: EU -> DE -> Stuttgart
|
Posted: Sat Jan 06, 2007 9:34 pm Post subject: |
|
|
learn as much as you can!!!
Languages: C and everything you else have interest in - OO language maybe - python since portage is written with it
Tools (very important): the common tools like cvs/svn and of course make & configure ...
related to gentoo: ebuilds and the classes and of course how the OS works
But a Gentoo Dev could obviously tell you more, but there are even Documentations for this available. Search the main page and the forums a bit I'm sure that you'll come across it. _________________ Antonino Catinello | http://catinello.eu |
|
Back to top |
|
|
Dralnu Veteran
Joined: 24 May 2006 Posts: 1919
|
Posted: Sat Jan 06, 2007 10:22 pm Post subject: |
|
|
Python, C, bash.
Kind of depends on what kind of dev - if you want to do, say, baselayout, then you'd need to study more of that then, say, working with qt _________________ The day Microsoft makes a product that doesn't suck, is the day they make a vacuum cleaner. |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
Posted: Sat Jan 06, 2007 10:34 pm Post subject: |
|
|
Moved from Portage & Programming to Gentoo Chat. _________________ KDE |
|
Back to top |
|
|
vibrokatana Guru
Joined: 09 Feb 2006 Posts: 328 Location: o0o0oo
|
Posted: Sun Jan 07, 2007 1:01 am Post subject: |
|
|
I would start with python or some other language that is syntax friendly.
Do some bash scripting (writing a recursive spider is fun and fairly easy, and you get to piss off your favorite media site).
Look at the ebuilds and understand how they work (notice that most pull the version number from the filename).
Take a random game and screw with its source code to watch it go haywire and goofy. <-- java games are pretty good for this, I had fun making a missle command game that launched 500 missles a second and ran at about 2fps.
Understand how libraries work and OO relationships. <-- I would say the sooner the better, but some people may develop sever migranes who havent worked with programming and unserstand the code.
You may want to try web development, it is fun and you can do some weird stuff to browsers with javascript (managed to crash windows explorer a few times, rofl). I got paid over the winter break to make a new frontend to a GIS application, it was fun using some fairly simple ajax to make a more functional system. (pics here, here and here) The nifty thing is a page refresh is not needed for any of that and no frames were used (God kills kittens every time a frame is displayed in a webpage!) _________________ My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time." |
|
Back to top |
|
|
John5788 Advocate
Joined: 06 Apr 2004 Posts: 2140 Location: 127.0.0.1
|
Posted: Sun Jan 07, 2007 4:47 am Post subject: |
|
|
learn some python if your interested in portage _________________ John5788 |
|
Back to top |
|
|
bawigga n00b
Joined: 05 Dec 2004 Posts: 71 Location: Austin, TX - USA
|
|
Back to top |
|
|
runningwithscissors Guru
Joined: 21 Apr 2006 Posts: 454 Location: the third world
|
Posted: Sun Jan 07, 2007 6:00 am Post subject: |
|
|
Get cracking.
And fix ebuilds on bugzilla. |
|
Back to top |
|
|
antarus Retired Dev
Joined: 16 May 2005 Posts: 77 Location: Michigan
|
Posted: Sun Jan 07, 2007 7:21 am Post subject: Re: i want to become a linux/gentoo dev some day |
|
|
ratch3t.x wrote: | i have always wanted to become a developer. where do i start? what languages should i learn? any information telling me what to learn helps, thanks |
You need to be fluent in shell scripting, you need to know bash.
Bonus if you know autotools, and any other build systems.
You need to be familiar (able to read) almost any programming language, unless you are going to focus on a particular class of package (say java packages or something).
Did I mention you need to know bash?*
Also, devmanual.gentoo.org is a good reference for the layperson.
awk,sed,cut,tr,perl,sort,grep,wc, and more, you also need to know (minimally what each does and how to use it and when)
*(Hint, you need to know a LOT about bash) |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Sun Jan 07, 2007 7:41 am Post subject: |
|
|
wrt bash, this is quite handy. It's actually about portability in autotools, but you get to see a lot of idiosyncracies that you might come across, whose meaning isn't immediately obvious.
edit: more BASH docs:
Intro
Advanced
edit: excellent Wiki on BASH from greycat (who seems to run #bash)
Don't forget #bash on freenode!
edit: Bash Reference Manual which is ref'd in the BASH channel, for Parameter Expansion (Sec 3.5.3)
Last edited by steveL on Tue Jan 09, 2007 7:33 am; edited 3 times in total |
|
Back to top |
|
|
Dralnu Veteran
Joined: 24 May 2006 Posts: 1919
|
Posted: Sun Jan 07, 2007 9:53 pm Post subject: Re: i want to become a linux/gentoo dev some day |
|
|
antarus wrote: | ratch3t.x wrote: | i have always wanted to become a developer. where do i start? what languages should i learn? any information telling me what to learn helps, thanks |
You need to be fluent in shell scripting, you need to know bash.
Bonus if you know autotools, and any other build systems.
You need to be familiar (able to read) almost any programming language, unless you are going to focus on a particular class of package (say java packages or something).
Did I mention you need to know bash?*
Also, devmanual.gentoo.org is a good reference for the layperson.
awk,sed,cut,tr,perl,sort,grep,wc, and more, you also need to know (minimally what each does and how to use it and when)
*(Hint, you need to know a LOT about bash) |
I think regular expressions might be handy, but I think that ties into sed/awk. _________________ The day Microsoft makes a product that doesn't suck, is the day they make a vacuum cleaner. |
|
Back to top |
|
|
vibrokatana Guru
Joined: 09 Feb 2006 Posts: 328 Location: o0o0oo
|
Posted: Mon Jan 08, 2007 12:19 am Post subject: |
|
|
sed spoils you to hell and back, I vote it for the most useful program ever, lol.
Seriously what cant you do with sed? With a little thought and some sed you can do practically anything. _________________ My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time." |
|
Back to top |
|
|
Dralnu Veteran
Joined: 24 May 2006 Posts: 1919
|
Posted: Mon Jan 08, 2007 2:20 am Post subject: |
|
|
vibrokatana wrote: | sed spoils you to hell and back, I vote it for the most useful program ever, lol.
Seriously what cant you do with sed? With a little thought and some sed you can do practically anything. |
Sed + bash and you can do an awfully lot... _________________ The day Microsoft makes a product that doesn't suck, is the day they make a vacuum cleaner. |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Mon Jan 08, 2007 2:43 pm Post subject: |
|
|
Taken from a recent post on the dev m-l:
Quote: | You know this question comes up a lot. The answer hasn't changed much
over the years, and you may not like it, but it's the honest to goodness
best way to start helping: just start helping. There are numerous
avenues to do so, and in no particular order they are:
1. gentoo-user mailing list
2. the gentoo forums
3. join an irc channel or two (#gentoo has a steady stream of traffic of
people who need help)
4. figure out what you're good at and/or what you want to learn and hop
on over to bugzilla and find bugs in those areas.
The caveat to the bugzilla one is this: most people who want to help go
straight to maintainer-wanted bugs or try and create ebuilds for new
packages. To be perfectly honest, those areas are not where gentoo
needs help. We need help to maintain stuff already in the tree, so start
at maintainer-needed or drill into some specific teams (gnome, pam,
kerberos, kde, bsd, samba, mail, web-apps, there's a list of herds
somewhere).
Spread the word! |
|
|
Back to top |
|
|
vibrokatana Guru
Joined: 09 Feb 2006 Posts: 328 Location: o0o0oo
|
Posted: Mon Jan 08, 2007 3:56 pm Post subject: |
|
|
I would consider it good practice to do a few projects yourself before you stumble headlong grasping to figure out what is wrong. Sure finding bugs in ebuilds and fixing them may be relatively easy, but finding a programming issue can be tricky if you dont know how to read code. _________________ My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time." |
|
Back to top |
|
|
eroyf Retired Dev
Joined: 03 May 2004 Posts: 82
|
Posted: Mon Jan 08, 2007 4:03 pm Post subject: Re: i want to become a linux/gentoo dev some day |
|
|
ratch3t.x wrote: | i have always wanted to become a developer. where do i start? what languages should i learn? any information telling me what to learn helps, thanks |
Show up at a Bugday. Bugday is one of the best ways to be seen by developers. Hang out in the IRC channel the first Saturday in the month and learn from others how to fix bugs. If you have any questions about it feel free to contact me on IRC (eroyf).
Gentoo is not only programmers. We have a big amount of staff like forum moderators and so on. The list is huge! |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Tue Jan 09, 2007 4:22 am Post subject: |
|
|
mailing list etiquette is useful to read before you start posting to gentoo-dev. (I've been told ) |
|
Back to top |
|
|
MrVahn Apprentice
Joined: 30 Dec 2006 Posts: 227 Location: Makati
|
Posted: Sat Jan 13, 2007 4:18 pm Post subject: |
|
|
As my proffessor have said: Learn as many languages as you can. After the first five it gets easy.
Which is true. Languages are technically tools. They have their own strengths and weaknesses. Say, would you rather use a sword to chop lumber than an axe? Same with programming languages. |
|
Back to top |
|
|
nanafunk n00b
Joined: 29 Jun 2005 Posts: 36
|
|
Back to top |
|
|
welp Retired Dev
Joined: 24 Sep 2005 Posts: 103 Location: Ipswich, UK
|
Posted: Fri Jan 19, 2007 12:56 pm Post subject: |
|
|
You might want to think about becoming an AT (Arch Tester) for your chosen arch - I know that Gentoo/AMD64 and Gentoo/x86 are always looking for new ATs, and Gentoo/Alt (Gentoo/{FreeBSD,OpenBSD,etc}) currently seem to have... no ATs.
And, as the rest of 'em said, come along to Bugdays, post patches/bugfixes on bugzilla, and so on. _________________ Gentoo/BSD, Gentoo/Alt AT and Bugday lead
AMD64, Xfce, Sunrise, www-servers, net-irc, lang-misc, Artwork
If you find a bug, submit it! Bugzilla |
|
Back to top |
|
|
MrVahn Apprentice
Joined: 30 Dec 2006 Posts: 227 Location: Makati
|
Posted: Sat Mar 10, 2007 1:13 pm Post subject: |
|
|
I see. Arch testers seem to be the same as a beta tester in terms of games. Interesting, but how much time should one devote in becoming an arch tester? |
|
Back to top |
|
|
Samoth Tux's lil' helper
Joined: 07 Jan 2006 Posts: 117 Location: NJ
|
Posted: Sat Mar 10, 2007 4:04 pm Post subject: |
|
|
Yeah, great question, I am interested in being an AT for AMD64 but I don't have time every day. Sort of part time then. How much time does it take to be an AT? _________________ The Early Bird may get the worm, but the second mouse gets the cheese. |
|
Back to top |
|
|
Naib Watchman
Joined: 21 May 2004 Posts: 6069 Location: Removed by Neddy
|
Posted: Sat Mar 10, 2007 4:35 pm Post subject: |
|
|
becoming a dev looks too hard
becoming a AT looks too restrictive (need to run ARCH not ~ARCH ) _________________ #define HelloWorld int
#define Int main()
#define Return printf
#define Print return
#include <stdio>
HelloWorld Int {
Return("Hello, world!\n");
Print 0; |
|
Back to top |
|
|
Samoth Tux's lil' helper
Joined: 07 Jan 2006 Posts: 117 Location: NJ
|
Posted: Sat Mar 10, 2007 4:58 pm Post subject: |
|
|
I don't run ~ARCH, but I do have a few ~amd64 packages unkeyworded(about 10).
Will this make a difference? _________________ The Early Bird may get the worm, but the second mouse gets the cheese. |
|
Back to top |
|
|
|