grep for example supports the `-r` flag which should instead be `grep`+`find`
Everything is not a stream of bytes.
programs can do multiple things well
`cat`, `head` and `tail` could all be one program with a flag
`which head``which tail``which cat` should all return the same binary with different flags
```
which head == /bin/cat range=0-10
which tail == /bin/cat reverse_index=true range=0-10
which cat == /bin/cat
```
build a prototype quickly only applies if you are being pressured. do thing quickly then refine
'choose portability over effeciency' this is a flawed idealogy choose modularity over pure portability
'store data in flat text files' this leads to a psuedostandardization on KVPair configuration languages that all sit in a flat text file. Instead pick a configuration format that gets loaded into a tree structure
## File Systems
### The amount of files inside of a folder
32765. Why you might ask?
### Dot files
`dotfiles` were a mistake given to us by bad programmers mocking better programmers. [link](https://web.archive.org/web/20230413171520/http://xahlee.info/UnixResource_dir/writ/unix_origin_of_dot_filename.html)
### File name case sensitivity
Case sensitivity seems like a great idea! But in practice leads to the following filetree
```
/kernel
/Kernel
/kErnEl
/KeRnEl
```
which is a nightmare and you should be erradicated if you think this is a positive
provide a display name for files that allows case and save the file as caseless
### File name character limits
unix is a plauge upon this earth. name a file `:(){ :|:& };:` and try listing it. You have lost access to your terminal.
if you defined a sane method of listing files and allowing programs to provide the OS a standard method of providing argument suggestions and being aware you would never run into this issue
## CLI vs GUI
Graphics are not your enemy unix lovers. You mustn't be stuck in 1981. Times have changed! You can have a graphical shell enviroment. SGI Irix was aware of this in 1988, not perfect of course but 7 years after dos is an impressive leap.
FFMPEG??? Why no gui? Give me a good git ui
### Emails plain text
Unix believes in plain text emails. Quotes are `>`
### Unix Wizards and Instability
[Do not meddle in the affairs of Unix, for it is subtle and quick to anger.]