Rob Janssen

All | Unread | Read

Why I left Mac for Windows: Apple has given up

If you ask anyone who knows me, I’m probably the biggest Apple fan they know. Ask for a suggestion of what computer to get, and I’ll almost certainly either tell you the MacBook Pro, or to wait, because Apple is about to update its hardware finally.

Writing good code: how to reduce the cognitive load of your code

Low bug count, good performance, easy modification. Good code is high-impact, and is perhaps the main reason behind the existence of the proverbial 10x developer. And yet, despite it’s importance, it eludes new developers.

Many SQL Performance Problems Stem from “Unnecessary, Mandatory Work”

Probably the most impactful thing you could learn about when writing efficient SQL is indexing. A very close runner-up, however, is the fact that a lot of SQL clients demand tons of “unnecessary, mandatory work” from the database.

How Modern SQL Databases Come up with Algorithms that You Would Have Never Dreamed Of by Lukas Eder

SQL is the only ever successful, mainstream, and general-purpose 4GL (Fourth Generation Programming Language) and it is awesome!With modern cost based optimisation, relational databases like Oracle, SQL Server, PostgreSQL finally keep up to the promise of a powerful declarative programming model by

A Programmer’s Introduction to Unicode – Nathan Reed’s coding blog

Unicode! ???????? ?????????????! ? The very name strikes fear and awe into the hearts of programmers worldwide.

How many floating-point numbers are in the interval [0,1]?

Most commodity processors support single-precision IEEE 754 floating-point numbers. Though they are ubiquitous, they are often misunderstood.

Let’s Corrupt a SQL Server Database Together, Part 1: Clustered Indexes

Hold my beer. Now, let’s corrupt it. Open it with a hex editor – my personal favorite is the free xvi32 because it doesn’t require installation. Just download it, fire it up (you’ll want to run it as administrator), and open the database’s MDF file:

When everything you know is wrong, part two

Myth: Keeping a reference to an object in a variable prevents the finalizer from running while the variable is alive; a local variable is always alive at least until control leaves the block in which the local was declared.

When everything you know is wrong, part one

Finalizers are interesting and dangerous because they are an environment in which everything you know is wrong. I’ve written a lot about the perils of C# finalizers / destructors (either name is fine) over the years, but it’s scattered in little bits over the internet.

Behavioral Design Patterns

It is concerned with assignment of responsibilities between the objects. What makes them different from structural patterns is they don't just specify the structure but also outline the patterns for message passing/communication between them.

This Read-It-Later-list is just that, bookmarks of stuff I intend to read or have read. I do not necessarily agree with opinions or statements in the bookmarked articles.

This list is compiled from my Pocket list.