Systems | Development | Analytics | API | Testing

Managing PostgreSQL table partitioning in Ruby

If you have the pleasure of working with a Rails app that uses a lot of data like logs, events, and metrics, you’ve probably run into performance issues at some point due to large tables. Deleting high quantities of rows can bring your database server to its knees or slow down queries to unacceptable latencies. PostgreSQL table partitioning is an excellent solution to these sorts of problems.

Django AWS deployment with Elastic Beanstalk

Almost every web application is built for end-users to view and use. The application deployment process is an important operation in software development because it allows software to fulfill its purpose. This tutorial is primarily for software companies and developers to aid them in deploying and scaling web applications and services using a platform that automatically handles deployment with ease. Therefore, in this tutorial, we will be deploying a Django application to AWS.

The ultimate JavaScript regex guide

The string is arguably the most essential data type in programming — every programming language and software in the world uses strings in one way or another. It enables humans to easily communicate with sophisticated programs and machines. One thing that would help you a lot as a programmer is understanding how to use and manipulate strings so that you can build programs users love.

Is No PaaS really a good idea for Rails?

Rails 8 shipped with a bold premise: “No PaaS Required.” As cloud platforms have grown more costly, Ruby on Rails has shifted to reducing external infrastructure dependencies so that developers can deploy and run applications with fewer ever service dependencies. Traditionally, deploying a Rails app to the internet has meant provisioning a database server (e.g., PostgreSQL) and additional services like Redis for caching, background jobs, or WebSockets.

Cool Ruby regex tricks

In Ruby, regular expressions can be challenging to learn, but they're a powerful tool to parse and manipulate text in your Ruby code. There are plenty of gotchas, but Ruby regex skills will pay dividends if you take the time to practice them. We thought it'd be fun to complement our article about regex conditionals in Ruby by looking at some other neat but uncommon tricks you can do with regexes in Ruby. Some of these tricks are Ruby-specific, but many apply to regular expressions in any language.

Go write a web app! Five interesting Go web frameworks

Go is an incredibly useful programming language, but not all that popular among web developers. Most other languages that are used for web development have dominant frameworks - Ruby has Rails, PHP has Laravel, Python has Django, and so on. Golang web frameworks for web development are a bit more fractured with several competing (and in some cases complementary) options.

A guide to custom model casts in Laravel

Model casts, mutators, and accessors are something you work with a lot when building Laravel applications. They play an essential role in how you interact with your models and their underlying data. Laravel ships with a variety of handy, built-in casts which cover the majority of your use cases. But there may be times when you need to create your own custom casts to handle storing and retrieving data in a specific way.

The ultimate guide to Python exception handling

Exceptions can occur for various reasons, such as invalid input, logical errors, file handling issues, network problems, or other exception conditions. Examples of exceptions in Python include ZeroDivisionError, TypeError, FileNotFoundError, and ValueError, among others. Exception handling in Python is a crucial aspect of writing robust and reliable code in Python.

Going deep on UUIDs and ULIDs

Not too long ago the Honeybadger team was debating between ULID vs UUID choice for primary keys. Ben, our dev-ops master, mentioned that he wished he'd used ULIDs instead of UUIDs for a particular system we built. Like any seasoned engineer in software development, my initial reaction was to mumble something non-committal and then sneak over to Google to try to figure out what the hell a ULID is. UUIDs are a bit more common, but I hadn't even heard of ULIDs.

Better stability with Rails load testing in Apache JMeter

Before we can release our software to end users, we must perform different kinds of tests to ensure that the application is bug-free and meets business requirements. When users begin using the application, various things can cause the application to behave unexpectedly, for some of the following reasons: For large-scale applications, these things are crucial to know before a full-fledged release.