Mình thì có góp ý như thế này cho bạn. Đối với những người mà không xuất thân từ CNTT thì cách học tốt nhất nên học theo hướng project-based learning khi học lập trình. Nghĩa là bạn chỉ học syntax của một ngôn ngữ ở mức vừa phải, những cái cơ bản nhất. Rồi sau đó, tìm project của ngôn ngữ đó để làm và thực tập ngay.
Khi bạn học như vậy thì nó sẽ phản ánh được qúa trình học của bạn, nó giup cho bạn có một mục tiêu cụ thể, và quan trọng là tạo ra niềm vui cho bạn vì bạn đang tạo ra một cái gì đó mà bạn có thể dùng được dựa trên kiến thức mà bạn vừa mới học. ( Và biết đâu nó sẽ giup ích được cho cuộc sống của những người khác ;))
Mục đích của việc học lập trình đối với mình là để làm cái gì đó (web, game, software…). Dĩ nhiên giai đoạn ban đầu thì những sản phẩm đó rất tệ, nhưng mà nó không quan trọng. Khi bạn làm ra được cái gì đó từ việc học code thì cảm giac đó rất là khó tả, đó chính là cái nguồn năng lượng cho việc học lập trình của bạn… 
Ví dụ bạn đang học Python thì có thể vào đây để tìm hiểu về những project dành cho newbie:
https://www.reddit.com/r/beginnerprojects
Đây là 1 nơi mà những lập trình viên Python đưa ra những project dành cho người mới bắt đầu học. Bạn cứ xem và chọn cái nào mà mình thích.( Có cả những project về game trong đó.)
Còn nếu bạn đam mề về web thì có thể tìm hiểu về web framework Django của python (trên Udemy có mấy khóa học rất hay, bạn có thể tự search).
Đây là những chia sẻ nho nhỏ của mình. Hy vọng nó sẽ giup ích cho bạn.
Keep calm and code. Gluck! ^^
p/s: À, theo như kinh nghiệm của nhiều người đi trước và của bản thân mình thì bạn không nên bắt đầu học lập trình với những ngôn ngữ như C, C++, và C#. Bạn có thể chọn Ruby hoặc Python, hoặc JavaScript. Sau này, bạn có thể học những ngôn ngữ đó cũng không muộn. Lí do tại sao thì bạn có thể search Google. 