Author: Waleed Hakim is a Sr. Anaplan consultant.
Hi everyone!
I’m Waleed — a Senior Consultant working with enterprise clients to transform their planning processes through Anaplan. I've been in the Anaplan ecosystem for just under four years now, and while most of my time is spent solving complex business problems, I’ve always been drawn to Anaplan for something beyond that: its raw modeling potential.
I’ve always had a passion for puzzles and problem solving — it’s what keeps me excited in my daily role as a solution architect. Lately, I also found myself getting increasingly hooked on chess. One lazy weekend, a wild thought occurred to me: Would it be possible to build a functioning chess game on Anaplan?
Most would probably laugh off the idea — Anaplan is, after all, an enterprise planning platform. But to me, that was exactly why the challenge felt worthwhile. What followed was a two-week mini-journey of late-night builds and weekend sprints, ultimately resulting in something I genuinely didn’t think was possible at the outset: a fully playable chess game built entirely in Anaplan.
Below I outline an overview of the project, and then you’ll find the ‘How I Built It’ video.
The challenge
As you might expect, the biggest technical challenge was the lack of native loop structures in Anaplan. Traditional programming languages have FOR or WHILE loops — but in Anaplan, we don’t. This was particularly crucial because chess pieces need a "vision vector" to determine valid moves, check threats, and movement rules based on direction and distance.
I knew that without this logic, the whole build would fall apart.
The breakthrough came when I realized I could simulate vector logic using Time ranges combined with NEXT() and PREVIOUS() — essentially allowing me to mimic loop-based behavior within Anaplan’s calculation engine. That was my “aha” moment. Once that clicked, the rest of the model started to take shape.
Creative repurposing
I leaned heavily into Anaplan’s modeling tools in unorthodox ways:
- NEXT/PREVIOUS for loop logic to simulate vectors and check directions for pieces.
- Dynamic Cell Access (DCA) to restrict users from placing pieces on invalid squares.
- Conditional Formatting to create the checkered board, support multiple themes, and dynamically highlight valid move options.
- Image URLs to display actual chess pieces — a feature I had never used before.
- Smart Boolean logic that validated a move only when it was legal or a check was defended.
All of this came together into a playable experience that includes castling, en-passant, and even rules that prevent illegal moves when in check. There’s no explicit “checkmate” message yet — but the logic prevents further play until a check is resolved, so it’s functionally accurate.
What I learned
Besides picking up a few new tricks like embedding images in Anaplan and working with UX in unconventional ways, this project taught me something more important: that when you combine a love for problem solving with a willingness to experiment, you can stretch the platform far beyond what even you thought was possible.
This wasn’t just a personal project. It was a reminder of how creative thinking and Anaplan’s flexibility can lead to surprising results — whether you’re solving supply chain issues or just trying to make a knight jump over pawns.
I hope this story encourages others to stretch their imagination with Anaplan, whether for business or fun.
Check out the video!
Best regards,
Waleed Hakim
Check out all the 'How I Built It' tutorials here.