Skip to content


August 30 2023

the daily energy management struggles

any blue moons (the beer) under the blue moon?

building a dueling feature for quos
from nomic import AtlasProject

map = AtlasProject(name="highlights").maps[0]

             id            topic_depth_1            topic_depth_2                 topic_depth_3
0      41700088     Software Development  Habits and Goal Setting            Model-based design
1      41700089       Life and happiness  Habits and Goal Setting                  Goal Setting
2      41700090   Science and Technology                   Memory                        Action
3      41700091       Life and happiness        Negative emotions  Negative beliefs and sadness
4      41700147   Science and Technology                  Science                   Human error
...         ...                      ...                      ...                           ...
10167  41701259  Philosophy and religion     Evolutionary biology                  Human Nature
10168  41701260  Philosophy and religion     Evolutionary biology                  Human Nature
10169  41701261  Philosophy and religion     Evolutionary biology                      religion
10170  41701173  Philosophy and religion               philosophy                         Islam
10171  41701175  Philosophy and religion          Family and Work                     Education

[10172 rows x 4 columns]

df: pandas.DataFrame property
A pandas dataframe associating each datapoint on your map to their topics as each topic depth.

df = map.topics.df

# extract topics from the map as a pandas df and put them into a set and then a list that is written to a file
topics = set()
for i in range(len(df)):

# remove topics from set that are empty strings or have (number) in them
Writing (2)
Writing (3)

should be Writing only
for topic in topics.copy():
    if topic == '' or topic[-1] == ')':

topics = list(topics)

with open('topics.txt', 'w') as f:
    for topic in topics:
        f.write(topic + '\n')

Avoid Saying These 11 Swear Words When Travelling in Japan
You might get in trouble if you do!

August 22 2023

New season of Hearthstone! Goodbye, next forty-eight hours.

New season of Hearthstone! Goodbye, next forty-eight hours. I'll be captive to this relentless obsession. Alongside Baldur's Gate 3, of course.

This patch, it sucks from the get-go. Bannana Slammas for life, I suppose.

broken combo
only broken enough for fourth place i suppose

The billboards up in Soho stir something within me. Something McLuhan might've coined, about the package being more valuable more than the item inside. The ads on NYC's billboards, uncountable as they are, most fade from memory like a worn-out jazz record. But their very existence on the giant sized wall, catching the eye of the odd twenty-somethings, mid-pilgrimage to their temple of Equinox, that broadcasts its own message. Sure, I could plaster an ad on some wall in a silent town but that lacks the jazz, the hum and pulse of the viewer's gaze, which makes all the difference in selling the song. Plenty artists wallow unseen, only a handful get to wallow under the spotlight.

Leaders need this one thing more than anything else: good sense. It's the same when it comes to your body, your thoughts, your work life. Be your own arbiter of good judgement.

Photos...they've been the game for me on Instagram lately, kind of like a guilty pleasure I suppose. Don't know why.

It's ludicrous when you think about how I'm using Instagram, disregarding entirely how they mapped out the service. Truly not giving a flying fuckkk. It's like a Finstagram, but taken to the logical conclusion of really only using Instagram for a glorified photo storage service. Picture it: me following no one, completely ignoring ads on the feed the company worked so hard on to build! A strange way to play, right?

But in its way, it's transformative. Instagram morphs into something else, a simple yet miraculous platform for my photos, a sanctuary. It's effortless to stick in my favorite tunes too, lending a voice to every image. And the filters? Oh, the filters. An array of options with a single, easy tap. Quite something, isn't it?

Oddly enough, I found myself the central character in some LLM tutorial – an instructional piece about using these LLMs for cold outreach on LinkedIn, of all things. Seeing this offered some clarity, unsheathing the mystery of the spam deluge that keeps finding me. Particularly from the VCs, the constant hum in the background. Leave me alone dammit!

