About me

Ng Ho Hin

High school technologist obsessed with graceful algorithms, bold design, and performance computing. I build systems that feel crisp, human, and a little bit magical.

From chess engines to thoughtful interfaces, I prototype fast, iterate often, and write about the learnings in public. Currently focused on making algorithm-powered chess analysis accessible and building recommendation systems that understand player style.

Project Spotlight

Piperlove Chess Engine

Piperlove is a self-built chess engine tuned for positional understanding and tactical precision. The engine is optimized for PyPy, leverages modern bitboards for lightning-fast move generation, and features a REST-based API that lets you request evaluations, candidate moves, and live analysis.

  • Search Depth: 8 plies standard / experimental 10-12 ply rollout
  • API Support: FEN, SAN notation, move lists, evaluation trends
  • Performance: Sub-400ms response time with intelligent caching
  • Features: Opening book, endgame tablebase integration, multi-threading

Live API preview

Send a POST request to https://wwwtriplew.me/api/piperlove/play with a JSON body containing the following parameters:

  • fen (string, required): The FEN string representing the chess position.
  • depth (integer, required): The search depth for the engine.
Example request body:
{
  "fen": "r1bq1rk1/ppp2ppp/2np1n2/2b1p3/2B1P3/2NP1N2/PPP2PPP/R1BQ1RK1 w - - 0 1",
  "depth": 8
}
Example response:
{
  "bestMove": "e2e4",
  "score": 0.23,
  "pv": ["e2e4", "e7e5", "g1f3"]
}
  • bestMove (string): The best move in UCI format.
  • score (number): Evaluation score from White's perspective (positive = White is better).
  • pv (array of strings, optional): Principal variation (best line found).

What's Next

Future Plans & Roadmap

I'm constantly pushing the boundaries of what Piperlove can do. Here's what's on the horizon as I continue to blend classical chess algorithms with modern machine learning techniques.

🧠 NNUE Integration

Efficiently Updatable Neural Networks (NNUE) will bring neural network-based evaluation to Piperlove. By training on millions of positions, NNUE can provide lightning-fast, superhuman-level position assessment while maintaining the explainability of traditional engines.

Goal: Boost evaluation accuracy by 200+ ELO points while keeping inference under 50ms.

🎯 Smart Recommendation System

Building a personalized chess training assistant that analyzes your playing style, identifies weaknesses, and recommends tailored puzzle sets, opening repertoires, and study positions. Using collaborative filtering and pattern recognition to create a truly adaptive learning experience.

Goal: Help players improve faster with AI-curated, style-specific training plans.

About Me

I'm a student developer passionate about the intersection of AI, algorithms, and user experience. When I'm not coding, you'll find me analyzing chess games, reading about neural architectures, or experimenting with new technologies. Always open to collaboration, feedback, and interesting discussions.