I noticed the Jekyll output of my site includes a lot of whitespace. Fortunately, Jekyll has a minifier plugin that will uglify and squash at build time. In my case, using jekyll-minifier reduced site size from 670kb to 638kb. It added about 10 seconds to the build time, though, which seems a bit excessive.
I try to optimize where I can. There aren’t many images, but those have been optimized with tinypng, which isn’t as convenient as some of the other image compressors but produced the smallest files of all the ones I tried. One of my ongoing projects re: this site is to see how far I can get with 100MB.