Being a programmer entails that you're consistent and persistent.
Consistency here means turning up for your practice sessions even when the vibe ain't there for some reasons. Programming is evergreen 🌲 and you've got to evolve or your technologies will outgrown you. Consistency on your LEARNING PATH is also very challenging, because with all the tech trends you'll always be tempted to delve into the 'trendies' as a programmer. Now I am not saying don't explore, No; rather, you have to know when your skills are ripe (now I mean familiarity with the fundamentals not necessarily mastery). That's a lot on CONSISTENCY. I'll talk about persistence later in the day.
Jared ChungCareerVillage.org Team
Jared’s Answer, CareerVillage.org Team
There are some other things that I think are hard about being a programmer:
- Setting up your computer to program can often be very difficult and frustrating. Installation instructions I find online work right the first time only about 50% of the time. And so I might spend hours or days debugging the installation of something before I even get a chance to do the actual programming that I'm installing the software to support.
- It takes a long time (often hours or days) to figure out how some piece of software works, sort of like working on a really complicated puzzle for a long time. I often find that I have to spend a lot of energy to remember (with my ACTUAL brain :) how different parts of the software fit together. that can be mentally taxing, and it also means that things like getting interrupted can be super disruptive and frustrating.
- There's a really huge gap between "I have the program running on my laptop!" to "The program is now out in the wild on the internet or on peoples' phones or wherever it needs to end up!" In fact, in many cases, it's actually more work to get the program "deployed" properly than it is to make the program work in the first place.
So those are some of the hard things. But I don't want to discourage you from giving it a try! I did and I've really loved being able to spend time thinking about code puzzles and building things that really help people.
Source: I've been programming for 12 years as an adult, and did a tiny bit of simple programming as a teenager as well.
Jared, CareerVillage.org Team recommends the following next steps:
I think one of the most difficult parts of being a programmer, is getting used to the unknown. This role requires you to be comfortable with being uncomfortable.
Debugging is very tough, because this is one of those unknowns — oftentimes, we have no idea why our code breaks, and we go down the 'rabbit hole' of trying to figure out the cause.
Outside of debugging code, however, are other unknowns. Sometimes the domain knowledge (i.e., cyber-security, AI, quantum) can be difficult to learn. Other times, your hired onto a project that uses all new technologies (languages, frameworks) that you might not know.
This is why a lot of people experience imposter syndrome, from working in the tech industry.
To combat this, get used to not knowing everything. Get used to learning from your failures. Get used to being vulnerable and build healthy relationships — this will come in handy when you're asking for help.
In my experience, the most successful programmers have learned to overcome the unknowns by keeping an open mindset, building great relationships, and still forging ahead.
Randy recommends the following next steps: