RSSAmplifier

Blog

Geeky Tidbits

Tidbits on software development, technology, and other geeky stuff

geekytidbits.comRSS feed ↗10 posts

Latest posts

SQL Join Strategies and Performance in PostgreSQL

When you write a SQL query that joins two or more tables, PostgreSQL has to decide how to execute that join. The strategy it chooses can have a big impact on performance. Understanding the different join strategies can help you write more efficient queries and optimize your database. Let’s take an example. We have two tables: users and posts . We want to find all posts made by a user with the…

Posting to Bluesky from Zapier (for free)

Zapier recently added a Bluesky app but unfortunately it is designated as Premium. This means that you need to pay for a Zapier subscription to use it. However, you can still post to Bluesky using the Code by Zapier app , which is free to use. Here’s how to do it! First of all, you’ll need to create a Bluesky app password to use. Go to https://bsky.app/settings/app-passwords and generate a…

SvelteKit with Drizzle and Cloudflare D1

I recently started a little side project for my wife and decided to use SvelteKit to build it and Cloudflare to host it. Along the way I decided to use Drizzle ORM along with Cloudflare D1 to store the data. I was really happy with how everything worked but I did run into a few issues: using a local SQLite database for development and applying migrations to both dev and production environments.…

Batch Deletes in Postgres

If you need to delete many, many rows in a Postgres table, issuing a single DELETE statement can be problematic for a few reasons: It can take a very long time to complete It can lock rows for the duration of the delete leading to blocked queries It can cause the the transaction log to become huge because the delete transaction is so large To work around these issues, you can delete rows in…

Automatic installation of recommended VS Code Extensions

Recommended extensions in VS Code are a useful way to keep a development team on the same page. You can recommend extensions that perform formatting when saving files, show lint warning, and many other things that are useful when collaborating together on a codebase. If extensions are recommended, VS Code users should see the following popup when opening the workspace folder: There is a problem…

Dealing with Burnout

This year marks 20 years since I graduated from university and entered the real world as a software developer. Throughout that time I have dealt with burnout many times and have learned a few things about working through it. How do you even describe or define “burnout”, anyway? For me, it’s when I feel like I simply cannot go on. I am exhausted and either depressed or seemingly on the verge of…

Syndication Fetcher

In the past few days I have been working on a tool to fetch new entries from RSS and Atom feeds and send them to myself via an email. I tried a few npm packages for fetching and parsing the feeds but never came across one that worked the way I wanted it to. So, I decided to write and publish my own. The library package is named syndication-fetcher . The repository is located here:…

Playing with SvelteKit and Cloudflare Pages

SvelteKit is a web framework I’ve been keeping my eye on. Sure, it builds upon Svelte, but there is a lot more to it. It uses Vite for build tooling, has a simple file-based routing system, and allows you to build “Transitional Web Apps”, as Rich Harris calls them in his Have Single-Page Apps Ruined the Web? talk from Jamstack Conf 2021. I think at first glace it looks like a great framework for…

Daily WTF JavaScript

I have been itching to build something recently. In the not so distant past when I’ve had this desire I ended up building a project template as a way to learn some new things and create a scaffold for a project I might tackle in the future. But, this time I decided I want to build something that I could actually publish. What I ended up building is silly and trivial but it was fun: Daily WTF…

I switched to an iPhone

For the past 10 years I’ve been an Android user. And, I’ve exclusively had Google phones, starting with the Nexus 5 and most recently the Pixel 3 . Before that, I had an iPhone 4 . But, I just switched back and now have a shiny new iPhone 13 mini. So why did I switch? It came down to 3 reasons: The size. I like the smaller size and I can’t find a new, flagship Android phone in this size. The app…