Ben Cao
Notes on software, building products and whatever else is on my mind.
// Posts · 13
Fire Emblem Collection: Painted Remasters of the First Two Fire Emblems, in a Phone Browser
Ten days, 208 commits: a tactics RPG framework that plays Shadow Dragon (25 chapters) and Gaiden (54 chapters) on a phone, with AI-painted art held to a standard that's enforced in code and a $20 budget per title.
FC Tank in 2026: Friends Play, a Global Leaderboard, and an AI-Guided NIGHTMARE Mode
My 2013 Battle City clone came back with online co-op over WebRTC, a global leaderboard, and a NIGHTMARE difficulty where TypeSafe's Jev picks each enemy tank's objective every two seconds.
From Manual to Minutes: 4 Decisions That Built a Production AI Order System in 90 Days
We automated a workflow that was costing us hours every day. It took 90 days. Here are the four decisions that made or broke the project.
Dashflow —automate local development tasks
Local development has become fragmented across terminals, watchers, linters and test runners. Dashflow is a command line job runner that automates those workflows from one YAML file, with web dashboards and an interactive shell.
A comparison between Gitlab CI and Concourse CI
After migrating repositories from Gitlab to Github, and their CI from Gitlab CI to Concourse CI, here are my takeaways on two completely different CI systems.
Step by step: building a modern CLI app with animation, autocompletion and binary distribution
A walkthrough of modern techniques for building an attractive CLI app, with a concrete example: a command line clock with colors, options, autocompletion and single-binary distribution.
Scalable Integration Testing Method
A method that unifies one-subsystem and cross-subsystem integration testing with the same components and standards, costing only a portion of traditional methods.
You don’t need Babel
Think twice before adding any complexities to your project. How dropping Babel from two Node.js projects removed the build step without losing the features I relied on.
Way to speed up rails apps
Performance is always a bottleneck for rails apps. Calls and delegations are db operations under the hood, so it’s better to equip ourselves with some swiss army knife: profiling, caching, better algorithms and GC tuning.
Some thoughts about coding
While browsing code these days, reading some wonderful pieces and some awful lines, some thoughts came into my mind.
How to dockerize existing ruby on rails applications
If you’re like us, having an existing ruby on rails project and want to somehow run it inside a docker container so we can get those great benefits from the Docker ecosystem, this article may help.
Game development in HTML5 canvas and CoffeeScript
In the past a few months, I’ve tried to rebuild the classical FC tank game in CoffeeScript.
How to build a ruby gem
Recent days I just wrote an active record extension to make cache optimization easier for company. I realized it’s a useful tool and publish it as a gem might be a good idea, so I started writing the gem acts_as_method_cacheable.