makandra Curriculum

makandra offers an 8 month paid trainee program 🇩🇪 for junior developers that are looking to start a professional career in...

docs.zizmor.sh

The linked tool can be used to scan your CI/CD workflows for potential security issues and suboptimal defaults if they...

prettier calls itself an opinionated code formatter. I recommend using it for your JavaScript and TypeScript code. prettier only concerns...

Coverage reports are rarely useful if you run only small parts of your test suite. Just do not load SimpleCov...

api.rubyonrails.org

In Rails 7.2. the feature ActiveRecord.after_all_transactions_commit was added, for code that may run either inside or outside...

When you repeat complex assertions in your tests multiple times, it might be a good idea to extract a custom...

The DB schema is the most important source of truth for your application and should be very self-explanatory. If...

Even if you don't make any beginner mistakes like N+1 queries or missing DB indices, some requests can...

Why Rails has multiple schema formats When you run migrations, Rails will write your current database schema into db/schema.rb. This...

DirectUpload allows you to upload files to your file storage without having to wait for the form to submit. It...

PostgreSQL can cosplay as a full-text search engine. It doesn't have the features or fidelity of ElasticSearch or...

Method delegation in Rails can help you to keep your code organized and avoid deep call chains (law of demeter...

Given there is a user with an attachable avatar: class User < ApplicationRecord has_one_attached :avatar end

The key to unlocking the full potential of LLMs in coding lies in crafting precise prompts. The main challenge is...

In Slack, the settings dialog only offers a fixed selection of fonts. You can use any font you like using...

Rails wraps your parameters into an interface called StrongParameters. In most cases, your form submits your data in a nested...

When setting up cronjobs, commands somtimes output something every time. If these commands don't support limiting their output to...

When Ruby objects are inspected in any modern IRB, some objects (like ActiveRecord instances) are rendered with neat colors and...

blog.saeloun.com

Rails' fragment caching caches subtrees of an HTML document tree. While constructing that tree though, it can be really hard...

makandra dev

YJIT is Ruby's default just-in-time compiler. It is considered production-ready since Ruby 3.2 (source).

makandra dev

Git has the concept of hooks: bash scripts that are invoked at certain points in the Git lifecycle. One handy...

docs.aws.amazon.com

The general purpose T instance types are a good starting point. But depending on the CPU utilization of your workload...

github.com

Zeitwerk is the new autoloader of Rails. It is mandatory starting with Rails 7.0. Sometimes, a model needs to know...

Rails 7.1 added the normalizes method which can be used to normalize user input. It lets you define the fields...