Things I learned while building a yt-dlp wrapper
An opportunity to learn new things is a great reason to pursue side project.
An opportunity to learn new things is a great reason to pursue side project.
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.
The cheat.sh utility allows you to access a lot of comprehensive, community-driven cheatsheets for many popular tools.
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.
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.
It’s never going to be perfect anyway. Learn to accept the “good enough” and move on to more meaningful things.
Let’s see how we can change the axis from horizontal to vertical once the elements no longer fit the screen properly.
With a tool called utterances, it’s very easy to add comments to your website with minimal code and no need for a database.
In this post I will show you how to make an expandable text controlled by a button using Jetpack Compose.
Factories for these models are a bit trickier to implement than the standard ones.
A comprehensive guide to inline functions, covering their purpose, practical examples, and tips for when to use or avoid them.
When updating Android Studio to Electric Eel, the location of the embedded JDK is changing.
LiveData created this way will only emit data when it has active observers.
This post will describe how I store and manage my dotfiles in a repository on GitHub.
It’s a typical use case, but it’s hard to find a concrete example in the documentation.
Testing the final result of a suspending function is easy, but what about verifying what happens inside it during the execution?
It always puzzled me so I decided to find out how are these things different.
System bar colors can be changed directly with Compose, without a need to modify any XML files.
The approach described here might be useful to you if your application has some sort of a personalized feed for each user.
It’s easy to do in a Blade file, but what about a Vue component?
Let’s explore their implementation details to see how they achieve this.
In this blog post, I list things that resonate with me most after reading this book.
If you do this, widgets that were placed on the home screen by your users will simply disappear.
The default solution with android:updatePeriodMillis doesn’t always work.
The order of operands can drastically affect the performance of your code.