Hi everyone!. Thanks for the invite.
As for the current software development methodologies, coding is just a very less expensive part. What costs you the most is the analysis part and the design.
Feasibility study, analysis, design, coding , testing , deploying and maintaining are the basic parts of the software design life cycle(SDLC) . You need to have at least a little knowledge in analysis and design if you want to be a master in coding. Actually, a little knowledge would never be enough to be a master, you will need good understanding of them.
Since Nipuna have just completed his A/Ls, there is no point for in running for every local programming course available. I haven't seen anything good. But you can take Microsoft exams or Java Path. For that you will have to learn about the SDLC before jumping in to coding.
The best thing I could recommend you as a start would be to learn C++ procedural programming. I started with C and C++ after I finished my A/L, I did not know anything about software design or Object Orientation. I just wrote little programs for fun and some programs to make my tasks easy (little tools for me) . I would suggest you to try something like that first. And do not worry about how windows is made, how linux is made etc. These software are giant and was not developed by a single person. A single person can only do a little in such huge software. So focus on little things and try to master them.
Today's software are very complicated and they follow the Object Oriented design methods. If you like to learn software design, you will have to read about software engineering. And it is all theory, like UML. UML stands for Unified Modeling Language. And these theories are more practical.. UML is just a language( no source code though

, just diagrams ) for modeling software.
All the above thing should be grasped step by step. So my recommendation is that you try to learn C++ in procedural way. And try to write some usable application with it in procedural way. Then you can go to Object Orientation. Otherwise you might not see the power of Object Oriented Programming Vs the traditional procedural programming.
http://www.cplusplus.com/doc/tutorial/
I used to refer cplusplus.com when I started following my it degree, back in 2007