If you haven't done much programming before all those stages can take a lot more time, since everything will be new for you, it's hard to give precise timelines since this is a very personal, inherently hard to estimate trial and error process. Normally if you take a programming language course as a freshman at a university it'll probably take a semester or two. But that's a really rough estimate if you for example plan to learn by yourself - then it very much depends. One important thing is that you shouldn't really put too much weight on the timeline at this point, rather on having fun and learning as much as you can - try learning several languages at once, to broaden your horizons, don't stay too much in one area - say learn algorithms and data structures, but then switch to using graphics or networking libraries or text processing, then go back to what you've been learning before and so on - this way you'll make sure you're making a steady progress in various fields and you lessen the risk of being stuck somewhere, losing your enthusiasm etc.
There are plenty of resources online. and many different coding languages. Different coding languages may have different strength / purpose. You can learn some simple coding languages, e.g. Python, Scratch, etc.
You can try to do some simple like develop a simple web page, control a robot or robotic car, games, etc. It is interesting and a lot of kids can do it also. If you find you are interested in coding, you can learn more different kinds of coding languages and do complex projects.
However, if you would like to develop your career in Technology, I would recommend you to take Computer Science as your major in the college. You can acquire more understanding on the computer theory behind and give you more explore different aspects in Computer Science.
Hope this helps! Good Luck!
When I was obtaining my nano degree in "INTRODUCTION TO PROGRAMMING" over a timeline of approximately 4 months, I did find Python very easy to use for beginners. At the end of the program, I completed my website projects and business card to go on an App. I learned a lot and referred to GitHub many times. Coding is not for me but, I do have basic knowledge that provides me with increased skills that sets me apart from my colleagues as a Project Manager when developing web-based sites. Due to these skills, I have worked on special projects such as developing Wiki, tSpace, SharePoint and, Teams.
Best of luck to you!
Sheila recommends the following next steps:
If you are looking for a place to start then I would strongly recommend starting out with Harvard's CS50 Intro to Programming. It's the most popular course out there for beginners. The course is also free!
You can check it out at: https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
There are many coding languages available for use. I have found that python is fairly beginner friendly. Python has a rich library which makes it easy to use and development becomes quite fast. Any coding language that has a rich library makes it easier for beginners.
On the other hand coding languages like C and C++ need more practice. There are concepts like pointers which require deeper understanding.
It is difficult to say how much time a person will need to learn a particular coding language as it differs from person to person but a coding language which has a rich library is fairly easy to start coding. Online courses on sites like Udemy have helped me a lot in understanding and implementing a new programming language successfully.
Also, there are online editors and compilers available for use if you want to start coding without installing any software on the computer.
Hope this helps you. Wish you all the best.