RSSAmplifier

Blog

solnic.dev

Elixir・Ruby・Programming・Open Source・AI

solnic.devRSS feed ↗15 posts

Latest posts

Introducing Drops.Relation: High-Level Relation Abstraction on top of Ecto

I'm excited to announce the latest addition to the Elixir Drops suite of libraries: Drops.Relation. This new library provides a high-level API for defining database relations with automatic schema inference and composable queries, simplifying database interactions when developing applications in...

TIL - Capturing logs in Elixir tests

Testing logging can be tricky but recently I've learned that Elixir's ExUnit ships with a CaptureLog module that makes it easy to test logging behavior. I was really happy to see this built-in! Let's say you have a function that processes a template and logs errors when something goes wrong....

Announcing TextParser for Elixir

I'm excited to announce the initial release of TextParser, a new Elixir library for extracting and validating structured tokens from text. Whether you need to parse URLs, hashtags, mentions, or custom patterns, TextParser provides a flexible and extensible solution. Why TextParser? TextParser was born from real-world needs

Retiring from the core teams

Today we’re announcing on the official Hanami blog that I am retiring from the core teams. It’s a decision I’ve made after about 2 years of contemplating how I want to move forward with my involvement with the Ruby community and its Open Source

Speed Up Your Elixir Testing with Custom Tasks and Key Bindings in Visual Studio Code

Testing is an integral part of software development that ensures your code works as expected. However, running tests can sometimes be a slow and cumbersome process, especially when you're looking to quickly iterate on your code. I use a "secret" method that allows me to quickly

2024 Status update

I'm working on becoming more active online and returning to my projects, so I thought it would be a good time to share what I've been up to lately. Over the past three years, many aspects of my life have changed, from receiving an ADHD diagnosis

Elixir Drops 0.2.0 with support for custom types was released!

Since the previous release in October, my intermittent efforts have been dedicated to developing version 0.2.0 of Elixir Drops, concentrating primarily on enhancing its type system. The main objective has been to introduce the functionality for users to create custom types and to enable their composition. I'

Introducing Elixir Drops

A few years ago my Ruby friends asked me if it would be possible to port some of the dry-rb libraries to Elixir. I remember some early community attempts at porting dry-validation specifically, I did my best to support the effort but back then my Elixir knowledge was

Rails and its Ruby dialect

This was originally titled "Rails is not written in Ruby" but based on feedback, I decided to change the title. I'm born and raised in Kraków, a beautiful city in Poland, maybe you've heard about it, maybe you've even been here. In Poland we speak Polish, which is a really difficult language,...

10 Years of Open Source

On June 4th, 2011 I released the first version of Virtus, a ruby gem that I extracted from the DataMapper project. I remember how I felt about Open Source back then, and I have to tell you that my perspective has changed a lot. 10 years, a freaking decade, is a lot of time...I've gone through a...

The 5 Rules of Simple RSpec Tests

The 5 "rules" I try to follow in order to write simple RSpec tests. Let's GO. 1. Max 2 levels of describe/context nesting Everything above 2 is a code-smell and causes alarm bells in my head to ring. The more levels of nesting you have, the harder it is to understand what a given example is...

Fixing Ruby 2.7 compilation error on Big Sur

We're in the process of upgrading to Ruby 2.7.2 at castle.io and today I had to install it on macOS Big Sur. Unfortunately, I hit a compilation error that looked like this: $ ruby-install ruby 2.7.2 # yada yada yada compiling dmyext.c translating probes probes.d . ./vm_opts.h compiling...

Open Source Status Update - August 2020

Hey y'all! It's time for another OSS update. I was quite busy with my "normal work" in August so unfortunately I didn't manage to work on rom-rb like I planned. I focused mostly on dry-rb maintenance work and growing my YouTube channel. OK let's see what happened! Saying "good bye" to...

Open Source Status Update – July 2020

In July I went on holidays and had quite a busy month at my day job but nevertheless I've managed to push things forward. Here's a summary of what happened! New dry-validation releases We've had two bug-fix releases of dry-validation. Just like in case of a couple of previous releases, there...

Be cautious with Ruby coercion methods

Coercion is a tricky problem to solve and it's something we need pretty much everywhere. Whether you're building a web application or a CLI tool, you will have to coerce values in some way. I say it's a tricky problem because Ruby comes with many builtin coercion methods but it's not enough....