Development is Hard

Dimterion
5 min readMay 12, 2023

--

Development is Hard — title.

Starting a new thing, whether it’s learning or doing something, is relatively easy at the beginning. Sticking to it and going further and further is a completely different undertaking.

Same goes for programming/coding, or, in broader sense, development process overall. You can begin with pretty much anything you like: web sites, applications, games, writing blogs or guides or all at once (if you are brave enough). And the funny thing is that, at first, you may see the results rather quickly: your “Hello world!” HTML-page is right on the screen, your counter is changing numbers in both directions, the character is moving from point A to point B, and your text just got a couple of views. At this point you want to go further, you have tons of ideas and imagine all the wonderful things you are going to make.

Then you do go further, and, after a bit of time, comes the “Oh…” part. You realize that this site you’ve been dreaming about requires such things as CSS and JavaScript, the app you’re making needs authentication, the game must have physics, and there are roughly 543 blogging platforms for you to choose from (You’ve already chosen? Consider another one, it’s surely better. Or perhaps it’s worth making your own. The loop starts from the beginning).

It’s a question of perspective. When you do something for the first time, any result is an accomplishment for you, this “look, ma, I’ve made this” feeling. But, once you’ve done it a few dozen times, and, what’s more, seen others do it a dozen times better, then it starts to wear off.

Tutorial hell and all the courses/bootcamps enrollment and YouTube channels subscribing comes from this fact as well. You’re hooked by a shiny new object, you start doing it, but the moment you have to continue on your own, you get either lost or overwhelmed (or, usually, both).

But you persevere, you keep on going, you grind further.

Next comes the question of choices doubts. Have you started with the right tool? Is this the best approach? I should have done it differently.

You use JavaScript? Why? Switch to TypeScript immediately. CSS? Tailwind is so much better. React? It’s not even a framework! Next.js? Have you heard of Remix? What’s even more funny, this rollercoaster of doubts may happen in a spin of a single course or guide.

And yet you’re consistent, stubborn little beam of hope. You thrive forward. Onwards and upwards, through all the obstacles.

You choose your stack to stick to, pick up a service to deploy on, you change it at least three times, because the first one went on paid-only model and the prices are steep, the second one is too slow and the third one is working for now, but you already sense the need of changing it in due time. But, after all, it works. For now.

Gathering all your courage, you jump into the ocean of job search only to realize there’s just been a tsunami of layoffs in the very sector you’re aiming at. And guess what? That tsunami has left thousands (if not millions) of devs on the shore. Those with experience. In the sector you’re aiming at.

Then you look at your portfolio and all the completed projects with that “O-o-kay then…”-feeling. Maybe learning TypeScript would help? Let’s start again. I heard there’s a new framework on the horizon.

And at every given moment there’s also a buzzing question in your head: “Can I call myself a developer? Is it ok? What would others think of me if I do so?” Frankly, it’s not even an impostor syndrome. Feels more like a reality observation. You don’t even blame yourself or anyone else. You just routinely ask yourself this, by habit.

And there is no reason to complain or feel miserable. It’s just how things are. They could have been better or, with high chances, worse. The development area is simply popular right now, but it’s quite the same anywhere else. Lots and lots of those who are trying and much less those who are achieving.

Sometimes it’s pure luck, more often it’s hard work, most of the time it’s both. But, without hard work, your luck has scarce chances of reaching you.

The only consistent solution is being consistent. Standing on the stairs and realizing that your goal lies over there, on the ground below, you have to jump and roll over them, bumping on each and every one of them, grunting and sometimes shrieking in panic, only to see that, when you reach the ground, there’s an elevator. But you couldn’t use it. You had to roll all the way. Also, there’s another bunch of stairs waiting for you. And yes, the elevator is out of service once again (well, I know that it would be better to use an analogy of climbing up the stairs, but, first, learning programming looks more like rolling down for me, and, second, I wanted to make a John Wick reference… and a bit of a spoiler, sorry about that).

Pick up a course, do a new project, learn a new language and framework, screw it all up, start over, apply for a 115 jobs and have one bad interview, find more courses and projects and scream at your screen (but not at other people; they are, most of the time, helping you, even when you are not agree with them). Then calm down and keep on grinding, coding, developing. Results of your work are the only thing that will make you overcome the obstacles.

And if you don’t like it, find another area to focus your efforts on. There’s always a chance that it won’t be taken by the AI in the near future. A small one probably…

Development is hard, but so are all other things in life that are worth doing. And you either do it or do something else that is most likely equally hard.

With that being said, I’m going to go and do a bit of stretching, and then my another React project needs a bit of love, and that new text adventure requires tons of work if I want to make it, and Next.js looks promising now, and that Tailwind feature…

Thank you for reading.

--

--

Dimterion

Hi. I’m Dmitrii. I'm interested in Web Development and write about it every Friday.