Issue #94 · January 7, 2019

Algorithms by Jeff Erickson - HAPPY NEW YEAR :)

“Technology is anything that wasn’t around when you were born”

Best 7 links of week #1, 2019

🎉 Happy New Year! 🎉

Algorithms by Jeff Erickson

Algorithms by Jeff Erickson

This web page contains a free electronic version of the (soon to be) self-published textbook Algorithms by Jeff Erickson, along with other lecture notes written for various theoretical computer science classes at the University of Illinois, Urbana-Champaign since 1998. A great FREE resource to start the new year and strengthen your algorithmic knowledge!

Articles

Why design systems fail, and how to make them work

Design systems are most often aimed at improving the bridge between the design and development of the product. They are useful, but hard to implement and get proper adoption. This article tells a real-life experience implementing a design system that eventually failed. If you are implementing a design system, this article might save you from making some common mistakes.

Converting a Python library to Rust

The story of a rewrite of a Python project in Rust. The rewrite took a fair bit longer than expected, but the results were good (about 9 times faster). If you are exploring Rust, coming from Python or other scripting languages, this is a great resource for you.

Exploiting the Math.expm1 typing bug in V8

Minus zero behaves like zero, right? Not always... well not in V8, Chrome’s JavaScript engine. A bug caused incorrect typing during static analysis, producing incorrect optimizations in just-in-time compiled code. An interesting story of how this bug can be used for an OOB code execution.

PostgreSQL in 2018

In this blog post, we’ll look back at what’s been going on in the world of PostgreSQL in 2018, which is now ranked as the 4th most popular database in the World!

Background Sync with Service Workers

Offline-supported applications are a necessity, and including a service worker is a great start. However, service workers alone will only get someone part of the way to a truly seamless online-to-offline experience. Caching assets is great, but without an internet connection you still can't access new data or send any requests. The "Background Sync" API can help us to build applications that will synchronize changes back to the server as soon as the connectivity is re-established.

Book of the week

Algorithms to live by

Algorithms to live by

by Brian Christian and Tom Griffiths

A fascinating exploration of how computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mindAll our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favourites is the most fulfilling?