Articles

Rails 8: Brakeman added as default

Rails 8 adds Brakeman as default As of February 2024, new applications using Rails 8 have Brakeman by default. For previous Rails versions, you can install Brakeman using RubyGems, Bundler, or Docker: RubyGems: gem install brakeman Bundler: group :development do gem 'brakeman' end Docker: docker pull presidentbeef/brakeman What is Brakeman? Brakeman is a security scanning tool specifically designed for Ruby on Rails applications. It's an open-source static analysis to...

What is Trunk-Based Development?

Introduction It is a branching model for software development. Historically, it has also been called “mainline” (see later). It requires much more concentration and rigor, than making a branch (on the shared source-control server) to suit a whim. Though you could do it without Continuous Integration (CI), as many open source projects do, for enterprise development you have to have CI linked to the trunk, enforcing multiple aspects of “that commit was good”. In this article, I’m saying noth...

What is SAML and how does it work?

SAML SAML stands for Security Assertion Markup Language. It is an XML-based open-standard for transferring identity data between two parties: an identity provider (IdP) and a service provider (SP). Identity Provider — Performs authentication and passes the user's identity and authorization level to the service provider. Service Provider — Trusts the identity provider and authorizes the given user to access the requested resource. SAML is a standardized way to tell external applications an...

A/B testing

What is A/B testing? A/B testing (also known as bucket testing or split-run testing) is a user experience research methodology. A/B tests consist of a randomized experiment with two variants, A and B. It includes application of statistical hypothesis testing or "two-sample hypothesis testing" as used in the field of statistics. A/B testing is a way to compare two versions of a single variable, typically by testing a subject's response to variant A against variant B, and determining which of ...

Expectations Are Rising. Can Your Customer Experience Keep Up?

In today’s connected world, managing customers and creating new, positive experiences is a challenge for organisations of all shapes and sizes. Successful companies understand that an initial sale is only the beginning of the customer relationship. Like all of us, I am a consumer. Working at a customer focused company has made me hyper aware of brands who do (and do not!) provide positive customer experiences. I recently had to make a change to a flight I had scheduled, I generally opt for ...


Tutorials

What are modules, concerns and mixins in Ruby on Rails?

Ruby on Rails (RoR) is a popular web application framework that leverages the Ruby programming language. It introduces several mechanisms to organize and reuse code, among which concerns, mixins, and modules are prominent. Understanding these ...

Implementing the Singleton Design Pattern in JavaScript

What is the Singleton design pattern?   The Singleton design pattern is a creational pattern that states that one and only one instance of a class would persist in the memory during the application's life cycle. In other words, this design patte...