Andrey Listopadov

2023 Recap

@random-thoughts ~10 minutes read

This year certainly was a productive one for me. I’ve written ~40 posts, have many more in the works, made a few new projects in Fennel and Clojure, and changed more of how I spend my time overall. The last year’s recap I mentioned that I’m no longer available on most social networks - this certainly helps me keep a more healthy mental state. I feel that I can keep my focus for longer, and overall my thoughts feel more structured than before. Perhaps, reading books also had something to do with that, but I want to think that leaving social networks helped with that too.

This year’s events

Here are events and things in general that I think were impactful to me during this year:

LLMs

This is the year we saw the rise of Large Language Models. It was fun playing with ChatGPT for a few hours, but nothing that ultimately caught my interest for long enough. Unfortunately, however, the world took way too much liking for LLMs, and now it polluted so many things that I started thinking about leaving not only the social networks but the internet completely. How often do we see a tech that can do that?

Let me explain what I mean, and why I think the net becomes less usable.

As I browsed the net, I started suspecting that a lot of articles and posts that were previously written by copywriters now is seemingly written by LLMs. A lot of reviews and comparison articles, of all things, are now written by LLMs. Automated mail that I receive is now written by LLMs. Even freakin’ art is now drawn by LLMs.

There were reports that people lost their jobs due to big companies realizing that a single LLM can replace a handful of people, and the quality of the result won’t change as much. Well, I mean, if such a company makes such a move, perhaps their products weren’t worth my time even before that, but still. LLMs are killing the net, and subsequently the software. For now, at least.

AI, in general, is a weird thing. It’s certainly in its infancy, but it is already capable of a lot of things. I just think that we’re applying it the wrong way. Certainly, an AI that can reason about hard-to-grasp problems is an interesting field, but what we’re largely doing with AI today is not that. Maybe there’s a need for another AI winter to better spend the resources we’re given?

Gamedev

I finally tipped my toes into the game dev field. It was fun, but exhausting, though that’s mostly on me - I had a bright idea to impose myself with a 6-month marathon. Looking back on it, the idea wasn’t half bad, I just needed more time. A resource I don’t have as much as I’d like to.

In the next year, I hope to do more game dev stuff, but I won’t probably do it this way. I have two project ideas I wanted to make for a long time. Yet, I know that the dream project shouldn’t be your first project, or else you would probably damage it without any way to repair it afterward. So we’ll see. I’m not sure that I really want to become a full-time game developer hobbyist yet.

Fennel

Fennel, again, was a big part of this year. I haven’t worked on the compiler at all though, I think the only thing I did was metadata-related stuff. However, I did a lot of projects in Fennel, the already-mentioned games, and some new libraries.

However, I noticed that I’m starting to get tired of Fennel - it’s a nice project and makes Lua more fun, but it has a lot of quirks that I simply learned to accept. After trying to teach a friend to program in Fennel I’ve realized how many things you can stumble on, I just don’t notice these anymore. Not because they’re harmless, just because I already know how exactly these things need to be written. Most of these are fennel-specific, actually, so I even tried writing in pure Lua for a kick, but didn’t like it as much. Although I still like Lua as a runtime.

I still need to reflect on this more, I think.

Music

I started working on a proper setup for music listening. I’m not yet ready to buy all these expensive amplifiers, turntables, and stuff, but I finally got myself a great pair of open-back headphones for critical listening. Now I want to build my own music library, and probably leave music streaming services. Or at least to use them only for discovering new artists, not as a general way to listen to music.

I wouldn’t call myself an audiophile, but a lot of releases there have audible compression artifacts when listened to through proper equipment. That’s not an issue when I’m listening to music on the go, but when I want to listen to music at home, I dedicate an hour to it and try to listen to all of the nuances, and sometimes these ruin the vibe. This is also why I’m interested in vinyl - I like the vibes of manually setting up a record, and then listening to it until it ends. But this requires a dedicated place in the house to place both the records and the turntable with all of its equipment, which I don’t yet have.

Books

Not long before the end of the year, I started reading some management-related books. There’s a reason for that - I’m preparing for the lead position at my company, and this requires a lot more skill than just programming language and project knowledge.

Strangely, I’ve noticed that there’s a certain misconception in the tech companies, at least with the ones I had contact with. A lot of times a team leader is someone who’s skills are just higher than others in the team. E.g. you have this kind of career ladder:

  1. Trainee;
  2. Junior;
  3. Middle;
  4. Senior;
  5. Team leader??

I mean, sure, you’re a skilled programmer by the time you’ve reached a Senior position, and you sure know a lot about projects, but how exactly this will help you lead people? Unless you know basic psychology, how to work with people, how to properly give feedback, how to effectively motivate, and how to help people grow you’re not a team leader (in my eyes), you’re just a person with a project map. A good team leader should not necessarily be a great programmer, it’s a whole different field, that requires a separate education.

Unless we’re talking about a technology leader, of course, and some companies mix these two positions into one and hence require that the team leader has great tech skills. But tech skills are simply not enough to be a good team leader. Tell you what - a great team leader makes it so every team member sincerely wants to do their best, and also are generally happier and feel like a real team.

