Hide direct object references to increase application security.

Whenever a user is about to access certain data within your web application you want to make sure, he has only acces his data, not other user's data. A critical measure to prevent vulnerabilities here, is to implement tight authorization checks on a functional level. This is very essential to security and should not be missed. Anyhow, you can increase security further with a fairly simple additional measure. User controlled keys To access a specific object, like a database record […]

Read more

Creating a responsive layout based on squares.

Creating a responsive layout based on squares may be more tricky than expected, because it require you to always ensure a given aspect ratio of 1:1. Here are some thoughts on a solution I came up with. Imagine a layout should define a square, that is supposed to be biggest unit. All other elements are fractals of this biggest square, going down to a square that is supposed to be the smallest unit. I tried out various approaches to […]

Read more

Responsive background images with srcset and sizes

A while ago I searched around for a quick and easy solution to provide responsive background images. Somewhere I stumbled upon a fiddle demonstrating an amazingly neat trick. I tried this approach in a few projects and started some cross browser testing. It worked like a charm and I'd like to share and explain this idea. srcset and sizes FTW! The srcset and sizes attributes, which the HTML5 standard specifies for the img tag, are around for a while now. […]

Read more

npm run deploy

Hi there! I'm Alex, a freelance web developer living in Hamburg, Germany. Today is the day to finally publish my new website. I came up with a bazillion of ideas, concepts, layouts, prototypes and finished implementations. Like 99% of them went to the trash bin. In the end I decided to strip it all down to the essentials and put a simple, minimalistic blog in the center. To keep myself sticking to this idea, I didn't even consider some full […]

Read more