Things I learned while building a yt-dlp wrapper

An opportunity to learn new things is a great reason to pursue side project.

October 10, 2024 5 min

Optimizing your workflow does matter in the long run

Having your environment tailored to you and the way you work can save you from context switching, losing focus, reaching for your mouse, or simply wasting time.

November 5, 2023 6 min

Accessing cheatsheets from the command line

The cheat.sh utility allows you to access a lot of comprehensive, community-driven cheatsheets for many popular tools.

October 8, 2023 2 min

Making the most of GitHub Code Search

The new search engine offers powerful code searching mechanisms we can leverage for quickly finding the code we need, as well as for exploration and learning.

September 30, 2023 6 min

Switching between apps using shortcuts on macOS

This is one of the most common activities when working on a computer. To make it as seamless as possible, I assigned a custom shortcut for every app I commonly use.

August 22, 2023 4 min

Stop perfecting your config

It’s never going to be perfect anyway. Learn to accept the “good enough” and move on to more meaningful things.

July 21, 2023 7 min

How to dynamically change UIStackView axis

Let’s see how we can change the axis from horizontal to vertical once the elements no longer fit the screen properly.

June 30, 2023 4 min

How to setup comments on your static blog

With a tool called utterances, it’s very easy to add comments to your website with minimal code and no need for a database.

May 30, 2023 4 min

How to make expandable text with a button in Jetpack Compose

In this post I will show you how to make an expandable text controlled by a button using Jetpack Compose.

April 28, 2023 5 min

How to create factories for models with polymorphic relationships in Laravel

Factories for these models are a bit trickier to implement than the standard ones.

March 29, 2023 3 min

Inline functions in Kotlin

A comprehensive guide to inline functions, covering their purpose, practical examples, and tips for when to use or avoid them.

February 23, 2023 11 min

How to fix the invalid JDK problem on Electric Eel

When updating Android Studio to Electric Eel, the location of the embedded JDK is changing.

January 20, 2023 2 min

Be careful when converting Flow to LiveData

LiveData created this way will only emit data when it has active observers.

December 31, 2022 5 min

Managing dotfiles with GitHub

This post will describe how I store and manage my dotfiles in a repository on GitHub.

November 30, 2022 4 min

How to draw content behind system bars in Jetpack Compose

It’s a typical use case, but it’s hard to find a concrete example in the documentation.

October 31, 2022 5 min

How to test intermediate steps in suspending functions

Testing the final result of a suspending function is easy, but what about verifying what happens inside it during the execution?

September 30, 2022 6 min

What is the difference between size and viewport size in vector drawables?

It always puzzled me so I decided to find out how are these things different.

August 31, 2022 4 min

How to change system bar colors using Jetpack Compose

System bar colors can be changed directly with Compose, without a need to modify any XML files.

July 20, 2022 4 min

How Twitter handled personalized timelines for their users

The approach described here might be useful to you if your application has some sort of a personalized feed for each user.

June 28, 2022 5 min

How to display responsive images from Laravel-medialibrary in Vue.js

It’s easy to do in a Blade file, but what about a Vue component?

May 29, 2022 3 min

How ViewModels survive configuration changes

Let’s explore their implementation details to see how they achieve this.

April 26, 2022 11 min

My key takeaways from The Pragmatic Programmer

In this blog post, I list things that resonate with me most after reading this book.

March 20, 2022 20 min

Do not change the package name or class name of your AppWidgetProvider

If you do this, widgets that were placed on the home screen by your users will simply disappear.

February 22, 2022 5 min

How to reliably update widgets on Android

The default solution with android:updatePeriodMillis doesn’t always work.

February 12, 2022 4 min

Beware of the order of operands in some Kotlin Collection operations

The order of operands can drastically affect the performance of your code.

February 1, 2022 6 min