I'm a Systems Reliability and DevOps engineer for Netdata Inc. When not working, I enjoy studying linguistics and history, playing video games, and cooking all kinds of international cuisine.
Odd as it sounds, avoiding premature optimization was my biggest issue when coding. I have a natural tendency to always try for the most performant solution at the expense of readability/maintainability without considering what really is 'good enough'. It's not even just been an issue coding, but with any kind of design or engineering thing, I have the same tendency to optimize long before I should and far more than I should.
Other things that come to mind that I thought were difficult to wrap my head around at the time but now look back on as not being that hard include:
Using the command line.
0 indexing of arrays (and lack thereof in languages that are obtuse and don't zero-index their arrays).
JSON's super picky syntax rules (it still ticks me off to not be able to use single quotes or trailing commas).
Low-level networking.
Pointers.
Immutability.
Assembly language (x86 still is hard IMO, but I have no issues with most RISC ISA's).
Did you use to have the premature optimization "issues" even as a junior? I'm still at that that point whee first I make the code work and maybe at the end I try to refactor it, but I can't really code with optimization in mind. I guess it's an experience thing? And I fell the pain of all the other points except for the last one, cos' I never used assembly language.
I'm a Systems Reliability and DevOps engineer for Netdata Inc. When not working, I enjoy studying linguistics and history, playing video games, and cooking all kinds of international cuisine.
Actually, yes, I had the same issue even when starting out. I was a bit of an odd case at that point though because I already knew a lot more about the low level operation of computer hardware and the mathematics underpinning theoretical computer science than a vast majority of new developers do.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Odd as it sounds, avoiding premature optimization was my biggest issue when coding. I have a natural tendency to always try for the most performant solution at the expense of readability/maintainability without considering what really is 'good enough'. It's not even just been an issue coding, but with any kind of design or engineering thing, I have the same tendency to optimize long before I should and far more than I should.
Other things that come to mind that I thought were difficult to wrap my head around at the time but now look back on as not being that hard include:
Did you use to have the premature optimization "issues" even as a junior? I'm still at that that point whee first I make the code work and maybe at the end I try to refactor it, but I can't really code with optimization in mind. I guess it's an experience thing? And I fell the pain of all the other points except for the last one, cos' I never used assembly language.
Actually, yes, I had the same issue even when starting out. I was a bit of an odd case at that point though because I already knew a lot more about the low level operation of computer hardware and the mathematics underpinning theoretical computer science than a vast majority of new developers do.