Geordi provides a pretty neat way to generate beautiful commit messages according to your stories in Linear: geordi commit
Geordi's cucumber command has a --rerun option that reruns failing tests the given number of times. Usage: geordi cucumber...
Let's say you have a gem which has the following module: module SuperClient def self.foo 'Foo' end
Most forms have a single submit button that will save the record when pressed. Sometimes a form needs additional submit...
Migrating data from a legacy into a new system can be a surprisingly large undertaking. We have done this a...
In general, the tracker should always be the definitive source of truth of what needs to be done as part...
In a project team for a bigger project people have several roles: Developer: at makandra Project lead: at makandra
At makandra, we've built a few gems over the years. Some of these are quite popular: spreewald (> 1M downloads...
For webpages to load fast it's recommended to optimize images. Ideally an image's file size should be as...
Background information about session storage in Rails Rails has a default mechanism to store the session in the CookieStore. This...
Whenever is a Ruby gem that provides a nicer syntax for writing and deploying cron jobs. Leading zeros are important...
Authentication is a special part of web applications. On the one hand, it usually is a crucial security mechanism restrict...
For outputting a given String in HTML, you mostly want to replace line breaks with or tags.
Don't sum up columns with + in a sql-query if NULL-Values can be present. MySQL and PostgreSQL cannot...
When you have string contents (e.g. a generated binary stream, or data from a remote source) that you want to...
Form fields can be rendered as noneditable by setting the disabled or the readonly attribute. Be aware of the differences...
Note netstat has mostly been superseeded by its more modern rewrite ss which nowadays comes pre-installed rather than netstat...
Understanding your type of cronjob Some cronjobs must only run on a single server. E.g. when you run nightly batch...
TL;DR Use user.update!(remove_avatar: true) to delete attachments outside of forms. This will have the same behavior as...
This is a small example on how you can check if your Postgres index can be used by a specific...
By default, browsers will not wrap text at syllable boundaries. Text is wrapped at word boundaries only. This card explains...
Checking if a JavaScript value is of a given type can be very confusing: There are two operators typeof and...
RSpec allows you to mark a single Example/ExampleGroup so that only this will be run. This is very useful when...
If you already selected an element and want to get its parent, you can call find(:xpath, '..') on it.