Skip to content


August 28 2023

Where do you see yourself in four months?

5 losses IN A ROW before one win

Bangers only from the Readwise review today!

Write a simple test case | DeepEval
If you are interested in running a quick Colab example, you can click here.
pretty straightfwd to use – very akin to traditional unit test assertions
Alert Score | DeepEval
Alert score checks if a generated output is good or bad. It automatically checks for:
this is good! ive manually run libraries like bad-words.js to see if a input is toxic, but being able to assert if an answer is relevant && not toxic is helpful
Factual consistency is measured using natural language inference models based on the output score of the entailment class that compare the ground truth and the context from which the ground truth is done.
"James has 3 apples" and "James has fruit" would be considered an entailment.
"James only owns a car." and "James owns a bike." would be considered a contradiction.

Entailment seems like an abbreviation or rework of p > q from discrete mathematics.

Since ChatGPT's launch just nine months ago, we’ve seen teams adopt it in over 80% of Fortune 500 companies.

Wild. Seems like the null hypothesis won't really be happening lmao...

ChatGPT Enterprise removes all usage caps, and performs up to two times faster. We include 32k context in Enterprise, allowing users to process four times longer inputs or files.

make art from quote button ez clap

if (interaction.isButton()) {
    if (interaction.customId === "button_id") {
		await interaction.deferReply();
      console.log(`Button was clicked by: ${interaction.user.username}`);
      // Here you can call your function
      const { prompt, imageUrl } = await main(interaction.message.content);

	  if (interaction.replied || interaction.deferred) {
		await interaction.followUp(`Art Prompt (save the image it disappears in 24 hours!): ${prompt} \n Image: [(url)](${imageUrl})`);
	  } else {
		await interaction.reply(`Art Prompt (save the image it disappears in 24 hours!): ${prompt} \n Image: [(url)](${imageUrl})`);
	  // set interaction command name to aart
	  interaction.commandName = "aart";
	  await invocationWorkflow(interaction, true);

great quote abt propositional knowledge (facts) vs experiential knowledge (riding a bike) – in fact both are the same if criticism is able to be applied, you don't need to live something to know something. that is empirical error. (see: theoretical physics)

August 21 2023

Instabrams are back baby! Thanks to Alfred, Obsidian, Ghost, and GPT that is!

I found out today that, oddly enough, my dislike for food—and smells, as an offshoot—liberates my ears. I can fill them with all kinds of sounds, just like I fill my mind with all sorts of books. And who knows, this might make my understanding richer, deeper. After all, tastes and sounds, they both bring in similar complexities, don't they? What's the science behind this, I wonder?

Planning with time blocks using the Time Block Planner is something else, I tell you. Just staring at how my hours roll out in reality, versus where I believe in my mind that they're going.

It really makes me treasure those fresh hours each morning when I draft the plan. But, damn it, they do race by like comets while I'm knee-deep in living them. Sure makes one thing clear though - there's still quite a road ahead of me to align my time better with the stuff that sits front-row in my priorities.

Today, I cranked out a couple scripts that just might fan the flame back into my inconsistent habit of creating Instabrams. Knocked up one heck of a pipeline for DALL-E, taking chunky texts, wringing them dry into neat, crisp summaries, and morphing them into fetching cover art.

Then there's the second script. What does it do? Well, simple: it chews up shorthand blurb, like the one you're picking through now, and spits it back out in the flavor of a certain author close to my heart, our man Murakami himself. Now, you can sneak a peek at both these scripts down below and take in the art piece a notch above.

Both scripts neatly tuck away the outputs onto my clipboard. Handy for the lazybones that like me, can use ‘em just about anywhere across the machine. Embrace sloth!

i wrote two scripts today that should hopefully harken the return of instabrams. i created a dall-e pipeline that takes text, summarizes it and turns into a cover art.
in addition i wrote a script that rewrites shorthand like you are reading now into the style of one of my favorite authors, haurki muarkami. you can see both of the scripts below, and the art for this peice in the image above.
importantly, both copy results to clipboard for usage anywhere across my machine. let's go laziness!

Really would be nowhere without these amazing tools that devs have built (Ghost, Obsidian, GPT). I merely build the ligaments that connect the very solid bones.

GitHub rang the bell for the 700th star on chat gpt md today. It's been awhile since any updates were added, and I can't help but feel a twinge of regret. But the open source world - well, it can be a free ride for some folks, especially amongst the Obsidian folks. It's like being a chef with everyone sampling your soup, but no one foots the bill.

there was an enormous disconnect between how we think open source works and what is actually happening on the ground today. There is a long, and growing, tail of projects that don’t fit the typical model of collaboration. Such projects include Bootstrap, a popular design framework used by an estimated 20% of all websites, where three developers have authored over 73% of commits. Another example is Godot, a software framework for making games, where two developers respond to more than 120 issues opened on their project per week.† -- Working in Public: The Making and Maintenance of Open Source Software

Create a Ghost Cover Image with DallE

import dotenv from "dotenv";

import OpenAI from "openai";
import clipboard from "clipboardy";
import fs from "fs";
import fetch from "node-fetch";

const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

async function summarizeClipboard() {
  const text = clipboard.readSync();
  // console.log(`Summarizing: ${text}`);
  const completion = await{
    messages: [
        role: "system",
          "Summarize the following into a theme and create an art prompt from the feel of the text aesthetically along the lines of: 'an abstract of [some unique lesser known art style from history] version of {x}' where x is the feel of the text aesthetically. Just return the art prompt, say nothing else." +
    model: "gpt-4",

  // console.log(`Summary: ${completion.choices[0].message.content}`);

  return completion.choices[0].message.content;

async function saveImgFromUrl(url) {
  const response = await fetch(url);
  const buffer = await response.buffer();
  const filename = `./dalle-images/${}.jpg`;
  fs.writeFile(filename, buffer, () => console.log("finished downloading!"));

  return filename;

async function appendToLog(logItem) {
  const log = JSON.parse(fs.readFileSync("./log.json"));
  fs.writeFileSync("./log.json", JSON.stringify(log, null, 2));

async function main() {
  let prompt = await summarizeClipboard();
  prompt = prompt.replace("Art Prompt: ", "").trim();
  const image = await openai.images.generate({ prompt: prompt });
  const imageUrl =[0].url;

  const imgFilename = await saveImgFromUrl(imageUrl);

  const log = {
    query: clipboard.readSync(),
    prompt: prompt,
    imageUrl: imageUrl,
    imgFilename: imgFilename,

  await appendToLog(log);

  // save prompt to clipboard
  console.log("./dalle-images/" + imgFilename.replace("./dalle-images/", ""));

Rewrite Chicken Scratch as Murakami

import dotenv from "dotenv";

import OpenAI from "openai";
import clipboard from "clipboardy";
import fs from "fs";

const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

async function rewriteClipboard() {
  const text = clipboard.readSync();
  // console.log(`Rewriting: ${text}`);
  const completion = await{
    messages: [
        role: "system",
          "Rewrite the following in the style of Haruki Murakami, using short, punchy, easy to read, simple words that flow. Almost as if spoken cadence. Text:\n" +
    model: "gpt-4",

  // console.log(`Rewrite: ${completion.choices[0].message.content}`);

  return completion.choices[0].message.content;

async function appendToLog(logItem) {
  const log = JSON.parse(fs.readFileSync("./log.json"));
  fs.writeFileSync("./log.json", JSON.stringify(log, null, 2));

async function main() {
  let prompt = await rewriteClipboard();
  prompt = prompt.replace("Rewrite: ", "").trim();

  const log = {
    query: clipboard.readSync(),
    prompt: prompt,

  await appendToLog(log);

  // save prompt to clipboard
  console.log("Prompt saved to clipboard");

Images From the Script

These have wriggled under my skin, becoming my favorites of the day. You can make buckets of them without breaking much of a sweat. Keep your eyes on the blog – there's more visual feast on the way!
DALL·E 2023-08-21 15.55.18 - Art Prompt_ Create a Tonalist and Symbolist fusion manifesto of an enchanting wilderness filled with mystic animals and towering trees embodying the p.png
DALL·E 2023-08-21 15.21.35 - Create an abstract version of the Cubism style that portrays the challenges of financial burdens and health care costs.png·E-2023-08-21-15.13.12---Create-an-abstract-watercolor-version-of-the-constant-struggle-between-the-expansion-and-collapse-of-the-mind.-Use-vibrant-colors-and-fluid-brushstrok.png
DALL·E 2023-08-21 15.13.12 - Create an abstract watercolor version of the constant struggle between the expansion and collapse of the mind. Use vibrant colors and fluid brushstrok.png

Half a decade past, this is where I lived.

I snapped this photo, and soon after found myself in a nearby bar, nursing a drink and ruminating on the past five years. I had some predictions right - walking away from full-time software engineering to chase dreams of startups and artistry. But there were surprises too - who could've predicted a pandemic, or AI taking great leaps ahead?

I pondered over the goals I set for myself in 2018 - many still unmet, many still echoing around my head. Is that a good thing or a bad thing? Not sure. But one thing I've learnt is this: success is a recipe. It calls for dogged effort, an accreting outlet for said effort (think: investment returns), a dash of lady luck, and being at the right place just when it's the right time. Voila, dreams come true and they'll call it fate.

Like Ging said to Gon, "I can't get there quite yet, but I'm relishing the ride."

"Five years ahead?" I reckon I'll be there, right at the threshold of that old, worn out door of mine.

Oddly enough, it seems as if my eyes on the photo on the right been brushed with a dash of guyliner. Can't make heads or tails of that, honestly. is a reader-supported published Zettelkasten. Both free and paid subscriptions are available. If you want to support my work, the best way is by taking out a paid subscription.

Issue 13: Blogging in 3D

Better Never-Better than Better-Never, I suppose!

< Previous Issue

Ye Olde Newsstand - Weekly Updates

Unintentionally, blogging got a major, major boon from an unexpected place: Share Chats from ChatGPT. That sounds crazy, but it's true! Come take a look at my argument as to why this is a really big deal!

Blogging Has Just Changed Forever and No One Is Talking About It
Blogging has recieved a major upgrade, from an unexpected place.

This content is for Members


Already have an account? Log in

The Process of Making a Quality Zettel

A quality Zettel is made by capturing the core idea, expanding one layer deep into the idea with text, video, audio, adding external Zettelkasten system links, and adding a summary/excerpt to distill the idea.

Audio Companion

Recording 20230225170709

Written Idea

  1. Capture the Core Idea
  2. Expand one layer deep into the idea with text, video, audio
    1. Any further layers should be their own Zettel and be backlinked
    2. Too much energy[1] spent on depth in this step will cause overly tight ideas that can't be unpacked without a ton of context.
  3. Add external Zettelkasten system links. I use AI to assist me with this step. But the idea that I usually adhere to is: one obvious link, one surprising one. If you do only obvious links, you get trapped in confirmation bias.[2] If you only do surprising links, the path of reasoning becomes to difficult to follow, and the idea loses fluency.[3]
  4. Add a summary/excerpt to distill the idea is a reader-supported published Zettelkasten. Both free and paid subscriptions are available. If you want to support my work, the best way is by taking out a paid subscription.

  1. 202301102356

  2. 202301082259

  3. Killua is worried about that when he thinks people only like him because he is hard to read
    killua interesting.png

Implicit Solitary Confinement

Can solitude can actually be a good thing and help us tap into our creative potential?

The boundary between solitude and loneliness is permeable and unstable, after all. (View Highlight)

Note that retirement will intensify the feelings of loneliness 202212212242 -- without having built the skill of solitude.

Do the elderly attain wisdom from their time alone? Those who survive in the social vacuum and are forced to contend with the shape of their thoughts?

The Skill of Solitude

You talk when you cease to be at peace with your thoughts; And when you can no longer dwell in the solitude of your heart you live in your lips, and sound is a diversion and a pastime. (Location 428)
Paradoxically, solitude begets solidarity.  “Labor is a craft, but perfect rest is an art.” (View Highlight)
It’s not even meditating. It’s just sitting there. Zoning the fuck out. Sometimes I meditate. Other times I fall asleep. 100% not judging the process. Not judging the process is key. I try to do it weekly - but realistically it’s like every 2/3 weeks for me. Sometimes it’s one day. Other times, it’s 3. I try to alternate between sabbath and weekend trips/experiences. (View Highlight)

Where boredom lives, creativity is sure to follow.

Profound boredom stems from an abundance of uninterrupted time spent in relative solitude, which can lead to indifference, apathy, and people questioning their sense of self and their existence - but which Heidegger said could also pave the way to more creative thinking and activity. (View Highlight)


This JavaScript program helps users cultivate the skill of solitude and tap into their creative potential. It includes features such as a solitude timer, boredom embracement prompts, a non-judgment zone, a balance tracker, creativity prompts, and a wisdom sharing platform. By embracing solitude and reflecting on their thoughts and emotions, users can gain insights and wisdom, and tap into their creative potential.

Cal Vs Haters

The way Cal addresses his critics here is hilarious, reminds me of how the Buddha doesn't take anger from others, forcing them to keep it and deal with it 202301090001

A Few Notes on Old Age

But mandatory retirement came at age sixty-five . . . and so he retired. The next week he had a heart attack and died. (Location 1102)
“Those who are disabled from work by age and invalidity have a well-grounded claim to care from the state,” said Otto von Bismarck, chancellor of Germany, in 1889. Given retirement age and average life span were two years apart, that was easy for him to say. (Location 1162)

Retirement is a concept from Germany, quite recent as all things go…20 years before the Titanic.

Because of increased finances and improved health, older adults began to rely less and less on children and other family members. It was into this “cultural vacuum,” says [author Marc] Freedman, that the leisure entrepreneurs stepped in to offer older adults their vision of the “golden years.” (Location 1179)

The results were stunning. In 1951, among men receiving Social Security benefits, 3 percent retired from work to pursue leisure; in 1963, 17 percent indicated that leisure was the primary reason for retiring from work; and by 1982, nearly 50 percent of men said they were retiring to pursue leisure. (Location 1192)

into self-absorption and prejudice, tensions with younger people, boredom, and lack of a sense that they were contributing to society and to others’ lives. (Location 1195)
Retirement is a new concept. It didn’t exist before the twentieth century anywhere in the world except Germany. It didn’t exist before the nineteenth century anywhere. Retirement is a Western concept. It doesn’t exist in Okinawa or much of the developing world. Old people in those places don’t play golf every day. They contribute to their families and societies. Retirement is a broken concept. It is based on three assumptions that aren’t true: that we enjoy doing nothing instead of being productive, that we can afford to live well while earning no money for decades, and that we can afford to pay others to earn no money for decades. (Location 1197)
The Nobel laureate James Watson, who started a revolution in science as co-discoverer of the structure of DNA, put it to me straight a couple of years ago: “Never retire. Your brain needs exercise or it will atrophy.” (Location 1213)
Here’s why I’m outta here: In an interview 50 years before, the aging adman Bruce Barton told me something like Watson’s advice about the need to keep trying something new, which I punched up into “When you’re through changing, you’re through.” He gladly adopted the aphorism, which I’ve been attributing to him ever since. (Location 1217)

Its probably recommended to choose a place to live Where to Live? where you can't "retire" into the solitude and laziness of the car-house life-sink. Choose a vibrant place where your mind and body are challenged, but not crushed.

But to what purpose? If the body sticks around while the brain wanders off, a longer lifetime becomes a burden on self and society. Extending the life of the body gains most meaning when we preserve the life of the mind . . . (Location 1225)

Medical and genetic science will surely stretch our life spans. Neuroscience will just as certainly make possible the mental agility of the aging. Nobody should fail to capitalize on the physical and mental gifts to come. When you’re through changing, learning, working to stay involved—only then are you through. (Location 1236)
There is a strange fact about the human mind, a fact that differentiates the mind sharply from the body. The body is limited in ways that the mind is not. One sign of this is that the body does not continue indefinitely to grow in strength and develop in skill and grace. By the time most people are thirty years old, their bodies are as good as they will ever be; in fact, many persons’ bodies have begun to deteriorate by that time. But there is no limit to the amount of growth and development that the mind can sustain. The mind does not stop growing at any particular age; only when the brain itself loses its vigor, in senescence, does the mind lose its power to increase in skill and understanding. (Location 4922)
And this is a terrible penalty, for there is evidence that atrophy of the mind is a mortal disease. There seems to be no other explanation for the fact that so many busy people die so soon after retirement. They were kept alive by the demands of their work upon their minds; they were propped up artificially, as it were, by external forces. But as soon as those demands cease, having no resources within themselves in the way of mental activity, they cease thinking altogether, and expire. (Location 4931)

be as valuable as long as you can to someone else, create something new to fend off the grim reaper. the mind and body atrophy fast.

It is important to distinguish between probability and destiny. Just because you are obese or a smoker or couch potato doesn’t mean you are doomed to die before your time, or that if you follow an ascetic regime you will avoid peril. Roughly 40 percent of people with diabetes, chronic hypertension, or cardiovascular disease were fit as a fiddle before they got ill, and roughly 20 percent of people who are severely overweight live to a ripe old age without ever doing anything about it. Just because you exercise regularly and eat a lot of salad doesn’t mean you have bought yourself a better life span. What you have bought is a better chance of having a better life span. (Location 4039)
As the American academic Marlene Zuk has put it, “Old age is not a recent invention, but its commonness is.” (Location 5749)
Researchers from National Geographic were so fascinated by Okinawans that they studied what helped them live so long. What did they find out? They eat off smaller plates, they stop eating when they’re 80% full, and they have a beautiful setup where they’re put into social groups as babies to slowly grow old together. (Location 1122)

Technology has increased our lifespans by increasing probabilities. A coat and a fire increases your chances of survival in the cold to nearly 100%! 202212200052

An anecdote:

When I was a child, old enough to desire privacy, but young enough that most worldly things and I were on a first time basis -- on a birthday evening my friends and I were playing video games a drunken twenty-something stumbled into our house's back door. ^198d6d

The Goonies and I stared at the bare topped man, with a towel draped over his shoulder as he looked blearily at the toilet and said:

that is not a bathroom

He then stumbled into the kitchen and stared at the fridge for a number of minutes before making wis way back outside.

I should mention that I was born after the events of the Bleak Midwinter, and long before first budding of flowers. Fortunately for our inebriated musketeer, the Goonies and I had enough foresight to call the police on the man, and inform them that he was outside. I was told later they found him asleep next to a stop sign, and that our actions may have saved his life from the icy talons of frostbite.

You're welcome friend. I hope you found a bathroom.

I am doing a project about elderly programmers. If you are a programmer and over 25 please DM (View Tweet)

(29) 🫡

A human being is the kind of machine that wears out from lack of use. There are limits, of course, and we do need healthful rest and relaxation, but for the most part we gain energy by using energy. Often the best remedy for physical weariness is thirty minutes of aerobic exercise. In the same way, mental and spiritual lassitude is often cured by decisive action or the clear intention to act. We learn in high school physics that kinetic energy is measured in terms of motion. The same thing is true of human energy: it comes into existence through use. You can’t hoard it. As Frederich S. (Fritz) Perls, founder of Gestalt therapy, used to say, “I don’t want to be saved, I want to be spent.” It might well be that all of us possess enormous stores of potential energy, more than we could ever hope to use. (Location 1111)

Watching 70 year olds shop at wegmans made me wonder what the point of living that long is -just to consume? Can we not all be producers? Living in seasons of creating and rest? Or must we frontload all of our work in our career and then take off the evening years of our lives?

Does the Road You Pick Matter? Probably Not

One day Alice came to a fork in the road and saw a Cheshire cat in a tree. “Which road do I take?” she asked. “Where do you want to go?” was his response. “I don’t know,” Alice answered. “Then,” said the cat, “it doesn’t matter.” (Location 1149)
you should enjoy the little detours.png
“When someone is seeking,” said Siddhartha, “it happens quite easily that he only sees the thing that he is seeking; that he is unable to find anything, unable to absorb anything, because he is only thinking of the thing he is seeking, because he has a goal, because he is obsessed with his goal. Seeking means: to have a goal; but finding means: to be free, to be receptive, to have no goal. (Location 1272)