3 ms·
I learned about 8 years ago and I think the first, hardest part is grasping the fundamentals - firstly data structures and algorithms. Things like visualizing t
by SOLAR_FIELDS 6y ago
I learned about 8 years ago and I think the first, hardest part is grasping the fundamentals - firstly data structures and algorithms. Things like visualizing the storage of data types in variables and using them later. Things like when you create a variable you create an empty box and assigning something to that variable is like putting the variable in the box. A tool to be able to visualize what an array of tuples looks like as you write code to store values would be pretty neat for instance.
I think that first hurdle is the most important by far because once I crossed that it felt like I knew I was actually capable of being a software engineer. The next difficult jumps for me were grasping OO concepts like polymorphism and inheritance and learning functional programming. I also struggled with async style programming (first callbacks, then promises) as well as understanding contextual values such as Javascript’s this.
- emodendroket 6y agoHonestly if I were advising someone, with apologies to Dijkstra, I'd tell them not to worry about the CS side of things until they could make programs. Way easier to approach that stuff as someone who already is comfortable with programming basics.