AI

Surviving the Half-Baked AI Hype

March 1, 2026 AI No comments

I was looking at my social feeds recently, and it feels like everyone is suddenly an AI productivity guru or all knowledgeable about AI (ironically I write about AI a lot as well). People are just throwing together these half-baked agents and AI solutions, not even checking if they solve a real problem or if any quality is there, and bragging about inventing some “10x workflow”. Well, not really bragging themselves, but rather asking AI to brag about it, which makes it even worse.

I believe this year is just so much FOMO and oversaturation fatigue for all of us, software engineers. I no longer know where it is worth spending my time. Last weekend I spent some time setting up OpenClaw because that seems to be a hot thing right now. Before that I was vibe coding different things, playing with LLM integrations, Agents, tools or whatever the latest cool thing was. You can spend lots of time learning a tool or an approach, and a month or two later, it’s completely obsolete because the next “best thing” just dropped. It’s overwhelming. For the most part, it is all just noise. It is increasingly more and more difficult to figure out what the signal is. The signal-to-noise ratio just went really really bad. These days whenever I see a post by someone I try to quickly gauge if that is typical AI text and I mostly ignore it in those cases, if not, I try to see if there is some substance to whatever is written and if there are any opinions expressed, if so, that seems to be a genuine piece of work and it draws my attention. I am starting to develop an allergy to AI generated text.

I am not an AI denier. It is extremely useful and great but the hype is just over the board. What goes up will inevitably settle down, and we just need to figure out how to ride the waves. I’ve written about this in the past. The tools will inevitably change but the underlying shift in our industry is permanent. Our software engineering jobs are destined to change. There is no question about that. There is also a lot of uncertainty over which other jobs will be displaced by AI. With the current trends, it looks like anything that has to do with text and image processing can be replaced and anything that has anything to do with operating in the physical world (think plumbing) or requiring human judgment might take longer to get replaced. I spoke to some of my non-tech friends and they express fear of being affected by AI as well.

All I can say for now is that we need to keep adapting to remain relevant. So while I don’t like all of the hype, if I don’t sample around, try things out I might miss on one of the things that wasn’t a hype and be left behind as the industry moves forward.


No comments


My 1-Hour Open Claw Setup: Docker, Llama 3.1, and Telegram

February 22, 2026 AI, AI Agent, HowTo No comments

I saw all the fuss about Open Claw online and then spoke to a colleague and she was saying she is buying a Mac mini to run Open Claw locally. I could not resist the temptation to give it a try and see how far I can get. This post is just a quick documenting what I was able to do in like one hour of setup.

If you’re like me and find it difficult to follow all the latest AI hype and missed it, Open Claw is an open-source AI agent framework that connects large language models directly to your local machine, allowing them to execute commands and automate workflows right from your terminal or your phone.

A quick preview below. This is just nuts. In one hour I was able to run OpenClaw on Docker talking to llama3.1 running locally and communicating with this via Telegram bot from my phone 🤯.

Back in the old days I would open some kind of documentation and follow steps one by one and unquestionably get stuck somewhere. This time I started with Gemini chat prompting it to guide me through the installation and configuration process. This proved to be the best and quickest way.

Decision 1: Running locally or in some isolation.

I think this one is an obvious choice. Giving hallucinating LLMs permission to modify files on my primary laptop sounds like a recipe for disaster. Decided to go with Docker container but if I find the right workflows I might buy Mac mini as well. 

Commands were fairly simple, something along these lines:

git clone https://github.com/openclaw/openclaw.git
cd openclaw
./docker-setup.sh
docker compose up -d openclaw-gateway

Decision 2: Local LLM or Connect to something (Gemini, OpenAI)

This is a more difficult decision to make. Even though I’m running an M4 with 32GB, I cannot run too large of a model. From reading online it is obvious that connecting to large LLMs has an advantage of not hallucinating and giving best results but at the same time you’ve got to share your info with it and run the risk of running into huge bills on token usage. Since this was purely for my self learning and I don’t yet have good workflows to run, I just decided to connect using a small model llama.3.1 running via Ollama. Since it was running on my local machine and not docker, I had to play a bit with configuration files but it worked just fine. And yeah, the answers I would get are really silly.

Later I found that ClawRouter is the best path forward. Basically you use a combination of locally run LLM and large LLMs you connect to. I might do this in the next iteration.

Decision 3: Skills, Tools, Workflows

This is just insane how many things are available. Because this can run any bash (yeah, in your telegram you can say “/bash rm x.files” – scary as hell) on the local the capabilities for automation with LLMs are almost limitless.

Conclusion

I can barely keep up with all of the innovations that are happening in the AI space but they are awesome and I’m inspired by the people who build them and feel like I want to vibe code so much more instead of spending my time filling-in my complex cross-border tax forms over the weekend.


No comments


From Alien Translators to Human Translators

February 15, 2026 AI, Opinion No comments

Just wanted to share some quick thoughts on AI again. It does change our jobs (see my earlier thoughts “AI is asteroid and your tech job is a dino”, “Is AI redefining software craftsmanship?”). It completely rewrites how much can be done in a short period of time (see a bunch of vibe coding posts from me: blogger agent, typing game, AI powered snake, etc). And while I expressed some doubts and expected a ceiling to its advancements, I am now more deeply convinced that the time to fully embrace AI is now. Almost any knowledge work you do with your brain can get some help from AI. And while I advocate for limited use of AI in writing (“Don’t outsource your thinking to AI”) it has undeniably changed how I do my writing and what value I think I bring or don’t bring. Writing generic advice, anything that can be searched online, is an absolute waste of time, unless it is supplemented with opinions or experiences. Writing coding blog posts with technical details, as I used to do in the past, is also worthless. The entire stack overflow is now not receiving much traffic.

I liked to think about Software Engineers as these super smart almost alien-like translators. We used to translate requirements and business needs into cryptic code that most people couldn’t understand, just to make the software work. While fundamental knowledge is still relevant and our role as translators still remains, the destination language is changing to be more English-like. Instead of typing code we orchestrate AI work. What still matters is what AI cannot do and is very unlikely to be able to do soon, which is doing human things. The things that revolve around judgment, our lived experience, and our authentic connections.

