Open source development plays a role in everything from mobile apps and social networks, to music recording and movie special effects. If you've ever wondered how to work on projects like these, you're in luckyou can get started in just three easy steps with Python.
The Python Programming Language
As an open source developer, your job is to write code that tells computers what to do. Though with so many language choices, where should you begin? The open source programming language, Python, is a perfect starting point for new programmers, because it:
- Runs on Linux, Microsoft Windows, OS X, and many other operating systems.
- Costs nothing.
- Works in programs that range from simple to complex.
- Is extremely well-documented both online and in print.
- Is considered easy to learn.
To install Python on your computer, download it from the official Python website. Version Advice: Unless you already understand what's special about the "alternative implementations" and you have a specific reason to choose one, stick with the basics. Look for the "current production version" made for your operating system, then download and install it.
Now you have a programming language, but before you can start coding, you still need another piece of softwarea text editor. Just like you use a word processor to create general documents, you use a text editor to create software files. Luckily, text editors come in many styles with various specialties and unique functions, so finding the perfect one for you shouldn't be a problem. (Then again, many professional programmers have lost months, if not years, trying out new text editors and arguing with other programmers about the benefits and drawbacks of each…so maybe finding the "perfect" one isn't so easy after all!)
Because you're just getting started with open source development, keep the text editor choice simple. Look for something that costs nothing, runs on your computer's operating system, and knows how to handle Python-style indentation. (This last one may be a little confusing now, but it will make sense once you start your first tutorial or crack open your first instruction manual.)
Text editors that fit the bill:
- jEdit: Runs on Linux, Microsoft Windows, and OS X.
- Komodo Edit: Runs on Linux, Microsoft Windows, and OS X.
- Notepad++: Runs on Microsoft Windows.
Special Features: As your programming becomes more advanced, you'll want more out of your text editor. Highly specialized software applications called Integrated Development Environments (IDEs) provide functionality far beyond the typical text editor, including: Highlighting and formatting to make reading your code easier, debugging to find errors in your program as you write it, and more. Of the three text editors listed above, Komodo Edit probably provides the closest experience to a complete IDE.
Documentation and Learning Resources
Among programming languages, Python enjoys a reputation for being one of the most well-documented languages around. No matter your learning style, Python's got you covered.
The completely free resources below provide an introduction not only to Python specifically, but also to open source programming generally:
- Python's own Official Python Documentation
- Google's Python Class
- MIT's A Gentle Introduction to Programming Using Python
- Learnpython.org's Interactive Python Tutorial
- Zed A. Shaw's Learn Python the Hard Way
- Mark Pilgrim's Dive Into Python 3
- Swaroop C H's A Byte of Python
- Bernd Klein's Python Course
- The University of Waterloo's Computer Science Circles
- Python-Tutorial.com's Python Programming Tutorial
If you've exhausted these resources and you can spend some money, local and online bookstores can provide you with many more choices. Likewise, training centers in cities throughout the world offer classroom-based and private instruction in open source development techniques using Python and many other open source programming languages.
Who knows, once you get started, you may just discover that you have the next big thing in software locked away in your brain right now!