The problem with your advice is that when you don't know how to code, you don't understand how big the task is. You have a great idea, you try, it's too complicated, after 1 year (and even that requires a lot of determination) you have not completed anything, and you actually have not mastered the language/technology.
It's as if you tried to acquire fluency in ancient Greek by jumping right into reading Aristotle.
The point of entry is always very difficult, for any skill, and learning curve is most often steep and frustrating.
My advice - find someone who lives near by, someone whom you could call at any moment, and discuss your little project with him/her. Choose language/technology, and start working through some tutorials with your project in mind. Your friend should help you downsize your ambitions and limit the scope of the project to something you can actually execute.
You should be done with the basics in about 3 months (that means - no GUI). After that - try to limit the scope of your project so that you think you can make it in the next 3 months. (We know it will take you at least 6-9 months, but still, try to be on the schedule). Only then you will understand what it actually means to be a software developer.
(please note: software engineering is much more than you think when you're just starting to learn computer programming. Coding is not just giving instructions to computer to perform simple calculations. There are design patterns, team work, efficiency, doing things on time, math, frameworks, keeping up with super-crazy pace is which everything changes, there is network issues, and mobile devices, security, scalability, and much more. In short - it's a really complex trade and only few people will be able to do it).