Note: This is a reference question (but feel free to write answers of your own!)
My Arduino takes too long to start up, I need to use the space taken up by the bootloader and I don't want a brown-out to be able to move the program counter to bootloader code, which could lead to my code being corrupted.
I considered buying an Arduino programmer, but since I already have an Uno lying around doing nothing, I would rather use that as a programmer.
I found a few guides on the internet, but most of them leave important details out and aren't specific enough.
So, how can I upload a sketch without a bootloader, using another Arduino as a programmer?