_   _ ___  __ _ _ __
| | | / __|/ _` | '_ \   You suck at programming
| |_| \__ \ (_| | |_) |  Episodes and guide by dave eddy
 \__, |___/\__,_| .__/   https://www.daveeddy.com
  __/ |         | |
 |___/          |_|      Source: https://github.com/bahamas10/you-suck-at-programming

+ --------------------------- + -------------------------------------- + ------------------------------ +
| TITLE                       | DESCRIPTION                            | VIDEO                          |
+ --------------------------- + -------------------------------------- + ------------------------------ +
| 1. Bash Intro               | An introduction to bash                | https://ysap.daveeddy.com/v/1  |
| 2. Bash Arguments           | Parsing arguments in bash              | https://ysap.daveeddy.com/v/2  |
| 3. Bash Reading Files       | Reading files in bash                  | https://ysap.daveeddy.com/v/3  |
| 4. Subshell Basics          | What happens when you find | while     | https://ysap.daveeddy.com/v/4  |
| 5. Bash Line Parsing        | Parsing lines with builtins            | https://ysap.daveeddy.com/v/5  |
| 6. Bash and DTrace          | Using dtrace and bash                  | https://ysap.daveeddy.com/v/6  |
| 7. Bash manpage             | How to read the manpage with man       | https://ysap.daveeddy.com/v/7  |
| 8. Bash Commands            | Commands, functions, aliases, builtins | https://ysap.daveeddy.com/v/8  |
| 9. Bash Variables           | Basics of variables                    | https://ysap.daveeddy.com/v/9  |
| 10. Bash Config             | How to create a config file            | https://ysap.daveeddy.com/v/10 |
| 11. Bash Regex              | Using regex in pure bash               | https://ysap.daveeddy.com/v/11 |
| 12. Bash Time               | Timing commands with time              | https://ysap.daveeddy.com/v/12 |
| 13. Bash Date               | Parsing dates in bash                  | https://ysap.daveeddy.com/v/13 |
| 14. Fork Bomb Understood    | Creating a fork bomb in bash           | https://ysap.daveeddy.com/v/14 |
| 15. Bash Readline           | Readline and terminal shortcuts        | https://ysap.daveeddy.com/v/15 |
| 16. Actually Fork Bombing   | This is how to fork bomb a machine     | https://ysap.daveeddy.com/v/16 |
| 17. Safe Fork Bomb          | How to safely understand a fork bomb   | https://ysap.daveeddy.com/v/17 |
| 18. IO Redirection          | Redirects and pipelines                | https://ysap.daveeddy.com/v/18 |
| 19. Quotes and SSH          | How to quote variables over ssh        | https://ysap.daveeddy.com/v/19 |
| 20. Bash Arrays             | Arrays in bash                         | https://ysap.daveeddy.com/v/20 |
| 21. Escaping Quotes         | Quote wrangling in bash                | https://ysap.daveeddy.com/v/21 |
| 22. Backtick Commands       | How to handle backticks                | https://ysap.daveeddy.com/v/22 |
| 23. Login Shells            | bashrc vs bash_profile vs profile      | https://ysap.daveeddy.com/v/23 |
| 24. SSH Port Forward        | Understanding ssh -L                   | https://ysap.daveeddy.com/v/24 |
| 25. SSH keys                | id_rsa and ssh keys                    | https://ysap.daveeddy.com/v/25 |
| 26. Parameter Expansion     | ${parameter//expansions} in bash       | https://ysap.daveeddy.com/v/26 |
| 27. Signals                 | Unix signals with kill                 | https://ysap.daveeddy.com/v/27 |
| 28. Local Return Codes      | Bash functions and exit codes          | https://ysap.daveeddy.com/v/28 |
| 29. GNU Utils               | GNU Tools can be slightly unique       | https://ysap.daveeddy.com/v/29 |
| 30. IFS Variable            | IFS variable in scripts                | https://ysap.daveeddy.com/v/30 |
| 31. Simple File Globbing    | Understand shopt -s nullglab           | https://ysap.daveeddy.com/v/31 |
| 32. Process ptools          | Using tools like pkill and pgrep       | https://ysap.daveeddy.com/v/32 |
| 33. PS1 Prompt              | Custom prompt for bash with PS1        | https://ysap.daveeddy.com/v/33 |
| 34. Is a TTY                | Tell if you're on a TTY w/ isatty(3)   | https://ysap.daveeddy.com/v/34 |
| 35. Zombie Processes        | What is a defunct process?             | https://ysap.daveeddy.com/v/35 |
| 36. Parens vs Curly         | () vs {} in bash                       | https://ysap.daveeddy.com/v/36 |
| 37. SSH Scripts             | Run commands over ssh                  | https://ysap.daveeddy.com/v/37 |
| 38. For Loop vs While Loop  | When to use for vs while               | https://ysap.daveeddy.com/v/38 |
| 39. Environmental Variables | Env vars on Unix with env              | https://ysap.daveeddy.com/v/39 |
| 40. Reading a Whole File    | Understanding the mapfile builtin      | https://ysap.daveeddy.com/v/40 |
| 41. Proc FS Environment     | Looking at /proc/&&/environ            | https://ysap.daveeddy.com/v/41 |
| 42. Docker Crimes           | Committing crimes with docker          | https://ysap.daveeddy.com/v/42 |
| 43. Env in code             | Environmental variables in code        | https://ysap.daveeddy.com/v/43 |
| 44. Debugging bash          | Use bash -x in code                    | https://ysap.daveeddy.com/v/44 |
| 45. Bash Substrings         | Substrings in bash                     | https://ysap.daveeddy.com/v/45 |
| 46. Sudo and Echo           | sudo echo won't work how you think     | https://ysap.daveeddy.com/v/46 |
| 47. The Alternate Screen    | Alt screens in your terminal           | https://ysap.daveeddy.com/v/47 |
| 48. Shell Pipelines         | Use PIPESTATUS to track exit codes     | https://ysap.daveeddy.com/v/48 |
| 49. Special Characters      | Using the $'...' syntax                | https://ysap.daveeddy.com/v/49 |
| 50. Background Jobs         | Using & and bg                         | https://ysap.daveeddy.com/v/50 |
+ --------------------------- + -------------------------------------- + ------------------------------ +
last updated: Mon Apr 15 16:12:56 UTC 2024

# get the list of episodes
$ curl ysap.daveeddy.com

# get the list of episodes without color
$ curl ysap.daveeddy.com/nocolor

# get the list of episodes in raw text format
$ curl ysap.daveeddy.com/text

# get the list of episodes in json format
$ curl ysap.daveeddy.com/json

# get the help and usage docs
$ curl ysap.daveeddy.com/help