In terms of places to start, some 'core' programming skills would be the best place to begin (i.e. learning to 'think' like a programmer with the analytical and problem solving skills which are involved).
Have a look at Harvard University's introductory computer science course called CS50 - the problem sets will give you plenty of practice in the basics of coding, and more importantly it'll get you using programming languages to learn to think computationally about problem solving. It's a very good starting point for anyone interested in any kind of technical career in IT:
https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x(You can ignore the paid-for certificate, click the Audit option when enrolling).
CS50x takes around 100 hours or so. There are two follow-up courses. The next stage of CS50 focuses on game programming:
https://www.edx.org/course/cs50s-introduction-to-game-developmentAnd here's the Harvard CS50 course for web programming (again, you should do the introductory CS50x course first):
https://www.edx.org/course/cs50s-web-programming-with-python-and-javascriptI'm sure it goes without saying, but motivation really is the key to success if you're looking at self-teaching anything, because you don't have any classes or homework/exam deadlines so it's entirely down to you . Consider taking a look at where you'd like to be in 2 years time and start mapping out the journey to get there.
To begin with you need to build up the technical skills to a point where you're able to start thinking about working on your own projects. Set yourself some achievable short-term goals - for example, you could set yourself the goal of completing one of the CS50x problem sets each week. You might end up doing more than 1 per week, but giving yourself short-term goals to achieve, and setting out a timetable can help to keep you focused.
So if your goal is to reach a point after 2 years where you're able to either think about uni, or begin applying for a software/coding apprenticeship, the 3 Harvard CS50 courses would be a good way to spend the next 4-6 months before moving on to some more intermediate/advanced topics. CS50 should get you over the initial 'bump' from a complete newcomer to a point where you're comfortable using code to build small apps and solve problems, and hopefully help you decide whether it's something you want to carry on in the future too.