is a website and blog with stuff about bash. But how it all started? And who is this guy Alin? Read on!

Imagine your first day at work. Peter hands you the latest “user friendly” Linux distro, freshly baked from the CD Writer. You take it and read “RedHat Linux 7.3”. It’s how I started my first corporate job. I had to offer support to customers that wanted to integrate their Linux and Unix mail servers with our antivirus product. My main task was to be a problem solver, which paved the way towards learning bash.

It was at that job when I realized that bash is one of the most accessible tools out there. It was installed on all Linuxes, on some BSDs and even on some other Unix or Unix-likes. But at the same time it was – and still is – one of the most underutilized tools.

In the early 2000s there was no Stack Overflow. There was, however, Google, but not too many bash experts out there. So I had two choices: either work around problems with lots of pipes to grep, awk and sed, or learn the bash guide from the TLDP. I chose the first one, just like everyone else.

But then I found myself into another job. Different brand, different product, same company and same people. Our in-house Debian package building scripts (there was no Ubuntu back then) were working ok most of the time, but sometimes were crashing with:

-bash: line 1: syntax error near unexpected token 

and yet, line 1 was reading #!/bin/bash. What syntax error could be here? Nobody had answers for it. I spent a lot of time debugging, but in the end I sorted it. It was of course a null variable inside a command substitution. Since then, I took over the release engineering role, which involved even more bash.

But the only piece of documentation to answer my bash problems was the mighty man bash. There were guides out there, but mostly for beginners. I was reading tens of kilobytes of text but only finding one or two new things. And not even exciting ones. All this had to come to an end. This is why was created.

In the today’s ever-changing software development environment, we all come across bash every time you need to glue two pieces together in a DevOps pipeline, or a build script, or anywhere you need automation.

Bash is more than a command line prompt or interpreter. It’s a programming language which is capable of performing as good as Python or other similar programming languages.

I am Alin Dobre and my mission is to bring the programming side of Bash into the spotlight. I have over 15 years experience in writing shell scripts and since 2013 I am the main contributor to a bash only cloud stack. I never use Stack Overflow to find answers to my bash questions, I only use the bash manual. That said, I still get surprised from time to time by some undiscovered bash feature, which keeps me motivated to carry on.