← Back to homepage

My biggest lesson in programming

During my whole programming career I had three big moments that were most meaningful to me.

First, is when I created my first website. After writing gaming-related articles for others, I got tired of waiting approvals from website owners, so I decided to create my own. After dabbling around with php-fusion content management system, following multiple tutorials to buy hosting, upload files through FTP and configure MySQL database, I managed to launch something real.

It was a big deal. It was a similar feeling when you move into the new home: you get absorbed by the idea that this is your place, and you can do whatever you want in it. Like painting walls in a color you like and moving furniture where it makes most sense to you, same with the website, you find a theme you like, add a few widgets that you need and so on. The idea of owning this website and the fact that I can slowly improve it every day felt liberating.

Second, it was when I made my first change in code. I wanted to make some adjustments in website theme, which lead me reading tutorials about HTML and CSS. I opened text editor of one of the stylesheets, changed color code of the background, re-uploaded that through FTP and refreshed the browser. Voila! I immediately saw the change go live, and that planted a seed in my head that I can learn how to do these improvements through code, and make website do things I thought I never could.

The latest big moment took about 15 years. It was realizing this: Everything, that I ever thought was too difficult for me to learn, can be learned. It’s only a question whenever I’m ready to invest the time.

This might seem obvious, but it took me so long to really internalize this. Now I try to capture every opportunity to learn something, even if that’s somewhat outside my area of expertise. For example, I was playing around with visual scripting in Unreal Engine, which was enough in a lot of cases, but I didn’t like that I didn’t understand C++ concepts in Unreal, so I picked that up. I’ve also been learning a bit about x86 assembly and low level systems programming, purely because this field used to feel “off-limits”, since I only programmed in higher levels of abstraction. In my previous job, I didn’t need to know, for example, intricacies of configuring Kubernetes clusters, but when I faced issues with that, I didn’t ask sysadmins for help - I used it as an opportunity to level up, even though it’s not strictly my field.

Nothing is rocket science (except rocket science of course, but even that can be learned!), and there’s nothing more fun than building competency in things that are interesting to you.

– Published on
My name is Rolandas Barysas, and thank you for reading my post. Feel free to explore my other posts, subscribe to my newsletter or read the next one "Learn your tools, folks".
← Back to homepage
All text on this website is written by a human, not a robot.