<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Daniel van der Merwe</title><description>Daniel van der Merwe&apos;s home base for practical notes on mindful productivity, tools for thought, and software patterns that survive contact with reality.</description><link>https://danielvandermerwe.com/</link><item><title>Nexus Score v2: Teaching Notes to Know Their Place</title><link>https://danielvandermerwe.com/writing/nexus-score-v2/</link><guid isPermaLink="true">https://danielvandermerwe.com/writing/nexus-score-v2/</guid><description>How I rebuilt the Nexus Score system from the ground up using graph theory algorithms, replacing arbitrary weights with betweenness centrality, PageRank, community detection, and Chladni-inspired visual patterns.</description><pubDate>Wed, 18 Feb 2026 03:53:45 GMT</pubDate><content:encoded>&lt;p&gt;In my [[nexus-score|original Nexus Score post]] I described a system for scoring notes based on link counts and word length. It worked, sort of. But I was never fully satisfied with it. The scores felt arbitrary, the topology classification was too simplistic, and the whole thing couldn&apos;t account for incoming links because of how remark plugins work.&lt;/p&gt;
&lt;p&gt;So I threw it all out and rebuilt it from scratch using actual graph theory. Here&apos;s how Nexus Score v2 works.&lt;/p&gt;
&lt;h2&gt;What Was Wrong With v1&lt;/h2&gt;
&lt;p&gt;The original system had a few fundamental problems that kept nagging at me:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No incoming link data at build time.&lt;/strong&gt; Remark plugins process each file independently, so a note has no way of knowing which other notes link to it. This meant the &quot;Receiver&quot; classification was effectively broken.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Arbitrary weightings.&lt;/strong&gt; I openly admitted in the original post that the weights were based on gut feel. That&apos;s fine for a first pass, but it meant the scores didn&apos;t really capture what I wanted them to.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flat scoring.&lt;/strong&gt; Adding up weighted link counts and word counts into a single number loses all the nuance. A note with 5000 words and zero links scored similarly to a note with 200 words and many links, even though they play completely different roles in the garden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Three topology types weren&apos;t enough.&lt;/strong&gt; Receiver, Hub, and Transmitter captured the direction of links but nothing about structural importance. A note that bridges two clusters is fundamentally different from a note that just has a lot of outgoing links.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;The Graph Approach&lt;/h2&gt;
&lt;p&gt;The fix was to stop thinking about notes as isolated documents and start treating them as nodes in a directed graph. I&apos;m using &lt;a href=&quot;https://graphology.github.io/&quot;&gt;Graphology&lt;/a&gt; to build the graph at build time, which gives me access to proper graph algorithms rather than hand-rolled arithmetic.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const graph = new Graph({ type: &quot;directed&quot;, multi: false });

// Every post becomes a node
for (const post of allPosts) {
  graph.addNode(`${post.collection}/${post.id}`, {
    title, collection, id, wordCount, externalLinkCount: 0, tags,
  });
}