Games

I have almost finished my PlayStation 4 backlog of games I bought during the years. Finally, I mean, FINALLY, managed to beat Isshin Ashina in Sekiro Shadows Die Twice. Took me several days. I haven’t bought more games on this platform though, as newer games are already mostly targeting the PlayStation 5, which I don’t have, and in general, newer games are less interesting to me.

On the other hand, I’ve played a lot of cool games on the Nintendo Switch. Finally got to play Metroid Prime, thanks to the recent remake/remaster. The Legend of Zelda: Tears of the Kingdom was fun at first, but later I felt exhausted by mostly filler content in the depths. Pikmin 3 was wonderful, did not expect that, although it was quite short. Unfortunately, I wasn’t really inspired by Mario Wonder. Even though it had a lot of seemingly crazy wonder stuff, it felt a bit empty and oddly paced. For example, this year I also played DK Tropical Freeze for the first time, and even though I can’t say that I enjoyed every second, most of the playthrough was interesting, and the pacing felt much better, compared to Wonder. Anyway, that’s just my point of view, you don’t have to agree or disagree, it’s not a review.

What I can say, is that with age it becomes harder to invest time into games. With each year I play fewer games, and I think that’s not uncommon. However, the game industry tries to sell as many games as possible, and I see people with a lot of games in their Steam library that they haven’t played at all. There’s even a term for collecting books but not reading them called Antilibrary or sometimes Tsundoku, and that practically what happens with games today for a lot of people.

I stopped buying games a few years ago due to this happening to me too, and the only reason I recently started this again was that I got the Nintendo Switch. Now I try to complete everything I buy, but I often find myself unable to invest in the game’s world. Like, a lot of games now feel tedious, not interesting. Usually, all I care about is the main plot, unless the side characters are interesting enough, and I don’t want a lore-dump every time I speak with a random person in the game. So, like, it’s hard, but I do enjoy good stories in games, it just has to be compelling enough. Maybe that’s the quality of today’s games, maybe it’s age, I don’t know.

Talks

I gave some talks this year, mostly about Fennel. It’s good that people are interested in Fennel, but I’ve already mentioned that once they try it, a lot are turned down by lots of nuances you have to keep in mind.

I also took a small intensive course on giving talks. Hopefully, my future talks will be better structured and more engaging. I’ve set up a dedicated page where all of my talks are available.

Plans for the next year

Now, I have a lot of plans, but it’s hard to decide upfront what exactly I will do. I definitively want to do more game dev, albeit at a slower pace, and maybe in something less limiting than TIC-80. Don’t get me wrong, though, TIC-80 is amazing.

I also want to finish working through the Crafting Interpreters book, as I’m currently in the process of going through it. Until then, no gamedev things will happen, probably.

Speaking of, I thought about implementing my own language that transpiles to Lua. Not that I dislike Fennel, I just want something both simple and more robust, as well as the fact that I simply want to try tackling this task myself. It’s not exactly in the spirit of Crafting Interpreters, but I figured that there’s no point in creating a new runtime, unless you have some really interesting ideas to try. It’s a good task for education, but I feel that today we have way too many languages, and, honestly, I often think that most of these are just rehashes of existing ones, because people did not like one thing or another in the original.

I’ve mentioned that I’m thinking about leaving the net, and in fact, I actually have plans to do that. In fact, I’m already incorporating some changes to how I live - for the most part, now I try to keep my laptop offline. I won’t believe how less of a distraction it becomes this way! So, for the next year, I’m planning to continue keeping it offline, only going to the net when I need to search for something. I will make a proper post on this, once I have some results. Wish me luck though!

Additionally, I’m slowing down my response time by disabling notifications on my smartphone. This means that if someone writes me a message or an email I won’t be notified of it until I decide to check. I feel that this is a far less disturbing, and more productive model to use my phone. Can’t keep it offline, like my laptop, but that alone is already helpful. After all, emails and chats were meant to be asynchronous, so you should not assume that you’ll get the response instantly.

Definitely going to continue reading more books. Lately, I’ve started noticing that my general erudition is lacking, so I don’t know, but maybe alongside to tech and psychology books I will also try to squeeze in some classics. Maybe I’ll even start a series of posts with a theme of reading reports where I list books I read, with some thoughts on each.

Ending thoughts

This post came out longer than usual. Usual for a recap post, I mean. Probably because this year had a lot of stuff happening.

Anyway, I’m interested in your feedback! Not on this particular post, but in general, I mean. Recently I added a ‘Comment’ button at the end of each post, that allows anyone to send me an email. I already get emails from time to time, so I figured I’d help people reach me by providing a dedicated link for each post with the automatic subject so I could categorize these in my inbox.

Such feedback often encouraged me throughout this year, and I’m trying to make this blog better based on your suggestions. Maybe you want me to cover something, or maybe you completely disagree with something I said - I’m open to any kind of feedback. All such conversations are private, so don’t be shy - if you have something to say, you can reach me!

That’s all from me for this year, so… See you next year!