An LLM can write technical documentation, generate a summary, and write lots of code. It works perfectly for transfer of knowledge, but it still is not good at transfer of experience and understanding what we really need and mean as humans. Translators are still needed, but instead of being more alien-like we might need to be more human-like and do more human things.

P.S. I resisted the urge to use AI for this blog post.


No comments


Built a personal “AI Slop” Generator in 3 Hours

February 8, 2026 AI, Opinion No comments

Presenting you with AI Slop by Andriy Buday and Gemini: https://aislop.andriybuday.com 

I was recently challenged on why my weekly blog posts are not written by AI. I do have my strong opinions on this and arguments against it but before I delve into them I wanted to accept the challenge. So in about 3 hours of vibe coding I built an automated GitHub and Google Gemini powered workflow that picks either an idea from ideas.md file or one of my older blog posts on this website and (re-)writes a new blog post based on that and then uploads it to my dedicated aislop subdomain.

Solution based on GitHub Actions, FTP, Google Gemini

The entire project took about 3 hours from initial concept to deployment. This was pure vibe coding of ~40 git commits, a bit of setup in my bluehost, and some setup on github.

I learned about GitHub Actions fairly recently, but basically you can build a workflow based on yaml definition that would be triggered on a periodic basis. Additionally you can put your secrets into GitHub repo configuration. I placed my Gemini API key into secrets as well as I then placed my FTP access details (yes, I know it’s insecure and old school, but this is a 3-hour hack project). For FTP I created a dedicated account and only allowed a specific folder on my bluehost, where I also created a subdomain.

How it works: The workflow and Tech Specs

I asked Claude to summarize the technical details because this is what AI shines at:

Workflow:

  • GitHub Actions → triggers workflow daily → Python script picks unprocessed blog post or idea from ideas_tracking.json or blog_posts.json → load content and prompt Gemini via API with custom prompt → postprocess text to HTML → create HTML file and update blog_posts.json (database) → connect to FTP and upload files → git push changes for tracking and backup

Core Development Phases

  • Scaffolding & Engine (75m): Establishing the repository and building the Python script to handle web scraping via BeautifulSoup4 and AI integration.
  • Automation & Queueing (35m): Configuring GitHub Actions for CI/CD and implementing a JSON-based status tracker to manage 370+ URLs.
  • Refinement & UI (80m): Enhancing Gemini’s prompting for authoritative content, fixing Markdown-to-HTML rendering bugs, and building a responsive progress dashboard.

Technical Stack Highlights

  • AI & Logic: Python 3.9+, Google Generative AI (Gemini 2.0 Flash), and markdown2
  • Infrastructure: GitHub Actions for scheduling, Bluehost via FTP, and GitHub Secrets for API key management
  • Frontend & Data: Vanilla HTML/CSS/JS for the dashboard, with JSON and CSV files handling all state-tracking without a database

Thoughts (Why I am against AI generated content)

Is this the future of blogging? Maybe. Is it a future I’m excited about? Not entirely. I am definitely not going to share my AI Slop sub-blog unless that is purely to prove the point. I can barely stand all of these huge walls of text that are clearly written by AI but presented as if humans had written it. Why would you read it? You can just prompt your favorite LLM to give you answers you really need. I almost want to vomit from all this clearly AI generated text with no personal substance or real opinions. Sorry for being this vivid, but again: AI would not write that it wants to vomit because of the text it has written. 

And just to be clear, I do use LLM as a tool to help with my writing, but just not to write instead of me: Don’t Outsource Your Thinking: Why I Write Instead of Prompt

So where does the value of blog posts come from?

In my opinion the value comes from giving your own perspective, from sharing your opinions, driving your own arguments, and, yes, while bloggers can and do use LLM to find blind spots and to arrive at a stronger argument, the arguments should still come from the author, otherwise it is all just crappy AI Slop (unless that was the intention originally).

My ‘AI Slop’ bot can publish 100 posts a day, but it can’t build its own perspective. It can only synthesise perspective based on data it has received before.

My concluding argument is that efficiency in generating text does not equal value in reading text.


No comments


Building Personal AI Agent

January 11, 2026 AI, AI Agent No comments

Rich people always had access to assistants (+chief of staff) that would help them with all kinds of chores, would advise them on things, or just do things behind the scenes. We live in an interesting time of AI, where anyone has access to these fabulous LLMs that can do some of those things for us. Like, I’m sure most of us are doing our travel plans with some help from LLMs, or we make buying decision, etc. It is just mind boggling how good these things are becoming!

In parallel, as software engineers, we keep hearing about AI agents all the time. We use AI agents at work. The most useful and prominent example of LLM agents are coding agents. You are likely using Claude Code at work. I already heavily rely on LLMs to track many of my personal goals, to critique me, to give suggestions, etc.

But what if I build a personal AI Agent to avoid repeating things and to make it watch me more proactively?

Vibe Coding AI Agent

There we go! Let’s build something simple first. My use cases for LLMs are fairly simple, nothing too crazy and very closely tied to my Life Goals and areas of life. For example, I have chats with Gemini labeled like “Nutrition”, “Finance”, “Career”, etc. When I eat my breakfast I snap a picture of it and estimate my nutrition intake. When I’m considering stock buying I do research with Gemini. When I plan a trip I build an itinerary with LLM, etc. I track my weekly progress in google docs. I track my finances in spreadsheets. The more I think about this the more I realize there is a room for a personal AI agent that is highly tuned to my personal needs and would orchestrate all of this. Additionally there won’t be any ready solution online, because this is so personal, so I’ve got to build one agent for myself!

Email Digest Agent after ~3 hours of Vibe Coding

So what I’ve built in 3 hours is a “personal AI agent that automatically generates daily digest emails by fetching data from multiple sources in parallel: it retrieves stock market insights for ~X tickers, extracts the current week’s goals (with checkbox tracking) from a tabbed Google Doc, pulls my monthly focus items, pulls net worth data from a Google Sheets dashboard, then uses Gemini to generate a professionally formatted HTML email summary and sends it via SendGrid. The system is built with LangGraph for workflow orchestration, uses OAuth2 for secure Google API access, and preserves formatting details like checkboxes (✅/⬜) by converting them to email-compatible emoji before direct insertion into the final email.”

