This year I want to:
- Become a better programmer
- Become a better writer
Devlog? What’s this?
If you are into game development you have likely seen and read devlogs. Basically, these are blog posts about the progress of a specific game. This one, however, will be a bit different. I want to keep a diary of my pursuit of a better self. I will try to keep it game-dev-related as most of my goals are about becoming a better game developer. But I may take a side quest here and there.
Last year I started to work on a small, casual mobile game: Super Drift Racer. This time I decided to try and keep a dev diary. It wasn’t in a blog form. I was posting updates to a small Discord server with only a handful of active users. Even though no one was keeping track of it, I felt accountable. And it helped with motivation. I was able to finish the mechanics and polish the game rather fast (yes, I know I wasn’t able to release it just yet! But I swear it’s practically done!).
So keeping track of my progress in monthly blog posts sounds like a good idea. Even if I can’t reach my goals reading back should provide me with enough information to correct my mistakes in the future.
Why should you care?
No idea! In fact, I would be very much surprised if even one person would read it, let alone find it interesting. As I explained above, I will keep this diary mainly for my future self.
Yes, I know I’m a bit late for the “New year’s resolutions” party. But to be honest, to me the new year doesn’t feel like a very special date like the popular culture makes it out to be. Change of job, and moving to a new country, on the other hand, very much does.
Perhaps even more important than a new job is the fact that I will have a month off. Being the slacker that I am, I tend to waste my holidays one at a time spreading it over the whole year. As a result, I didn’t have a decent rest for the last five years. A day or two isn’t nearly enough to recharge after a year of hard work. So I’m very happy that I will have some time to reflect, settle into the new flat, and get acquainted with the new country. Also, I will have some time to reflect and plan ahead. This blog is the very first result of this reflection.
Alright, now that we get the FAQ out of the way let’s talk business. What did I mean by becoming a better programmer, and a better writer?
1. Becoming a programmer god
1. a) Getting a degree
As you may know, I don’t have a computer science or an engineering degree. I graduated in Physics. While it is not necessary to have a formal education in computer science to be a good programmer, there is no denying that it helps a lot. Even though I’m a decent game developer, and I know my way around Unity and C#, at the back of my mind I always felt like I’m missing some core concepts.
What is even worse, in the past some recruiters noticed that too. After each interview, I felt embarrassed for my lack of knowledge of basic concepts. Yes, after such interviews I did spend some time learning said concepts. But brute forcing my skills in this way seems inefficient. Therefore my first resolution is to get a computer science degree!
No, I will not get into a university, and I will not spend four years of my life. That also is not an efficient use of my time. And I don’t such luxury at this point in my life (visa and money are real things, especially when you are an ex-pat). Instead, I will make use of the magic of the interwebs!
After a short research, I came across a collection of open courses from reputable universities such as MIT, Harvard, and co. Since they all are online courses I can learn at my own pace, and skip the irrelevant parts or the ones I already know.
1. b) Understanding web and CSS
I don’t have a working relationship with web programming. It’s boring, and I find it frustrating most of the time. But it comes up a lot. Even in game dev, there is a lot of backend stuff. If nothing else, I have to communicate with the backend. At the moment it feels like black magic to me: I politely ask for something, and if backend gods find me worthy, they respond. It would help a lot to understand how it all works.
Frontend and CSS feel even more important. First of all, Unity has a new UI system that works with CSS. Well, technically it’s USS, a Unity-specific variant of CSS. But it operates with the same logic.
Also, I’m not very happy with the WordPress themes. There are good ones, and usually, I can find a couple that fits my needs. But every single one I have tried so far had some minor problems. The left margins of a search bar text are a little bit small, image alignment is not quite right, and so on. Once I master CSS, I can build my own theme exactly as I like it! And even better, I can move my websites to GitHub pages saving some money and getting rid of WordPress completely.
1. c) Ditching Unity
While I like the engine quite a lot, and I think it’s the best one for 90% of the indie games, the job market seems to disagree. Five years ago Unity developer jobs were dominating the market. But with each year I see fewer and fewer job postings looking for Unity devs. Looks like everyone is jumping to Unreal Engine 5. Which is fine, I wanted to learn Unreal for years, and it fits perfectly with my goal of becoming a better programmer. I will learn C++ anyway. Even if I end up using Unity for the foreseeable future, knowing C++ and another engine can’t hurt!
2. Doing gooder words!
2. a) Grammar
I like writing stuff. I like writing tutorials. It makes me feel like I’m helping people. Also, I like writing about games. In fact, I’m writing for a Turkish gaming journal: Oyungezer. And when I’m not writing for the journal, I write game reviews on my other blog, which I keep in Turkish. But I have huge problems with grammar. While it’s not as big of an issue for Turkish (I received a formal education in Turkish after all), English is a different story.
I learned the language mostly by myself. Playing games, watching movies, and most importantly talking with tourists got me where I am today. Yes, English courses, and receiving education in English at university did help. But the courses weren’t focused on grammar. So my grammar still sucks. I assure you, your eyes would bleed as you read this text if not for Grammarly!
To solve this problem once and for all I decided to take English courses. Hopefully, by the end of this year will do gooder words!
2. b) Creative writing
The last, and probably the least important resolution is to take some creative writing courses. The resolutions I described so far will make me better at my daily job: writing code, and communicating with people. But this is a more personal one. A hobby, if you will.
I like writing! Did I mention that before? Probably not, better to mention it now. I like writing. And learning how to grammar won’t make me a better writer. Or rather it won’t make my writing more engaging and fun. This is a problem because no one wants to read a boring game review or an opinion piece. Even fun characters and a nicely written story can turn an average game into a great one. So while not necessary for my survival, it will contribute to my personal job satisfaction. And perhaps most importantly, it will bring me one step closer to my dream: making a game that will change people’s lives.
That’s all folks (for now)!
It is not the first time I’m having resolutions similar to these ones. But hopefully writing them down for everyone (and most importantly for the future me) to see will keep me on track. I’m planning to write at least one devlog per month with updates, and stuff I learn up until that point.
If anyone did read this post until the end, remember: there is no better time for new year’s resolutions than today! Happy new year, and see you in a month!