Systems | Development | Analytics | API | Testing

Elixir GenServers: Overview and Tutorial

Elixir describes itself as "a dynamic, functional programming language designed for building scalable and maintainable applications." Although it's a relative newcomer, Elixir is built on top of the functional programming language Erlang. Elixir is capable of using any Erlang library, and is ideal for use cases such as web development and distributed and low-latency systems. The power, dynamism, and feature-rich toolset of Elixir have made it somewhat of a "cult classic" among programmers.

What Is SDLC? Understand the Software Development Life Cycle

The Software Development Life Cycle (SDLC) refers to a methodology with clearly defined processes for creating high-quality software. in detail, the SDLC methodology focuses on the following phases of software development: This article will explain how SDLC works, dive deeper in each of the phases, and provide you with examples to get a better understanding of each phase.

Apache Kafka Example: How Rollbar Removed Technical Debt - Part 2

April 7th, 2020 • By Jon de Andrés Frías In the first part of our series of blog posts on how we remove technical debt using Apache Kafka at Rollbar, we covered some important topics such as: In the second part of the series, we’ll give an overview of how our Kafka consumer works, how we monitor it, and which deployment and release process we followed so we could replace an old system without any downtime.

What are the characteristics of a Mobile DevOps environment?

Shipping the right app with the right functionalities to the right customer, at the right time is how you boost your ranking in the app store. Some of the key steps in this process are: continuously releasing high-quality software, listening to feedback, and providing new features to users — before they even know that they want them. To achieve all of this, app developers need two main things: automation tools and a growth mindset.

Changing the Approach to Debugging in Ruby with TracePoint

Ruby has always been known for the productivity it brings to its developers. Alongside features such as elegant syntax, rich meta-programming support, etc. that make you productive when writing code, it also has another secret weapon called TracePoint that can help you “debug” faster. In this post, I’ll use a simple example to show you 2 interesting facts I found out about debugging.

Logging in Go: Choosing a System and Using it

Go has built-in features to make it easier for programmers to implement logging. Third parties have also built additional tools to make logging easier. What's the difference between them? Which should you choose? In this article Ayooluwa Isaiah describes both of these and discusses when you'd prefer one over the other.

Go Fast: Getting Started with Sanic for Python

Tired of waiting for sluggish HTTP requests to complete before your backend code can proceed with other things? Sanic is an asynchronous web framework in Python, that is built to be fast. In a world where Flask and Django are the most preferred web development options in Python, Sanic is the new kid on the block. It’s a promising alternative that is not only faster but also delivers efficiency, simplicity, and scalability.

SOLID Design Principles Explained: The Single Responsibility Principle

SOLID is one of the most popular sets of design principles in object-oriented software development. All of them are broadly used and worth knowing. But in this first post of my series about the SOLID principles, I will focus on the first one: the Single Responsibility Principle.