Information Technology is a broad field including network engineering, system administration, control systems and all the business and administrative aspects of running IT in organisations.
This guide is limited to Software Development and aims to help you get started teaching yourself the skills you need for what you want to achieve. Within Software Development there are a number of paths to follow, and many of them overlap. Skills gained in one area are often transferable to another.
For example, user interface design applies to almost any application, and many developers will eventually need to know SQL for database integration. Fundamental programming concepts, taught in Intro To Code apply across most modern languages.
There is a lot of material on the web, so this guide intends to give a broad overview of areas of study with some suggestions on good places to start. This is not an exhaustive list.
- W3C is a particularly good resource for web development as they are an authoritative body and their tutorials are clear, concise and uncluttered.
- There are several good sites offering self paced introduction to code courses, such as Code Academy.
- The provider of a technology usually offer good introductory tutorials and reference manuals to go along with it. Check their website.
- Just type the thing you want to learn followed by 'tutorial' into a search engine.
- If you want to get more serious or prefer more structure, guidance and interaction there are now also MOOCS and similar online courses.
- Often the best way to learn is to have an idea for a software project and figure out how to make it work.
- When learning a programming language you don't need to memorise everything. Do a few tutorials so you get the basic idea of how things work. Then you can always refer back to the tutorial or a language reference for the correct syntax, or search for the solution to certain problems. As you use the language you will start to remember the things you use most often.
Tutorials for common Programming Languages:
- Java (platform independent application development): Oracle Java
- C# (Microsoft): To get started using C# with Visual Studio, For full details about C#
- PHP (server side web scripting): W3C, Code Academy, Web Monkey, PHP site
- Python (scripting): Code Academy, Python site
- Perl (scripting): Perl site
- Ruby (scripting on Mac): Ruby site, Code Academy, tutorialspoint
- R (statistics): TryR, R Project Site
- SQL (database): W3C, tutorialspoint
- C (HPC): cprogramming.com
- C++ (HPC): cprogramming.com
- Fortran (HPC): tutorialspoint.com
If you want to spend time doing a more rigorous course to learn more thoroughly, there are many free MOOCS. What is available will change, so it's best to search yourself for one that matches your needs. Here's a few available at the time of writing: