VelvetShark

Articles

Where was I? A Linear Loop that keeps each project's current state

One page per project in Linear, rewritten by a Loop whenever an issue changes status. The design, every prompt, the coding-agent rule, what it costs, and where it falls short. Continue reading →

I wanted a timer at the edge of my screen, so I built one

Why I built Timebar, a free, open-source Mac timer that shows time left as a thin line below the menu bar. Continue reading →

Bad at Tetris, good at Tetris

My aspiration is to be good at Tetris Continue reading →

Grok Bot after 67 real jobs: what worked, what broke

I've run an OpenClaw agent every day since January and spent too much time babysitting it. Five days ago I moved that workload to Grok Bot and logged every job. 67 jobs, 17 interventions, three things I had to fix before I could trust it, and a short list that stays on my Mac. Continue reading →

Why personal iPhone apps are finally worth building

Xcode has allowed development installs for years. AI changed how much work it takes to get a tested native app onto your phone. Continue reading →

One bored voice: how I rebuilt the Polish lektor with the technology he inspired

Poland never dubbed films with a cast of actors. One man read every line, flat and unbothered, over the quieted original. ElevenLabs exists partly because its founders grew up with that voice. So I rebuilt him with their own technology: a site where any video comes back with a deadpan Polish lektor. This is how it works, including the timing algorithm that turned out to be the actual craft. Continue reading →

OpenClaw Memory Masterclass: The complete guide to agent memory that survives

Your OpenClaw agent works great for 20 minutes, then silently loses its instructions. The root cause is compaction, and most users don't understand it. This guide explains the full memory lifecycle and gives you a file architecture that prevents the forgetting. Continue reading →

50 days with OpenClaw: The hype, the reality and what actually broke

Most OpenClaw content right now is first-week impressions or setup tutorials. Nobody can tell you what happens after the first month because they haven't been there yet. I have. Every single day for 50+ days. Here are 20 real workflows I use daily, what broke along the way, and my honest assessment of whether it's worth your time. Continue reading →

Stop overpaying for OpenClaw: Multi-model routing guide

If you're running OpenClaw, there's a good chance you're burning money without realizing it. By default, everything goes to your primary model - heartbeats, sub-agents, simple queries. This guide shows you how to cut costs by 50-80% with one config change, without losing quality on the tasks that actually matter. Continue reading →

Compound Engineering: the AI coding workflow that actually learns

Most developers use AI to code faster today, but they're missing the bigger opportunity. Compound Engineering is a workflow where every code review teaches the system something new, every bug fix becomes a rule it won't break again, and the knowledge compounds over time. Continue reading →

Data analysis with Claude Code: 500,000 rows without writing code

Go from a raw Excel file with half a million rows to a finished report with KPIs, charts, and cohort analysis - step by step, with real prompts you can copy. Continue reading →

ClawdBot: The self-hosted AI that Siri should have been

A personal AI assistant that runs on a $5/month server, lives in your messaging apps, remembers everything, and actually reaches out to help you. Here's how to set it up. Continue reading →

Stop prompting Claude Code - let it interview you

The spec workflow that went viral: instead of telling Claude what to build, you let Claude interview you first. Here's how it works, when to use it, and how to turn it into a one-command shortcut. Continue reading →

Building a Large Language Model from scratch: A learning journey

A daily learning journey of learning how to build a large language model from scratch. Understanding transformers, attention mechanisms, GPT architecture, training process. Documenting insights, concepts and implementations as I learn how LLMs actually work under the hood. Continue reading →

Banana Straightener: AI image generation that actually gets it right

Finally, an AI image generator that doesn't give up after one try. Because your creative vision deserves better than digital dice rolls. Continue reading →

Why do AI company logos look like buttholes?

A humorous exploration of the uncanny resemblance between AI company logos and human anatomy. Discover why circular, gradient-based designs dominate the AI industry, and what this design convergence tells us about branding in tech. Continue reading →

My AI agents journey

My month-long exploration of AI agents, where I built practical solutions from simple chatbots to email automation. Learn when to use AI versus traditional automation, and follow my recommended learning path for AI development beginners. Continue reading →

12 challenges in 12 months. Again.

After a transformative year of monthly challenges in 2021, I'm embarking on a new set of 12 challenges for 2025 - from AI agents and sleep optimization to breathwork and niche expertise. Join me on this journey of personal growth and experimentation. Continue reading →

SummerIce: A Simple solution for information overload

A free Chrome extension that allows you to quickly and easily summarize articles on any website, with one click or one keyboard shortcut, you'll get a concise summary in just a few seconds. Continue reading →

EIP-3074 - Pass the AUTH, please!

EIP-3074: a transformative Ethereum proposal introducing new opcodes that enable externally owned accounts (EOAs) to delegate transaction capabilities to smart contracts. This enables transaction batching, sponsored transactions, and social recovery. Continue reading →

ERC-1271 - Now smart contracts can sign transactions too!

ERC-1271 enables smart contracts to verify signatures, allowing them to sign transactions. Learn why it's crucial for smart contract wallets and the use cases it unlocks. Continue reading →

ERC-4337 - It's all about Account Abstraction

ERC-4337 brings account abstraction to Ethereum, enabling smart contract wallets, ERC20 gas fees, and improved UX without sacrificing decentralization. Continue reading →

What are Ethereum Standards - EIPs, ERCs, RIPs, CAIPs

Discover the four main types of blockchain standards—EIPs, ERCs, RIPs, and CAIPs—in this detailed guide. Learn how these standards enhance Ethereum protocol usability and interoperability across multiple blockchains. Continue reading →

How many time zones are there in the world?

There's a popular misconception that there are 24 time zones in the world. Nope, there are more. Continue reading →

Solidity Smart Contract Template

A cheetsheet for a Solidity contract layout and structure, to know what goes where and how. Continue reading →

Merkle Trees

How to understand Merkle trees, write and test your smart contract, together with Solidity exercises Continue reading →

Pushing my limits - What I learned from a year of monthly challenges

What I learned from doing 12 challenges in 12 months, and how it changed my life. Continue reading →

December Challenge: Daily post on Instagram

December Challenge summary: Daily post on Instagram. What I learned from it, how it went, and will I keep doing it? Continue reading →

How to Become a Crypto Billionaire in 15 Minutes. Legally.

How I became a billionaire in 15 minutes. True story. With proof of all of the transactions. Continue reading →

Consistency

I'm lazy. But also I'm extremely consistent at the tasks that I do. This is the system I came up with to get consistent and to work around my laziness. Continue reading →

November Challenge: No coffee

November Challenge summary: No coffee. What I learned from it, how it went, and will I keep doing it? Continue reading →

October Challenge: 7-minute daily hanging

October Challenge summary: Hanging 7 minutes a day, in total. What I learned from it, how it went, and will I keep doing it? Continue reading →

Max values for each uint in Solidity, from uint8 to uint256

Max values for each uint in Solidity, from uint8 to uint256. Continue reading →

September Challenge: One hour of learning every day

September Challenge summary: One hour of learning every day. What I learned from it, how it went, and will I keep doing it? Continue reading →

Don't do stupid shit

The formula and explanation of how not to do stupid shit and what to do instead. Continue reading →

August Challenge: No alcohol

August Challenge summary: No alcohol. What I learned from it, how it went, and will I keep doing it? Continue reading →

My 200 days of daily web3 learning and building

A detailed journey of 200 days of learning web3: what worked, what didn't, what I built, what I learned, highlights, downsides, resources, what's next. Continue reading →

July Challenge: Cold shower in the morning

July Challenge summary: Cold shower in the morning. What I learned from it, how it went, and will I keep doing it? Continue reading →

June Challenge: Waking up before 9 AM

June Challenge summary: Waking up before 9 AM. How it went, what I learned from it, will I keep doing it? Continue reading →

May Challenge: 30 minutes of reading a paper book

May Challenge summary: 30 minutes of reading a paper book. How it went, what I learned from it, will I keep doing it? Continue reading →

Web3 Learning Journey month 2 update: it's all starting to come together

Month 2 summary of learning web3 development. Continue reading →

April Challenge: No sugar (again)

April Challenge summary: zero sugar. How it went, what I learned from it, will I keep doing it? Continue reading →

Web3 Learning Journey 1-month update: React and starting with Solidity

Month 1 summary of learning crypto development. React basics and starting with Solidity. Continue reading →

My web3 Learning Journey

I'm learning web3 and sharing my learnings in public. Continue reading →

My new best friend

I was stuck with a toxic friend and a stranger. I've replaced them with two great guys. Continue reading →

March Challenge: The effects of zero sugar and zero news

March Challenge summary: zero sugar, zero news. How it went, what I learned from it, will I keep doing it? Continue reading →

February Challenge results: The effects of publishing daily for a month

February Challenge summary: Daily publishing. How it went, what I learned from it, will I keep doing it? Continue reading →

January Challenge results: Great effort, great outcome, needs modifying

January Challenge summary: what it was, how it went, what I learned from it, will I keep doing it? Continue reading →

What happens when your article is mentioned in the Morning Brew newsletter?

What happens (and what doesn't happen) when your article is mentioned in the newsletter that goes out to 2m+ people. Continue reading →

How to develop a bias for action

A compilation of research, findings, and my own experience on developing a bias for action. Continue reading →

A Challenging Year with twelve 30-day challenges

Twelve monthly challenges, one for each month in 2021. Zero sugar, 50 push-ups per day, doing only "boring" stuff for a month, and everything in between. Continue reading →

Why do so many brands change their logos and look like everyone else?

Tech and fashion logos are becoming increasingly similar, all of them using sans serif fonts. Why do they do that? And why it doesn't make sense. Continue reading →

To get food, I learned Selenium and web scraping in one day. And I’m not even a programmer.

I couldn't buy groceries online because the waiting time for delivery was 2 months. I decided to automate the process of checking if any deliver slot opens up and then instantly booking it. I had to learn Selenium to do this. I succeeded. Continue reading →

How to read large files on a Mac (CSV, JSON, etc.)

Opening text files, even the big ones, should be easy. Even huge ones. It's just text after all. Turns out, it's surprisingly difficult and I had to dig to find out a good way to do it. Continue reading →

If you like what you see, you'll find more stuff like this on my Twitter.

Shark footer