About Ritchie

Where Ritchie came from?

Ritchie's objective is to improve the developer’s experience, bringing them more autonomy, automating and simplifying the execution of commands that are widely used in the process of creating and developing digital products. Its name is a tribute to Dennis Ritchie, one of the creators of Unix (predecessor of Linux) and also of the C language. One of the pioneer of the digital world as we know it today. Despite the number of multidisciplinary teams in the market, a great challenge still is to reduce the dependence that developers have on inputs coming from the infrastructure and operations teams. DevOps did a lot to remedy this bottleneck, but it did not completely eliminate the dependency between areas.

With that in mind, we bring a tool to the community that promotes a NoOps movement, a solution that automates repetitive operations and streamlines processes (also known as toil) that are often hampered in the infrastructure. This will give developers the ability to perform operations that were exclusively the infrastructure's domain.

In that way, professionals - on all fronts - gain time to work on more complex and relevant tasks to generate value for their project.

Demonstration of a formula following the NoOps mindset

What makes Ritchie different?

Because it is a CLI tool, Ritchie seeks to improve the operational developers' experience and brings beneficial such as:

  • Simplify repetitive and easy-to-execute tasks

  • reduce the rework

  • Promote more time for the development team to focus on their deliveries.

So, instead of writing down on the command lines which parameters and / or arguments the user needs to inform, we do the opposite: Ritchie presents the available options and goes, line by line, asking for the information needed for the command to work, in an interactive way.

In the example below, we have the execution of a scaffold command with the coffee formula. As the user signals which formula he wants to use, the system automatically passes, line by line, asking which specific parameters must be considered to perform the desired action.