Python | Stack | Fluid Attacks Help

Bash

Rationale

Bash is Fluid Attacks' main shell.

The main reasons why we chose it over other alternatives are:
  1. It is Open Source.
  2. It is POSIX compliant.
  3. It is one of the most reliable shells out there.

Alternatives

Zsh

  1. It is Open Source.
  2. It is a much modern shell.
  3. It is the default shell for macOS, allowing us to use one shell for everything.
  4. It is one of the most reliable shells out there.
  5. It supports many plugins via Oh My Zsh.
  6. It has better autocompletion support.
  7. It supports built-in syntax highlighting. 
  8. It provides linters and formatters, increasing code quality.
Zsh looks like a very solid alternative for pretty much everything that is currently built in Bash, as it provides a middle ground between modernity, flexibility, stability and development experience.

Xonsh

  1. It is Open Source.
  2. It is a much modern shell.
  3. It integrates with Python, increasing flexibility and decreasing cognitive load on developers.
  4. It benefits from the entire Python ecosystem, increasing flexibility.
  5. It lacks linters and formatters, decreasing code quality.
Xonsh looks like a solid alternative for pretty much everything that is currently built in Bash, as it provides a middle ground between modernity, flexibility and development experience.

    Usage

    Bash is used by all AWS EC2 servers, which basically comprise the entirety of Fluid Attacks' infrastructure.