Tech Stack

  • LangGraph 0.2+ – Workflow orchestration with parallel execution
  • LangChain 0.3+ & Gemini API (gemini-2.0-flash-exp) – LLM integration
  • Google Docs/Sheets API – Data sources with OAuth2
  • Alpha Vantage API
  • SendGrid – Email delivery
  • Python 3.9+ – Runtime

Conclusion

This project is just scratching the surface of what is possible to be built very quickly for personal needs. The most exciting realization for me wasn’t the technical implementation but how accessible it is to connect things together. Setting up all of the API keys and then vibe coding all together is so straight forward that it is just unbelievable.

I will continue this project next week to make it actually properly work for my needs and then will host it on some server to send me those digests. Next steps would be to supplement it with prompts to LLMs to give me quick ideas for what I should focus on, better tracking, etc so I can achieve my goals quicker. So exciting!

Go ahead and build something for yourself!


No comments


AI Toolkit Research for Software Engineer 

November 29, 2025 AI, Personal No comments

Disclaimer: I do not promote any of the tooling mentioned in this blog post nor have I used the vast majority of them. All of the text written by me is my personal opinion. All of the text generated by LLM is its creation – I will be explicit where it is LLM and where it is me.

Unlike most posts where I make emphasis on my own experience and writing by myself, this blog post will be assisted with LLM, but in a good way. I want to create a comprehensive AI toolset list to explore for myself. Although it will have some tools very specific to my personal needs (like climbing) I believe you can apply the same approach to get your ideal list. This could have been LinkedIn post “Definite list of AI tools you must use” but I cannot stand those posts. This is just idea on how you can come up with your own list:

Step 1: Refine research plan

Prompt: “Refine this prompt: Perform research on the landscape of currently available LLM products and AI tooling for both professional and personal development for the user profile and wider audience, using referenced examples of already used tooling. User Profile: A Software Engineer at a big tech company in the Seattle area. Family with two kids, sports (climbing, Muay Thai, running), writing blog posts, coding for fun, and wondering about life in general. Researching topics such as: health, finance, 3d printing, writing about tech, coding, taxes, parenting, relationships, career decisions, trip planning, real estate, etc. Reference examples:  ChatGPT, Gemini (deep research, chat, image gen), Claude Sonet for coding, locally running small LLMs, trying out different AI startups for intermittent tasks.”

The above text was me. The below text is the proposed research plan by LLM:

(1) Research the current landscape of major LLM products (such as ChatGPT, Gemini, Claude) and emerging AI startups in late 2025, specifically analyzing their capabilities for professional software engineers (coding agents, debugging, architecture design).
(2) Investigate the ecosystem of open-source and locally executable LLMs (compatible with Ollama) and privacy-focused tools suitable for a tech-savvy user running consumer hardware.
(3) Search for specialized AI tooling and applications tailored to the user's specific hobbies and creative interests:
(a) Sports performance analysis for climbing
(b) Sports performance analysis for Muay Thai
(c) Sports performance analysis for running
(d) 3D printing modeling and slicing optimization
(e) Technical blogging and creative writing assistance
(4) Find AI resources and tools assisting life management, covering:
(a) Parenting, education, and kids' activities in the Seattle/Bellevue area
(b) Real estate market trends and housing analysis in Vancouver, BC
(c) Personal finance, tax preparation, and investment tracking in the Seattle/Bellevue area
(5) Explore AI interfaces designed for broad life topics, such as philosophical conversation, relationship coaching, career development planning, and travel logistics.
(6) Synthesize the findings to categorize tools by professional utility versus personal development, comparing them against the user's current stack (ChatGPT, Gemini, Claude, Ollama) to identify gaps and superior alternatives.

Step 2: Run multiple researches and synthesize takeaways

I’ve run 4 reports with the above prompt or some variations of it. In the end I got four 20 page documents. After skimming through them it is obvious that either: a) some info is outdated, like recommending Claude Sonet 3.5 when I’m already using 4.5; b) recommendations are too generic; c) some sections were too verbose and some too short for my needs; d) some recommendations are contradictory, for instance using Ollama for privacy and then suggesting some startups that suggest uploading private data to small startups.

One idea I had was to feed all documents into another research specifically asking for summary with bullet points. Unfortunately the result was a 5th document of not better quality. Another approach I took was: “Create a maximum 5 pages summary from the four similar documents. Do bullet points. Keep links to websites. Do NOT do research.” This gave much better results.

Step 3: Edit the result

So I’ve got approximately what I need. The next step was to iterate a few times on the list. E.g. I asked LLM to add a list of general health and longevity tooling following the same format. Copy-paste, read through, and add more sections. The appendix text in the end is the list by AI, with minor edits from me.

Step 4: Action Plan

It is obvious that I won’t be trying all of the tooling (that would be crazy) but to do exploration of what’s available and within my area of interest. As an action plan I highlighted some tooling to use and play with below or use more actively:

  • llms.txt – a file to be added to this blog post so AI knows how to read it.
  • Ollama: The CLI standard for running local models. Already using it, but probably use even more. (got M4 apple processor with 32Gb memory so some LLMs run just fine).
  • NotebookLM: Google’s AI-Powered research partner. Have seen demos of this one and should try.
  • Belay AI: analyzing center of mass and hip trajectory when climbing. Didn’t know such a thing existed. Would be curious to try out.
  • Garmy: Python library and MCP server linking Garmin data to Claude Desktop or Cursor for agentic analysis. Sounds like something I would like to play with next.
  • Meshy: Converting prompts to 3D models. Already tried but wan’t too happy with the results. Will give it another try.
  • Layla & Wanderlog: AI travel agents. Used general LLMs for my travel planning before but will be curious to try tailored tool.
  • Orai: Pocket AI coach analyzing recordings for filler words, energy, and clarity.

Conclusion

I believe the AI and LLM tooling landscape is very saturated. There is a tool or a startup for almost anything you can think of. The point is not the specific list but how I arrived at it and how it is tailored to my needs. In this blog post I provided a method at arriving at your own list of AI tooling that is applicable specifically to you.

Alert: wall of text below.


APPENDIX: THE RESULT


Disclaimer: I am not advertising or promoting any of the tooling below, have no affiliation to any of the companies or products mentioned. The text below is generated by LLM. I only reviewed it.

Executive Summary: The Shift to Agentic Workflows

The technological paradigm has shifted from “Chatbots” (passive Q&A) to “Agents” (active execution). The competitive advantage in 2025 belongs to the “Augmented Architect” who orchestrates specialized AI entities to manage full-stack development, complex financial engineering, and physical performance.


1. The Professional Engineering Workbench

The modern workflow bifurcates into Integrated Agents (living in the IDE) and Headless/Terminal Agents (operating autonomously).

The Battle for the IDE: Cursor vs. Windsurf vs. Copilot

  • Cursor: The “Architect’s Instrument”.
    • Best For: Heavy refactoring and legacy codebases.
    • Key Feature: “Composer” and “Shadow Workspace” index the entire codebase to predict multi-line edits and handle global refactors.
    • Model: Uses Claude 3.5 Sonnet for superior code structure nuance.
    • Pricing: $20/month; generally preferred by power users over Copilot.
  • Windsurf: The “Flow State” Facilitator.
    • Best For: Greenfield projects and rapid prototyping.
    • Key Feature:Cascade” flow tracks user actions (terminal commands, clipboard) to infer intent, actively running tests and fixing errors.
    • Differentiation: Focuses on keeping the developer in “flow” rather than granular control.
  • GitHub Copilot: The Enterprise Incumbent.
    • Best For: Corporate environments with strict compliance needs.
    • Status: Now includes “Agent Mode,” but critics note the chat often feels disconnected from the editor compared to AI-native rivals.

Command Line & Autonomous Agents

  • Claude Code (CLI): A terminal-resident agent that replaces the chat interface. It can navigate directories, read files, execute Unix commands, and handle large-scale refactoring.
  • Cline / Roo Code: Open-source VS Code extensions that act as “Headless Developers.” They can execute terminal commands and create files autonomously, allowing for a “Bring Your Own Key” (BYOK) model.
  • Deep Think Models: Google’s Gemini 2.5 Pro utilizes “parallel hypothesis testing,” allocating a “thinking budget” to simulate System 2 thinking for architectural reviews and debugging race conditions.

The Sovereign Stack: Local Inference on Apple Silicon

For IP protection and privacy, running models locally on M3/M4 Max chips (Unified Memory) is the standard.

  • Ollama: The CLI standard for running local models (like Docker for LLMs).
  • LM Studio: A GUI alternative for discovering and testing models.
  • Top Open-Source Models:
    • DeepSeek-Coder-V2: Uses Mixture-of-Experts (MoE) for high reasoning with efficient inference; ideal for logic-heavy tasks.
    • Qwen 2.5 Coder: The premier open-source choice for daily coding, rivaling GPT-4 in benchmarks (88.4% HumanEval) and running on 32GB+ RAM.

Career Engineering & Strategic Presence

Interview Intelligence (The “Copilot” Era)

  • Final Round AI: Real-time “Interview Copilot” offering transcription and live hints.
  • InterviewBee AI: Adaptive mock interviews that dynamically adjust difficulty.

Strategic Networking & Personal Branding

  • Supergrow: LinkedIn growth tool generating tone-matched content from past posts.
  • Taplio: Identifies viral technical topics and drafts high-visibility posts.

Performance Engineering (Automated Brag Docs)

  • Lattice AI: Auto-drafts reviews, translating engineering metrics into business impact narratives.
  • Fellow: Auto-generates “Brag Docs” by tracking wins from 1:1s year-round.

Public Speaking & Leadership Intelligence

Voice Cloning & Auditory Feedback

  • ElevenLabs Voice Cloning: Clones your voice to objectively audit delivery and identify awkward phrasing before speaking.
  • Orai: Pocket AI coach analyzing recordings for filler words, energy, and clarity.

Simulation & Real-Time Coaching

  • Yoodli: Simulation platform providing private analytics on eye contact and pacing during practice speeches.
  • Poised: Real-time meeting assistant offering live, private feedback on speaking speed and confidence.
  • VirtualSpeech: VR-based training for practicing presentations in realistic 3D environments (e.g., boardrooms).

2. Wealth Management

For a Seattle engineer with RSUs and complex taxes, standard budgeting apps are insufficient.

The “Finance as Code” Approach (Privacy-First)

  • Beancount: A Python-based double-entry bookkeeping system that stores financial records in plain text. It treats finance like code (version control, CI/CD).
  • Fava: The web UI for Beancount.
    • Fava Investor Plugin: Calculates IRR and tracks asset allocation across disparate accounts.
    • Automation: Python scripts (e.g., wash-sale-tracker) can parse trade history to track wash sales and automate RSU vesting tracking.

The SaaS Optimization Route

  • Prospect: Specialized for tech employees with ISOs/RSUs. It models tax implications of exercising options and calculates the “AMT crossover point” to prevent surprise tax bills.
  • Compound Planning: Tracks net worth across illiquid assets and models scenarios for RSU vesting and tax cliffs.
  • StockOpter: Specifically addresses equity compensation guidance and AMT modeling.
  • HouseSigma: Essential for the Vancouver, BC market. Uses AI to provide “Sold” history and valuation estimates, unlocking data previously gated by realtors.
  • VanPlex: Analyzes zoning data to identify “under-utilized” lots suitable for multiplex development (Bill 44), aiding in investment arbitrage.

Financial Education & Investment Intelligence

Tools for deep research, interactive learning, and risk-free simulation (Paper Trading).

Deep Research & Earnings Intelligence

  • AlphaSense: Institutional “semantic search” for broker research and earnings calls; highlights off-script management answers.
  • Quartr: Mobile access to live earnings calls/transcripts; “search across audio” finds specific keyword mentions instantly.
  • FinChat.io: “ChatGPT for Finance” providing sourced answers from verified 10-Ks/10-Qs to minimize hallucinations.

Interactive Education & Family Literacy

  • Magnifi: AI investing tutor; explains portfolio balance and stock fit via conversational interface rather than just charts.
  • Zogo: Gamified literacy app for families; breaks complex topics into bite-sized modules with rewards.

Simulation & Practice (Paper Trading)

  • Thinkorswim: Institutional-grade paper trading with “PaperMoney” to test strategies risk-free.
  • Webull: UX-friendly platform for beginners to practice trading mechanics before deploying capital.

3. The Quantified Athlete: Physical Intelligence

AI is transitioning from logging data to providing active biomechanical coaching.

