Skip to main content

Xcode is the Worst Piece of Professional Software I Have Ever Used

· 6 min read

The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions

This is an error you will see often if you develop SwiftUI in Xcode. Know what it means? It means the compiler has given up, and you're on your own. The error points to a file and function, but the issue could be anywhere in your codebase. It might be a simple syntax error, or it might be code that is "too complex" for the compiler. Hopefully you commit frequently because Xcode has turned into Notepad until you figure it out.

Heredocs Can Make Your Bash Scripts Self-Documenting

· 3 min read

I have long since come to appreciate the value of writing scripts to avoid someone else (or future me) from having to re-learn and re-solve problems, but something about it has always bugged me.

I am automating a process, but I'm also documenting it, and those two things struggle to coexist.

One option is to write a bash script for the automation and a markdown file for the documentation, but they inevitably end up duplicating information and/or getting out of sync. The other is to just have a single markdown file with a bunch of inline bash that you manually copy into a terminal. But "running" it is clunky, tedious, and easy to mess up.

A CRDT-based Messenger in 12 Lines of Bash Using a Synced Folder

· 8 min read
mkdir -p $(dirname $0)/data; cd data

print_messages() {
clear
cat $(ls -tr | tail -n30)
printf "\033[31m$USER:\033[0m "
}
export -f print_messages

watchexec 2> /dev/null -- bash -c "print_messages" &

while read text; do
printf "\033[31m$USER:\033[0m $text\n\n" > "$(uuidgen)"
done