TGA is a great format for tinkering because it is very simple to code yourself to generate images and it is still widely supported.
These days though, I use tend to use the even simpler PPM format. It uses normal RGB byte ordering from top to bottom, and it's simple enough that I can code a basic writer for it from memory:
fprintf(stream, "P6 %d %d 255\n", width, height);
fwrite(image, 1, height * width * 3, stream);
(Often, I won't even bother opening a file to write to. I'll just emit the image to stdout and then pipe it to Image Magick for display or to convert to a compressed image format for storage.)A PPM paletted format would save me a lot of space.
The built-in support for PPM in Preview on Mac OS X makes it extremely useful.
[0] https://en.wikipedia.org/wiki/Netpbm#PAM_graphics_format
[1] https://github.com/nothings/stb/blob/master/stb_image_write....