Bookmarks - August 2018
The Orange Juice Test, database scaling techniques, and the flux design pattern.
The Orange Juice Test
How should one decide which company/person to employ? The Orange Juice Test is a method of determining whether the person/company you are talking to is competent enough to do the job:
Lessons Learned from Scaling a Team
How should you employ people when growing a startup? What mistakes should you avoid? The five dysfunctions of a team. A though provoking article on management:
Glances
This is a system monitoring tool for Linux that provides many more features than top and htop. Great video tutorial here:
Sharding Databases
This is a technique for storing data in databases when the quantity of data involved becomes extremely large. Vertical sharding involves storing different tables in separate databases. Horizontal sharding involves storing rows of the same database table on different nodes. This article explains the techniques and some of the technical challenges (e.g. continuous hashing):
Cost of a Join
An investigation on the performance deficits of doing joins in a database. Traditionally joins are avoided when storing large amounts of data because they are deemed to be too expensive. The article suggests joins may not be as expensive as most people believe:
Myths about /dev/urandom
How should you generate random numbers on a Linux machine? This article suggests /dev/urandom
might be the best way:
Flux
This is the software design pattern used in React and designed by Facebook. The idea centers around one way data flow. This is key to understanding how React works: