It’s too easy to overlook the countless hours of dedication poured into the open source software that powers our digital lives. I want to take a moment to express my appreciation and admiration for one of the many unsung heroes of my digital world, who’s software I use all the time.
David Peter / sharkdp
GitHub Profile
- Location: Stuttgart, Germany
- Followers: 5684
- Public Repositories: 104
- https://david-peter.de/
- Sponsor David Peter (sharkdp)
These are the projects of theirs that I love & use the most:
bat
A cat(1) clone with wings.
Bat is a cat
clone with syntax highlighting for loads of languages, Git integration - and it’s written in Rust, so it works on Linux/Windows/MacOS. It’s completely replaced cat
for me:
alias cat="bat"
fd
A simple, fast and user-friendly alternative to ‘find’
fd is very fast (parallelized directory traversal), flexible, and intuitive (fd PATTERN
instead of find -iname 'PATTERN'
) utility for searching files and folders. It supports regular expressions or glob-based patterns, color-coded file type highlighting, and smart case-insensitivity. It ignores hidden files and directories and patterns from .gitignore by default - and also supports parallel command execution.
This is what tldr fd
says:
- Recursively find files matching a specific pattern in the current directory
fd "string|regex"
- Find files that begin with
foo
fd "^foo"
- Find files with a specific extension
fd --extension txt
- Find files in a specific directory
fd "string|regex" path/to/directory
- Include ignored and hidden files in the search
fd --hidden --no-ignore "string|regex"
- Run a command on each search result returned
fd "string|regex" --exec command`
hyperfine
A command-line benchmarking tool
I don’t always run benchmarks, but when I do I use Hyperfine! This is much better than running the traditional time <cmd>
:
This is what tldr fd
says:
- Run a basic benchmark, performing at least 10 runs
hyperfine 'make'
- Run a comparative benchmark
hyperfine 'make target1' 'make target2'
- Change minimum number of benchmarking runs
hyperfine --min-runs 7 'make'
- Perform benchmark with warmup
hyperfine --warmup 5 'make'
- Run a command before each benchmark run (to clear caches, etc.)
hyperfine --prepare 'make clean' 'make'
- Run a benchmark where a single parameter changes for each run
hyperfine --prepare 'make clean' --parameter-scan num_threads 1 10 'make -j {num_threads}'
Sponsor David Peter (sharkdp)
If you use any of their software, or just want to support the magnificent work of David Peter (sharkdp) – you should sponsor them on GitHub.