<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>rbino</title><link>https://rbino.com/</link><description>Recent content on rbino</description><generator>Hugo</generator><language>en-us</language><copyright>© rbino</copyright><lastBuildDate>Sat, 26 Apr 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://rbino.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Talks</title><link>https://rbino.com/talks/</link><pubDate>Sat, 26 Apr 2025 00:00:00 +0000</pubDate><guid>https://rbino.com/talks/</guid><description>Here&amp;rsquo;s a collection of talks I&amp;rsquo;ve given at conferences, meetups etc.
TigerBeetlex for Zig developers (video not available) Beyond your first NIF (video not available yet) TigerBeetlex: an Elixir and Zig love story Craft your query DSL with NimbleParsec and Ecto Distributed Zig with Elixir and Zigler Beyond the MQTT Broker (video not available) Party like it&amp;rsquo;s 1989: Making Music with a Game Boy (italian) Audio Production on Linux (italian) Git first steps (italian)</description></item><item><title>build_dot_zig</title><link>https://rbino.com/posts/build-dot-zig/</link><pubDate>Wed, 13 Dec 2023 08:05:42 +0100</pubDate><guid>https://rbino.com/posts/build-dot-zig/</guid><description>A nice byproduct of my work on TigerBeetlex is a library called build_dot_zig. It&amp;rsquo;s similar to elixir_make, but it allows you to use the Zig build system instead of make to define your build steps and have them automatically execute during mix compile. You just put a build.zig file in your project root, add :build_dot_zig to your Mix compilers and you can start leveraging it as a build system for your NIFs, or in general to Do Stuff™.</description></item><item><title>Wrap your NIF with Zig</title><link>https://rbino.com/posts/wrap-your-nif-with-zig/</link><pubDate>Wed, 09 Aug 2023 23:47:17 +0200</pubDate><guid>https://rbino.com/posts/wrap-your-nif-with-zig/</guid><description>If you&amp;rsquo;ve heard about Zig, you&amp;rsquo;ve probably heard about comptime, its mechanism for doing introspection, metaprogramming, and more. I&amp;rsquo;m probably in my honeymoon phase with comptime and I like to throw it at almost everything. The great thing about it is that you write some code and think &amp;ldquo;This makes sense, will it Just Work™?&amp;rdquo; and it actually does.
Today I&amp;rsquo;m going to show you an example of how it can be used to abstract away some common code that appears at the beginning of all Elixir1 NIFs, allowing the resulting code to be more clear in its intentions by removing some mechanical noise.</description></item><item><title>Rock, Paper, Scissors</title><link>https://rbino.com/posts/rock-paper-scissors/</link><pubDate>Mon, 05 Dec 2022 12:19:47 +0100</pubDate><guid>https://rbino.com/posts/rock-paper-scissors/</guid><description>This is an external post of mine. Click here if you are not redirected.</description></item><item><title>Zig + STM32F4Discovery = Blink</title><link>https://rbino.com/posts/zig-stm32-blink/</link><pubDate>Tue, 13 Apr 2021 22:53:00 +0200</pubDate><guid>https://rbino.com/posts/zig-stm32-blink/</guid><description>I recently discovered the Zig programming language thanks to this post, which first caught my attention for the mechanical keyboards background. I liked the premise of Zig&amp;rsquo;s aim to be a &amp;ldquo;better C&amp;rdquo;, as opposed to other languages (e.g. Rust) that tend more towards &amp;ldquo;better C++&amp;rdquo;, so I decided to give Zig a try and use it to do something I would usually use C for: programming a microcontroller.
This post will walk through the example, discussing some of the choices I&amp;rsquo;ve made and the tools I used.</description></item><item><title>(yet another) Hello World</title><link>https://rbino.com/posts/hello-world/</link><pubDate>Thu, 01 Apr 2021 00:59:54 +0200</pubDate><guid>https://rbino.com/posts/hello-world/</guid><description>Here&amp;rsquo;s a shiny new blog, I will try to fill it with some content.
I&amp;rsquo;m writing the first post on the 1st of April so I can have my easy way out.</description></item><item><title>About</title><link>https://rbino.com/about/</link><pubDate>Fri, 18 Oct 2019 00:00:00 +0000</pubDate><guid>https://rbino.com/about/</guid><description>Hi, I&amp;rsquo;m Riccardo!
During the day I mostly do backend development using Elixir, but I also like messing with other stuff like embedded development, electronics, music, and cooking.
I&amp;rsquo;m a strong believer in having many different tools in the toolbelt to avoid using a hammer to plant screws.
I&amp;rsquo;m a big yak shaver and I tend to start a new project before I&amp;rsquo;m finished with the old one. This blog is also meant to force myself into finishing things so I can write about them.</description></item><item><title>License</title><link>https://rbino.com/license/</link><pubDate>Fri, 18 Oct 2019 00:00:00 +0000</pubDate><guid>https://rbino.com/license/</guid><description>Content license All non-code blog content is licensed under the Creative Commons BY license.
Code license All source code files and snippets found on this blog, unless otherwise explicitly noted, are licensed under the MIT license, as reported below.
Copyright © Riccardo Binetti
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &amp;ldquo;Software&amp;rdquo;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</description></item></channel></rss>