Here's a few steps to get you started, whatever languages you'll be selecting:
- Learn about variables, functions, classes and functions. You don't have to become an expert but read a bit first to know about those concepts. Wikipedia is a good source for that.
- Find a language and an IDE (Integrated Development Editor) to install on your computer. Start with an easy one having lots of tools and wizard. Netbeans for Java is a good start. You'll switch later when you will get more comfortable with the concept of coding.
- "Hello, World!" is the first program that you need to be able to create before anything else. It will help you understand how to create a simple code and how to compile into a running software.
- Once you've figured out the basics, create another app that will require some user inputs. An easy one is "Guess the number!". Make the software select a random number between 1 and 100, read the users answer and reply with "Higher", "Lower", "You've found it". You will practice loops, conditions and user inputs.
- The "Alert" button is another easy software to create. Discover how to create a simple dialog box with a single button. When you click the button, display a short message.
- Explore controls like text box, label, combo box, buttons. Play around with them and make them interact together.
- Create a basic text file editor. You'll need a text area to input some text, a button to save the content into a basic text file. Once that is done, add a menu to load the content of a text file into your text area.
- You should now that basics to create a more complex software. It's time to handle some image files and try to display them into a dialog box. Often a canvas is the control to use.
That's what you need to learn first before anything else. It will help you understand how to create a simple software and figure out how to use the tools and language you have selected.
Now that you're officially a developer, explore and learn about:
- Network communication: Transfer a file from one app to the other using TCP/IP connections
- Graphics and animations: Try to draw a rectangle, a shape, scroll a text line on the screen
- Data handling: Read about XML, databases, SQL. That's how you will keep the high scores
- Threading is an advanced subject but you'll eventually need it.
- Learn on how to distribute your project. You'll often need to learn about Installers to deploy your creations on other computers.
- Double-check everything to ensure that there is no bugs and that you won't delete the whole content of the hard disk.
- Explore debug mode. All IDEs have this option. As your project will grow, it will become harder and harder to find the bug's source.