Plurrrr

Tue 22 Nov 2022

The Dragonbone Chair

A war fueled by the powers of dark sorcery is about to engulf the peaceful land of Osten Ard—for Prester John, the High King, lies dying. And with his death, the Storm King, the undead ruler of the elf-like Sithi, seizes the chance to regain his lost realm through a pact with the newly ascended king. Knowing the consequences of this bargain, the king’s younger brother joins with a small, scattered group of scholars, the League of the Scroll, to confront the true danger threatening Osten Ard.

Simon, a kitchen boy from the royal castle unknowingly apprenticed to a member of this League, will be sent on a quest that offers the only hope of salvation, a deadly riddle concerning long-lost swords of power. Compelled by fate and perilous magics, he must leave the only home he’s ever known and face enemies more terrifying than Osten Ard has ever seen, even as the land itself begins to die.

In the morning I started in The Dragonbone Chair, book one of Memory, Sorrow, and Thorn by Tad Williams.

Always use [closed, open) intervals

Intervals or ranges pop-up everywhere in the programming world. The classic example is picking a start and end date, like you would when booking an AirBnB or a flight. But that's just one example: from slicing a JS Array, to Java's List#sublist and even SQL's LIMIT operator, ranges are everywhere.

Have you ever wondered why they are always implemented as [closed, open) as opposed to [closed, closed]?

Source: Always use [closed, open) intervals. A programmer's perspective, an article by Fernando Hurtado Cardenas.