Kind of a click-baity title but not really.
This will be a little rant with some deviations from the main topic.The realization
I was working on a project recently. A project which is a chat app just for pure educational and exercising purposes.
This application uses all of these mentioned technologies: threads, TCP sockets, SSL, sqlite3, and more. This project is also made in the C programming language.
While taking a little break from working on that particular project I realized that I was affraid of using these technologies and libraries. I was affraid because while I was learning programming it was introduced to me that C is a very low-level language, that you can break a lot of things using threads, that creating raw TCP sockets is hard and you’d be better just using some express.js framework or whatever.
Turns out it’s not that hard, difficult or scary. C is not a low-level language. Assembly is though.
First Steps in Programming
I started learning programming from YouTube tutorials as one would do. And while learning I wasn’t really learning programming. I was learning programming languages and frameworks/libraries. I can remember trying to make a discord bot and eventually getting not so bad at it. And then trying to make some interactive website with JavaScript. I couldn’t do that. I could not do that because I did not learn JavaScript while building discord bots. I learned the discord.js library which was used to make bots for discord.
Exploring
When I got a little bit more advanced, but not too much, I decided to explore more things and concepts in programming. I still could not understand some of the basic concepts which are very useful now but I started to explore. I tried out a lot of different languages and environments and I learned a lot more things doing that. Not only about programming concepts but also about the programming culture that exists whether anyone talks about it or not.
Breakthrough
And then I discovered this streamer called Tsoding. I discovered his project by having this annoying YouTube video in my feed for a couple of days. I just dismissed it but then I was like The title sounds interesting, let me see that. And that is probably what changed my way of looking at things in programming.
His way of thinking about programming is like thinking about games. Do it for fun. He called this Recreational Programming. I was amazed how much I can learn from a single video and then followed his channel on twitch and started watching his streams. The amount of knowledge I gained from this channel and from this person is truly amazing.
Thinking about a future job
When I was learning programming I was imagining in my head who I want to be. At that time I was like 13 or maybe 14 years old. I was thinking whether I would like to be a frontend programmer, or perhaps a backend programmer, or maybe even a full stack. But I didn’t realize the passion I had for programming back then. When I explored and started trying out more things it was obvious that I like to program and create applications.
A couple of months ago I had a thought.
What if I don’t even want to be a software engineer?
When being younger the main part of wanting to become a software engineer was of course money. Everyone knows that software engineers make a lot of money. My family members encouraged my passion with programming and computers because they knew I’d make a lot of money when I eventually become a software engineer.
But while discovering different things about the modern programming environments, reading different experiences from people that actually worked or still work in this proffesion I realized that programming might not be what I want to do professionally.
I mean I have a great passion for programming and computers in general.
I don’t want a work to kill this passion.
And it’s not like it’s very easy to get a job in programming in these times. Everyone interested in this topic sees the layoffs by huge companies and how people struggle to find a job in this proffesion.
One more reason to stop considering programming as a job.
I just want to mention that I still go to school. I still have a couple of years to really start working. Who knows maybe I’ll even try to apply to some university when I’ll be done with this school.
Alternatives
Since I don’t only like programming, I like computers and technology in general, there are many paths that I could choose as the career path. I mean there are many other types of work you can do relating to computers and whatnot. There are people taking care of networks, there are people taking care of servers - both physically and digitally. There are a lot of options. And there is some time left for me to make a decision.
Maybe when I’m done with education I should at least try to find a job and work as a software engineer for a while. To gain the experience and then decide if I would like to still pursue that path. But I’m really thinking that it’s not even worth at the current state of the programming environment.
Software Engineers don’t even program
Software Engineers most of the time don’t even create software. They go to some meetings and have to talk to annoying higher-ups that don’t even understand technology.
Another reason to stop considering programming as a career path…
At this point it’s just a faint entry in my list of things to do after finishing education. If I see more negative experiences shared by actual software engineers on the web, or if I see more information of how stupid is the modern programmer environment - this faint entry might just disappear.
Final Statement
Enough of this ranting. I don’t really care if anyone reads this. I’m not popular enough to have people reading my blog posts. I won’t share this post with anyone. If you discovered this post and decided to read it all or just skipped to see what is here then have a good day I guess.
— ziel
Comments
To send a comment check out this blog post.