value through software
Hi, my name is Martijn Storck!
I'm located in the Eindhoven area of the Netherlands.
I am available as freelance Ruby on Rails developer and DevOps consultant.
Get in touch if you need a senior developer to boost your project.
Also I write stuff, which can be found below.
I always thought indentation was a solved problem, until I needed to adapt
to something different. Here’s a trick to force correct indentation for your
.NET projects by using the Omnisharp language server.
Years ago I replaced my IKEA TRÅDFRI gateway with a Rasbperry Pi with a Raspbee, running deCONZ. It allowed me to mix and match ZigBee devices from various brands and make flexible configurations. Plus the integration with Home Assistant is superb.
However, one thing I lost is the ability for the IKEA remote to control my lights directly when the deCONZ gateway is down, which was possible back when I used the IKEA gateway.
People have been sleeping on .NET and they’re mising out. With the release of .NET 5 this month, it’s time to consider C# .NET for your next project! It’s a great general-purpose software framework that’s likeable, in high demand, easy to sell to customers, has decent performance, is completely open source, mature and has a large backing. What more could you want? Let me explain to you why I see it as the best alternative for Ruby on Rails and share some resources to get you started.
Programming fonts are stuck in the past. Proportional typesetting is everywhere and
there is no reason why you can’t use it for code.
Cypress makes writing integration tests (or system tests) easier and more fun. This posts shows you the tools needed to add Cypress tests to your Rails application.
Docker image size matters. Here’s how you build a small image on top of debian:slim and why
that’s a better option than alpine or scratch.
Gitlab CI allows you to create and manage Kubernetes clusters directly from the interface and easily deploy builds to your existing Kubernets infrastructure. Here’s how.
Since the introduction of the Magic Keyboard, interest in using an iPad as a remote terminal for desktops is bigger than ever. The tool of choice for many iPad enthusiasts seems to be Jump Desktop, which supports VNC, RDP and their proprietary Fluid protocol. Let’s try to get the most out of it when connecting to a macOS desktop.
Prometheus Operator is the perfect cloud-native monitoring solution for Kubernetes. By deploying the Helm chart you get a preconfigured Prometheus and Grafana setup plus an array of CRDs to add monitoring your own services.
Not everything necessarily lives in a Kubernetes cluster, though. So how would you add external targets to a Prometheus Operator setup? One could define an Endpoint, Service and ServiceMonitor for the external resource to have it picked up by Prometheus' Kubernetes service discovery, which works, but there is a better solution that is more in line with how Prometheus is used outside of the Operator deployment.
TL;DR I wrote a super fast Excel file reader called Xsv, check it out! It’s fast and low on memory because it uses a SAX-based XML parser instead of a DOM-based one. Here’s some benchmarks to prove it.
Simple API for XML, or SAX for short is an event-based API, of which development started in December 1997 1. It is an alternative to the well-known Document Object Model, which was developed around the same time 2.
The topic of this post is neither new nor original, so I’m going to keep things short. People have been using jemalloc with MRI Ruby for years and praising it’s benefits all the while. The TL;DR here is: for Rails apps, using jemalloc will reduce memory consumption and might increase performance a little.
Why? To illustrate my own experience, here’s a Grafana graph showing the effect of switching to jemalloc on a production server running a few instances of a Rails application:
Another advantage Webpack brings is the excellent source maps. I was surprised to see the source code of my Svelte components, complete with comments available from the Firefox development tools:
For a long time I’ve been thinking about getting out of my comfort zone and try to develop a game for something like the Sega Mega Drive or maybe the Atari 2600. But for a spoiled high-level developer like me that would be quite a daunting task so I’ve postponed indefinitely.
Then last week, in the midst of the COVID-19 crisis, I stumbeld upon this awesome project called PICO-8. To quote the official website:
If your Wi-Fi network is on channel 12 or 13, change the regulatory domain of your
wireless networking driver to make the Raspberry PI 3B see it.