// Wikilinks become directed edges
const wikilinks = body.match(/(?&amp;lt;=\[\[)(.*?)(?=\]\])/g) ?? [];
for (const raw of wikilinks) {
  const targetNodeId = resolveTarget(normalizeWikilink(raw), idToNode);
  if (targetNodeId &amp;amp;&amp;amp; targetNodeId !== sourceId &amp;amp;&amp;amp; !graph.hasEdge(sourceId, targetNodeId)) {
    graph.addEdge(sourceId, targetNodeId);
  }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;By building the full graph before computing any scores, the incoming links problem goes away entirely. Every node knows its in-degree because the graph tracks all edges bidirectionally.&lt;/p&gt;
&lt;h2&gt;Six Algorithms, One Cache&lt;/h2&gt;
&lt;p&gt;Once the graph is built I run six algorithms across all nodes and cache the results. This is the expensive part, so it only runs once per build.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cachedBetweenness = betweennessCentrality(graph);
cachedPageRank = pagerank(graph, { getEdgeWeight: null });
cachedCloseness = closenessCentrality(graph, { wassermanFaust: true });
cachedHITS = hits(graph, { normalize: true });
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;On top of these I also run &lt;a href=&quot;https://en.wikipedia.org/wiki/Louvain_method&quot;&gt;Louvain community detection&lt;/a&gt; to identify clusters of related notes, and Breadth-First Search (BFS) from every node to compute eccentricity and reachability. [^1]&lt;/p&gt;
&lt;p&gt;[^1]: Community clusters derived from link structure could eventually augment or even replace manually assigned &lt;a href=&quot;/tags&quot;&gt;tags&lt;/a&gt; as a way of organizing the garden.&lt;/p&gt;
&lt;p&gt;Here&apos;s what each algorithm contributes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Betweenness centrality:&lt;/strong&gt; How often does this note sit on the shortest path between two other notes? High betweenness means it&apos;s a structural bridge.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PageRank:&lt;/strong&gt; The classic Google algorithm. Notes that are linked to by other highly-linked notes score higher. It&apos;s a recursive measure of importance.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Closeness centrality:&lt;/strong&gt; How close is this note to all other notes in the graph? Notes at the center of the garden score higher than notes at the periphery.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HITS (Hyperlink-Induced Topic Search):&lt;/strong&gt; Produces two scores: authority (a note that many hubs link to) and hub (a note that links to many authorities). This captures the curator-vs-reference dynamic.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Louvain community detection:&lt;/strong&gt; Groups notes into communities based on link density. I derive a label for each community from the most common tag among its members.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BFS eccentricity &amp;amp; reachability:&lt;/strong&gt; How far can you get from this note, and what fraction of the garden can you reach? A well-integrated note can reach most of the garden in a few hops.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Five Topology Roles&lt;/h2&gt;
&lt;p&gt;The old system had three topology types based on link direction ratios. The new system has five, classified using the normalized algorithm outputs:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;let topology: &quot;B&quot; | &quot;A&quot; | &quot;H&quot; | &quot;R&quot; | &quot;T&quot; = &quot;T&quot;;

if (betweennessN &amp;gt; 0.3 &amp;amp;&amp;amp; (inDeg + outDeg) &amp;gt; 2) {
  topology = &quot;B&quot;; // Bridge: structural connector between clusters
} else if (authorityN &amp;gt; 0.3 &amp;amp;&amp;amp; inDeg &amp;gt;= outDeg &amp;amp;&amp;amp; inDeg &amp;gt; 0) {
  topology = &quot;A&quot;; // Authority: well-referenced canonical note
} else if (hubN &amp;gt; 0.3 &amp;amp;&amp;amp; outDeg &amp;gt; inDeg) {
  topology = &quot;H&quot;; // Hub: curates and links to authorities
} else if (reachability &amp;gt; 0.4 &amp;amp;&amp;amp; reciprocity &amp;gt;= 1) {
  topology = &quot;R&quot;; // Relay: well-integrated, bidirectional exchange
}
// else T (Terminal): leaf or low-connectivity note
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bridge (B):&lt;/strong&gt; A note that connects otherwise separate parts of the garden. High betweenness centrality with multiple connections.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Authority (A):&lt;/strong&gt; A canonical reference note that many other notes point to. High HITS authority score.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hub (H):&lt;/strong&gt; A note that curates and links out to many authoritative notes. High HITS hub score.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Relay (R):&lt;/strong&gt; A well-integrated note with bidirectional links and broad reach. It&apos;s embedded in the fabric of the garden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Terminal (T):&lt;/strong&gt; A leaf node or note with low connectivity. Not a bad thing, just means it&apos;s standalone.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Four-Dimensional Scoring&lt;/h2&gt;
&lt;p&gt;Instead of a single weighted sum, Nexus Score v2 uses four normalized dimensions, each capturing a different aspect of a note&apos;s character:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// Substance: content depth (25%)
const substance = 0.7 * (wordCount / 3000) + 0.3 * (externalLinks / 8);

// Position: structural importance (30%)
const position = 0.4 * betweennessNorm + 0.3 * pageRankNorm + 0.3 * closenessNorm;

// Integration: embeddedness (25%)
const integration = 0.6 * reachability + 0.4 * (reciprocity / 5);

// Authority: recognition (20%)
const authority = 0.5 * authorityNorm + 0.5 * inDegreeNorm;

const composite = 0.25 * substance + 0.30 * position + 0.25 * integration + 0.20 * authority;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Position gets the highest weight because I care most about how a note fits into the broader structure of the garden. Substance and Integration share second place. Authority gets the lowest weight because I don&apos;t want notes to score highly just because they happen to be linked to a lot; they need to earn it through structural importance and content depth too.&lt;/p&gt;
&lt;p&gt;Each dimension is normalized to 0–1 using the graph&apos;s own maximums as the ceiling. This means scores are relative to the garden&apos;s current state rather than against arbitrary thresholds.&lt;/p&gt;
&lt;p&gt;The composite score maps to a maturity stage:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Composite&lt;/th&gt;
&lt;th&gt;Stage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&amp;lt; 0.12&lt;/td&gt;
&lt;td&gt;Fragment&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;lt; 0.25&lt;/td&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;lt; 0.45&lt;/td&gt;
&lt;td&gt;Developed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&amp;lt; 0.65&lt;/td&gt;
&lt;td&gt;Advanced&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;≥ 0.65&lt;/td&gt;
&lt;td&gt;Integrated&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The final Nexus Score is a combination of topology and stage, e.g., &lt;code&gt;B_Advanced&lt;/code&gt; or &lt;code&gt;T_Fragment&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Chladni Patterns: A New Visual Language&lt;/h2&gt;
&lt;p&gt;The original Nexus Score used Tabler SVG icons to represent scores. They worked but they felt arbitrary. There was no visual logic connecting a topology-ring icon to the concept of a hub note.&lt;/p&gt;
&lt;p&gt;For v2 I replaced them with something I find far more satisfying: ASCII patterns inspired by &lt;a href=&quot;https://en.wikipedia.org/wiki/Chladni_figure&quot;&gt;Chladni figures&lt;/a&gt;. These are the patterns that emerge when you vibrate a metal plate covered in sand. Different resonant frequencies produce different nodal line patterns, and they happen to map beautifully to the concept of increasing connectivity and complexity.&lt;/p&gt;
&lt;p&gt;Each Nexus Score is encoded as a 3×3 dot grid. The spatial pattern of &quot;active&quot; cells encodes the topology role, while the character weight encodes the maturity stage.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Role masks (increasing nodal-line complexity):

T (Terminal)    R (Relay)      B (Bridge)     A (Authority)   H (Hub)
· · ·           · · ·          • · •          · • ·           • • •
· • ·           • • •          · • ·          • • •           • • •
· · ·           · · ·          • · •          · • ·           • • •
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For stage encoding, I use a character cascade where each stage&apos;s active character becomes the next stage&apos;s inactive character. This creates a visual progression of increasing intricacy:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const CHAR_PAIRS: [active, inactive][] = [
  [&quot;·&quot;, &quot;·&quot;],   // Fragment    — uniform, undifferentiated
  [&quot;•&quot;, &quot;·&quot;],   // Basic       — first contrast appears
  [&quot;○&quot;, &quot;•&quot;],   // Developed   — hollow forms emerge
  [&quot;●&quot;, &quot;○&quot;],   // Advanced    — solid forms dominate
  [&quot;◆&quot;, &quot;●&quot;],   // Integrated  — diamond apex
];
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A &lt;code&gt;T_Fragment&lt;/code&gt; is just nine identical dots. An &lt;code&gt;A_Integrated&lt;/code&gt; is a cardinal cross of diamonds against a field of filled circles. The visual complexity grows with the note&apos;s actual complexity. I like that.&lt;/p&gt;
&lt;h2&gt;Garden-Wide Stats&lt;/h2&gt;
&lt;p&gt;With a proper graph in place I could also compute aggregate stats for the garden as a whole. Things like graph density, diameter (longest shortest path), community count, orphan nodes, and mutual link counts.&lt;/p&gt;
&lt;p&gt;These get surfaced on the [[/|notes listing page]] so I can keep an eye on the health of the garden at a glance. A high orphan count tells me I have disconnected notes that need linking. A low density tells me there&apos;s room for more cross-pollination between topics.&lt;/p&gt;
&lt;h2&gt;Was It Worth It?&lt;/h2&gt;
&lt;p&gt;The original Nexus Score was a weekend project driven by curiosity. The v2 rebuild was a much larger effort, but it gave me something the original never could: scores that actually mean something.&lt;/p&gt;
&lt;p&gt;When I see a note classified as a Bridge, I know it genuinely sits between two clusters of ideas. When a note reaches Integrated status, it&apos;s because it&apos;s deeply embedded in the garden&apos;s structure, not because it happens to be long.&lt;/p&gt;
&lt;p&gt;There are still improvements to be made. The stage thresholds are still somewhat arbitrary, and the dimension weights could use more tuning as the garden grows. But the foundation is solid now, and the scores tell me things about my notes that I wouldn&apos;t have noticed otherwise.&lt;/p&gt;
&lt;p&gt;If you&apos;re curious about how a specific note scores, click on the &lt;code&gt;[+]&lt;/code&gt; icon at the top of any note to expand the full metrics panel. It shows all fourteen metrics across five rows, everything from PageRank to community labels.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Future Considerations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Temporal decay:&lt;/strong&gt; older notes that haven&apos;t been updated could have their scores attenuated&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cross-collection weighting:&lt;/strong&gt; a link from a writing post might carry different weight than a link from a journal entry&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Interactive graph explorer:&lt;/strong&gt; visualize the communities and bridges in a force-directed layout&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Score history:&lt;/strong&gt; track how a note&apos;s Nexus Score evolves over time as the garden grows&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>astro</category><category>digital-garden</category><category>graph-theory</category></item><item><title>You Have to Care</title><link>https://danielvandermerwe.com/writing/you-have-to-care/</link><guid isPermaLink="true">https://danielvandermerwe.com/writing/you-have-to-care/</guid><description>I opened my abandoned Roam Research graph, found 116 users still relying on an extension I forgot about, and realized I&apos;d become the outsider I was criticizing.</description><pubDate>Sat, 07 Feb 2026 09:52:00 GMT</pubDate><content:encoded>&lt;p&gt;Recently I decided to check back on my Roam Research graph. It felt surreal browsing through all my old notes. I opened Roam Depot, the community extension browser, and saw that my old Toggl Track extension is still around and has 116 users[^1].&lt;/p&gt;
&lt;p&gt;[^1]: I built this extension in 2022 when I was deep in the Roam community. It integrates Toggl Track time tracking directly into the Roam interface.&lt;/p&gt;
&lt;p&gt;![[../media/Pasted image 20260207135601.png]]&lt;/p&gt;
&lt;p&gt;I felt a pang of guilt. I haven&apos;t thought about this extension or the people using it in years. Later when scrolling through BlueSky I came across &lt;a href=&quot;https://bsky.app/profile/catominor.bsky.social/post/3me757emzuc2m&quot;&gt;a post from Cato Minor&lt;/a&gt; [^2], a familiar name from the early Roam days.&lt;/p&gt;
&lt;p&gt;[^2]: Cato Minor was known in the Roam community for his creative CSS experiments and writing about tools for thought. He studies medieval Latin and digital humanities.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I opened Roam Research after a long time ... and it is like travelling in time.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;We had a similar experience hours apart. Too much of a coincidence not to reply. While I was writing that reply something dawned on me.&lt;/p&gt;
&lt;p&gt;A few days earlier my business partner suggested that some of our team get involved in a few of my side projects. Esoteric tools I build on my own time for problems only I seem to care about. I felt immediate resistance.&lt;/p&gt;
&lt;p&gt;He pointed out, fairly, that it might be my ego getting in the way. It didn&apos;t feel that simple, but I couldn&apos;t articulate why. I told him it wasn&apos;t ego. The problems I care about are just very niche. He accepted it. I accepted it. I still could not name the real reason.&lt;/p&gt;
&lt;p&gt;I know the reason now. Seeing those 116 users of a forgotten unmaintained extension in my abandoned Roam graph. The work only makes sense when you&apos;re &lt;em&gt;inside&lt;/em&gt; the niche. No one else in the company uses Roam Research. And after years away from the tool, neither am I anymore. I&apos;m an impostor.&lt;/p&gt;
&lt;p&gt;If &lt;em&gt;I&lt;/em&gt; lost fluency by stepping away, what chance does someone have who was never inside to begin with?&lt;/p&gt;
&lt;p&gt;There are countless &quot;I found 101 profitable niche ideas using ChatGPT&quot; posts scattered across the internet, most of them ironically written by AI. They remind me of the listicles and growth hacks that have littered the internet for a decade. They avoid taste, discernment and doing the hard work of actually understanding a community from the inside.&lt;/p&gt;
&lt;p&gt;These posts can maybe help you discover a niche you didn&apos;t know you&apos;re interested in. But entering that niche and solving real problems requires becoming part of it. Contributing to the community, having conversations, forming opinions, arguing your convictions. Without that, you&apos;re building on sand. You&apos;ll solve the wrong problem in a niche you don&apos;t understand because you didn&apos;t take the time to know your audience. You&apos;re an impostor too.&lt;/p&gt;
&lt;p&gt;The best way to build for a niche, as always, is to get involved, do the work and solve your own problems. Chances are you&apos;re not the only one frustrated by the problem.&lt;/p&gt;
&lt;p&gt;Which raises the question. What will I do?&lt;/p&gt;
&lt;p&gt;I have declared &lt;a href=&quot;https://bradfrost.com/blog/post/declaring-systems-bankruptcy/&quot;&gt;systems bankruptcy&lt;/a&gt; [^3] and I&apos;m re-evaluating all of the tools I use to get work done. If Roam Research makes the cut I&apos;ll return in full force and contribute meaningfully to the community again. If it doesn&apos;t, I will transfer ownership of the extension to an active developer in the community. Reach out to me if this is you. All that I ask is that you care.&lt;/p&gt;
&lt;p&gt;[^3]: Declaring systems bankruptcy means acknowledging your current setup is broken beyond repair and starting fresh rather than patching.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;em&gt;Sources:&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://bsky.app/profile/catominor.bsky.social/post/3me757emzuc2m&quot;&gt;Cato Minor on BlueSky&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bradfrost.com/blog/post/declaring-systems-bankruptcy/&quot;&gt;Declaring Systems Bankruptcy — Brad Frost&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>ai</category><category>niche</category><category>community</category></item><item><title>AI HUD Exploration</title><link>https://danielvandermerwe.com/notes/ai-hud-exploration/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/ai-hud-exploration/</guid><description>A quick exploration of a HUD-style AI assistant for knowledge work.</description><pubDate>Sun, 25 Jan 2026 07:26:00 GMT</pubDate><content:encoded>&lt;p&gt;This is a fast exploration of what a HUD-style AI assistant might feel like in daily work: persistent, peripheral, and context-aware without becoming a full chat destination.&lt;/p&gt;
&lt;p&gt;What I’m testing here:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Peripheral visibility:&lt;/strong&gt; The assistant stays present without hijacking attention.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Context hooks:&lt;/strong&gt; Lightweight prompts that reference the task at hand.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Low-friction actions:&lt;/strong&gt; Quick actions instead of long conversational threads.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;![[../media/v0-ai-hud-design.vercel.app_.png]]&lt;/p&gt;
&lt;p&gt;Prototype link: https://v0-ai-hud-design.vercel.app&lt;/p&gt;
&lt;p&gt;If you want the thinking behind it, read Geoffrey Litt’s post above. It’s the spark for this sketch.&lt;/p&gt;
</content:encoded><category>exploration</category><category>ai</category><category>interface</category><category>hud</category></item><item><title>Digital Gardens</title><link>https://danielvandermerwe.com/notes/digital-gardens/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/digital-gardens/</guid><description>A short overview of the digital garden metaphor and why it fits this notes section.</description><pubDate>Sat, 24 Jan 2026 09:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Digital gardens are a way of thinking about notes as living, growing ideas rather than finished articles. The metaphor shows up across the early web, personal wikis, and knowledge-management communities—places where writing is iterative, interconnected, and intentionally incomplete.&lt;/p&gt;
&lt;p&gt;I use this section as a garden: quick seeds, experiments, and links that evolve over time. If you’re looking for polished writing, head to the Writing section. If you want to watch ideas grow, you’re in the right place.&lt;/p&gt;
</content:encoded><category>digital-garden</category><category>notes</category><category>writing</category><category>history</category></item><item><title>200 Weeks</title><link>https://danielvandermerwe.com/journal/200-weeks/</link><guid isPermaLink="true">https://danielvandermerwe.com/journal/200-weeks/</guid><description>I jogged three times a week for 200 weeks. I still don&apos;t like jogging. Here&apos;s what I learned.</description><pubDate>Fri, 14 Nov 2025 04:57:00 GMT</pubDate><content:encoded>&lt;p&gt;For 3 years and 10 months, I jogged for 30min three times per week. And I still don&apos;t like jogging. However, doing anything for that long deserves at least a celebratory post.&lt;/p&gt;
&lt;p&gt;My medical aid provider, &lt;a href=&quot;https://www.discovery.co.za/&quot;&gt;Discovery&lt;/a&gt;, has a program where I get rewarded if I meet certain fitness goals. One of the benefits is that they give you a free Apple Watch (or Oura Ring) and you pay penalty fees every week that you miss a fitness goal. So on 14 January 2022 I made a [[pact]] to jog for 30min, three times per week to fund my Apple Watch. This was not a resolution &quot;to get fit&quot;.&lt;/p&gt;
&lt;p&gt;What I’ve learned through this journey is that, come hell or high water[^1], almost any habit can be kept up three times per week indefinitely as long as it is not too time consuming and you keep it simple. The way I kept this habit simple was by deciding that, no matter where I am in the world, three times a week I will put on my running shoes, pick a direction, jog for 15min, turn around and jog back the same way. No route planning. As long as I have a 45min window I can do a 30min jog, shower and be back to what I was doing before the jog.&lt;/p&gt;
&lt;p&gt;[^1]: I&apos;ve jogged in backyards, on balconies, in thunderstorms, and in 40°C heat. The habit survives because it doesn&apos;t need anything specific to work.&lt;/p&gt;
&lt;p&gt;This wasn&apos;t my first attempt. I kept a 50-week streak once before, missed a week, and it took me three years to try again. Streaks come at a very high cost. I once chose going for a jog over being on time for a Valentine&apos;s dinner with my family. [^2] After that I vowed to never leave my last jog until the last day of the week ever again. There were times where I was maybe a bit too sick to exercise, but did it anyway against my better judgement.[^3] Streaks are not healthy, not for your mind and not always for your body either.&lt;/p&gt;
&lt;p&gt;[^2]: This is the moment I realized the streak had become the goal, not the fitness.&lt;/p&gt;
&lt;p&gt;[^3]: Discovery has since added rest weeks every 25 weeks. I save mine for when I inevitably get sick. I try to keep at least two in reserve.&lt;/p&gt;
&lt;p&gt;I don&apos;t count three 30-minute runs as exercise anymore. It&apos;s just maintenance. My non-exercise state. If I do a fourth jog or hit the gym, I&apos;ll count that. The runs are [[the-tare-button|tared out]]. Eventually I&apos;ll tare out something else too.&lt;/p&gt;
&lt;p&gt;After 200 weeks I&apos;m not sure what&apos;s next. I don&apos;t know if I have capacity for another streak like this. All I know is that the formula works.&lt;/p&gt;
&lt;p&gt;As for jogging. I still don&apos;t like it, but I&apos;ll keep going.&lt;/p&gt;
</content:encoded><category>habits</category><category>streaks</category><category>discipline</category><category>progressive-taring</category><category>pact</category></item><item><title>Habits</title><link>https://danielvandermerwe.com/notes/habits/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/habits/</guid><description>What makes habits survive long-term. Friction removal, frequency, and the frameworks behind it.</description><pubDate>Mon, 10 Nov 2025 06:09:00 GMT</pubDate><content:encoded>&lt;p&gt;Almost any habit can be kept up three times per week indefinitely as long as it&apos;s not too time consuming and you keep it simple.&lt;/p&gt;
&lt;p&gt;Simple means no decisions. I jog three times a week. No matter where I am in the world I put on my running shoes, pick a direction, jog for 15 minutes, turn around and jog back the same way. No route planning. As long as I have a 45 minute window I can do a 30 minute jog, shower and be back to what I was doing.&lt;/p&gt;
&lt;h2&gt;What makes a habit survive:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero decisions:&lt;/strong&gt; Every decision is a chance to negotiate with yourself. &quot;Which route?&quot; becomes &quot;maybe not today.&quot;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Location-independent:&lt;/strong&gt; If it only works at home it breaks the first time you travel.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Honest time commitment:&lt;/strong&gt; 30 minutes plus buffer, not &quot;an hour if I really commit.&quot; The version that survives is the minimum viable version. Three times per week, not daily. Daily [[streaks|streaks]] collapse under their own weight for me. Three times gives slack for life to happen.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;The frameworks behind this:&lt;/h2&gt;
&lt;p&gt;James Clear&apos;s implementation intention formula is :[^1]&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I will &lt;code&gt;[habit]&lt;/code&gt; at &lt;code&gt;[time/location]&lt;/code&gt; so that I can become &lt;code&gt;[type of person I want to be]&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;His &lt;a href=&quot;https://jamesclear.com/atomic-habits-summary&quot;&gt;Four Laws of Behavior Change&lt;/a&gt; map onto why my jogging setup works:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Make it obvious:&lt;/strong&gt; Running shoes by the door. Put on running clothes first thing in the morning. No planning required.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Make it attractive:&lt;/strong&gt; Discovery rewards me financially for doing it (see [[pact]]).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Make it easy:&lt;/strong&gt; Pick a direction, go 15 minutes, turn around, go back. That&apos;s it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Make it satisfying:&lt;/strong&gt; The streak itself becomes the reward. Though this cuts both ways (see [[streaks]]).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;BJ Fogg&apos;s &lt;a href=&quot;https://www.goodreads.com/book/show/43261127-tiny-habits&quot;&gt;Tiny Habits&lt;/a&gt; recipe is similar but focuses on the trigger rather than identity:[^2]&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;After I &lt;code&gt;[anchor moment]&lt;/code&gt;, I will &lt;code&gt;[tiny behavior]&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;His core insight is that motivation is unreliable. Design the habit so it doesn&apos;t need motivation. His behaviour model, &lt;code&gt;B=MAP&lt;/code&gt; (Behaviour = Motivation + Ability + Prompt), explains why my setup works even on days I don&apos;t feel like running. The ability threshold is low enough that even minimal motivation gets me out the door.&lt;/p&gt;
&lt;p&gt;Where Clear and Fogg diverge is interesting. Clear ties habits to [[identity|identity]]. You&apos;re not just running, you&apos;re becoming a runner. Fogg is more mechanical. Anchor, behaviour, celebrate. Don&apos;t worry about who you&apos;re becoming, just make the behaviour automatic.[^3] My experience sits somewhere between the two. The identity piece matters (see [[progressive-taring]] for what happens when a habit becomes so automatic it disappears from your identity as &quot;effort&quot;), but the mechanical design is what got me through the first few months.&lt;/p&gt;
&lt;h2&gt;When a habit becomes invisible:&lt;/h2&gt;
&lt;p&gt;At some point the activation energy required drops to near zero. You&apos;re not deciding to do it. You&apos;re just doing it. That&apos;s when it crosses into [[progressive-taring]] territory. The habit stops being effort and becomes baseline.&lt;/p&gt;
&lt;p&gt;[[habit-stacking|Habit Stacking]] is a different mechanism. That&apos;s about piggybacking new habits onto existing ones. What I&apos;m describing here is more about making a single habit so frictionless it becomes permanent.&lt;/p&gt;
&lt;h2&gt;Open question:&lt;/h2&gt;
&lt;p&gt;Is three times per week a universal sweet spot or just my sweet spot? I haven&apos;t tested other frequencies with the same rigour.&lt;/p&gt;
&lt;p&gt;[^1]: Clear, James. &lt;a href=&quot;https://www.goodreads.com/book/show/40121378-atomic-habits&quot;&gt;Atomic Habits&lt;/a&gt; (2018). His formula is a variation of what psychologists call &quot;implementation intentions.&quot; The research suggests activities set for specific times and places are significantly more likely to be followed through.
[^2]: Fogg, BJ. &lt;a href=&quot;https://www.goodreads.com/book/show/43261127-tiny-habits&quot;&gt;Tiny Habits: The Small Changes That Change Everything&lt;/a&gt; (2019). Fogg argues that emotions create habits, not repetition. The first time a child gets ice cream they don&apos;t need to practice the habit to want more. This challenges the popular &quot;21 days to form a habit&quot; myth.
[^3]: This might explain why Clear&apos;s framework resonates more with people who want to change and Fogg&apos;s works better for people who want to add. &quot;Become a runner&quot; vs &quot;do two push-ups when I make coffee.&quot; Different goals, different entry points.&lt;/p&gt;
</content:encoded><category>habits</category><category>discipline</category></item><item><title>PACT</title><link>https://danielvandermerwe.com/notes/pact/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/pact/</guid><description>Output-focused goal-setting for open-ended, long-term goals. Why SMART goals don&apos;t fit every situation and when PACT (Purposeful, Actionable, Continuous, Trackable) works better.</description><pubDate>Wed, 05 Nov 2025 06:09:00 GMT</pubDate><content:encoded>&lt;p&gt;SMART goals work. Nobody&apos;s arguing that. But they work best when the path is predictable and the outcome is measurable. &quot;Save R50,000 by December.&quot; &quot;Ship the feature by Q3.&quot; Clear finish line, clear timeline. SMART was built for that.[^1]&lt;/p&gt;
&lt;p&gt;The problem is when people reach for SMART goals in situations where they don&apos;t fit. Long-term, open-ended goals. Goals where the process matters more than hitting a number. Goals where the timeline is &quot;until it works.&quot; Learning to code. Building a writing practice. Getting fit. These don&apos;t have a clean finish line. SMART forces you to invent one, and then you either hit an arbitrary target and stop, or miss it and feel like you failed.&lt;/p&gt;
&lt;p&gt;Anne-Laure Le Cunff proposed PACT as an alternative.[^2] Purposeful, Actionable, Continuous, Trackable.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purposeful:&lt;/strong&gt; Aligned with long-term meaning, not just current relevance. Tasks can lack purpose. Goals shouldn&apos;t.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Actionable:&lt;/strong&gt; Based on outputs you control. Not &quot;get 5,000 subscribers&quot; but &quot;publish weekly for 25 weeks.&quot; The distinction matters. One depends on other people. The other depends on you showing up.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Continuous:&lt;/strong&gt; Simple, repeatable actions. No choice paralysis, no elaborate planning. Start, learn, adjust. This is where PACT connects directly to [[habits|habits]]. The continuous element is what turns a goal into a practice.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Trackable:&lt;/strong&gt; Not measurable. Binary. Did you do the thing today? Yes or no. Le Cunff compares it to the GitHub contribution graph. Green square or empty square.[^3]&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Where SMART wins:&lt;/h2&gt;
&lt;p&gt;Predictable processes. Defined timelines. Team deliverables. Financial targets. Anything where you can reasonably forecast the path from here to there.&lt;/p&gt;
&lt;h2&gt;Where PACT wins:&lt;/h2&gt;
&lt;p&gt;Open-ended personal goals. Skill development. Creative work. [[habits]] that need to survive longer than motivation does. Anything where showing up consistently matters more than hitting a number.&lt;/p&gt;
&lt;h2&gt;How I use it:&lt;/h2&gt;
&lt;p&gt;My jogging habit is a PACT goal that accidentally looks like a SMART one. Three runs per week, indefinitely. Purposeful (health, mental clarity). Actionable (I control whether I run). Continuous (same simple action, repeating). Trackable (did I run three times this week? yes or no). There&apos;s no finish line. The goal is the practice itself. See [[200-weeks]].&lt;/p&gt;
&lt;p&gt;The danger is treating this as either/or. It&apos;s not. It&apos;s about matching the framework to the situation. SMART for projects with endpoints. PACT for practices without them.&lt;/p&gt;
&lt;p&gt;[^1]: SMART was coined by George T. Doran in the November 1981 issue of Management Review. Specific, Measurable, Achievable, Relevant, Timely. It&apos;s become the default goal-setting framework for good reason. It just isn&apos;t the only one worth knowing.
[^2]: Le Cunff, Anne-Laure. &lt;a href=&quot;https://nesslabs.com/smart-goals-pact&quot;&gt;SMART goals are not so smart: make a PACT instead&lt;/a&gt;. Ness Labs. The same Anne-Laure Le Cunff who wrote Tiny Experiments, which reframed how I think about [[generativity]] over legacy.
[^3]: This is where PACT overlaps with [[streaks]] and where the tension lives. Binary tracking is a streak by another name. The difference is that PACT doesn&apos;t punish you for missing a day. The emphasis is on continuous progress, not an unbroken chain.&lt;/p&gt;
</content:encoded><category>habits</category><category>goals</category><category>discipline</category><category>experiments</category></item><item><title>Streaks</title><link>https://danielvandermerwe.com/notes/streaks/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/streaks/</guid><description>Why I&apos;m skeptical of streaks despite maintaining one for 200+ weeks. The cost, the conditions, and what Clear&apos;s &quot;never miss twice&quot; rule reveals about why breaking a streak is so destructive.</description><pubDate>Wed, 05 Nov 2025 06:09:00 GMT</pubDate><content:encoded>&lt;p&gt;import TimeSince from &quot;@components/TimeSince.astro&quot;;&lt;/p&gt;
&lt;p&gt;I&apos;m not a fan of streaks. They stress me out.&lt;/p&gt;
&lt;p&gt;I kept a 3x per week jogging streak for 50 weeks, then broke it. It took me almost three years to start again. That&apos;s what streak-breaking does to me. Not a gradual fade. A cliff. Very demotivating to restart from zero when the counter reads zero.&lt;/p&gt;
&lt;p&gt;James Clear calls this the spiral: &quot;The first mistake is never the one that ruins you. It is the spiral of repeated mistakes that follows.&quot;[^1] His rule is &quot;never miss twice.&quot; Missing once is an accident. Missing twice is the start of a new habit.[^2] &lt;a href=&quot;https://onlinelibrary.wiley.com/doi/abs/10.1002/ejsp.674&quot;&gt;A study&lt;/a&gt; in the European Journal of Social Psychology backs this up. Missing any single day of a habit has no measurable impact on long-term adherence. It&apos;s the second miss that kills it.&lt;/p&gt;
&lt;p&gt;Now I&apos;m at &amp;lt;TimeSince startDateTime=&quot;2022-01-14 00:00:00&quot; unit=&quot;week&quot; decimalPlaces={0} updateInterval={6000} /&amp;gt; weeks. This streak has caused anxiety and real tension. Times when I&apos;ve prioritized the jog over other commitments just to keep it alive.[^3]&lt;/p&gt;
&lt;h2&gt;When streaks work:&lt;/h2&gt;
&lt;p&gt;Simple enough to do anywhere (see [[habits]]). Infrequent enough to sustain. 3x/week, not daily. Backed by clear external incentives (see [[pact]]).&lt;/p&gt;
&lt;h2&gt;The limits:&lt;/h2&gt;
&lt;p&gt;I can&apos;t manage a daily streak. I don&apos;t think I ever will. Unless it&apos;s something already invisible. Brushing teeth, morning coffee. Things that don&apos;t require activation energy.&lt;/p&gt;
&lt;h2&gt;Why this one survives:&lt;/h2&gt;
&lt;p&gt;It&apos;s crossed into [[progressive-taring]] territory. Three runs per week aren&apos;t exercise anymore. They&apos;re baseline. The streak isn&apos;t something I&apos;m chasing, it&apos;s just what happens now. The anxiety is still there though. I&apos;m aware that one bad week could send me into another three-year gap.&lt;/p&gt;
&lt;h2&gt;The selectivity:&lt;/h2&gt;
&lt;p&gt;I wouldn&apos;t maintain another streak like this. Not at this frequency, not with this level of commitment. The cost is real. The question isn&apos;t &quot;can I?&quot; but &quot;is it worth it?&quot;&lt;/p&gt;
&lt;h2&gt;The alternative:&lt;/h2&gt;
&lt;p&gt;[[maintaining-averages]] is a healthier approach for most things. It removes the cliff-edge psychology of streaks and replaces it with something more forgiving. Not everything needs the rigidity of a streak to work.&lt;/p&gt;
&lt;h2&gt;Open question:&lt;/h2&gt;
&lt;p&gt;Is there a way to get the benefits of a streak (consistency, identity reinforcement) without the anxiety of breaking it? Or is the anxiety the mechanism that makes it work?&lt;/p&gt;
&lt;p&gt;[^1]: Clear, James. &lt;a href=&quot;https://www.goodreads.com/book/show/40121378-atomic-habits&quot;&gt;Atomic Habits&lt;/a&gt; (2018). Also expanded on in his essay &lt;a href=&quot;https://jamesclear.com/second-mistake&quot;&gt;Avoid the Second Mistake&lt;/a&gt;.
[^2]: This is essentially what [[maintaining-averages]] does. It builds &quot;never miss twice&quot; into the system by design. You don&apos;t need a perfect streak, you need to keep the average honest.
[^3]: The streak becomes its own goal, separate from the underlying habit. You&apos;re no longer running for fitness, you&apos;re running to not break the streak. That shift creates pressure. James Clear writes about this too. Once your pride gets involved, you&apos;ll fight tooth and nail to maintain your habits. &lt;a href=&quot;https://www.goodreads.com/book/show/40121378-atomic-habits&quot;&gt;Atomic Habits&lt;/a&gt; (2018). Pride is fuel until it becomes a cage.&lt;/p&gt;
</content:encoded><category>habits</category><category>streaks</category><category>discipline</category></item><item><title>On Craftsmanship</title><link>https://danielvandermerwe.com/notes/craftsmanship/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/craftsmanship/</guid><description>On craftsmanship</description><pubDate>Fri, 31 Oct 2025 16:49:40 GMT</pubDate><content:encoded>&lt;p&gt;Craftmanship is a stepping stone to [[mastery]].&lt;/p&gt;
</content:encoded><category>fragment</category></item><item><title>Friction</title><link>https://danielvandermerwe.com/notes/friction/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/friction/</guid><description>On friction</description><pubDate>Fri, 31 Oct 2025 16:49:40 GMT</pubDate><content:encoded>&lt;p&gt;One of the biggest hurdles to writing for me has been the friction of my technical brain getting in the way of me publishing on a website&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[[craftsmanship|I want things to be well crafted]]&lt;/li&gt;
&lt;li&gt;I struggle to write without editing&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>fragment</category></item><item><title>Interstitial Journaling</title><link>https://danielvandermerwe.com/notes/interstitial-journaling/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/interstitial-journaling/</guid><description>Thoughts on interstitial journaling</description><pubDate>Fri, 31 Oct 2025 16:49:40 GMT</pubDate><content:encoded>&lt;p&gt;Where interstitial journaling helps you stay on top o things at a micro level from task to task on a macro level day to day look into [[hemingway-bridge]]&lt;/p&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;https://nesslabs.com/interstitial-journaling&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>fragment</category></item><item><title>On Mastery</title><link>https://danielvandermerwe.com/notes/mastery/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/mastery/</guid><description>On mastery</description><pubDate>Fri, 31 Oct 2025 16:49:40 GMT</pubDate><content:encoded>&lt;p&gt;Entrepreneur and author Derek Sivers, on the subject of mastery:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&quot;Mastery is the best goal because the rich can&apos;t buy it, the impatient can&apos;t rush it, the privileged can&apos;t inherit it, and nobody can steal it. You can only earn it through hard work. Mastery is the ultimate status.&quot;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Source: &lt;a href=&quot;https://www.goodreads.com/book/show/58188742-how-to-live&quot;&gt;How to Live&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
</content:encoded><category>fragment</category></item><item><title>Progressive Taring</title><link>https://danielvandermerwe.com/notes/progressive-taring/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/progressive-taring/</guid><description>When a habit becomes so automatic it disappears from your effort budget. The kitchen scale tare function as a mental model for raising baselines.</description><pubDate>Mon, 16 Dec 2024 11:22:00 GMT</pubDate><content:encoded>&lt;p&gt;Kitchen scales have a tare function. Put a bowl on the scale, press tare, now the bowl weighs nothing. Only what you add to the bowl counts.[^1][^2]&lt;/p&gt;
&lt;p&gt;[^1]: Tare and zero are different functions. &lt;a href=&quot;https://www.marsden-weighing.co.uk/blogs/news/difference-zero-tare&quot;&gt;Zero&lt;/a&gt; resets the scale when nothing is on it (recalibration). Tare ignores the weight of what&apos;s already there (the container). What I&apos;m describing is taring, not zeroing. The weight is still there. You&apos;ve just made it invisible to the measurement. See also &lt;a href=&quot;https://en.wikipedia.org/wiki/Tare_weight&quot;&gt;Tare Weight&lt;/a&gt; on Wikipedia.
[^2]: This note used to be called &quot;Redefining Zero&quot; before I thought of the tare analogy.&lt;/p&gt;
&lt;p&gt;I do this with [[habits]].&lt;/p&gt;
&lt;p&gt;Three 30-minute runs per week used to be my exercise. Now it&apos;s tared out. It&apos;s maintenance. My non-exercise state. Only a fourth run or strength training counts as actual exercise.&lt;/p&gt;
&lt;p&gt;Muhammad Ali only started counting sit-ups when they hurt. When a reporter asked how many he did, his response: &quot;I don&apos;t count my sit-ups; I only start counting when it starts hurting because they&apos;re the only ones that count.&quot; &lt;a href=&quot;https://youtu.be/u_ktRTWMX3M?t=208&quot;&gt;Video&lt;/a&gt;.[^3] Same principle. The warm-up reps are tared out.&lt;/p&gt;
&lt;p&gt;[^3]: Often misattributed to Arnold Schwarzenegger. The principle is the same either way. Everything before the burn is container weight. Only what comes after counts as real effort. See [[200-weeks]] for how I apply this to my running habit.&lt;/p&gt;
&lt;h2&gt;How it works:&lt;/h2&gt;
&lt;p&gt;A habit becomes automatic when it requires no decisions, takes minimal time, and happens reliably (see [[habits]]). Once it&apos;s automatic, it disappears from your effort budget. That&apos;s when you tare it out. Only what you add on top counts.&lt;/p&gt;
&lt;h2&gt;The progression:&lt;/h2&gt;
&lt;p&gt;Each tared level becomes the foundation for the next. You&apos;re not starting from zero. You&apos;re building on a container that&apos;s already invisible.[^4]&lt;/p&gt;
&lt;p&gt;[^4]: The metaphor breaks down if you push it too far. You can&apos;t infinitely stack containers on a scale. But the principle holds: automatic behaviours become the platform for the next level of effort.&lt;/p&gt;
&lt;h2&gt;What I&apos;m considering next:&lt;/h2&gt;
&lt;p&gt;Some sort of weekly strength training ritual. Eventually it&apos;ll be tared out too.&lt;/p&gt;
&lt;h2&gt;The question:&lt;/h2&gt;
&lt;p&gt;Not everything should be tared out. What actually earns that level of invisibility? There&apos;s a cost to making something automatic (see [[streaks]]). The habit has to be worth the investment of making it disappear.&lt;/p&gt;
&lt;h2&gt;Where this shows up:&lt;/h2&gt;
&lt;p&gt;Sleep schedule. Daily writing. Financial reviews. Morning routines. Code review rituals. Weekly planning sessions.[^5] Once you see it, you see it everywhere. Anything that happens reliably enough becomes infrastructure.&lt;/p&gt;
&lt;p&gt;[^5]: This is similar to what software engineers call &quot;infrastructure.&quot; You don&apos;t think about the CI/CD pipeline every time you push code. It&apos;s tared out. It only becomes visible again when it breaks.&lt;/p&gt;
</content:encoded><category>habits</category><category>discipline</category><category>mental-models</category></item><item><title>AI and the Agency Paradox</title><link>https://danielvandermerwe.com/writing/ai-agency-paradox/</link><guid isPermaLink="true">https://danielvandermerwe.com/writing/ai-agency-paradox/</guid><description>Artificial Intelligence is everywhere. A look at how it&apos;s reshaping our world, the risks to agency, and how I plan to use it responsibly.</description><pubDate>Sat, 23 Nov 2024 10:00:00 GMT</pubDate><content:encoded>&lt;h2&gt;Table of contents&lt;/h2&gt;
&lt;h2&gt;A World Built on AI&lt;/h2&gt;
&lt;p&gt;&amp;lt;br /&amp;gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Caffeine equips us to cope with the world caffeine helped us to create.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;— Michael Pollan, &amp;lt;cite&amp;gt;&lt;a href=&quot;https://www.goodreads.com/book/show/52300107-caffeine&quot;&gt;Caffeine: How Caffeine Created the Modern World&lt;/a&gt;&amp;lt;/cite&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;br /&amp;gt;&lt;/p&gt;
&lt;p&gt;If you replace &quot;Caffeine&quot; with &quot;AI&quot; in the quote above, it perfectly captures our current trajectory.
We rely on AI to be productive, to find inspiration, and, just like caffeine, it&apos;s becoming an essential component of our daily lives.
However, AI has the power to strip us of our &lt;a href=&quot;https://sociologydictionary.org/agency/&quot;&gt;agency&lt;/a&gt; in ways caffeine never could.&lt;/p&gt;
&lt;p&gt;Sure, one could argue that caffeine physically enters our bodies while AI does not. At least, not yet. &lt;a href=&quot;https://neuralink.com/blog/prime-study-progress-update-second-participant/&quot;&gt;Neural implants&lt;/a&gt; may change that soon enough.
Another way to look at it is that we feed our brains with information, just as we feed our bodies with food.
Our devices become extensions of ourselves. We are increasingly outsourcing our thinking and decision-making to algorithms.
If you&apos;ve ever experienced that uneasy feeling when leaving home without your phone, you know just how deeply intertwined our identities have become with our technologies.&lt;/p&gt;
&lt;p&gt;Despite this, I&apos;m not entirely pessimistic about AI. I do believe there is a possible future where things turn out fine, but it won&apos;t happen without effort on our part.
While there&apos;s plenty of fear-mongering online about AI wiping out or enslaving humanity, I&apos;m more concerned about a different kind of future.
Not the &lt;a href=&quot;https://en.wikipedia.org/wiki/Skynet_(Terminator)&quot;&gt;Skynet&lt;/a&gt; scenario from Terminator, but something closer to the future depicted in &lt;a href=&quot;https://www.imdb.com/title/tt0910970/&quot;&gt;WALL·E&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;The WALL·E Future&lt;/h2&gt;
&lt;p&gt;If you haven&apos;t seen WALL·E, the film portrays a future where humans have surrendered all agency to technology and AI.
In this future, every aspect of life is automated. People have become so dependent that even the act of walking has become obsolete.
Their existence revolves around constant consumption, with technology managing everything else.
This future is far more plausible than the one depicted by &lt;em&gt;Terminator&lt;/em&gt;, and it terrifies me.&lt;/p&gt;
&lt;p&gt;Right now, we&apos;re racing toward this WALL·E future at breakneck speed. The &lt;a href=&quot;https://en.wikipedia.org/wiki/Boiling_frog&quot;&gt;boiling frog metaphor&lt;/a&gt; comes to mind.
Humans are often slow to act, especially if change threatens our convenience, wealth, and power.
Just look at the climate crisis for a glaring example.&lt;/p&gt;
&lt;h2&gt;Using AI Responsibly&lt;/h2&gt;
&lt;p&gt;I still plan to use AI, but with safeguards in place to ensure I use it responsibly and thoughtfully, despite my concerns.
I intend to pass these guiding principles on to my children and share them with anyone willing to listen.
AI is proof that memorising facts won&apos;t serve us well in the long run.
What matters, now more than ever, are skills like focus, critical thinking, logical reasoning, and the ability to discern truth from fiction.
Through this lens, the shortcomings of our education systems are glaringly obvious. However, that&apos;s a topic for another day.&lt;/p&gt;
&lt;p&gt;Here are my guiding principles for using AI responsibly:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Transparency in AI Usage:&lt;/strong&gt; Always disclose when and how AI is involved in content creation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AI as an Assistive Tool:&lt;/strong&gt; Use AI to support your creative process, not to replace your own thinking and originality. Remember, it can mimic you but it can never &lt;em&gt;be&lt;/em&gt; you.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Personal Authorship:&lt;/strong&gt; Write the first draft yourself and personally proofread the final version to ensure authenticity and accuracy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clear Objectives:&lt;/strong&gt; Employ AI tools when you have a clear goal in mind. Avoid using it without a defined outcome to prevent aimless or irrelevant results.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Awareness of Limitations and Biases:&lt;/strong&gt; Understand that AI is trained on data that may contain biases and can sometimes produce inaccurate or misleading information. It can even fabricate details, a phenomenon known as &quot;confabulation&quot; (a.k.a &quot;hallucination&quot;). Do not let AI fill in gaps without verification.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Responsible and Ethical Use:&lt;/strong&gt; Use AI sparingly and responsibly, acknowledging its unknown long-term effects. Ensure that your use of AI adheres to ethical standards and does not contribute to misinformation or harm.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Actions Speak Louder Than Words&lt;/h2&gt;
&lt;p&gt;To hold myself accountable, I created an &lt;a href=&quot;/ai&quot;&gt;AI Manifesto&lt;/a&gt; page, inspired by &lt;a href=&quot;https://www.bydamo.la/p/ai-manifesto&quot;&gt;these&lt;/a&gt; &lt;a href=&quot;https://rknight.me/ai/&quot;&gt;great&lt;/a&gt; &lt;a href=&quot;https://yordi.me/ai/&quot;&gt;examples&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I also disclose how I use AI for creating content and code on this website.
At the bottom of this post, you&apos;ll find an example of this, as well as every other post here.
If you&apos;re curious about how it all works, I explain it in the section on &lt;a href=&quot;/ai#writing&quot;&gt;how I use AI for writing&lt;/a&gt; on my AI Manifesto page.&lt;/p&gt;
&lt;h2&gt;Final Thoughts&lt;/h2&gt;
&lt;p&gt;AI is an unprecedented anomaly in human history, and it will inevitably impact every industry.
While we&apos;ve witnessed transformative innovations before, like the invention of electricity or the rise of the internet, this time feels different.
The accessibility and rapid advancement of AI have changed the game.
It is embedding itself into every sector at an alarming rate, as evidenced by all the &lt;a href=&quot;https://bigmedium.com/ideas/your-sparkles-are-fizzling.html&quot;&gt;sparkles ✨&lt;/a&gt; popping up in almost every software tool we use.&lt;/p&gt;
&lt;p&gt;AI mimics intelligence by speaking well, but speaking well is not the same as thinking well. We often fall for this with humans too. [^1]
Throughout history, there are countless examples where people were misled by confident charlatans that spoke well.&lt;/p&gt;
&lt;p&gt;[^1]: Josh Clark, &lt;a href=&quot;https://bigmedium.com/ideas/links/exploring-the-ai-solution-space-jorge-arango.html&quot;&gt;Exploring the AI Solution Space&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;br /&amp;gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The AI-written contract may be better than a human-written one.
But can you trust it? After all, if you&apos;re not a lawyer, you don&apos;t know what you don&apos;t know.
And the fact that the AI contract looks so similar to a human one makes it easy for you to take its provenance for granted.
That is, the better the outcome looks to your non-specialist eyes, the more likely you are to give up your agency.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;— Jorge Arango, &amp;lt;cite&amp;gt;&lt;a href=&quot;https://jarango.com/2024/10/01/exploring-the-ai-solution-space/&quot;&gt;Exploring the AI Solution Space&lt;/a&gt;&amp;lt;/cite&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;br /&amp;gt;&lt;/p&gt;
&lt;p&gt;And herein lies the problem. If we trust that AI is correct without validating its correctness, we have given up our agency.&lt;/p&gt;
&lt;h2&gt;Further reading:&lt;/h2&gt;
&lt;p&gt;Here are some more interesting thoughts and links on the topic of AI that aren&apos;t directly mentioned above.
I&apos;ll keep adding to this list as I discover more interesting or thought-provoking takes on AI:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://slashai.page/&quot;&gt;SlashAI: A Hub for AI Manifestos&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://maggieappleton.com/generative-forgery&quot;&gt;Maggie Appleton on Generative Forgery&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rachsmith.com/ai-is-for-the-idea-guys/&quot;&gt;Rach Smith on AI Is for the Idea Guys&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://rachsmith.com/i-want-good-search/&quot;&gt;Rach Smith on Wanting Better Search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/microsoft/generative-ai-for-beginners/blob/main/03-using-generative-ai-responsibly/README.md&quot;&gt;Microsoft&apos;s Guide to Using Generative AI Responsibly&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.mdpi.com/2075-4698/15/1/6&quot;&gt;AI Tools in Society: Impacts on Cognitive Offloading and the Future of Critical Thinking&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>ai</category><category>agency</category><category>future</category><category>technology</category><category>ethics</category></item><item><title>Visual Representations of Interconnectedness and Depth</title><link>https://danielvandermerwe.com/writing/nexus-score/</link><guid isPermaLink="true">https://danielvandermerwe.com/writing/nexus-score/</guid><description>Nexus Score: A system for evaluating and visually representing notes in a digital garden based on connectedness and content depth.</description><pubDate>Thu, 12 Oct 2023 09:52:00 GMT</pubDate><content:encoded>&lt;p&gt;I was introduced to the concept of using patterns to convey information density in this &lt;a href=&quot;https://notes.azlen.me/cri6tvov/&quot;&gt;digital garden note&lt;/a&gt; by &lt;a href=&quot;https://twitter.com/azlenelza&quot;&gt;Azlen&lt;/a&gt;. Similarly, &lt;a href=&quot;https://maggieappleton.com/notes&quot;&gt;Maggie Appleton also uses iconography&lt;/a&gt; to visually differentiate between seedling, budding and evergreen notes in her digital garden. They inspired me to create my own pattern system to convey the interconnectedness and depth of notes on this website.&lt;/p&gt;
&lt;p&gt;In order to create a pattern system for categorizing notes I had to define some factors that differentiate notes from each other. I selected the following criteria to try and capture connectedness and depth of each note:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Incoming links (Backlinks):&lt;/strong&gt; These represent how many other notes refer or link back to a particular note. A higher number of backlinks indicates that the note is a crucial reference or cornerstone in the digital garden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Outgoing links:&lt;/strong&gt; This measures how many other notes a particular note refers to. It can indicate the breadth of a note and its interconnectedness within the digital garden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Word count:&lt;/strong&gt; A note&apos;s length can often signify its depth or thoroughness on a subject. Longer notes might delve deeper into a topic, while shorter ones could be more concise or introductory.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;External links:&lt;/strong&gt; These demonstrate how a note connects to external resources or references outside the digital garden. It&apos;s a nod to the fact that no note exists in isolation and that our knowledge often builds on external sources.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Criteria and Weights&lt;/h2&gt;
&lt;p&gt;I then needed to figure out a way to score notes based on these criteria. After a lot of coffee and tinkering I settled on the following approach.&lt;/p&gt;
&lt;p&gt;I decided on some arbitrary weightings for each criterion based on absolutely no research at all, I just went with my gut and some rudimentary reasoning. I&apos;ll tweak these weightings as the site grows.&lt;/p&gt;
&lt;p&gt;I&apos;ll use code snippets to explain the approach I took.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const incomingLinkModifier = 3;
const outgoingLinkModifier = 1.5;
const externalResourceModifier = 2;
const wordCountModifier = 0.005;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I then work out a score for each criterion:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const incomingLinkScore = incomingLinkCount * incomingLinkModifier;
const outgoingLinkScore = outgoingLinkCount * outgoingLinkModifier;
const externalLinkScore =
  externalResourceModifier * Math.log(1 + externalResourceCount);
const wordCountScore = wordCount * wordCountModifier;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Pretty self explanatory, but it&apos;s worth noting the reason I used logarithmic scoring on the external link is because of posts like [[../loadout/loadout-update-2023-q3|Loadout Update (2023/Q3)]] . This post has many external links which in normal cases wouldn&apos;t be a problem, but in this case it created an abnormal inflation of the score the post was given. So I used logarithmic scoring to apply some diminishing returns on the use of external links.&lt;/p&gt;
&lt;p&gt;In the future I might consider adding different weighting options for different post types but for now this will do.&lt;/p&gt;
&lt;h2&gt;Introducing the Nexus Score&lt;/h2&gt;
&lt;p&gt;To calculate a score for each note based on the the weighting calculations presented some challenges. Just because a note has many outgoing links does not mean it is equal to a note that has many words.&lt;/p&gt;
&lt;p&gt;My first approach was to tally up the scores but it didn&apos;t convey any meaningful information based on connectedness to other notes for example. Just by looking at a score you can&apos;t know if it has that score because of many incoming links or because it has a lot of words.&lt;/p&gt;
&lt;p&gt;So the approach I settled on was to apply a multi-dimensional scoring approach.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const linkDominanceThreshold = 10;
const linkDominanceScore = incomingLinkScore - outgoingLinkScore;

let dominanceState;

if (Math.abs(linkDominanceScore) &amp;lt; linkDominanceThreshold) {
  dominanceState = &quot;H&quot;; // Hub Note
} else if (linkDominanceScore &amp;gt; 0) {
  dominanceState = &quot;R&quot;; // Receiver Note
} else {
  dominanceState = &quot;T&quot;; // Transmitter Note
}
const totalScore =
  Math.abs(linkDominanceScore) + wordCountScore + externalLinkScore;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ok, so what&apos;s going on here?&lt;/p&gt;
&lt;p&gt;Firstly I calculate a dominance score by subtracting incoming link count from outgoing link count. This will either give me a negative or positive number. If the absolute (regardless of sign) dominance score is less than 10 it&apos;s a &quot;Hub&quot; note. It means there is a balance of incoming and outgoing links to and from the note. If it has a positive score it is a &quot;Receiver&quot; note that has many incoming notes. If it has negative score it is a Transmitter note with many outgoing links to other notes.&lt;/p&gt;
&lt;p&gt;The final part of the equation is to then add the absolute link dominance score, word count score and external link score together for a final total score.&lt;/p&gt;
&lt;p&gt;I&apos;m then left with two outputs that form what I&apos;m calling Nexus Score.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A letter representing link dominance: &lt;code&gt;H / R / T&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;A number representing a total score of all the other scores&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Visually Representing Nexus Scores&lt;/h2&gt;
&lt;p&gt;To visually represent these scores on notes I had to figure out ranges for the numbers. Once again I went with gut feel based on the current scores.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;const iconScoreRanges: IconScoreRanges = {
  R_Fragment: [0, 10],
  R_Basic: [10, 26],
  R_Developed: [26, 42],
  R_Advanced: [42, 68],
  R_Integrated: [68, Infinity],

  H_Fragment: [0, 10],
  H_Basic: [10, 26],
  H_Developed: [26, 42],
  H_Advanced: [42, 68],
  H_Integrated: [68, Infinity],

  T_Fragment: [0, 10],
  T_Basic: [10, 26],
  T_Developed: [26, 42],
  T_Advanced: [42, 68],
  T_Integrated: [68, Infinity],
};
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;These ranges will definitely be adjusted over time as the site grows.&lt;/p&gt;
&lt;p&gt;The link dominance score and total score can now be used to match a score range. As an example a note with more outgoing links than incoming links and a total score of 25 will resolve to &lt;code&gt;T_Basic&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Here is a full map of the Nexus Score icons.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Nexus Score&lt;/th&gt;
&lt;th&gt;[R] Receiver&lt;/th&gt;
&lt;th&gt;[H] Hub&lt;/th&gt;
&lt;th&gt;[T] Transmitter&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Fragment&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-circle&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-circle-dashed&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8.56 3.69a9 9 0 0 0 -2.92 1.95&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M3.69 8.56a9 9 0 0 0 -.69 3.44&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M3.69 15.44a9 9 0 0 0 1.95 2.92&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8.56 20.31a9 9 0 0 0 3.44 .69&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M15.44 20.31a9 9 0 0 0 2.92 -1.95&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20.31 15.44a9 9 0 0 0 .69 -3.44&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20.31 8.56a9 9 0 0 0 -1.95 -2.92&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M15.44 3.69a9 9 0 0 0 -3.44 -.69&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-line&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 6m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 16.5l9 -9&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-playstation-circle&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 21a9 9 0 0 0 9 -9a9 9 0 0 0 -9 -9a9 9 0 0 0 -9 9a9 9 0 0 0 9 9z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 12m-4.5 0a4.5 4.5 0 1 0 9 0a4.5 4.5 0 1 0 -9 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-ring-2&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M21 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7 18h10&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 16l-5 -8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M11 8l-5 8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-star&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 7.5l3 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 16.5l3 -3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M13.5 13.5l3 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M16.5 7.5l-3 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Developed&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-circle-half-vertical&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M3 12h18&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-ring-3&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 8v8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 16v-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6h8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M16 18h-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-star-2&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 20a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 4a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M22 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 6v4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 14v4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Advanced&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-circle-half&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 3v18&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-full&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 8v8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 16v-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6h8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M16 18h-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 7.5l9 9&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 16.5l9 -9&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-star-3&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 19a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 5a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 5a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 19a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M22 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M15 7l-2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M9 7l2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M11 14l-2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M13 14l2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Integrated&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-circle-triangle&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M12 20l7 -12h-14z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-complex&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 18a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M20 6a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7.5 7.5l3 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 8v8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 16v-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M8 6h8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M16 18h-8&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;td&gt;&amp;lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; class=&quot;icon icon-tabler icon-tabler-topology-star-ring-3&quot; width=&quot;24&quot; height=&quot;24&quot; viewBox=&quot;0 0 24 24&quot; stroke-width=&quot;2&quot; stroke=&quot;currentColor&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot;&amp;gt;&amp;lt;path stroke=&quot;none&quot; d=&quot;M0 0h24v24H0z&quot; fill=&quot;none&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 19a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 5a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 5a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M18 19a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M22 12a2 2 0 1 0 -4 0a2 2 0 0 0 4 0z&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M6 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M14 12h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M15 7l-2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M9 7l2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M11 14l-2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M13 14l2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 5h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M10 19h4&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M17 17l2 -3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M19 10l-2 -3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M7 7l-2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;path d=&quot;M5 14l2 3&quot;&amp;gt;&amp;lt;/path&amp;gt;&amp;lt;/svg&amp;gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;Icons source: https://tabler-icons.io/&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;Future Considerations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Normalization of scores (not straight forward to do efficiently)&lt;/li&gt;
&lt;li&gt;Different weightings and score ranges based on note types (theme post, loadout update, note, fragment, etc.)&lt;/li&gt;
&lt;li&gt;Add a citation library and adjust the nexus score to accommodate for these&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;I know there are still many flaws in this system and many ways that it can be improved. This will do for now though and has scratched the creative itch I had. If you have any thoughts or critiques on the approach I took please feel free to &lt;a href=&quot;https://twitter.com/vandermerwed&quot;&gt;reach out to me on X (Twitter)&lt;/a&gt;.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Update: 2024-10-31&lt;/h2&gt;
&lt;p&gt;I had to disable Nexus Score on collection pages as it was causing performance issues. I&apos;ll have to revisit the implementation to make it more efficient. Nexus Score is still visible on individual notes.&lt;/p&gt;
&lt;h2&gt;Update: 2024-11-04&lt;/h2&gt;
&lt;p&gt;With the way that remark plugins work it is not currently possible to process incoming links in a note. This means that the Nexus Score is not accurate.&lt;/p&gt;
&lt;h2&gt;Update: 2026-02-17&lt;/h2&gt;
&lt;p&gt;I&apos;ve completely rebuilt the Nexus Score system from the ground up. The new version replaces the arbitrary weighted scoring with a proper graph-theory approach using betweenness centrality, PageRank, HITS, and community detection. The topology classification has been expanded from three types (R/H/T) to five (B/A/H/R/T), and the visual icons have been replaced with Chladni-inspired ASCII dot patterns. Read the full write-up in [[nexus-score-v2|Nexus Score v2: Teaching Notes to Know Their Place]].&lt;/p&gt;
</content:encoded><category>astro</category><category>digital-garden</category></item><item><title>Year of Legacy: Foundations [2024]</title><link>https://danielvandermerwe.com/journal/year-of-legacy-foundations-2024/</link><guid isPermaLink="true">https://danielvandermerwe.com/journal/year-of-legacy-foundations-2024/</guid><description>My yearly theme for 2024 focuses on laying foundational systems across finance, family, and personal health.</description><pubDate>Sat, 30 Sep 2023 14:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I’ve had many yearly themes over the years but always shied away to write about them in public. My good friend &lt;a href=&quot;https://jcpretorius.com/&quot;&gt;Jacob Pretorius&lt;/a&gt; has been on my case about posting my updates for years now. I think I finally owe him and, more importantly, myself this public update.&lt;/p&gt;
&lt;p&gt;Who knows, maybe this resonates with someone else out there in the vast void of cyberspace.&lt;/p&gt;
&lt;h3&gt;Why Update in September?&lt;/h3&gt;
&lt;p&gt;You might be wondering why I&apos;ve chosen September for this update, especially when many people typically set their yearly themes in January. There&apos;s a simple reason: I find the &quot;new year, new me&quot; January hype to be more of a distraction than a motivation. September, which is also my birth month, gives me the space to reflect on the past year and strategize for the coming one without getting caught up in the global &quot;resolution rush.&quot; Plus, it&apos;s close enough to the end of the year that I can start laying the groundwork for the months ahead.&lt;/p&gt;
&lt;h2&gt;Table of contents&lt;/h2&gt;
&lt;h2&gt;My Past Themes:&lt;/h2&gt;
&lt;p&gt;I won&apos;t go into too much detail on these past themes. Maybe one day I&apos;ll update them from my old notes. For now, here&apos;s a high-level summary:&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;[2018]&lt;/strong&gt; Year of Action&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Outcome: Met goals&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This was my first theme, where I learned how this yearly theme approach works. I focused on learning to take decisive action.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;[2019]&lt;/strong&gt; Year of Independence&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Outcome: Met goals&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I aimed to break free from limiting systems and beliefs. This built on the skills I developed during my Year of Action.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;[2020]&lt;/strong&gt; Year of Disposition&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Outcome: Didn&apos;t meet goals&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I had accumulated a lot of clutter at this point. The aim was to help me discern what to keep and what to dispose of, both materially and metaphorically. The year ended up being more complex than I had anticipated, but I learned from it.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;[2021]&lt;/strong&gt; Year of Command&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Outcome: Didn&apos;t meet goals&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This year was about taking control, understanding the bigger picture, and being strategic rather than reactive. I didn&apos;t meet the goals I set, but I learned humility and adaptability.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;[2022 - 2023]&lt;/strong&gt; No theme&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Outcome: N/A&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If I had to retroactively choose themes for these years, they would be the &quot;Years of Survival.&quot; They were tough but essential for learning what I needed for the next theme.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;So far I&apos;ve succeeded with some themes and failed at others. The last couple of years have been challenging, but I&apos;ve learned a lot. Which brings me to the next theme: &quot;Year of Legacy: Foundations&quot;. This is about building solid foundations across key life areas.&lt;/p&gt;
&lt;h2&gt;[2024] Year of Legacy: Foundations&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Status: Active&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;Why Legacy?&lt;/h3&gt;
&lt;p&gt;At the age of 35, I’m just at a point in my life where I’m naturally drawn to contemplating what I want to leave behind for the generations that will follow me. My past themes have brought me success in many areas, and now it&apos;s time to focus on laying a solid foundation for the future.&lt;/p&gt;
&lt;h3&gt;Why Foundations?&lt;/h3&gt;
&lt;p&gt;This &lt;em&gt;Legacy&lt;/em&gt; theme will likely span multiple years, laying the foundation is the beginning. The first foundations I plan on focusing on include Finance, Family and Personal Mastery. I think these are critical areas that demand focus and effort at this stage of my life.&lt;/p&gt;
&lt;p&gt;Also, Tagging “Foundations” at the end of the theme name allows me to keep the Legacy theme for multiple years and simply change the suffix. I built a foundational naming convention into my theme name. How&apos;s that for meta?&lt;/p&gt;
&lt;h2&gt;Three Core Areas&lt;/h2&gt;
&lt;h3&gt;Financial Foundation&lt;/h3&gt;
&lt;h4&gt;Objective:&lt;/h4&gt;
&lt;p&gt;In times of volatile economies and unpredictable life events, ensuring financial security for myself and future generations is my top priority. The goal is to protect what I have, save consistently, and ensure what I build is passed on to my children.&lt;/p&gt;
&lt;h4&gt;Strategy&lt;/h4&gt;
&lt;p&gt;I’ll achieve this through four key areas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Asset Protection&lt;/li&gt;
&lt;li&gt;Estate and succession planning&lt;/li&gt;
&lt;li&gt;Contingency planning&lt;/li&gt;
&lt;li&gt;Tax efficiency&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I don&apos;t have much more to share here right now as I&apos;m still figuring out many of the details. Might cover more on this in the future.&lt;/p&gt;
&lt;h3&gt;Family Foundation&lt;/h3&gt;
&lt;h4&gt;Objective&lt;/h4&gt;
&lt;p&gt;Strengthening family bonds and establishing shared practices are crucial, especially when modern life pulls everyone in different directions. We have a lot of work to do in this area, and it&apos;s not always easy to find the time with two young children at home, but we&apos;re excited to start building this foundation.&lt;/p&gt;
&lt;h4&gt;Strategy&lt;/h4&gt;
&lt;p&gt;My wife and I have been listening to &lt;a href=&quot;https://intentionalfamily.fm/&quot;&gt;The Intentional Family Podcast&lt;/a&gt; and we can&apos;t recommend it enough. Mike &amp;amp; Rachel are delightful and they share genuinely useful advice for enriching family life. If you have kids or you&apos;re thinking about having kids, listen to this podcast.&lt;/p&gt;
&lt;p&gt;Some plans we have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Solidifying our Family Core Values
&lt;ul&gt;
&lt;li&gt;Planning on designing something nice for this to print, frame and hang on the wall&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Building a visual dashboard for the kids&apos; chores and upcoming schedule
&lt;ul&gt;
&lt;li&gt;Finally a use for that old Raspberry Pi and old monitor that’s just lying around&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Keep doing&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Every morning on our drive to school I ask my children two questions:
&lt;ul&gt;
&lt;li&gt;What are you grateful for today?&lt;/li&gt;
&lt;li&gt;What are you excited for today?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;No screen time or bright lights allowed after 5pm&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Start doing&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Regular dates with my wife where we can discuss and refine our family systems&lt;/li&gt;
&lt;li&gt;Evening [[../notes/affirmation-bedtime-blueprint|affirmations]] with my children&lt;/li&gt;
&lt;li&gt;Regular walks in nature with family&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Personal Mastery Foundation&lt;/h3&gt;
&lt;h4&gt;Objective&lt;/h4&gt;
&lt;p&gt;As I get older, maintaining a peak level of physical and mental health becomes more important each year. It is essential for everything else I aim to achieve.&lt;/p&gt;
&lt;h4&gt;Current State&lt;/h4&gt;
&lt;p&gt;To understand where I need to go, it&apos;s crucial to know where I currently stand.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fitness Stats (Past 6 Months)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Average Cardio Fitness: &lt;em&gt;48.5 VO&amp;lt;sub&amp;gt;2&amp;lt;/sub&amp;gt; max&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Average Cardio Recovery: &lt;em&gt;31 bpm&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Average Running Speed: &lt;em&gt;9.9 km/h&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Top Running Speed: &lt;em&gt;10.8 km/h&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ongoing Efforts&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;3 jogs per week for the last 89 weeks &lt;em&gt;(as of this update)&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Strategy&lt;/h4&gt;
&lt;p&gt;My cardio and endurance is currently solid, but there&apos;s room for improvement in core and strength training. My current goal is to run a 5km in 25 minutes. At the time of writing, my personal best for 5km is 26:45, avg. pace 5.21/km.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Focus Areas&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Physical Health&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Keep Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;3 jogs per week&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Start Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;[[../notes/maintaining-averages|Maintain average]] of 30 pushups per day&lt;/li&gt;
&lt;li&gt;Jog longer distances 1-2 times per week&lt;/li&gt;
&lt;li&gt;Strength/Core training 3-4 times per week&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mental Health&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Keep Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Reading for insights, not volume&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Start Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Meditation 4-5 times per week&lt;/li&gt;
&lt;li&gt;Daily gratitude journaling&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sleep &amp;amp; Recovery&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Keep Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;No caffeine after 10am&lt;/li&gt;
&lt;li&gt;Consistent bedtime of 9pm&lt;/li&gt;
&lt;li&gt;Optimize for at least 7h 30min sleep per night &lt;em&gt;(5× 90min sleep cycles)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;No phone charging in bedroom&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Start Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Screen &amp;amp; bright light curfew 2 hours before bed&lt;/li&gt;
&lt;li&gt;No alarm. Get up when I wake up, when the kids wake us up or, if it’s a school day, when it’s time to get ready for school
&lt;ul&gt;
&lt;li&gt;Sometimes I wake up at 2:30 or 3:30. On these days, I’ll schedule a nap into my day, if possible&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Productivity &amp;amp; Creativity&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Keep Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Time-blocking for focused creation time&lt;/li&gt;
&lt;li&gt;Block distracting sites (Rescue Time)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Start Doing&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Write &amp;amp; publish more&lt;/li&gt;
&lt;li&gt;[[../notes/habit-stacking|Habit Stacking]]&lt;/li&gt;
&lt;li&gt;Daily [[../notes/affirmation-balanced-purpose|Balanced Purpose Affirmation]] reflection&lt;/li&gt;
&lt;li&gt;Measure outcomes, not time spent&lt;/li&gt;
&lt;li&gt;[[../notes/work-walks|Work Walks]]&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Additional Focus Areas&lt;/h2&gt;
&lt;p&gt;There are a few additional practices I want to build during the next year that don&apos;t fit in a specific foundation area but support all three.&lt;/p&gt;
&lt;p&gt;These practices focus on intentionality, consistency, focus and efficiency:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Weekly reflection on tasks to ensure alignment with long-term goals and core values&lt;/li&gt;
&lt;li&gt;Use a decision framework for significant choices&lt;/li&gt;
&lt;li&gt;Create and stick to a daily routine&lt;/li&gt;
&lt;li&gt;Monthly check-ins to track consistency&lt;/li&gt;
&lt;li&gt;Set aside at least two hours of deep work time every day&lt;/li&gt;
&lt;li&gt;Use tools to limit social media and other distractions&lt;/li&gt;
&lt;li&gt;Audit and streamline current workflows every quarter&lt;/li&gt;
&lt;li&gt;Use automation where possible&lt;/li&gt;
&lt;li&gt;Install [[../notes/trigger-action-planning|Trigger Action Plans (TAPs)]]&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Final Thoughts&lt;/h2&gt;
&lt;p&gt;The Year of Legacy: Foundations presents an exciting yet challenging theme. With clear objectives across finance, family, and personal mastery, I&apos;m focused on building systems that will compound over time. My family and I are committed to making progress in each of these areas. There&apos;s no guaranteed success, but I&apos;m committed to showing up consistently and learning as I go.&lt;/p&gt;
&lt;p&gt;While the three core foundations are important, it&apos;s often the smaller daily practices that create momentum. Building intentionality, consistency, focus, and efficiency. These are the habits that enable everything else. It&apos;s not just the big decisions but also the small daily choices, the consistent effort, and the support systems you build that make the difference.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Assessment, Assembly, Action.
Whatever your task, you do three things.
Start by assessing what you already have and what you&apos;ll face, the problem.
Then you plan with those variables in mind. Take what you have, get what you need, assemble things, people.
Finally, you take action.
Simple.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;- &lt;em&gt;Panam: Cyberpunk 2077&lt;/em&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;If this resonates with you, I&apos;d be interested to hear about your own yearly themes or systems. Feel free to reach out.&lt;/p&gt;
</content:encoded><category>protocol</category><category>theme</category></item><item><title>Affirmation: Bedtime Blueprint</title><link>https://danielvandermerwe.com/notes/affirmation-bedtime-blueprint/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/affirmation-bedtime-blueprint/</guid><description>A set of nightly affirmations for kids focusing on dreams, resilience, and parental love. Perfect for bedtime bonding and motivation.</description><pubDate>Sat, 30 Sep 2023 12:08:00 GMT</pubDate><content:encoded>&lt;p&gt;Every night before going to bed, my kids recite the following affirmations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&quot;Whatever your dreams are, work hard to make them real.&quot;&lt;/li&gt;
&lt;li&gt;“Be who you want to be.”&lt;/li&gt;
&lt;li&gt;“Never quit on a bad day.”&lt;/li&gt;
&lt;li&gt;“Always remember, mommy &amp;amp; daddy love you.”&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I came across this idea from Robin Sharma&apos;s &quot;The man who sold his Ferarri&quot; years ago&lt;/p&gt;
</content:encoded><category>fragment</category><category>affirmation</category><category>protocol</category></item><item><title>Personal Retreats</title><link>https://danielvandermerwe.com/notes/personal-retreats/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/personal-retreats/</guid><description>A short structured getaway to gain the focus and clarity you need to achieve your goals.</description><pubDate>Fri, 29 Sep 2023 10:55:00 GMT</pubDate><content:encoded>&lt;p&gt;My personal retreat format is loosely based on the &lt;a href=&quot;https://faith-based-productivity.teachable.com/p/personal-retreat-handbook&quot;&gt;Personal Retreat Handbook&lt;/a&gt; by Mike Schmitz and also borrows elements from &lt;a href=&quot;https://dranthonygustin.com/&quot;&gt;Dr. Anthony Gustin&apos;s&lt;/a&gt; amazing &lt;a href=&quot;https://docs.google.com/document/d/1K2P_yL1Ah976P7MLicb55wgY2DY-39jP3Lvp810H6HQ/edit&quot;&gt;Annual Review Framework&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Additional resources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;https://thefocuscourse.com/how-to-host-your-own-personal-retreat/&lt;/li&gt;
&lt;li&gt;https://practicalpkm.com/the-power-of-the-personal-retreat/&lt;/li&gt;
&lt;li&gt;https://thesweetsetup.com/how-to-do-a-personal-retreat-in-obsidian/&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>fragment</category></item><item><title>Trigger-Action Planning (TAP)</title><link>https://danielvandermerwe.com/notes/trigger-action-planning/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/trigger-action-planning/</guid><description>A research-backed strategy that can help you achieve your goals and improve your habits.</description><pubDate>Mon, 25 Sep 2023 15:27:00 GMT</pubDate><content:encoded>&lt;p&gt;Refer to Trigger-Action Planning section on page 44 of &lt;a href=&quot;https://www.rationality.org/files/CFAR_Handbook_2021-01.pdf&quot;&gt;CFAR Handbook&lt;/a&gt;&lt;/p&gt;
</content:encoded><category>fragment</category></item><item><title>Work Walks</title><link>https://danielvandermerwe.com/notes/work-walks/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/work-walks/</guid><description>A timed walk to think through a specific work related problem.</description><pubDate>Mon, 25 Sep 2023 14:14:00 GMT</pubDate><content:encoded>&lt;p&gt;The confines of an office or workspace can sometimes be a breeding ground for stress and narrow thinking. &quot;Work Walks&quot; are a simple but effective countermeasure: a timed, deliberate walk aimed at pondering specific work-related issues.&lt;/p&gt;
&lt;p&gt;By setting a timer and physically stepping away from your work environment, you grant yourself the freedom to explore the problem space without distraction. The rhythmic cadence of your steps serves as a metronome for your thoughts, allowing you to consider various aspects of the issue at hand.&lt;/p&gt;
&lt;p&gt;What makes this technique particularly effective is the intentional time limit. Knowing you have a set period to think can sharpen your focus and encourage actionable insights. Often, by the time you circle back to your starting point, you&apos;ll find you&apos;ve also circled around the problem and arrived at a new perspective or solution.&lt;/p&gt;
</content:encoded><category>fragment</category></item><item><title>Maintaining  Averages: A Healthier Alternative to Streaks</title><link>https://danielvandermerwe.com/notes/maintaining-averages/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/maintaining-averages/</guid><description>A flexible alternative to streaks for habit maintenance. Manage rolling totals instead of binary pass/fail tracking.</description><pubDate>Mon, 25 Sep 2023 09:34:00 GMT</pubDate><content:encoded>&lt;p&gt;I don&apos;t like [[streaks]], they stress me out. Breaking one sends me into a downward spiral. Maintaining averages is a healthier alternative.&lt;/p&gt;
&lt;p&gt;The idea is simple. If you miss a day, you do a few extra over the next couple of days to bring the average back up. If you know you won&apos;t be able to do the thing tomorrow, do extra today. You&apos;re managing a rolling total, not a binary pass/fail.&lt;/p&gt;
&lt;p&gt;This doesn&apos;t work for every goal. It&apos;s excellent for goals with repetitions or numbers as targets. &quot;Do 30 push-ups every day.&quot; &quot;Write 500 words every day.&quot; &quot;Read 20 pages every day.&quot; These can flex across a week without losing anything. &quot;Meditate every morning&quot; is harder to average out because the value is in the daily practice, not the total minutes.&lt;/p&gt;
&lt;h2&gt;Why this works better than streaks for most things:&lt;/h2&gt;
&lt;p&gt;Streaks create all-or-nothing thinking. A 2020 study in CHI Conference on Human Factors in Computing Systems found that streak anxiety was the number one reason users abandoned habit apps.[^1] The moment the streak breaks, all previous progress feels erased. That&apos;s not a perception problem. That&apos;s a design problem.&lt;/p&gt;
&lt;p&gt;[^1]: This maps directly to my experience. After breaking a 50-week jogging streak it took me almost three years to start again. The problem wasn&apos;t fitness. It was psychology. See [[streaks]] for more on this.&lt;/p&gt;
&lt;p&gt;Research from University College London found that missing any single day of a habit has no measurable impact on long-term adherence.[^2] What matters is whether you come back. Maintaining averages builds that return into the system by default. There&apos;s no streak to break because there&apos;s no streak. Just a target average to stay near.&lt;/p&gt;
&lt;p&gt;[^2]: Lally, P., et al. (2010). &lt;a href=&quot;https://onlinelibrary.wiley.com/doi/abs/10.1002/ejsp.674&quot;&gt;How are habits formed: Modelling habit formation in the real world&lt;/a&gt;. European Journal of Social Psychology. The same study found habit formation takes anywhere from 18 to 254 days, averaging 66. Not the &quot;21 days&quot; myth.&lt;/p&gt;
&lt;p&gt;Studies also show that 80% consistency produces nearly identical long-term results to 100% adherence, while being significantly more sustainable psychologically.[^3] This is the core argument for averages over streaks. You don&apos;t need perfection. You need a system that survives imperfection.&lt;/p&gt;
&lt;p&gt;[^3]: This aligns with James Clear&apos;s &quot;never miss twice&quot; rule from &lt;a href=&quot;https://www.goodreads.com/book/show/40121378-atomic-habits&quot;&gt;Atomic Habits&lt;/a&gt;. Missing once is an accident. Missing twice is the start of a new habit. Maintaining averages is essentially &quot;never miss twice&quot; built into the structure rather than relying on willpower to recover.&lt;/p&gt;
&lt;h2&gt;Where I use this:&lt;/h2&gt;
&lt;p&gt;Push-ups. I target a weekly total rather than a daily number. Some days I do 50, some days none. The average holds. Writing word counts work the same way. A 3,500 word weekly target is more forgiving than 500 words daily, even though the math is the same.&lt;/p&gt;
&lt;h2&gt;Where I don&apos;t use this:&lt;/h2&gt;
&lt;p&gt;My jogging streak. That one runs on [[streaks]] logic, not averages, because the external incentive structure (see [[pact]]) is binary. I either hit 3x per week or I pay a penalty. There&apos;s no averaging out a missed week.&lt;/p&gt;
&lt;h2&gt;The relationship between averages and streaks:&lt;/h2&gt;
&lt;p&gt;They&apos;re not opposites. They&apos;re different tools for different situations. Streaks work when the commitment is binary and the stakes are external. Averages work when the goal is cumulative and the stakes are internal. Knowing which to use where is the real skill.&lt;/p&gt;
</content:encoded><category>habits</category><category>streaks</category><category>discipline</category></item><item><title>Habit Stacking: A Strategy for Efficient Routine Building</title><link>https://danielvandermerwe.com/notes/habit-stacking/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/habit-stacking/</guid><description>Habit stacking as a mindful approach to enhancing daily routines. Thoughtfully integrate new habits one step at a time, with examples to guide your journey toward greater well-being and productivity.</description><pubDate>Mon, 25 Sep 2023 09:33:00 GMT</pubDate><content:encoded>&lt;p&gt;Habit stacking is an approach that leverages existing habits to integrate new behaviors into one&apos;s daily routine. By attaching a new action to an already-established habit, it becomes easier to remember and implement the new habit. This strategy minimizes friction and increases the likelihood of making the new habit stick.&lt;/p&gt;
&lt;h2&gt;Key Principles:&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Ease of Integration&lt;/strong&gt;: Choose new habits that naturally fit into existing routines.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Incremental Progress&lt;/strong&gt;: Introduce new habits one at a time to avoid overwhelming the system.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Context-Specific&lt;/strong&gt;: The new habit should be relevant to the existing habit to maximize its chance of becoming a permanent change.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Example Opportunities for Habit Stacking:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Physical Exercise&lt;/strong&gt;: Perform quick stretches or push-ups while waiting for the kettle to boil. This turns idle time into productive time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mobility and Health&lt;/strong&gt;: Opt to walk during conference calls or meetings when video presence or screensharing is not required. This adds physical activity to your day without requiring additional time.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Why Habit Stacking Works:&lt;/h2&gt;
&lt;p&gt;Habit stacking functions on the principle of associative memory; our brains are wired to create connections between related tasks. By piggybacking on an existing habit, the new behavior becomes part of a chain of activities, increasing its stickiness.&lt;/p&gt;
&lt;h2&gt;How to Implement:&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Identify an existing habit you perform consistently.&lt;/li&gt;
&lt;li&gt;Select a new habit you want to implement.&lt;/li&gt;
&lt;li&gt;Attach the new habit to the existing one with a contextual link, such as time or location.&lt;/li&gt;
&lt;li&gt;Experiment and adjust. If the new habit doesn&apos;t stick, analyze why and iterate until it does.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Habit stacking is a versatile strategy that can be adapted to various domains in life, from personal development to professional growth. Keep an open mind and continuously scout for opportunities to add value to your existing routines.&lt;/p&gt;
&lt;h3&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/author/show/197770.B_J_Fogg&quot;&gt;Fogg, BJ&lt;/a&gt;. (2012). &lt;em&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=AdKUJxjn-R8&quot;&gt;Forget big change, start with a tiny habit: BJ Fogg at TEDxFremont&lt;/a&gt;&lt;/em&gt; Duration: 17:23&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/author/show/6982678.S_J_Scott&quot;&gt;Scott, S. J.&lt;/a&gt; (2014). &lt;em&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/22021732-habit-stacking&quot;&gt;Habit Stacking: 97 Small Life Changes That Take Five Minutes or Less&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/author/show/7327369.James_Clear&quot;&gt;Clear, James&lt;/a&gt;. (2018). &lt;em&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/40121378-atomic-habits&quot;&gt;Atomic Habits: An Easy &amp;amp; Proven Way to Build Good Habits &amp;amp; Break Bad Ones&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/author/show/197770.B_J_Fogg&quot;&gt;Fogg, BJ&lt;/a&gt;. (2019). &lt;em&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/43261127-tiny-habits&quot;&gt;Tiny Habits: The Small Changes That Change Everything&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
</content:encoded><category>habits</category></item><item><title>Life as a Game</title><link>https://danielvandermerwe.com/notes/life-as-game/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/life-as-game/</guid><description>Using game mechanics as a lens for understanding personal growth and systematic progress.</description><pubDate>Mon, 25 Sep 2023 08:14:00 GMT</pubDate><content:encoded>&lt;p&gt;Viewing life through game mechanics can be a useful thinking tool. Games have clear feedback loops, progressive skill development, resource management, and defined objectives—all concepts that map to how we actually build skills, manage time and energy, and work toward goals.&lt;/p&gt;
&lt;p&gt;This is a lens, not a prescription. The value is in recognizing the patterns: practice leads to improvement, resources are finite and need allocation, some challenges require specific preparation.&lt;/p&gt;
&lt;p&gt;More to come on this concept.&lt;/p&gt;
&lt;h2&gt;Related Resources&lt;/h2&gt;
&lt;p&gt;https://lifesanrpg.com/&lt;/p&gt;
</content:encoded><category>metaphor</category><category>systems</category><category>thinking-tools</category></item><item><title>Affirmation: Balanced Purpose</title><link>https://danielvandermerwe.com/notes/affirmation-balanced-purpose/</link><guid isPermaLink="true">https://danielvandermerwe.com/notes/affirmation-balanced-purpose/</guid><description>An affirmation for honoring your commitments and dreams while prioritizing well-being. Manage your time effectively without sacrificing quality or impact.</description><pubDate>Fri, 22 Sep 2023 06:09:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;Today, I choose to honor both my commitments and my dreams. I&apos;ll give my best to my responsibilities but will not sacrifice my well-being. My time is mine to manage, my aspirations are mine to fulfill. I will not be solely defined by others&apos; expectations. I can be effective without exhaustion, and my value is not determined by the number of hours I work, but by the quality and impact of my work.&lt;/p&gt;
&lt;/blockquote&gt;
</content:encoded><category>fragment</category><category>affirmation</category><category>protocol</category></item><item><title>Loadout Update [2023/Q3]</title><link>https://danielvandermerwe.com/journal/loadout-update-2023-q3/</link><guid isPermaLink="true">https://danielvandermerwe.com/journal/loadout-update-2023-q3/</guid><description>The first ever Loadout Update. An in-depth look at the hardware, software, and systems I&apos;m currently using.</description><pubDate>Thu, 21 Sep 2023 14:00:00 GMT</pubDate><content:encoded>&lt;p&gt;This is the first of what I hope will be regular updates on the tools and systems I use. Inspired by &lt;a href=&quot;https://twitter.com/julianlehr&quot;&gt;Julian Lehr&lt;/a&gt;&apos;s &lt;a href=&quot;https://julian.digital/2020/10/11/inventory-update-q4-20/&quot;&gt;Inventory Updates&lt;/a&gt; and &lt;a href=&quot;https://jcpretorius.com/&quot;&gt;Jacob Pretorius&lt;/a&gt;&apos;s &lt;a href=&quot;https://jcpretorius.com/post/2020/every-day-stack-updates-q3-2020/&quot;&gt;Everyday Stack&lt;/a&gt;, this covers hardware, software, and systems I&apos;m currently using, testing, or have recently changed.&lt;/p&gt;
&lt;p&gt;I&apos;ve split this into four sections: Currently Using, Recently Added, Removed, and Testing. For this first update the &quot;Currently Using&quot; section will be rather long, so I&apos;ve separated out recent additions to make changes easier to spot.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Currently Using&lt;/h2&gt;
&lt;h3&gt;Hardware&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;iPhone 12 Mini:&lt;/strong&gt; I love this phone. The shape, size and weight is perfect in my opinion and it just works. Currently running iOS 17.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apple Watch Series 6 (44mm):&lt;/strong&gt; Great watch and has served me well over the past two years. Battery life is not so great anymore but it still gets through a day if I charge it while I shower. Currently running watchOS 10.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;iPad Pro 12.9&quot; (2nd Gen):&lt;/strong&gt; It&apos;s starting to show its age but it is still a very impressive machine. The folio keyboard I got with it is not working anymore and I had to block off the connector with isolation tape to stop the &quot;Device Cannot Connect&quot; message from continuously popping up so it can still serve as &lt;s&gt;an expensive&lt;/s&gt; a decent stand.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apple Magic Keyboard:&lt;/strong&gt; I got this to replace the folio keyboard for my iPad since it was less expensive than getting a new folio keyboard. This is a great little keyboard, especially for travelling, I love it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apple AirPods Pro (1st Gen):&lt;/strong&gt; Currently in for repairs/replacement. The right side bud&apos;s sound cut out and made scratchy sounds when it does eventually play sound. Regardless, I love them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Microsoft Sidewinder X6 Gaming Keyboard:&lt;/strong&gt; I bought this at the same time I bought my, now retired, Cooler Master Sentinel Advance about 10 years ago. It has served me well over the years and it has a lot of macro keys which is a nice bonus. I do have my eyes on a the &lt;a href=&quot;https://www.logitech.com/en-za/products/keyboards/mx-keys-s.920-011587.html&quot;&gt;Logitech MX Keys S&lt;/a&gt; if this keyboard starts giving me trouble.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://steelseries.com/gaming-headsets/arctis-9&quot;&gt;SteelSeries Arctis 9 Wireless&lt;/a&gt;: Needed something comfortable with a decent mic and sound that I can wear 6-8 hours a day for work. This headset checks all of those boxes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DELL Inspiron 15 5000:&lt;/strong&gt; It&apos;s a laptop. It runs Windows 11 and doesn&apos;t buckle too badly under the weight of too many Chrome tabs. Don&apos;t love it, don&apos;t hate it.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.razer.com/console-controllers/razer-wolverine-v2&quot;&gt;Razer Wolverine &amp;lt;sup&amp;gt;V2&amp;lt;/sup&amp;gt;&lt;/a&gt;: I don&apos;t game often, but when I do, I like to kick back with a controller. It has great build quality and is very comfortable. So far I&apos;ve mostly played &lt;a href=&quot;https://store.steampowered.com/app/1145360/Hades/&quot;&gt;Hades&lt;/a&gt;, &lt;a href=&quot;https://store.steampowered.com/app/1222680/Need_for_Speed_Heat/&quot;&gt;Need for Speed™ Heat&lt;/a&gt; and &lt;a href=&quot;https://playdauntless.com/&quot;&gt;Dauntless&lt;/a&gt; with it and I have no complaints.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Software&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://obsidian.md/&quot;&gt;Obsidian&lt;/a&gt;: Where I write the content for [[projects/astro-elysium|this website]].&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://roamresearch.com/&quot;&gt;Roam Research&lt;/a&gt;: My magic junkyard. This is where I keep my [[../notes/interstitial-journaling|Interstitial Journal]], fleeting notes and daily highlights.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://code.visualstudio.com/&quot;&gt;VS Code&lt;/a&gt;: My go to IDE for frontend code. This website was written in VS Code.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://visualstudio.microsoft.com/&quot;&gt;Visual Studio&lt;/a&gt;: My go to IDE for backend, mostly .NET C#, code.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://insomnia.rest/&quot;&gt;Insomnia&lt;/a&gt;: REST client. I know everyone uses &lt;a href=&quot;https://www.postman.com/&quot;&gt;Postman&lt;/a&gt;, and from time to time I&apos;m forced to, but I prefer Insomnia. It&apos;s clean, simple and does what it says on the tin.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://open.spotify.com&quot;&gt;Spotify&lt;/a&gt;: Productivity amplifier. Currently smashing keys to the beats of &lt;a href=&quot;https://open.spotify.com/user/chilledcow&quot;&gt;Lofi Girl&lt;/a&gt;. Their &lt;a href=&quot;https://open.spotify.com/playlist/0vvXsWCC9xrXsKd4FyS8kM?si=a309ac26df504f29&quot;&gt;Relax/Study&lt;/a&gt; and &lt;a href=&quot;https://open.spotify.com/playlist/0vvXsWCC9xrXsKd4FyS8kM?si=a309ac26df504f29&quot;&gt;Chill/Game Synthwave&lt;/a&gt; playlists have been on high rotation recently.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.last.fm/user/danny_patches&quot;&gt;Last.fm&lt;/a&gt;: Tracks music listening habits.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://clickup.com/&quot;&gt;ClickUp&lt;/a&gt;: We use this for project management at &lt;a href=&quot;https://rokkit200.co/&quot;&gt;my company&lt;/a&gt;. I don&apos;t mind it, but it can be a bit slow sometimes. Still better than Jira though.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://coda.io/&quot;&gt;Coda&lt;/a&gt;: This software is so versatile I don&apos;t even know where to start. I always describe it as &quot;Imagine if Google Docs and Google Sheets had a baby&quot;. We use this at work for company wikis, documentation, estimates, project breakdowns, functional specifications, the list goes on. I also built a family dashboard that I shared with my wife to keep track of family stuff. I&apos;ll probably post about Coda quite a bit on here in the future. If you wish you can use my &lt;a href=&quot;https://coda.grsm.io/8ep7pp8bn21y&quot;&gt;referral link&lt;/a&gt; to get $10 credit on sign up.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.dueapp.com/&quot;&gt;Due&lt;/a&gt;: I use this when I need a repeating reminder that will nag me constantly until I finish the task, like taking out the trash on a Wednesday. Sometimes being reminded once is not enough.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://apps.apple.com/us/app/oak-meditation-breathing/id1210209691&quot;&gt;Oak&lt;/a&gt;: Meditation. Simple, well built, free. Thank you &lt;a href=&quot;https://www.kevinrose.com/&quot;&gt;Kevin Rose&lt;/a&gt; for putting this out into the world.&lt;/li&gt;
&lt;li&gt;Siri Shortcuts: Automate all the things. I will write about this a fair bit on here as well.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.rescuetime.com/&quot;&gt;RescueTime&lt;/a&gt;: Focus tracking &amp;amp; distraction blocking. It has a great Google Calendar integration.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://toggl.com/track/&quot;&gt;Toggl Track&lt;/a&gt;: Time tracking. Use this for getting paid and keeping track of where I spend my time &amp;amp; attention.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://exist.io/&quot;&gt;Exist&lt;/a&gt;: Personal analytics dashboard.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://apps.apple.com/us/app/autosleep-track-sleep-on-watch/id1164801111&quot;&gt;AutoSleep&lt;/a&gt;: Sleep tracking.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.audible.com/&quot;&gt;Audible&lt;/a&gt;: Books in my ears.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://overcast.fm/&quot;&gt;Overcast&lt;/a&gt;: People in my ears.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://1password.com/&quot;&gt;1Password&lt;/a&gt;: Keeps passwords and personal documents safe and close.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://apps.apple.com/us/app/fantastical-calendar/id718043190&quot;&gt;Fantastical&lt;/a&gt;: On the chopping block to be removed if Morgen Calendar works out.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.google.com/gmail/about/&quot;&gt;Gmail&lt;/a&gt;: Mail. Yes, I use it in the browser.&lt;/li&gt;
&lt;li&gt;Google Calendar: Main event storage.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://calendly.com/&quot;&gt;Calendly&lt;/a&gt;: Meeting scheduling. Clients and partners use it to book meetings with me and my business partner.&lt;/li&gt;
&lt;li&gt;Chrome: My browser of choice. I have to deal with many different email accounts for all of our clients. This was one of the first browsers that supported multiple profiles and I jumped on it. I currently have 9 profiles. One for personal, one for my company and 7 that are configured different partners and clients.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.gettoby.com/&quot;&gt;Toby&lt;/a&gt;: I have this configured on all 9 of my chrome profiles and set up with link collections for all the different services and apps I usually need for each profile.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://apps.apple.com/us/app/goodnotes-6/id1444383602&quot;&gt;GoodNotes&lt;/a&gt;: For taking hand written notes. My handwriting is actually decent which means I can search my handwritten notes with OCR. Leverage your strengths.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://affinity.serif.com/en-us/designer/ipad/&quot;&gt;Affinity Designer&lt;/a&gt;: For making birthday invites and designing the occasional logo. Also dabbled with Vector Art for a while. It&apos;s a well built app.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/&quot;&gt;GitHub&lt;/a&gt;: We use this for version control at my company and I use it for my personal projects as well.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://timeryapp.com/&quot;&gt;Timery&lt;/a&gt;: Hands down the best Toggl Track app for Mac &amp;amp; iOS.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.getstoic.com/&quot;&gt;Stoic.&lt;/a&gt;: Journaling prompts, stoic wisdom &amp;amp; affirmations.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://discord.com/&quot;&gt;Discord&lt;/a&gt;: Company chat. Hot take: Discord is better at threads than Slack.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.22seven.com/&quot;&gt;22Seven&lt;/a&gt;: Finance tracker app. Syncs with all of my accounts, even loyalty schemes and crypto exchange and allows me to categories and split transactions them. Also keeps track of budgets and shows &quot;nudges&quot; based on spending trends. Only available in South Africa.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://openai.com/chatgpt&quot;&gt;Chat GPT&lt;/a&gt;: I&apos;ve been using Chat GPT since January 2023 and got a paid subscription around July. I think it is a very powerful companion when used responsibly in specific scenarios.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Recently Added&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://todo.microsoft.com/&quot;&gt;Microsoft To Do&lt;/a&gt;: Add task, check off task. Nothing more, nothing less. I still use iOS Reminders for location based reminders every now and then when I need them, or remember to use them. Works well on iOS and Windows. Completely free.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.duolingo.com/&quot;&gt;Duolingo&lt;/a&gt;: Used this a very long time ago but stopped because, life... I have a knack for languages and I think it&apos;s a shame that I only know two. I&apos;ve started learning Japanese again, because I actually enjoy watching anime quite a lot and not having to read English subtitles would be pretty amazing. English dubs are usually pretty awful in my experience. I&apos;m also picking up Irish because of an upcoming trip to Ireland, and it would be a pretty cool party trick to speak Irish when I&apos;ve had a few whiskeys.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.logitech.com/en-za/products/mice/mx-master-3s.910-006559.html&quot;&gt;MX Master 3S&lt;/a&gt;: Hands down the best mouse I&apos;ve ever owned. Excellent build quality and combined with the &lt;a href=&quot;https://www.logitech.com/en-za/software/logi-options-plus.html&quot;&gt;Logi Options+&lt;/a&gt; software it makes this a productivity powerhouse.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Quarterly Personal Retreats&lt;/strong&gt;: I&apos;ve done two of these now this year and it&apos;s been great. I&apos;m still figuring out the format of these retreats. My thoughts on the topic will be collected in [[../notes/personal-retreats|this note]].&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Removed&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CoolerMaster Sentinel Advance&lt;/strong&gt;: After 10 years the right click button stopped working. It served me well over the years. My new MX Master S3 is replacing this.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://todoist.com/&quot;&gt;Todoist&lt;/a&gt;: I honestly only used it for NLP task adding and recurring tasks which Microsoft To Do can do for free. There is no reason for me to keep using it.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Testing&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.morgen.so/&quot;&gt;Morgen Calendar&lt;/a&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: I use it for time blocking, calendar management and scheduling tasks on my calendar. It can also manage booking links so people can book meetings with you but we currently use Calendly for work and it works well. The iOS app seems solid so far although the widgets can do with some love. It&apos;s actively being worked on and has a &lt;a href=&quot;https://www.morgen.so/roadmap&quot;&gt;public roadmap&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Field Test Status&lt;/strong&gt;: I&apos;m pretty happy so far. It&apos;s a relatively new app so there are some small annoyances, but nothing I can&apos;t live with.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://arc.net/&quot;&gt;Arc Browser&lt;/a&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Browsers haven&apos;t changed much since their inception and I&apos;m always on the lookout for paradigm shifting software.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Field Test Status&lt;/strong&gt;: Still too early to tell but so far it feels a lot more like a mindful research assistant than a browser. The notes and canvas features are a nice bonus for structuring project research. I like the automatic tab archiving, it keeps me from hoarding tabs and it forces me to intentionally decide on the spot if something is worth keeping around.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/features/copilot&quot;&gt;GitHub Co-Pilot&lt;/a&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Speed up development.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Field Test Status&lt;/strong&gt;: It has helped me a lot with bridging my JavaScript to TypeScript knowledge gap. The VS Code extension is better than the Visual Studio integration by a very large margin and it&apos;s C# recommendations are not nearly as good as it&apos;s JavaScript and TypeScript recommendations. There was an update very recently though so hoping to see some improvements. I will more than likely end up equipping this, after 15 years of writing code by hand I welcome the chance to offload some mundane tasks to an AI assistant.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/copilot/github-copilot-chat/about-github-copilot-chat&quot;&gt;GitHub Co-Pilot Chat&lt;/a&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: More of the same that the inline version provides just on a higher level.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Field Test Status&lt;/strong&gt;: It&apos;s useful for generating unit tests, albeit not very good tests, it does offer some additional test cases that might not be immediately obvious. More useful perhaps is generating comments based on a piece of code or describing the functionality of a particularly abstract piece of code. Once again I will more than likely end up equipping this as the usefulness outweighs the negatives and accuracy will improve over time.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://tana.inc/&quot;&gt;Tana&lt;/a&gt;:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Pitched as an &quot;intelligent all-in-one workspace&quot; I&apos;m keeping an eye on this as it might be one of those paradigm shifting software. Probably the most intriguing aspect of tana is that it&apos;s built on top of a semantic ontology framework that you can maintain yourself for your notes via what they call &quot;Supertags&quot;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Field Test Status&lt;/strong&gt;: I think it&apos;s an amazing piece of software. At the time of writing it does not have a plugin ecosystem like Obsidian and Roam Research which is my main reason for sticking with these. They did recently release an &lt;a href=&quot;https://help.tana.inc/tana-input-api.html&quot;&gt;Input API&lt;/a&gt; which I still need to dig into. I can definitely see myself switching to Tana from Roam Research one day.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;p&gt;That&apos;s it for Q3 2023. Some of these tools have been with me for years, others are new additions, and a few are on trial. As my work and life change, so will these tools. I&apos;ll update this quarterly as things shift.&lt;/p&gt;
</content:encoded><category>protocol</category><category>loadout</category></item></channel></rss>