Tips for using tree sitter queries
Tree-sitter is a powerful library for parsing all kinds of languages, but sometimes it can be tricky. Here are our tips on making the most of its queries.
The difference between Turbo Streams and Turbo Frames
On the surface, it can seem like Turbo's streams and frames are solving the same problem. Here's a quick overview on how they differ, and when to use each.
Snapshot testing ViewComponents with RSpec
ViewComponents are great, but testing them can be cumbersome. Here's how we approach using snapshot testing in these components in our Rails app.
How we use Static Code Analysis to map data flows
We're often asked how we map data flows. The answer is Static Code Analysis. Here's how we got to this point, and why we think it's a valuable technique.
How to build modals with Hotwire (Turbo Frames + StimulusJS)
Modals are a great use case for showing the power of Turbo frames and Hotwire. Here's an example of how we do it at Bearer.
Why Hotwire in 2021
Find out why engineering team at Bearer made the decision last year to swap from a React on Rails SPA to a Hotwire application.
Solving alias_method and prepend Conflicts in Our Ruby Agent
Ruby gems can sometimes conflict when instrumenting the same methods. See how we handle this issue by giving users the choice of which technique to use.
How Rust lets us monitor 30k API calls/min
An exploration into the transition from Node.js to Rust for Bearer's log ingestion service by Cédric Fabianski (CTO).