Journey

From BASIC to AI agents

Every five years or so I relearned the craft: Pascal, C++ and OpenGL, Unity, Solidity, TypeScript, and now AI-orchestrated delivery. Here is what I built along the way.

  1. 1994+ BASIC, Pascal & olympiads
  2. 1994

    First programs in BASIC

    Started programming in BASIC on a Soviet BK-0010 home computer.

    BASICBK-0010
  3. 1996

    Pascal

    Moved to Pascal — the language of every olympiad and my first real games.

    Pascal
  4. 1997

    Super Amik

    Designed a platformer on paper, level by level in a school notebook: game design before there was a machine to build it on.

    Paper
  5. 1998

    Tank — my first finished product

    My first big program taken from idea to a finished game: a tank battle in Pascal, drawn in text mode on an 80×50 grid, with levels, weapons, a menu and a title screen. About a thousand lines, grown from March to May 1998 through version 1.60; that autumn followed Tank 2 with graphics.

    Turbo PascalText mode
  6. 1999

    Space War

    My first good game: two ships in a duel, rotation by sine and cosine worked out on my own, ships that deform on ramming, a vector ship editor, a dozen weapons, missions and my own BMP/WAV loaders.

    PascalBGIVector graphics
  7. 1998–2001

    DiVision games

    More self-made games, among them Capture or Destroy.

    PascalFree PascalDelphi
  8. 2000

    Lamer-Killer: 3D with no engine

    A top-down shooter with a classmate that turned into my own software 3D renderer — no engine, no GPU, every pixel computed on the CPU with a projection formula I derived myself, years before I knew how Doom did it. The level editor stored the map as a walkability grid, and an optimiser merged long walls into single polygons.

    PascalSoftware rendering
  9. 2000

    Space War 2K: one engine, three games

    Inspired by how Half-Life mods worked, I built one engine and one executable that ran three different games — ship dogfights, top-down tanks in the spirit of GTA, and a Worms-like artillery game — just by swapping resource folders and config rules. The main menu played a video rendered in 3ds Max, through my own delta-frame format and BMP loader, in Pascal, which had no video support at all.

    PascalEngineVideo codec
  10. 2001

    Doom RF

    Made in two weeks as a birthday present for a classmate, then polished for a year: 4 players on one computer plus 8 waypoint bots, a level editor, and a bank-switching trick to draw 640×480 past the 64 KB video window. In 2026 ported to 64-bit and SDL2, with sound, as a proper release.

    Borland PascalFree PascalSDL2
    Doom RF
  11. 2002

    IOI gold medal

    From algorithm books and the Progmeistars sponsored elite group to 2nd place at the Latvian olympiad and the Baltic olympiad, then gold at the International Olympiad in Informatics in Yongin, Korea — 18th place overall, one of 23 gold medals (listed as Andrejs Ivanovs, Latvia).

    AlgorithmsPascal
  12. 2002–2006

    ACM ICPC

    Five seasons of the ACM International Collegiate Programming Contest for the University of Latvia. 2002: best team in the Baltic States at the Northeastern Europe regional. 2003: winner of the 12th Tournament of Computer Programs (as Andrey Ivanov).

    AlgorithmsC++
  13. 2002

    Maps, demos and F(x)

    Half-Life / Counter-Strike maps, small programs that render pretty graphics, and F(x) — a function plotter with zoom and scroll, written in Delphi.

    Delphi
  14. 2002–2011

    Teaching at Progmeistars

    Nine years teaching programming to groups of students at Latvia’s largest children’s programming school; built a new curriculum.

  15. 2003

    My own PHP course

    Wrote my own web-programming course in PHP for Progmeistars and taught it; built an IRC proxy and a testing suite for programming contests; ran the school’s Linux servers.

    PHPMySQLLinux
  16. 2004+ C++, OpenGL & own engines
  17. 2004

    C++ and OpenGL: Chess 3D

    Moved to C++ (the STL made olympiad work far easier) and to full 3D. First commissioned project: a 3D chess game with bump mapping and reflection maps.

    C++OpenGL
  18. 2004–2006

    Physics 2D

    Coursework that became a bachelor’s thesis: an own physics engine and a full game on top of it, inspired by Elasto Mania and Half-Life 2.

    C++
  19. 2005

    Xray

    Commissioned demo on my engine: X-rays passing through a semi-transparent bone.

    C++OpenGL
  20. 2005–2018

    muo.lv

    A private MuOnline server I co-founded and programmed: 300–400 players online within weeks of the 2006 launch. I built everything around the game — a PHP site with a player market, rankings, auctions, item trade and quests, SMS payments, a credit economy, a VIP server, public ban lists — plus my own anti-cheat, server tunnel, launcher and auto-updater, and a bot that ran in-game events.

    PHPSQL
  21. 2006

    Steel Engine

    An own C++ engine: scenes defined in config, prefabs with overridable parameters — the idea Unity later made mainstream — plus graphics and simple physics. Source is public.

    C++OpenGL
    Steel Engine
  22. 2006–2012

    whiteCryption

    Software architect for white-box cryptography and code protection (RSA, ECC, SHA, AES). Designed the v5 architecture, still in production ~15 years later, now inside Zimperium.

    C++Cryptography
  23. 2008

    Labyrinth

    Master’s thesis: a multiplayer race through a maze on Steel Engine. Own network protocol, graphics and sound — everything built from scratch.

    C++OpenGLNetworking
    Labyrinth
  24. 2010+ Unity & a 35-person studio
  25. 2011

    Unity: Bastions

    First Unity game: two towers, build yours and shell the opponent’s with cannons. Planned as multiplayer.

    UnityC#
  26. 2011

    Nunnery

    A one-day hackathon in London: a platformer about a jumping nun, built on a friend’s engine that also powered his console games for Sony.

  27. 2012

    MyCountry at innoWate

    Two months at a Game Insight studio on MyCountry, a city builder with 5M+ installs on Google Play: bug fixes and bringing back old mechanics.

    C++Mobile
  28. 2012–2018

    MadSword →

    Co-founded a game studio and grew it to 35 people. Started Steam Defense at a kitchen table, raised an investor, then moved to contract games for publishers: one reusable Unity engine with a level editor and shared server shipped 100+ titles and reskins and thousands of levels. 160+ games and 20M+ downloads in total, largely through a Dutch publisher. VR titles too.

    UnityC#Java
    MadSword
  29. 2013

    Global Game Jam: Tankraft

    A networked multiplayer tank battle built in one weekend with a teammate: own server or a dedicated one, two weapons, physics-driven tanks. Shipped for Windows, macOS, Linux and the browser.

    UnityC#Networking
    Global Game Jam: Tankraft
  30. 2013

    Steam Defense launch

    MadSword’s first own release, on Kongregate, VK and Odnoklassniki: own scenario scripting, skirmish and PvP AI, and BotWars — a night-long stress test of tens of thousands of units that made the game crash-free in three weeks.

    UnityC#Networking
    Steam Defense launch
  31. 2015–2020

    Zebrainy

    Co-owner and technical director of an educational games company for young children.

    Unity
  32. 2017+ Web3 & real-time platforms
  33. 2017

    Decrypted Kitties

    A CryptoKitties-style game built in about a week and published on Google Play — the first step into crypto games.

    Unity
  34. 2017–2021

    Blockchain Cuties →

    Wrote Ethereum contracts for others, then co-founded Cuties and launched it in four months (April 2018), before ERC-721 was final. Characters and breeding on-chain, items and battles on the server with one-time signatures verified by contracts. Ethereum, then EOS, TRON, NEO and Polygon — a multi-chain design later extended to 7. #1 on DappRadar; 2021: governance token contracts and IDO.

    SolidityNode.jsEOSTRON
    Blockchain CutiesBlockchain Cuties
  35. 2020–2024

    Dice Chess →

    Real-time chess with a dice variant, owned from idea to launch: spec, architecture, own test system for chess positions; load-tested for 20,000 concurrent players.

    JavaVueTypeScriptMicroservices
    Dice Chess
  36. 2021–

    Roach Racing Club →

    Web3 racing game from scratch: smart contracts, tokenomics, a custom WebGL engine for live races and a biological race simulation.

    SolidityThree.jsTypeScript
    Roach Racing Club
  37. 2022–

    Fractional CTO

    Technical partner to founders: fixed-scope builds, architecture reviews and due diligence.

  38. 2025+ AI-orchestrated delivery
  39. 2026

    TaleCheck →

    Static analysis for fiction, built solo with Claude Code and parallel agents: ~2,300 commits in under three months, live with paid users.

    TypeScriptNestJSClaude CodeAnthropic API
    TaleCheckTaleCheck