Tech Time Capsule 2022
A Developer's Retrospective on a Year of Learning, Challenges
6 min read
Table of contents
- Here's to the ones that we got!
- Cheers to the wish you were here, but you're not
- The Happy Accidents
- Future Plans
With the year ending, I look forward to new beginnings, a new stage in my life. But it's always a good idea to retrospect.
I love learning new technologies and expanding my horizons. This blog will cover what I did, and didn't do and what I want to do next in my tech journey.
Here's to the ones that we got!
Yupp, that's memories from maroon 5, I AM NOT SORRY!! Anyway.. I set a lot of goals for this year, I met some of them! Here are a few:
Okay, yeah it's the new fad, but it's really not! You know, for the most part, you write in programming languages. But, in some cases, the languages write you. Rust is one of those cases. Exploring and learning Rust was eye-opening. it showed me what the tools we use, can do for us. I learned what DX really is, and how dev tools empower developers.
More than that, it helped me form an opinion on the Dynamic vs Static Typing Debate*. It's still not black and white for me, but I better understand the effect they have. It also helped me expand my thinking from the typical OOPs thinking that most of us develop in college.
I built a few things with it:
zero2prod-rs - My walk-through of the book Zero 2 Production in Rust
bm - A virtual machine, assembler, and disassembler
tqrs - A tqdm-inspired library for rust
NOTE: Most of these are just me playing around with it, it's not production ready, and will, most likely, never be.
An amazing language to learn both in terms of personal growth and future prospects, would 100% recommend it.
Learning more about software architecture
This one is an ongoing one. Software Architecture is just too beautiful to stop learning. This year, I explored a little more about
Domain Driven Design
Learning to write a programming language
It just seems cool, to write your own compiler. That's the job of God! Well, I tried. I'm in nooo way an expert though, just a random guy filled to the brim with curiosity! Here are my attempts if you wanna see them:
Disclaimer though, it's mostly stuff I learned through tutorials. I'll keep learning more to build something from scratch in the future!
Clox Interpreter - This is from Crafting Interpreters, an amazing read for any developer out there!
Monkey - This is from Writing Interpreters in Golang, again, amazing stuff, and I finally understood pratt parsing!
I love the idea of open-source software. Brilliant engineers, working together to make stuff for everyone! It just puts a smile on my face. So I started contributing on the side this year. This was a fun experience and I got a lot better at reading code!
Experimenting with Functional Programming
I had heard a lot about functional programming, so I started learning Haskell and elm! I've experimented a bit, it really does change your mindset about code and how it should be written. Will keep moving in this journey and keep you updated.
Understanding my tools better
I love the tools I use, especially because I like to tinker. I started using neovim and tmux this year! Here's an article if you wanna know more about neovim.
I also created a dotfiles repo, so I can back up my configurations and even you can use it!
Cheers to the wish you were here, but you're not
Okay, the last reference to memories, promise! Anyway, things don't always go according to plan. Here are things I wished to do, but couldn't
Learning Graphics Programming
It has always fascinated me. I even tried doing some GPU programming in C, C++, and Rust. Learned a little bit of OpenGL and a little bit of WGPU. But, it's not the tech where I'm stuck. It's how I am at visual stuff. I am bad at visual design, and I'll improve it in the future, till then, the terminal it is!
Learning Game Dev
Playing Games is fun, how cool would it be to make them? But unfortunately, I didn't do it this year, fingers are crossed for the next one 🤞.
Learning Music Production
I know it's not "tech", but I wanted to! Anyway, I couldn't get the time to do it this year, will definitely pick this up in 2023.
The Happy Accidents
As I said, things don't always go according to plan, and sometimes, it's a good thing! Here are things I didn't even think of planning, but am grateful I did.
Yeah, I already knew bash and python and a dozen more scripting/programming languages. But this year, I actually used them for my work. It was awesome! The things that took hours now took minutes.
Understanding what drives me as an Engineer
I like to build stuff! And so does every engineer out there. But, that's how I identified myself until now, but when I retrospect, I understand what excited me to do what I do. I love to use software and my skills to empower people. Using software to empower people to do what they do better, that's exciting! They can be normal users, business people, managers, and developers!
So, moving forward, I'll keep experimenting and building productivity tools, management tools, dev tools, etc. Not exclusively, but it's a new avenue I'd like to explore.
At Procol, I got the opportunity to do some platforms work, managing infra, building internal dev tools and metric trackers, etc. I loved it, it's amazing how helping people do their jobs better 10x-es your impact on the world. I also started learning docker, Kubernetes, and infra as code recently.
Looking forward to exploring it a little more.
I learned about monorepos, and what they can do for a team and a product. Every new thing you learn expands your thought process. I learned about nx. Another awesome tool in my toolbelt now!
I started writing blogs this year, not very regularly but it was liberating. Writing and articulating my ideas help me get a better grasp on them. It's like all those clouds of ideas in your head, just arrange into a nice structure, and you finally know the small details and the big picture! I hope to continue this the next year!
My Brain is for Idea generation, not information storage, we have SSDs
Writing and Showing My Work
I have a hard time showing my work, but this year, I aim to work on that. So for accountability, I'll post 1 blog a week consistently.
P.S. Help me out and let me know about blog ideas you have for me!
Learning more about Platforms
Platforms were fun, would love to explore more about them on the side, after all, learning never goes in vain.
Learning More Rust and Go
I honestly love Rust and Go. They are so different and make you think in different ways! You definitely should give them a try if you are looking for something new to explore!
More Open Source
I contributed to a few projects this year, but I want to dive deeper. Maybe even do some project of my own!
No matter what I plan, there's always some amount of luck, randomness, or serendipity involved. And I'm happy that it is! The amount of happy accidents I had really excites me for what 2023 has planned for me!
Here's to growing together, moving forward, and learning! Happy New Year 2023!!🎆
Did you find this article valuable?
Support KaviiSuri by becoming a sponsor. Any amount is appreciated!