PDA

View Full Version : Best way to get into open source development?



nautica17
August 1st, 2010, 09:52 PM
I hope I'm posting this in the right place. I'm a second year college student studying computer science and engineering, and I've been eager lately to get into open source development. The problem that I always run into however is that with my inexperience with large development projects (like Ubuntu) is that it gets overwhelming with so many files to look at, that I just get lost and don't know where to even begin. So, I was wondering if someone could point me to some open source programs/code that are not so large, or at least really complex. I want something that an intermediate programmer like myself could get into and at least practice on until I get good enough to work on projects like Ubuntu. Any tips are welcome. :)

Lucradia
August 2nd, 2010, 12:33 AM
get a python book from your library. Read some of it.

nautica17
August 2nd, 2010, 01:03 AM
get a python book from your library. Read some of it.
A lot of code that I see is written C though. That is especially the case for Linux. Although I have looked into python lately.

phrostbyte
August 2nd, 2010, 01:07 AM
Have you taken any courses on computer programming in college yet?

nautica17
August 2nd, 2010, 01:14 AM
Have you taken any courses on computer programming in college yet?

I have yes. I have a basic understanding of how classes/structs work. In the fall we're going to go into further detail. And I'm also going to be taking an assembly language course as well, so I hope that helps me understand hardware better.

Edit: My courses are centered around C++ and OOP.

Dustin2128
August 2nd, 2010, 01:29 AM
still, python is a wonderful place to start. It's a well structured, widespread, and powerful programming language.

lunix-
August 2nd, 2010, 01:30 AM
If you already have programming skills, then I would find a program written in a language you know, and a program you would like support/develop, and contact them :)
There are many ways to do that, and one way is irc:

irc.freenode.net has a lot of channels where programmers discuss and work together, and where n0obs can whine for support ...
(For irc, the best irc client is in my opinion is irssi.. powerful and very configurable!)
Im not a programmer myself, but I frequently visit irc channels for help, and its quite common to hear people arranging meetings for fixing bugs or sharing ideas for fixes on pastebin ++

If I was going to learn real programming Id probably go for python too. I'm learning bash though, and help from #bash channel on freenode has been of huge help!
(thanks yitz_ and many more :))
Have fun!

Åtta
August 2nd, 2010, 08:33 AM
You could simply pick an application that you use and like, but that has some kind of flaw or lack of a feature - and then fix that bug/build that feature. Send a patch to the maintainers, and blam! You're an open source contributor.

Lucradia
August 2nd, 2010, 04:36 PM
If you already have programming skills, then I would find a program written in a language you know, and a program you would like support/develop, and contact them :)
There are many ways to do that, and one way is irc:

irc.freenode.net has a lot of channels where programmers discuss and work together, and where n0obs can whine for support ...
(For irc, the best irc client is in my opinion is irssi.. powerful and very configurable!)
Im not a programmer myself, but I frequently visit irc channels for help, and its quite common to hear people arranging meetings for fixing bugs or sharing ideas for fixes on pastebin ++

If I was going to learn real programming Id probably go for python too. I'm learning bash though, and help from #bash channel on freenode has been of huge help!
(thanks yitz_ and many more :))
Have fun!

Most colleges require VB.net or Visual Basic in programming majors, first. Especially for... Web Programming majors? lol.

samalex
August 2nd, 2010, 07:42 PM
I have yes. I have a basic understanding of how classes/structs work. In the fall we're going to go into further detail. And I'm also going to be taking an assembly language course as well, so I hope that helps me understand hardware better.

Edit: My courses are centered around C++ and OOP.

Focus on learning the concepts around OOP because that'll carry over to about any language you learn. It's like driving one car over another, the motions are the same, just the syntax and methods are different when moving to a different vehicle/language.

Honestly most of the programming classes i've taken show the basics of one language or another, but they rarely get into the nuts of bolts of how to tie it all together, which is where the OOP concepts come into play.

HTH,

Sam

Chronon
August 2nd, 2010, 09:15 PM
What Åtta said. . .

23meg
August 2nd, 2010, 11:26 PM
If you want to get started in Ubuntu, the ongoing Operation Cleansweep (https://wiki.ubuntu.com/OperationCleansweep) is easy enough (you simply review and merge patches and send them upstream) and needs some extra hands. https://wiki.ubuntu.com/Bugs/EasyTasks also lists some low-hanging fruit.

Zorgoth
August 3rd, 2010, 04:58 AM
The best way to earn respect in the open source community is to challenge and defeat an established member in either mortal combat or tetris.

Alternatively, if you make enough posts under "Programming Talk," people will eventually assume you know what you are talking about and accept your code contributions without question.

nautica17
August 3rd, 2010, 03:23 PM
If you want to get started in Ubuntu, the ongoing Operation Cleansweep (https://wiki.ubuntu.com/OperationCleansweep) is easy enough (you simply review and merge patches and send them upstream) and needs some extra hands. https://wiki.ubuntu.com/Bugs/EasyTasks also lists some low-hanging fruit.
Sweet, I'll look into that. :)