Rock Climbing

  • Belay AI: Uses computer vision (pose estimation) on a smartphone to analyze center of mass and hip trajectory, identifying micro-inefficiencies in movement.
  • KAYA Pro: Digitizes climbing sessions and calculates “Workload” to prevent overtraining. It filters “beta” videos by body morphology (e.g., finding beta for a specific height).
  • Lattice Training: Uses datasets to benchmark finger strength and build periodized training plans.
  • Crimpd: Utilizes analytics to prescribe hangboard workouts and manage training loads.

Muay Thai & Running

  • Sensei AI: A virtual coach for Muay Thai that analyzes shadow boxing via camera. It corrects hip rotation on kicks and guard retraction.
  • RunDot: The data scientist’s choice. Uses “Environment Normalization” to adjust pace targets based on heat/humidity, ensuring constant physiological stimulus.
  • Runna: Focuses on UX and community, gamifying the training process for better adherence.

General Health & Longevity Intelligence

The intersection of “Quantified Self” and AI for preventative health and programmable biology.

Developer-Friendly Health Data

  • Garmy: Python library and MCP server linking Garmin data to Claude Desktop or Cursor for agentic analysis.
  • HealthGPT: Open-source iOS app using on-device LLMs to query Apple Health data privately.

Longevity & Preventative Analytics

  • InsideTracker: “Programmable” biology platform; integrates wearable APIs and uses Terra AI to map blood biomarkers to peer-reviewed optimization protocols.
  • Function Health: Deep clinical baseline with a 100+ biomarker panel for early detection and chronic disease prevention (closed system).
  • Superpower: Accessible longevity diagnostics and biological age tracking at a subscription-friendly price point.

4. Creativity & Fun

Bridging the gap between software and physical artifacts.

3D Printing Stack

  • OrcaSlicer: The “Open Source Victory” for 2025. Offers granular control (jerk/acceleration settings) and “Scarf Joint Seams” for aesthetics.
  • Obico: AI failure detection (spaghetti detective). It monitors the print bed via camera and pauses prints to prevent fire/waste. Can be self-hosted on a Raspberry Pi.
  • Zoo (formerly KittyCAD): “Text-to-CAD” API. Generates editable, parametric CAD models (code-based) rather than simple meshes.
  • Meshy: Generates 3D assets from text prompts, best for rapid prototyping or game assets.

Knowledge & Blogging Pipeline

  • Repo-to-Blog: A workflow using Gitingest or GitHub Actions to convert codebases into token-optimized summaries. These are fed into LLMs to automatically generate technical “DevLogs” from commit history.
  • Obsidian + Smart Connections: A “Second Brain” setup where the plugin uses local embeddings to allow you to “chat” with your notes vault.
  • llms.txt: A new standard for 2025. Adding this file to a personal site makes it indexable by AI agents.

Music Exploration & Vibe Matching

  • Spotify AI Playlist: Generates playlists from creative text prompts (e.g., “songs for a rainy cafe”).
  • PlaylistAI: Creates playlists from text prompts, images, videos, or festival posters.
  • Maroofy: Search engine that matches songs by “audio vibe” rather than just artist similarity.
  • Cyanite: Advanced “Free Text Search” to find songs matching specific moods or descriptors.
  • Music-Map: Visual tool that creates a floating “cloud” of related artists based on fan affinity.
  • NotebookLM: Google’s research tool; upload your concert history/venue calendars to create a custom event finder.
  • HyperWrite: AI agent capable of browsing the web to find specific tickets or venue schedules for you.

5. Life Logistics

Tools acting as “Chief of Staff” for the household.

  • Ohai.ai: Ingests unstructured data (screenshots of flyers, voice memos) to manage family calendars and conflicts.
  • Milo: An SMS-first family assistant (powered by GPT-4) that manages logistics via natural conversation.
  • HomeZada: A digital home management platform that uses AI to predict maintenance costs, schedule seasonal repairs.
  • Familymind: Synthesizes school PDFs and sports schedules into a master calendar.
  • Layla & Wanderlog: AI travel agents. Layla handles discovery/booking; Wanderlog optimizes daily routes and logistics while traveling.
  • Magic School: Generates personalized tutoring content and educational activities.


No comments


Don’t Outsource Your Thinking: Why I Write Instead of Prompt

November 23, 2025 AI, Blog, Opinion, Personal No comments

Original content by Andriy Buday

I’ve been asked multiple times about my writing process, how I keep consistency, and why I write blog posts at all. Who in their right mind spends multiple hours weekly to write when there are LLMs that generate the same quality text within a minute? Let me share my secrets and answer these 4 questions:

  1. Why do I write at all?
  2. Isn’t it all just a waste of time because of LLMs?
  3. What’s my writing process?
  4. How do I stay consistent?

Image credit: Gemini Nano Banana Pro. I admit the image is cheesy, lol, but it’s also fun.

Why do I write at all?

Writing is structured thinking

Over time I confirmed to myself that ‘writing is thinking’ but also unlike speaking or thinking in my head writing is a structured way of thinking. You get the privilege of ‘parking’ some thoughts for further elaboration, you get the privilege to validate your thoughts with external research, you get all the privilege to mold things and shuffle them around, decompose and synthesize again.

Writing is a transferable skill

Undeniably writing is a skill, but, in my opinion, it is a transferable one. By working on improving my process of writing it becomes easier for me to write documents at work and the easier for me it becomes to write my personal documents (financial planning, goal setting, emails, etc). The more I write the easier it is to overcome that initial ‘hurdle’ of starting a new document. I am a doc producing machine at work: meeting notes – I’ve got it; short design doc – I’ve got it; just documenting my work trip – I’ve got it; producing ‘announcement’ document – I’ve got it. None of it seems daunting. I also wrote a post on “Why documenting everything you do at work matters” believing it is beneficial for your career, especially performance reviews and promos.

Isn’t it all just a waste of time because of LLMs?

Producing vs. Consuming

Here is a big secret, my dear readers: I’m writing mostly for myself, and I have a strong argument why it is worth my time instead of just prompting LLMs. For the sake of argument, I just kicked-off Gemini’s ‘Deep Research’ on the topic of tech writing, answering 4 questions from above. I’m confident that in ~3 minutes I will have a PhD level research paper on this topic. What do I gain from that research? What do you gain from that LLM research? Well, we become consumers – I can read that research paper and, for sure, that will have many punchy arguments and external pointers to like 100+ websites to learn from, but this trains our “info => brain” path, this does not train our “brain => info synthesis” path. Very specifically, next time when you need to produce new information, your retrieval/producing ‘paths’ in your brain are not trained for that.

