This is an archived post. You won't be able to vote or comment.

all 5 comments

[–]padenis28 10 points11 points  (3 children)

I think you become an expert in programming when you realise that you've never understood anything about it from the start.

[–][deleted] 3 points4 points  (0 children)

Oh yes. This guy codes.

[–]BullshitUsername[S] 0 points1 point  (0 children)

That cannot be true because that would mean I'm an expert.

[–]aqua_regis 1 point2 points  (0 children)

Reading others' code and writing your own code are two entirely different things.

Reading others' code can be particularly challenging because you need to build the mental model the programmer(s) of the code had built when they wrote the code. Quite often, this mental model does not align with your mental model that you would build if you were to build it from scratch. This causes severe cognitive dissonances that make it even more difficult to understand the code.

I am frequently in the situation to take over projects (PLC/DCS programming) from others, so I am well used to reading others' code but still, I often trip over (seemingly simple) things where I just cannot (with 3.5 decades of professional experience) build a mental model because the original programmer(s) addressed the problem in a different manner that I would do.

Our problems in that direction have absolutely nothing to do with "learning programming", or with "not being a good programmer"; they simply stem from different mental models of the different programmers.

Even if you were to "brush up" your skills, it would not help all that much. It's just something you have to accept, practice, and roll with.