Random post logic – all credit goes to the original creator: milkythemes!

    function loadScript(url, callback) {
    const head = document.head;
    const script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    script.onreadystatechange = callback;
    script.onload = callback;

function luckyPost() {
    let ghostVersion = typeof version == 'undefined' ? 'v3.0' : version;
    let apiKey =
        typeof key == 'undefined' ?
            console.error('Ghost integration API key is missing. Please refer to documentation at') : key;

    const pageUrl = `${window.location.protocol}//${window.location.hostname}`;

    const api = new GhostContentAPI({
        url: pageUrl,
        key: apiKey,
        version: ghostVersion

    const postUrl = [];

    const randomBtn = document.getElementsByClassName("btn-random");
    const stringHostUrl = `[href="${pageUrl}/#rdm-post/"]`
    const randomPost = document.querySelector(stringHostUrl);
    const randomPostSelector = document.querySelectorAll('[href=""]');

    for (let i = 0; i < randomPostSelector.length; i++) {
        randomPostSelector[i].text = `Loading...`

        .browse({ limit: 250 })
        .then((posts) => {
            posts.forEach((post) => {
        .then(() => {
        const randomPostSelector = document.querySelectorAll('[href=""]');
        for (let i = 0; i < randomPostSelector.length; i++) {
            randomPostSelector[i].text = `Open Random Post!`
            randomPostSelector[i].href = `${pageUrl}/${randomUrl(postUrl)}`
        }).catch(() => {
    		const randomPostSelector = document.querySelectorAll('[href=""]');
            for (let i = 0; i < randomPostSelector.length; i++) {
                randomPostSelector[i].text = `OOPS!`
                randomPostSelector[i].href = ``

    // The randomUrl function is used to grab a random array from the list 
    function randomUrl(postUrl) {
        return postUrl[Math.floor(Math.random() * postUrl.length)];

loadScript('', luckyPost);

Tier 7 exists.


Blue Lock got dark!

big carbon copy!

Hey, the kid's scored a page on Wikipedia!

Atrioc - Wikipedia

Sticky Header for Ubud! (Put this in the code injection header)

        position: sticky;
        z-index: 1;
        top: 0;
        background: var(--background-primary);

Some Hard Af Phone Backgrounds Ive Been Using

gotta love duotone!

ft hxh, blue lock, naruto, demon slayer, kh

note: you can customize your ios homepage to use multiple photos in a slideshow! mine change on lock
hard af bg 2.png
hard af bg 3.png
hard af bg 4.png
hard af bg 5.png

this one goes hardest (202301051926)
hard af bg 6.png
hard af bg 7.png 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.

May 23 2023

guidance, more bridgerton, demon slayer art, and of course, purple


  1. playing WoW
  2. playing with Guidance library

more guidance! (the stream f'd)

resulted in a Twitch thank you bot!


🥲 "escape the heavens with me"

cool artistic breakdown of mist breathing

ever afters rise up!!


Raw Thoughts

Live streaming is a medium similar to a 1:n conversation. Flow is enforced by the camera, mistakes happen, and the results are always pretty novel. Live streaming is also unlike conversation because the streamer stays aware of the "performance gap", creating a new level of "self" awareness, similar to how observation changes the results of an experiment. 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.

An Awkward Yet Healthy Relationship

A collection of brother relationships in anime

Rin saying this is a great break from the norm of tyrant older brother trope in anime.
rin and sae itoshi 1.png
rin and sae itoshi 2.png
rin and sae itoshi 3.png

Itachi and Sasuke Take Notes

Starts evil, becomes good

Killua and Illumi Take Notes

Starts evil, stays evil
killua threatens illumi 1.png
killua threatens illumi 2.png 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.

Ego-San on the Sting of Defeat

Facing cognitive dissonance due to the failure of a goal requires choosing between delusion, metamorphosis, or quitting.

To give up your dream for the pursuit of it forms cognitive dissonance on multiple layers.

  1. The initial goal, G, was not achieved, so the mind has to contend with absolute failure. The system (other people, the planet, whatever) has rejected you from attaining the goal you set, despite your best efforts.
  2. Any future time spent on the dream becomes a sunk cost fallacy (I got this good, so I can't stop now, right?). As a fallacy, it only continues to get worse. Confirmation bias (which can be avoided with a simple strategy that is discussed below[1]) also prevents you from seeing other routes, locking your routine into the literal definition of insanity: “doing the same thing over and over and expecting different results.[2]
  3. The self you've cultivated and the strategy you have chosen have failed to materialize, and you realize you can't become the person you needed to be to attain your ultimate goal due to a combination of values/self-belief/etc.

In order to break the cognitive dissonance that is born from this paradox, the goal-failer faces a crossroads:

  1. Option one is to delude themselves into thinking that they never wanted the goal to begin with (sour grapes). This is a poor long term strategy due to the investment spent in fulfilling the goal with limited resources (financial, time, etc). Delusion is chosen carefully as a word here. It is delusion because you know the truth. You know you have failed to do what you set out to do. As a defense mechanism, you pivot to protect the visage of self you've put effort into.
  2. Option two is to transform into the person that can attain your dream. Much like how Barou realized there was no satisfaction to his goal of becoming the world's best striker by playing the way he always has, he was forced to evolve into a new person through the despair. The impossible combination of his ego, his skill, and the reality of the other players on the pitch broke him at his base and a new person was formed. This metamorphosis is a new person, with a new hypothesis and a new set of values, with the same goal. The Bayseian updating part of the mind takes in the new data and reformats the core assumption.[3]
    1. This new person as a willful organism has their goal in the front of their mind and can only be stopped by the laws of the universe (physics, genetics, etc.). In the long term, this strategy also succeeds at removing cognitive dissonance, but importantly, does not involve delusion. The goal-failer accepts their failure into their hearts and realizes to become the success they envision, the only route forward is to sacrifice the version of themselves that prevent attainment of their goal.
  3. Quit. Self explanatory.
ego-san on defeat 1.png
ego-san on defeat 2.png
ego-san on defeat 3.png
ego-san on defeat 4.png
ego-san on defeat 5.png
ego-san on defeat 6.png
ego-san on defeat 7.png
ego-san on defeat 8.png
ego-san on defeat 9.png
ego-san on defeat 10.png
ego-san on defeat 11.png
ego-san on defeat 12.png
ego-san on defeat 13.png
ego-san on defeat 14.png 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.
ego-san on defeat 15.png
ego-san on defeat 16.png
ego-san on defeat 17.png
ego-san on defeat 18.png

Another Blue Lock Reveal?

seems pretty suspicious they would draw those shadowy guys in the back![1]
blue lock monsters.png

They all got those overly dramatic anime poses too, like:
hxh association.jpeg
world cup results.png

Calendar/Daily/2022-12-18: at time of writing -- Argentina narrowly cinched the world cup over France irl ↩︎

The Master Enjoys the Idea of Being Humbled

An amateur is defensive. The professional finds learning (and even, occasionally, being shown up) to be enjoyable; they like being challenged and humbled, and engage in education as an ongoing and endless process. (Location 1334)
at this age, i'll be a contender!
But he has the secret of those people to whom success comes by itself, whether it is due to being born under a lucky star or whether it is magic, or whether he has learned it from the Samanas. He always seems to be playing at business, it never makes much impression on him, it never masters him, he never fears failure, he is never worried about a loss.” (Location 598)
Do not scold, my dear friend. Nothing was ever achieved by scolding. If a loss has been sustained, I will bear the loss. I am very satisfied with this journey. I have become acquainted with many people, I have become friendly with a Brahmin, children have sat on my knee, farmers have showed me their fields. Nobody took me for a merchant.” (Location 607)
isagi vs master 1 Screenshot 2023-01-09 01-58-32.png
isagi vs master 2 Screenshot 2023-01-09 01-58-40.png
isagi vs master 3 Screenshot 2023-01-09 01-58-59.png
isagi vs master 4 Screenshot 2023-01-09 01-59-08.png
isagi vs master 5 Screenshot 2023-01-09 01-59-22.png