Numbers

Let’s also do some numbers to see the worthiness of this activity:

  • Range of 2-5 hours per week writing blog posts. It is closer to 2h for writing itself like this post and closer to 5h for larger technical/coding posts.
  • 370 blog posts so far.
  • 800 comments with praise/admiration and additional insights I was missing.
  • Only 3k pageviews/month and only 50 mail subscribers.
  • I have no ad income (I made some <200$ in the past as an experiment).
  • In a way, the blog is an ‘Ad’ of myself.
  • Up-scalling my tech writing skills.
  • Hardly measurable influence on my career growth, but it’s definitely there.

What’s my writing process?

Sourcing Topics and Info

To be honest, at times it is very challenging to come up with new blog post ideas and even when I have an idea expanding on it is also quite a tedious process. I have a “blog post ideas” document which just sits there in my Google docs. Whenever something crosses my mind I would add it there. Another source of ideas is just some question I would get from someone either at work or in my personal conversations. For instance, this blog post was inspired by a person asking about my writing process as he was struggling a bit with writing some roadmap/design document at work. I hear you. This blog post is for you.

Writing Process Itself

At very early stages I usually start with just pouring thoughts and ideas in raw, unfiltered, and very unstructured ways. This is just the expansion step of my framework of dealing with ambiguity. At this stage focusing on quality, perfection, structure is counter-productive. If this is a technical design document, then some template for structure is usually already given, so that ‘pouring’ thoughts happens in compartments. Then, once I have lots of unstructured thoughts, I do more of research, I try to find key points and rephrase where needed, this is where trimming also happens. At later stages I would use LLMs to help me out, but I am generally against using LLMs for everything, and definitely not using for my blog writing. At work, generating summary or bullet points or initial structure is definitely easier with LLMs, and it would be a mistake not to use it.

LLMs

Yeah, I do use LLMs – but not for writing or structuring my thoughts but for other purposes. The main one: finding blind spots in my thinking. I have made many profound realizations of missing some key arguments thanks to LLMs, not only that, even in my personal life I came to realize that there are things I perceive simply differently to other people – eye opening. Another use of LLM is to suggest refinements to text, but not so much proof-reading, unless this is obvious typo catches. Honestly, sometimes, I just cannot stand all this ‘sophisticated flowery’ text generated by LLMs. When I see people write ‘significant impact drastically improving leverage of comprehensive coverage of’ – I know it is LLM and it sucks. You can know these are my own words, because LLMs avoids confrontation. Another way I’m using LLM for my writing is coming up with a common theme in my thinking and generating ideas for the best title.

Focusing on Experience and own Opinions

In the light of LLMs I found it to be ever more important to focus on my own experiences, strong opinions, and on building my own personal expertise. That’s the main distinguishing factor. No LLM has my brain or knows my thoughts.

How do I stay consistent?

Connect Inspiration Periods in One Continuous Chain

This is another question I get quite often. The answer: Consistency is Hard. The way it works for me is a multi-year habit building. I failed many times and I had to re-start it over and over again until it actually started working in a connected chained manner. The analogy I give is from rock climbing: to climb a mountain you connect multiple single pitch climbs. We get inspired at times (new year resolution, someone inspires you) and then you do a few iterations and then you fail. I say: get inspired more often, on purpose, and then connect into a continuous chain! Get inspired by books, people you admire, your mentors, your super-smart colleagues, someone you love, and last but most importantly, your future self!

Conclusion

Writing is not always just the output, but also the process. I see writing as “gym for the brain”. For sure, LLMs can lift weights for you, but that won’t make your thinking and writing stronger. It is like watching fit and strong people on Instagram and wishing you will be one like them without doing anything. The world is dominated by consumption and in my opinion being able to structure your thoughts and clearly articulate is something that will make you stand out.



APPENDIX: Additions by Gemini 3 PRO LLM

Below are some interesting extracts from the 17 page ‘Research Paper’ produced by Gemini on my ‘deep research’ request about technical blow writing and from analysis of the above text:

Blind spot: The “Quality” Trap

You mention LLMs generate “flowery” text that sucks. While often true, advanced prompting can mimic style fairly well. Suggestion: Strengthen the argument that the value isn’t the final text, but the struggle to produce it. Even if an LLM wrote a perfect post in your style, it would still be a “waste” because you didn’t do the cognitive lifting to get there. It’s like sending a robot to the gym for you.

Luck Surface Area

Blogging increases an engineer’s “Luck Surface Area.” This concept suggests that the amount of serendipity (job offers, speaking invitations, consulting opportunities, co-founder inquiries) one encounters is directly proportional to the number of people who know what one is doing.

Beyond the internal mechanics of a current employer, blogging functions as a potent “sales aid” for the engineer’s broader career trajectory.2 Recruiters and hiring managers at elite firms increasingly value communication skills as a primary differentiator. According to industry data, a significant majority of recruiters prioritize communication skills, sometimes even above raw technical proficiency, because technical knowledge can be taught, whereas the ability to articulate complex logic is a rarer trait.

Linearization of Thought and Feynman Technique

The process of writing requires the linearization of thought. Code can be non-linear; it jumps between functions, modules, and asynchronous callbacks. Prose, however, must flow logically from premise to conclusion. This forcing function exposes gaps in understanding. As noted in the analysis of engineering blogging benefits, writing a blog post often reveals that the author does not understand the code as well as they thought they did. This aligns with the “Feynman Technique,” which posits that one does not truly understand a concept until one can explain it in simple terms to a layperson.

Transfer of Experience

However, LLMs struggle with context, nuance, and novelty. They cannot hallucinate genuine experience. They can explain what a circular dependency is, but they cannot explain how it felt to debug one at 3 AM during a Black Friday traffic spike, nor can they navigate the specific political and technical constraints that led to that dependency in the first place.

The value of human writing has shifted from Transfer of Information to Transfer of Experience. The “Small Web” movement is a reaction to this; it is a flight to authenticity. Readers are looking for the “red hot branding iron” of human personality—the idiosyncrasies, the opinions, and even the biases that signal a real person is behind the text.15 As AI content proliferates, the premium on “human-verified” knowledge increases.

