-
PWA Offline Architecture: Lessons from Building CarerNotes
A technical deep-dive into building a production-ready Progressive Web App with offline-first architecture
-
Why I Chose Ruby to Build a Roguelike Game
I’m not a game developer. Not by training, anyway. I spend most of my days building web applications, APIs, and the occasional data pipeline. So when I decided to build a roguelike game – you know, those dungeon crawlers with ASCII graphics and procedurally generated mazes – choosing Ruby felt...
-
Optimizing Procedural Generation: When Speed Matters
Procedural generation can be expensive, especially for large grids or when generating during gameplay. This article explores performance considerations and optimization strategies for procedural generation in roguelike games.
-
Testing Procedural Generation: How to Test Randomness
Testing procedural generation is challenging because it’s inherently non-deterministic. How do you test code that produces different results every time? This article explores strategies for testing procedural generation systems effectively.
-
Why Your AI Needs Structure: Building a Machine-Readable System
I’ve been thinking a lot lately about what it means to have an AI system that truly works as an extension of yourself – not just a tool you use occasionally, but something that understands your context, your way of working, and can pick up where you left off.
-
Procedural Item Placement: Balancing Loot Distribution
Placing items procedurally in roguelike games is more complex than it seems. Items need to be accessible, fairly distributed, and balanced for difficulty. This article explores strategies for procedural item placement that create engaging gameplay without manual level design.
-
Event-Driven Architecture for Game Debugging
Event-driven architecture is a powerful pattern for game development that provides decoupling, comprehensive logging, and powerful debugging capabilities. This article explores how to implement an event system and use it to transform game debugging from guesswork into systematic analysis.
-
Monster AI: Simple Pathfinding That Feels Smart
Creating engaging monster AI in roguelikes doesn’t require complex behavior trees or state machines. Simple pathfinding techniques can create monsters that feel intelligent and challenging without being frustrating. This article explores how to implement effective monster AI using basic pathfinding.
-
Implementing Dijkstra's Algorithm for Game Pathfinding
Dijkstra’s algorithm is a fundamental pathfinding algorithm that finds the shortest path between points in a graph. For roguelike games, it’s perfect for grid-based movement, distance calculations, and AI pathfinding. This article explores a practical implementation of Dijkstra’s algorithm specifically for roguelike game development.
-
Why That Nagging Feeling Is Right: What I Learned Building with AI
When “Done” Doesn’t Feel Right
-
Seeding for Reproducibility: Debugging Procedural Generation
One of the most powerful features of procedural generation is the ability to reproduce the same content using a seed. This capability transforms debugging from a frustrating exercise in randomness into a systematic process. This article explores how to implement seeding effectively and use it for debugging, testing, and player...
-
Finding the Longest Path: A Key to Better Level Design
In roguelike game development, placing objectives at the right distance from the player is crucial for creating engaging gameplay. Too close, and the level feels trivial. Too far, and it becomes frustrating. The longest path algorithm provides a mathematical way to find optimal placement locations and measure maze complexity.
-
Ensuring Player Accessibility in Procedurally Generated Levels
When building a roguelike game, one of the most critical challenges is ensuring that procedurally generated levels are playable. The player must always be able to reach critical objectives—like stairs to the next level, important items, or quest objectives. This article explores how to guarantee accessibility using pathfinding algorithms and...
-
How To Work Better
Do one thing at a time. Know the problem. Learn to listen. Learn to ask questions. Distinguish sense from nonsense. Accept change as inevitable. Admit mistakes. Say it simple. Be calm. Smile.
-
Building Vanilla Roguelike: A Journey Through Algorithms, Architecture, and Passion
What does it take to build a roguelike game from scratch? Not with a game engine, not with external libraries, but with pure Ruby—just you, the language, and a terminal. That’s the challenge I set for myself in April 2020, and over the next five years, this passion project would...
-
From Monolith to Three-Layer Architecture: A Journey of Architectural Evolution
From Monolith to Three-Layer Architecture: A Journey of Architectural Evolution
-
Building a Scalable Microblog with Ruby on Rails: From Zero to Production-Ready
🚀 Building a Scalable Microblog: From Zero to Production-Ready
-
You can use slack with irssi
As you may know, Slack has been adopted by a considerable amount of companies and groups of people to keep in touch with each other.
-
Use Rspec bisect
Have you ever debugged code by commenting out half of it and seeing if the error still occurs, and if not, then trying the other half? And then half again of the problematic section? And so on… Then you’ve done a binary search.
-
Building a cache mechanism
A few days ago I implemented a Cache mechanism in ruby, initially I was about to use Redis, it allows you to create keys with values and also set an expiration time.
-
How DNS works?
Before we dive into DNS I would like to start with some background to what generated the Internet as we know it today.
-
Improve your attention to detail
Nowadays Front End Software Engineers face several challenges, they have to tackle the considerable amount of different devices with different screen sizes and resolutions, even though there’s plenty of CSS frameworks out there to ease this problem, you still need to know your way around. You need to pay attention...
-
Setup a Raspiberry Pi to mine cryptocurrency
I’ve been mining since May 2015, with 3 Rockminer R-BOX giving a total of 300Gh/s, although it sounds like a lot of speed, I wouldn’t recommend you to mine Bitcoins as that requires much more hash rate to be processed, and you will be spending more money in electricity than...
-
How to protect your credentials on Gemfile.lock
As you might know, it isn’t a good idea to store any kind of credentials under your VCS (like git).
-
Mixpanel - How to deal with external services
I’ve been using Mixpanel for two weeks now.
-
Welcome to 2015!
Happy New Year 2015!
-
Handmade Hero on OSX
I’ve been following Handmade Hero basically since the beginning, although I know myself too well to start watching the videos straight away, it’s like watching a TV-Show and when the episode ends you just want to jump to the next one! I simply can’t wait! So I gave it time...
-
Welcome!
I used to blog on tumblr, but definitely is not the best place to blog technical stuff.