For my first largish project as a paid developer I was tasked with putting together an admin dashboard. Not too complicated, mostly just CRUD operations. However, I committed a number of dev sins in the process.
I reused very little (i.e. I rolled most of the components myself). I thought I could handle it, but in retrospect I shouldve started with a React component set like semantic-ui or material-ui.
unpaginated requests to backend (fetch all 1000 or so resources on page load)
lousy use of constants (magic numbers and magic words)
lots of monkeypatching to fix bugs. The PMs drilled very hard that there should be fewer bugs putting pressure on me to fix them. My lack of experience had me hard-coding more to fix them though
At this point its annoying because I've had to live with my sins or slowly resolve them. If tasked with doing it again I think I could save a boatload of time by having good test coverage.
Though I'm slowly improving it now, it has persisted for so long because at least it worked.
I am new to Visual Studio, C#, .NET and Core. I also regularly work with legacy systems (iSeries) and PHP to communicate with it. Everyday, I ask myself: What did you learn today? This is the result.
For my first largish project as a paid developer I was tasked with putting together an admin dashboard. Not too complicated, mostly just CRUD operations. However, I committed a number of dev sins in the process.
I reused very little (i.e. I rolled most of the components myself). I thought I could handle it, but in retrospect I shouldve started with a React component set like semantic-ui or material-ui.
unpaginated requests to backend (fetch all 1000 or so resources on page load)
lousy use of constants (magic numbers and magic words)
lots of monkeypatching to fix bugs. The PMs drilled very hard that there should be fewer bugs putting pressure on me to fix them. My lack of experience had me hard-coding more to fix them though
At this point its annoying because I've had to live with my sins or slowly resolve them. If tasked with doing it again I think I could save a boatload of time by having good test coverage.
Though I'm slowly improving it now, it has persisted for so long because at least it worked.
"because at least it worked" is the worst kind of tech debt! no one wants to let it go...