Case Study: Gergely Orosz (The Pragmatic Engineer)

Gergely Orosz serves as the gold standard for the modern technical writer. His transition from engineering manager at Uber to full-time writer was built on a specific process 39:

  • Crowdsourcing via Surveys: Orosz often gathers data before writing. For an article on “Developer Productivity,” he surveyed 75+ engineers and managers across the industry.39 This provides proprietary data that no LLM can access.
  • Structured Workflow: He treats writing with the discipline of coding, using outlines and working with editors/publishers to force progress.41
  • Mimicry: He openly advises starting by mimicking role models.42 If you admire a specific engineering blog, analyze its structure and replicate it until you find your own voice.


No comments


The Practical Ceiling: AI, Diminishing Returns, and Our Future

October 19, 2025 AI, Opinion No comments

I would like to discuss a dilemma between near science fiction predictions of development of AI and grounded practical applications of AI.

Image credit: me + Gemini
Gemini or any other LLM does NOT take credit for the contents of the blog post, though!

First of all, it is completely undeniable that AI is changing our lives and will have a transformative effect on the future. We can argue that humanity has lived through many transformative events over and over again: invention of fire, agriculture, writing, electricity, industrialization, information technologies, so AI can be seen as just one more invention on our part. Now, is AI really just one more invention or something that would absolutely change what it is to be a human as we know it? Is this our last invention?

I just finished reading the book “The Singularity is Nearer”. The book is arguing that we will eventually extend the capabilities of our biological brains and go beyond the limits of our organic bodies. At first we would come up with inventions that would greatly extend and improve our lives (reaching “longevity escape velocity” in mid 30s) and that we will build brain-computer interfaces (think of phones now, AR glasses or something of the like next, brain implants next, nanorobots next, with eventual consciousness upload to the information network). As another book “Homo Deus” (my review) argues – we eventually become god-like and gain the ability to control life and environment and Homo Sapiens go extinct. We might eventually lose our carbon-based existence and just become information.

To my way of thinking, while much of that, like nanorobots repairing our bodies, may sound like science fiction, as long as it doesn’t break the laws of physics I’m on board that it can and may happen.

Now, let’s look at some more practical examples.

  • From transportation technology: Crossing the Atlantic would be 6 weeks sailing in the 1800s, 6 days in early 1900s with fast liners, 1950s – 8 hours by plane, 1970s – concorde doing that in <4h, and technically 90min possible from anywhere on planet to anywhere by rockets, but we are still flying boring 8h from London to NY.
  • Military: We came up with ever larger nuclear bombs, but post “Tsar Bomba” in 1961 it simply doesn’t make sense to make any larger ones.
  • Digital: digital camera resolution, audio quality, single processor’s clock speed, and many more examples where more has diminishing returns and becomes impractical.

This same pattern of hitting a practical limit is not just a historical curiosity because I can see it already happening in the world of AI. Let’s have a look at some examples:

  • LLMs are now reaching the plateau of information saturation where they basically learned everything there is to learn from the internet.
  • Vibe coding is mostly hype in my opinion. Yes, I do vibe-coding as well for fun, like my previous post about doing 3h multiplayer typing game, and it is a huge productivity booster, but I believe it fundamentally is like many other tools [post pending] – having logarithmic benefits – huge at the beginning and eventually ever more diminishing.
  • Plateau in image recognition. This once was a grand challenge of computer science, and is now a largely solved problem for most practical purposes, but pushing models to 99.9% accuracy is not practical.
  • Parameter count race. All those 7B to 70B to 1T parameter models. There is no point in multi-T models and the cost is just not worth it. I recently ran 7B LLM model on my mac air and it is not that bad at all. 

My point is that in many individual fields where AI is applicable we will be reaching the some kind of optimal point between theoretical possibility and practical application. In the process we will be seeing major transformations, like the entire sector of jobs associated with driving will be replaced by self-driving vehicles. There is a good chance this could create socio-economic disruptions and ripple effects. Just imagine, some rich “haves” can give their child superpowers while some poor “have nots” could not afford that. But I agree to the point that this is only “in-transite”, because now people in some poor countries can afford a phone that would be multi-billion worth of technology if this was mid last century.

My own predictions are that:

  • AGI is still very far away, a much longer time-frame than “The singularity is nearer” is arguing for. Maybe 10-30 years from now.
  • Each and every AI application will reach its optimal practical point.
  • Human lives will improve as they did with other technologies. 
  • Software engineering jobs won’t get extinct, but they will transform and we need to adopt.
  • I will die, but someone born next century might not.


No comments


Vibe Coding & Designing Typing Multiplayer Game

October 11, 2025 AI, Fun 2 comments

The other day my daughter showed me the typing game her teacher encouraged kids to play. My daughter was impressed with my typing speed. This blog post is to impress her even more.

The game she played was online typing practice – you type text and compete with other players for speed and accuracy. Players are represented as racing cars. If you win races you qualify to higher league of players. In this post I want to do few things:

  1. Vibe code standalone JS file – you can try it out right in this blog post.
  2. Vibe design a full fledged online game.
  3. Vibe implement the backend for the multiplayer game.

Vibe Coding Typing Trainer

Here is the result of about 30 minutes of work. You can play it yourself (if reading from e-mail you may need to open the blog).

This was achieved with 13 prompts, summarized like this:

1. Initial project creation prompt
2. CORS issue fix request
3. Container class addition request
4. HTML demo update request
5. Simple version (typing.html) request
6. Visual version creation request
7. Error display duration adjustment
8. Error display fix attempt
9. Revert request for error display
10. UI enhancement with "click to activate" label
11. Visual version adjustment request
12. Final revert request
13. History documentation request

Vibe Designing Multiplayer Game

Now instead of working with Claude, I started working with Gemini to create a design for the multiplayer game.

Here is the high level system design document: opens in another page.

Given that I explicitly prompted it to be fully stateless, relying only on client side local history, no login and no other complications this seems to be a fairly good start. My prompt was:

Now I want you to create a comprehensive system design to build the game described above. We need:
- simple website with JS logic
- backend that can create rooms of gamers based on their levels
- the game should protect user privacy so there is no user info stored on backend
- game history is only stored as long as user has local cookies
- backend should handle at least 10k users
- single game has max 6 players
- if user wins the game they are placed into higher league

