[Dev Retro 2022] My Learnings as a Software Engineer in 2022

Wow, can you believe it? 2023 is just around the corner, and time seems to be flying by! Wow, time sure flies! It feels like I've been coding away, and before I knew it, so much has happened. So, without further ado, let's dive right in and see what's been going on!

Get Cozy with Fresh Libraries/Frameworks for App Development

You know, app development technology is evolving at lightning speed! The libraries we use today for creating web apps might be old news in just a couple of years. So, it's super important for us to keep leveling up our skills, especially when it comes to the libraries and frameworks we use for app development.

Last year, I had a blast learning how to develop web apps using vite + react, a cool alternative to CRA (Create React App) or nextjs. This year, I'm diving into web app development with astro and svelte. It's quite the adventure, tackling two libraries/frameworks simultaneously! On top of that, I'm working on a react app with ejected CRA, swapping out babel for SWC to speed up compile times, and sorting out decorator metadata issues with vite.

I'm also diving into Android app development! Initially, my certificate from Google Developer Kejar in 2019 was about to expire. But guess what? The Minister of Communication and Information in Indonesia invited me to join the DigiTalent Scholarship Professional Academy (DTS PROA). So now, I'm taking on the challenge of learning Kotlin to create awesome Android apps. Keep an eye out for my next article, where I'll share more about my exciting journey in Android app development!

Jumping Back into Article Writing After a 5-Year Hiatus

The last time I wrote an article was back in 2017 on the Medium web app, and it was in Bahasa rather than English. Since then, I just couldn't find the right moment or inspiration to get back into article writing. Instead, I found myself enjoying writing code more than crafting articles.

This year, I joined RWID (Remote Worker Indonesia), and my mentor encouraged me and other members to write articles related to our expertise in personal branding. I found myself wondering whether to stick with Medium or switch to DEV.TO, or explore other options. That's when I discovered Hashnode, a hassle-free blogging platform perfect for developers and tech enthusiasts to share their knowledge. It felt like the right fit for me, so I decided to integrate my subdomain, blogs.achmadk.dev, with Hashnode.

Discover and master git cherry-pick in my projects

Imagine you're working on a web app with three cool features: A, B, and C. Now picture this: your Project Manager decides to hold off on launching feature B until the next big announcement but wants features A and C to go live as planned. What would you do in a situation like this?

Here's where the git cherry-pick command becomes your best friend! All you need to do is identify the commit hashes for features A and C, and pop them right after git cherry-pick. Don't worry, the commit hashes for feature B won't sneak into the production branch.


Take a breather before moving on... Hey there! If your brain's feeling a bit toasty after the first half of this article, no worries at all! Take a moment to chill, treat yourself to some snacks, and then join me for the next exciting section below.


Up next: Dive into a Hackathon Adventure

Another awesome milestone I reached was joining a hackathon! Thankfully, Hashnode and PlanetScale hosted one back in July 2022, and I was super pumped to take part. All you had to do was whip up a web app and share your journey through an article – no need to stress about marketing or anything like that. So, I put together an open-source web app called Easier Qurban Experience (EQExp). Curious to learn more about EQExp? Just click here for all the juicy details!

Oops, my time management wasn't the best while developing the app. I started strong but hit a slump in the middle. In the last week of July 2022, I tried to catch up, but a pesky technical issue got in the way. Sadly, my app wasn't finished, and I only received a participation badge for the hackathon. Lesson learned – I'll work on better time management for future projects!

Nailing Hacktoberfest Assignments

At last, I didn't repeat the same mistake from the hackathon during Hacktoberfest. I happily managed to submit 4 qualified pull requests (PRs) as per Hacktoberfest rules, even though I submitted them to my own GitHub repositories.

I also took part in Hacktoberfest 2020, but sadly, I couldn't manage to submit at least 4 PRs due to poor time management. Unfortunately, I won't be able to participate in Hacktoberfest 2021 since I'm swamped with work at my company. However, I'm delighted to contribute to the open-source EQExp web app (which I continued after the hackathon) and an npm library called pasetors-wasm during Hacktoberfest, even if it's just a small contribution.

How about creating a web app with a lower CO2 footprint per visitor?

I stumbled upon a cool web app called websitecarbon.com that calculates the carbon footprint of your website. It shows how much CO2 (Carbon Dioxide) is produced each time someone visits your site. Plus, it reveals the environmental impact if your site hits 10,000 monthly page views per year. The cherry on top? It can even tell if the web app you've entered uses eco-friendly hosting or not.

I may not be an eco-warrior with the time to jet-set around the globe planting trees, nor do I own an electric vehicle just yet. But hey, I'm doing my part in my little way! Living in Indonesia, where fossil fuels still power our electricity, I'm striving to make a difference by creating eco-friendly web apps. Fingers crossed I can afford green hosting soon, even though it's not yet available in my country. Let's all do our part to protect our planet, no matter how small the effort!


Lastly, let's focus on reflecting rather than dwelling on our journey so far. Reflection allows us to:

  1. Let's help our future selves learn and grow even more!

  2. allows you to ponder over your learnings, slip-ups, and ways to enhance your skills,

  3. help us make wiser choices going forward,

  4. Exploring within ourselves for chances to grow and enhance our skills.,

  5. and turn mistakes into chances for personal growth.

On the flip side, rumination means dwelling on what didn't go as planned, which can hold you back from moving on. When you find yourself caught up in the same negative thoughts over and over, it becomes tough to take a step forward.

How about sharing your thoughts? I'd love to hear your reflections too!