How did you build a better mental model of what is actually happening in a program/framework/technology, etc.?
Someone asked me this question and instead of being able to give them a good answer, it actually made me question my own mental model of how programming languages work. I don't have a CS degree, so I never formally learned the theoretical concepts underpinning modern programming. However, I have haphazardly studied various CS and programming ideas throughout the years. Unfortunately, I realized that while I can do a lot of complex things fairly easily with languages of choice, I don't always know what's really going on under the hood.
Recently, I have been pulled back into the Rails ecosystem and I this issue kind of got to me. So, I started working through a book called "Rebuilding Rails". It's definitely demystified a few things (some I already knew). It also made me a better Rails programmer because it gave me a much clearer mental model of what is actually going on.
I know that the most common advice is to build things. At this point, I've been a professional for a while so I don't need to build another blog to understand. What I need to do is get a better understanding of what is really happening. Right now, I'm starting to work on writing a simple programming language to understand what happens. Any other ideas of how to build a better mental model?
Submitted June 22, 2017 at 09:31AM by Randy_Watson
via reddit http://ift.tt/2rZau4C