For random shards and things that don't fit anywhere yet.

JavaScript template for streaming from MySQL to gzipped file

const mysql = require('mysql');
const fs = require('fs');
const gzip = require('zlib').createGzip();
const stream = require('stream');

const connection = mysql.createConnection({
    host: "",
    port: "3306",
    user: "user",
    password: "password",
    database: "db"


const writable = fs.createWriteStream('/tmp/out.json.gz');

    .query('select id, email, fullname from users;')
        objectMode: true,
        transform: (data, encoding, callback) => {
            data.shard = "1";
            callback(null, JSON.stringify(data) + "\n")
        transform: (data, encoding, callback) => {
            callback(null, data);
    .on('finish', () => { connection.end(); });

3 Pillars of Public Speaking, Communication, Persuasion

Logos: Logical Argument.

Pathos: Emotional connection to the audience.

Ethos: Identity, credibility of the speaker.

(On Rhetoric by Aristotle)

Paul Grice maxims of good conversation

Grice made the brilliant and intuitive observation that ordinary conversation is a cooperative enterprise. Because of that, it is governed by the principle that contributions to conversation should facilitate the purpose of the exchange — a purpose that is generally understood and shared by participants. Grice formulated four maxims that are easily applicable to any conversation: he inferred rules about conversation that we all follow (most of the time), even though we are never formally taught these rules. The maxims are:

  1. The maxim of quantity, where one tries to be as informative as one possibly can, and gives as much information as is needed, and no more.
  2. The maxim of quality, where one tries to be truthful, and does not give information that is false or that is not supported by evidence.
  3. The maxim of relation, where one tries to be relevant, and says things that are pertinent to the discussion.
  4. The maxim of manner, when one tries to be as clear, as brief, and as orderly as one can in what one says, and where one avoids obscurity and ambiguity.

Baumol's cost disease

the rise of salaries in jobs that have experienced no increase of labor productivity, in response to rising salaries in other jobs that have experienced the labor productivity growth.

Measuring economic benefit

How much economic activity did we increase for our customers? What is the impact of the platform on our customers. Economic benefit?


Every transaction represents a resolution where both parties value what they're receiving over what they're giving up.

I've spent quite a bit of time looking into messaging apps. Here are some comparison sites that were shared with me. They were pretty elusive to track down so maybe someone else might find it useful as a starting point.

I heard this very inspiring quote while listening to a podcast:

"You never change things by fighting the existing reality. To change something, build a new model that makes the existing model obsolete."

R. Buckminster Fuller


To see if the migration and the crontab works.