//BNJMN (7/13/19): I’ve discovered I sorta kinda love taking photos at fairs. Lots of good cheesiness.

Freak Out 7/13/19

Magic Maze 7/13/19

Behind the scenes 7/13/19

Fruit Bear 7/13/19

Beach Party 7/13/19

Nibbling Leafs 7/12/19

Lost Fawn 7/12/19

//BNJMN (7/12/19): Actually doing some illustration work for the first time in a few weeks…oof…rusty.

Red Eyed Bunny 7/10/19

Downtime 7/10/19

Show Day 7/10/19

Pink Farris Wheel 7/10/19

What a nice goat! 7/10/19

//BNJMN (7/10/19): I walked around the Winneshiek County Fair for about 45 mins this afternoon. Beautiful day, and the barns smelled wonderful.

Some Pig 7/10/19

Sea Ray 7/10/19

//BNJMN (7/9/19): I just spent 15 minutes hunting down a single particular fly who buzzed at me wrong.

Let this be a warning: If you are an insect and you cross me, I will do what it takes to finish you.

Ralphy 7/8/19

//BNJMN (7/7/19): Looking around, I’m clearly the coolest person in this WalMart bathroom. Feelin good!

Morten 7/7/19

Mort is my sweet, very good boy

//BNJMN (7/5/19): Update on Aaron Copland: I’ve been listening to the Bernstein collecting of his work on repeat for almost week and movement II (the Allegro) has this great moment where there are frantic strings playing over these long, stately, arching horn passages, and it’s one of those perfect little morsels of art.

Decorah, IA 7/5/19

Nitro Cold Brew 7/5/19

Coffee Shop Day 7/5/19

What is the 4th of July 7/5/19

I have some ambivalence about the USA right now, but it is the 4th of July.

Being Ecological 7/4/19

I’m only partway through, but I really like Timothy Morton. The book has this interesting approach of addressing the numbness we have around global warming, rather than trying to obliterate it.

BNJMN | Performance Update 7/4/19

I just finished an update to the site that should dramatically improve its download performance. I shrunk the images down a ton, and wrote some javascript that loads images in a more pleasing, controlled way.

When I first conceived this site, I was thinking of it mostly as a text based site. The photo aspect of it was thrown in as an afterthought. As time progressed I found that I really liked posting images more than anything. It has gotten to the point where well over half of my posts are images, so I was time to revise the way the site handles images. Load times were awful, because I was just dumping these big image files to the browser, and it would try to download them all at once.

I took a two-pronged approach to solving the issue: 1) reformat the images to reduce image size, & 2) make it so the images didn’t try to load all at one at time.

Just Make them Smaller

The way I upload photos to the site is using an iOS shortcut that I wrote, so it was pretty simple to go into there and revise the resizing function so it scales all the way down to 1000px wide (previously it was set to 2500px, which is kinda insane). And because of the nature of being a static site, it was really simple to go into my photos and use an app called PhotoBulk to tear through and resize them all. That process alone made the site 150% smaller, which frankly solved 80% of the problem.

Cicada Function

The way that I made the site serve images smarter relies on Javascript. I rewrote the HTML source code so that the HTML doesn’t actually download the file, but still has the link embedded as data in the img tags. Then I wrote a function that finds all the images and downloads them one at a time.

The cool thing about the function is that it’s what I’m calling a Cicada Function (I’m sure there is a real term for this that hardcore programing people know. Not me though.) The way it works is it takes the data in the img tag and reassigns it to be the image source, which causes the image to start to load. At this point the function is almost done, but right before it ends, it adds an event listener to the img that tells it to run this same function on the next image once this image is done loading. It’s like a loop, but the function is actually not running most of the time. Sort of like the way Cicadas sleep for years underground, and just emerge for a few days to lay eggs and die, restarting the cycle.

Honestly, I don’t know what the precise best practice for this particular goal would have been, but I think that this does the trick and it’s conceptually fun.

Much Better

This site has always been very performant by most metrics, so it’s evaluation by the web bots hasn’t changed that much, but the total page load times are like 3x quicker at least and experientially it’s even better, because you don’t have to wait nearly as long for the first images to load. So far it seems like the lower res images still have enough quality for the site, even if it’s not as fun to view them blown up to full size.

Enjoy!

Cercropia Moth 7/2/19

Largest moth in North America

//BNJMN (7/1/19): Medium is so frustrating. You can tell they know what a good reading experience would be like, but none-the-less they consistently find ways to obscure content.

//BNJMN (6/30/19): Went on a short hike this afternoon but it was so hot I didn’t even feel like taking any photos. Alas, how will I prove it?!