If you want to write open source software, you just need to write it then offer it to the public. Before you learn about the licenses, etc. you need to learn to program. I appreciate your desire to contribute directly to Ubuntu, but we have to crawl before we walk, walk before we run.
Find out what commonly used programs use Python; then, find which ones you like. Read the source code for the programs you like and use daily. Learn from it. Look for stupid things that the original writers or the maintainers have done and figure out how you could do it better without breaking the program, without making it Hell for the maintainers that will come after you.
Remember always that the most time consuming, maybe the most common activity that any programmer, (especially open source programmers,) takes part in is maintaining code.
I will estimate that maybe thirty to fifty percent of my time is spent actually writing original code, which also involves looking at reference material, (i.e., learning,) and at least fifty percent is going back through and figuring out what I did wrong, what I could do better, what is going to need to be changed to make it work with future technology.
Your questions have been about programming, basically. You need to learn this before you actually give anything away; there are other ways you can help, such as helping to translate documents, user interfaces, etc. into languages other than English, if you decide you don't want to help with programs.
There are several stickied threads at the top of this section. You will need to better investigate these things for yourself before asking questions in the future. We appreciate your eagerness to learn and help out; and when you have problems, please just ask us for help and we'll do what we can.
However, these questions have been very general, with easily found answers if you'll take the time to properly search.
Good luck, hope to see you around some more.
Bookmarks