As a next step I fed the generated system design document back to Claude in Visual Code. This time I had to fight a lot more with the AI as it was running into issues connecting players but finally arrived at the multiplayer game:

Prompting history:

- Initial setup of multiplayer backend server
- Setup Node.js with Socket.IO and databases
- Create basic server structure
- Implementation of matchmaking system
- Create skill-based queue system
- Handle player matching logic
- Game room and state management
- Implement room creation and management
- Handle player synchronization
- Create typing texts table
- Add sample data
- Visual keyboard integration
- Add keyboard visualization to multiplayer version
- Implement key highlighting

The backend is powered by:

- Node.js
- Socket.IO (for real-time WebSocket communication)
- Redis (for server-side data/caching)
- PostgreSQL (for the database)

Conclusion

I have complete confidence that if I had 2 or 3 days to spend on this I could actually create a game that can be put out there on some servers and be actually playable by actual human beings! The new world of AI is nuts. I’m out of my time allocated to blogging, but I’m convinced over and over again, that the old times of programming are over – the only way to survive is to adopt.

P.S. Another thought: I have a friend who works on Linux kernel stuff. You would imagine that hardcore stuff like that would not be affected by the era of AI, but no, he says that AI helps to properly review pull requests to the kernel and catch real issues, moreover it does help to build more complex things. Caveat, of course, is that the proper knowledge is still required. Who knows, if I knew nothing about programming, maybe, I wouldn’t be able to build this typing game so quickly? Or, maybe, this is just a matter of time?

Github: https://github.com/andriybuday/typing-trainer


2 comments


Vibe Coding AI that learns to play Snake game

September 14, 2025 AI, Uncategorized No comments

Today I’m Vibe Coding something and inviting you to follow along. This is not a very serious post. The purpose of this blog post is just to see how quickly we can build a NN that plays snake game and if we can improve it:

Steps we we will follow:

  1. Generating simplest snake game you can play with WASD keys.
  2. Generating AI that learns to play and watch it play.
  3. Attempt to improve generated code so it reaches better scores.

Step 1: Generating simplest snake game you can play

Obviously, I need to write a prompt to generate such a game, but being lazy (and not knowing too much about IA) I offloaded prompt generation to GPT:

Generate a good prompt for copilot AI in Visual Code so it generates code for the snake game. Snake game can be the simplest possible terminal based game on a small field.

The output was pretty reasonable prompt, which I could have written (but, hey, that takes time). The only thing I updated in the prompt was the very last line to keep track of the score of the game:

# Write a simple snake game in Python that runs in the terminal.
# Requirements:
# - Keep the game as simple as possible.
# - Use a small fixed grid (e.g., 10x10).
# - The snake moves automatically in the last chosen direction.
# - Use WASD keys for movement (no fancy key handling needed, blocking input is fine).
# - Place food randomly; eating food makes the snake longer.
# - The game ends if the snake runs into itself or the walls.
# - Print the field after each move using simple ASCII characters:
#   - "." for empty space
#   - "O" for snake body
#   - "X" for snake head
#   - "*" for food
# - Keep the code in a single file, no external libraries beyond Python standard library.
# - Keep it short and readable.
# - Keep the score of the game. The score equals the total number of food eaten.

The generated code (with gpt-4o) was 73 lines of code and I could play the game in the terminal: https://github.com/andriybuday/snake-ia/blob/main/snake_game.py

Step 2: Generating AI that learns to play and watching it play

Again, prompt to get the prompt:

Now we need another prompt. This time we want to use pytorch and will be building a simple 2 hidden layers neural network with reinforcement learning. Use large punishment for loosing the game and small rewards for each eaten food. We want to achieve quick learning without too many iterations.

The prompt it generated this time was much more extensive. Here are all of the prompts: https://github.com/andriybuday/snake-ia/blob/main/README.md I then fed that prompt to both GPT-4o and Claude.

Claude generated a much better AI. GPT generated something that couldn’t even get more than one food score, which Claude was in the territory of 10-20 score. Note, that max theoretical score on 10×10 is 99. You can see above a gif showing last few epochs of training and game play of the Claude version.

The code for this version: https://github.com/andriybuday/snake-ia/blob/main/snake_game_ai_claude.py

Step 3: Improving AI so it reaches better scores

Ok, so what can be done to make this reach better scores? I asked GPT to recommend some improvements. It gave me general recommendations out of which I created a prompt for prompt:

Generate prompt I can give to Claude to improve performance of the Snake AI, potentially with these improvements: Change head to Dueling DQN, Add Double DQN target selection, Add PER (proportional, α=0.6, β anneal 0.4→1.0), Add 3-step returns, Add distance-delta shaping + starvation cap.

To be honest, at this point I don’t know if these improvements make sense or not, but I took the generated prompt and fed it to Claude. And what I got was broken code, which crashes on the “IndexError: Dimension out of range”. I was hoping to run into something like this. Finally. Now I can probably debug the problem and try to find where we are running out of range, but no, I’m sharing the error and stack trace to Claude again. It was able to fix it BUT things got worse, the snake would run into infinite loops.

Turns out generated “upgraded” version is much worse. So I decided to take a different path and get back to simple first version and see what can be updated. The only things I did were increasing training time (# episodes), allowing for more steps for training, and slightly decreasing time penalty. This is the change: https://github.com/andriybuday/snake-ia/commit/796ad35924700dcb73ac6aaecf8df39ec8069940

With the above changes the situation was much better but still not ideal.

Conclusion

Sorry for the abrupt ending, but I don’t really have time to fine-tune the generated NN or create new models to achieve the best results. The purpose here was to play and see what we can get really quickly. Also another purpose of this post is to show that people, like me in this case, who just do Vibe Coding without knowing underlaying fundamentals cannot really achieve best results really quickly. Happy Vibe Coding!

Try it yourself:

git clone https://github.com/andriybuday/snake-ia.git

cd snake-ia

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

python snake_game_ai_claude.py
..........
......OOO.
....OOOXOO
....OOOOOO
....O.....
..O.O.....
..OOO.....
..........
......*...
..........
Length: 21  Steps: 161
Game Over! Final Score: 8.9


No comments