Main Blog Lists CV Tags Contact
  • Introducing Hugo Flow 20 May, 2026
  • CMS for Hugo 30 Apr, 2026
  • Daily Podcasts From Bookmarks 12 Apr, 2026
  • Investment Resource 24 Mar, 2026
  • Stream ID error in Go 23 Feb, 2026
  • Closing Response body in Go is not enough 04 Nov, 2025
  • String operation are not atomic in Go 22 Oct, 2025
  • Making errors.Is Simpler with Sentinels 20 Aug, 2025
  • Publishing Pensive as Open Source 18 Aug, 2025
  • If You Wear Glasses, You Need a Second Pair for Reading 17 Aug, 2025
  • Introducing Pensive: Building a Searchable Memory for the Web 10 Aug, 2025
  • Switching from Cursor to Claude CLI 27 Jul, 2025
  • Documentation for the age of AI 18 Jul, 2025
  • Content Scripts Not Loading for JSON Pages in Firefox 13 May, 2025
  • Summary of OAuth 2.0 and Bearer Token Usage 02 Feb, 2025
  • Build Tailwind v4 locally with Docker 01 Feb, 2025
  • A minimal docker file for creating small Go images 11 Jan, 2025
  • Exploring Sentinel, Custom and Client-Facing Errors in Go 05 Sep, 2024
  • NeoVim as IDE for TypeScript 05 Feb, 2023
  • Generate randoms, more than numbers 08 Mar, 2022
  • Recursive asynchronous function call 20 Jul, 2021
  • SQL and Asking Questions 27 Oct, 2020
  • How to write your first Firefox add-on? 28 Jul, 2019
  • Trie implementation as Redis module 07 Jun, 2019
  • Essential skills that we didn't learn in university 28 Sep, 2014
  • Path Navigator 02 Apr, 2014
  • Editing Code whilst preserving its formatting 14 Mar, 2014
  • What Wrong With RSS Readers 11 Mar, 2014
  • Binary Operator Expressions 11 Mar, 2014
  • Recursive problems: Set partitioning 07 Nov, 2013
  • PrettyPrint C# codes via NRefactory 27 Sep, 2013
  • NRefactory: Front-end parser for C# 22 Sep, 2013
  • Practitioner 10 Aug, 2013
  • O brave new world 04 Aug, 2013
  • Scheme REPL 18 Jul, 2013
  • Structure and Interpretation of Computer Programs, SICP 18 Jul, 2013
  • Prolog: How to implement if-then structure 13 Aug, 2012
  • BashTertainment 08 Aug, 2012
  • A simple scheduler in Python 27 Jul, 2012
  • Concurrency problems 10 Jun, 2012
  • An introduction to Virtual Memory 10 Jun, 2012
  • Socket Programming in C 29 Jan, 2012
  • P2P in Python 29 Jan, 2012
GitHub X LinkedIn