loading...

Is coding easy?

rwoodnz profile image Richard Wood ・3 min read

My eldest son asked me - is coding easy?

Where do you start. At the Dev Academy bootcamp they were adamant that just about anyone can give it a go. Yet I still think an ability to think logically, some mathematical nous and basic communication skills are essential.

I suspect their message was mainly to get people who had self-doubts over the sign-up line. Some people just don't realise what they can do and some of this can certainly also be taught.

If you can think logically and have a lot of patience then you can work through the hard-to-read documentation. If you can sit at a computer for hours. If you can create the right search online. If you can generalise off the examples that don't always match the difficult problem you face. Intuition helps immensely there too.

It can be easy if you don't have a constant need to interact with your colleagues - although working remotely mitigates this for me. If you enjoy that fully focused in-the-zone time when everything else disappears. If you enjoy solving puzzles and problems that you know must have a solution even if you just can't see it. That's part of the answer.

It can be easy. If it's something you've done a few times before. It's all relative to the difficulty of the problem you face and your familiarity with the tools you need to use. New and unknown have to be treated like exploring rather than doing.

It also depends on how tired you are and whether you are really doing in life what you want to do.

It will be easier if you surround yourself with people who are better at it than you. If you work in companies with big teams. With people who want to help you. If you love to hang out on technical forums and don't mind posting dumb questions. If you are a good person and look after your relationships with the people who are answering your questions.

It will be easier if you are immune to the sort of technical criticism that suggests you are the dumbest person in the room because you don't quite get something yet, when that is more about the other person's lack of communications skills or dumb ego. The reality is everyone is always learning.

It will be easier if you like to go to meet-ups with like-minded people and like pizza. If you like to go to conferences and can actually absorb what is being said. Or you love to watch tech videos or work through tutorials online in your spare time.

It will be easier if what you are working on actually inspires, your team is fun, and your boss doesn't suck.

And over time yes the technical side gets easier as you learn the tools. As you come across the same concepts in different guises and odd things you learnt on one job become useful in another.

It gets easier as you come to understand the parts of the job you are good at. When you learn to recognise when you need to go for help vs banging you head against a wall of unknowns.

So yes for me, after four years, while there is the occasional day when it seems impossible, it is otherwise easy.

For you I don't know.

Posted on by:

rwoodnz profile

Richard Wood

@rwoodnz

Remote developer working in Elm and JS for clients globally.

Discussion

markdown guide
 

"Coding" is easy. Development is hard.

 

I like to compare coding to learning a skill, like a foreign language. Can you navigate a city, be able to interact with people and get things done after a three-month crash course? Sure.

Would you be able to write a novel, be an editor for a publication or deliver moving speeches, using all the nuances of cultural idioms and local memes? I don't think so.

Same goes for coding. It takes time, patience and a whole lot of practice and immersion. You can get by with less, but you can't expect to perform at the level that makes you effective and desirable for senior positions.

Can you write a Hello, World! in 10 minutes? Sure.

Good luck writing a multi-threaded sorting algorithm, though.

 

I like the writing metaphor; the difference between asking for some directions vs fixing a plot hole in someone else's novel without changing the tone of the writing

 

Coding is actually easy, but to write code that is maintainable, fast, secure, tested to be as bug-free as possible and actually works can sometimes be really difficult and hard work.

 
 

You definitely need to be logical to be a coder, but IT need more than just "code-pisser" (like I am).
We need designer, architect, product owner, reviewer ... and all of them need to understand code. Everyone can/should learn code, but not everyone have to code.

 

Lol. The perfect response.

 

Apologies for a meme-post, but this little snippet struck me even after 30yrs of programming and seems appropriate to 'hard vs. easy' : imgur.com/a/7ulve1z

I think it's also a useful to realise that the specific tech you code with now might be useless in a few years (no matter how good you are with it or how easy/hard you find it) - and to be comfortable with that. But the ways you learned it, the way you figured out the problems and how to solve them - that's the really valuable part.

I can still remember things like the base address of the SID chip on the Commodore 64, various bits of assembly hacks for the Atari, Turbo Pascal features etc - which are unlikely to be called on any time soon ;-). But the 'things I learned while learning' them are still immensely valuable in my day-to-day work.

 
 

Most of it depends entirely on the individual. Not if they are overly smart, not if they are more educated than others. It really depends an their ability to stick through a learning process that's not always easy. I agree with knowing some basic math skills and an ability to look at things logically. Programming will force those issues as well.

To build maintainable and usable applications is an art and a science, and that's where in my opinion it gets difficult.

 

When should you give up learn to code? Is there a time frame?

 

When you decide that you'd rather be told what to do by a machine, rather than tell a machine what to do.

Eventually, I think, the majority of jobs (and wealth) will be divisible by this line as machines continue to replace old jobs and create new ones with a barrier to entry; code.

 

It is not easy, otherwise everyone would do it. But it becomes easy if you learn, study, and most of all, practice. It takes patience and time, almost like learning to drive. It's not easy or comfortable in the beginning, but you can master it with practice and time.