March 25, 2014

Using localStorage as a message bus between windows

A while back I implemented a function on Bloglovin for synchronizing log out across multiple open windows. Ie. if you had multiple tabs open for Bloglovin and signed out in one of them we will sign you out in all of them. This is to avoid weird behavior for AJAX requests in “still logged in tabs” etc. I first looked at the HTML5 postMessage API. But to use that you require a reference to the window you want to send a message to.

Read more...
March 1, 2014

CSS — Complex Style Script

I’ve been spending an unreasonable amount of time thinking about CSS and all the various preprocessors lately. Working on a large project like Bloglovin has given me some perspective. I used to work on smaller “content sites” powered by Drupal where the complexity and number of pages where a lot less significant. I also used to be the sole person writing CSS for any one project. Watch out, I’m not really sure where I’m about to take this article.

Read more...
January 30, 2014

Minolta Autocord — Servicing the Focus Helicoid

Last summer I got very lucky at an auction where I managed to acquire a Minolta Autocord and a bunch of other cameras for only 400SEK (that’s about $60 USD). In the box was also a Nikon FE2, Polaroid Land Camera 101 as well as a Contaflex II. All in super nice condition. There was also a Canon FTb or something, but that one was i terrible shape. Furthermore there were tons of different accessories.

Read more...
January 22, 2014

Do You Even Backup?

Having a solid backup solution is really important to me since I have tons of code that I don’t, but really should, push to GitHub or similar. I have thousands of photos that I really don’t want to lose. Read on to see what makes me sleep at night! Clone It I use SuperDuper from ShirtPocket to make a bootable backup of my MacBook Pro’s harddrive. I have it connected to my monitor and SuperDuper is configured to automatically make a smart copy (only backups new/changed files) everytime I connect the hardrive — ie.

Read more...
January 1, 2014

How to Correctly Defer Loading of JavaScript

Stumbled upon this article about defering the loading of JavaScript in a good way. Using the old ways of placing scripts in the footer or other causes a big delay in the document ready event. Which is when your page has actually finished loading. This method triggers the loading of the script on that same event. The methods of inlining, placing scripts at the bottom, using “defer” or using “async” all do not accomplish the goal of letting the page load first then loading JS and they certainly do not work universally and cross browser.

Read more...
January 1, 2014

The Zeiss Ikon Nettar 516/2

For Christmas this year my fantastic girlfriend bought me a Zeiss Ikon Nettar 516/2. “What is this?”, you might ask. And it’s a good question indeed. The Nettar 516/2 is, from what I’ve gathered, one of the rarest models in the Nettar series. A series of folding cameras produced by Zeiss Ikon during the 1930’s and 1940’s. It takes 120 film which is still wildly available today! This particular model was produced around 1938 in Stuttgart, Germany.

Read more...