Read other letters about this article
There's a great lab manual that goes with the classic introduction to Electronics by Horowitz and Hill.
Over a series of lab projects you build a small computer more or less from scratch. The "final" is to program your computer in machine language (motorola 6800) to do something useful.
You more or less learn exactly how a computer works.
After you finish, move to a higher level language like python. You'll appreciate it's sophistication but you'll understand how it all works underneath.