Menu

What is the most difficult part about coding?

Difficult means different things to different people. And it can also change depending on how long you have been doing it. This is true for anything really. Just think driving a car on day 1 vs day 1000. Day 1 probably almost everything is difficult from applying the proper pedal pressure to under steering or over steering. But day 1000, you'll have other difficulties with driving, like finding parking spots in a crowded city and getting stuck in traffic.

So to give a more thorough answer to that question, I'll break down difficulty based on 2 time periods in my coding career. We'll start with what was the most difficult early on, and end with what is currently difficult after 15+ years.

Junior programmer

I'll consider junior programmer anywhere from 1-3 years of working professionally in a programming environment for this example.

The hardest things that I faced during this time really was learning that every company pretty much has their own entire coding infrastructure and architecture that you have figure out and navigate through. Everything from the IP address of the correct server to the credentials of some obscure 3rd party library need to be figured out. And there is such a vast amount of these things, that for the most part they will slip everyone's mind and you will spend a considerable amount of time trying to solve for obscure error messages by yourself.

So getting acquainted with different frameworks and 3rd party libraries as well as internal custom software becomes a skill that you have to acquire relatively quickly.

This tends to be stressful, as the last thing that you want to do is to accidentally wipe out an entire database with a one line command. Guilty as charged of this.

Taking meticulous notes on everything that you encounter early on is a must in order to have a smoother time and not bring down websites.

As with anything, the more you do it, the easier it becomes. And while this is still somewhat challenging, it is something that gets easier the more you do it and the more work that you end up doing with your particular stack.

Senior developer

As a senior developer, the challenges faced are on a whole different level than simply syntax and frameworks.

Those are still challenges, sure, particularly with new frameworks and updates to programming languages rolling out every so often with no warning.

But the biggest challenge so far I would say is in actively deciding how to implement something that you have never coded before. Not because it is difficult or impossible though.

The reason that it is challenging, is because a developer that has been in the business for 10+ years has multiple ways of doing anything. And many of those have their own pros and cons and they seem like fantastic routes to take. Paralysis by analysis at its finest.

Most projects that I work on these days tend to be on the more complex side. And by complex I mean that they take anywhere from 1-2 weeks to 1-2 months to get to completion. And because of that, you can't really afford to try out that new fancy skill that you picked up that might take half of the time to figure out if will pan out or not.

This..is stressful.

Ironically, the solution to this means less coding, at least in the beginning of a project. This is where the old pen and paper come in handy. It's better to make a mistake on paper than in the middle of a ten thousand line script. So most of my initial code on any project comes in the form of pseudocode, database schemas and potentially any SQL queries that might be involved.

The goal here being that I want a high success rate for whatever route I plan to take once I start coding. Whether it works or not is still up to chance and not guaranteed until later on in the timeline once you actually start to code it and it comes to life.

This remains my biggest challenge so far when coding, and one that I imagine there is no solution to. Because if I knew exactly how to code a 10,000 line script to do something before I even started, then what would be the point of building it really.

Walt is a software engineer, startup founder and previous mentor for a coding bootcamp. He has been creating software for the past 20+ years.
No comments posted yet
// Add a comment
// Color Theme

Custom accent
Pick any color
for the accent