<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    
    <title>Henry's Blog</title>
    
    
    <link>https://www.henrypan.com/blog</link>
    <atom:link href="https://www.henrypan.com/blog/feed.xml" rel="self" type="application/rss+xml" />
    
    
      <item>
        <title>Harness Training</title>
        <description>
          
          Project Repository: https://github.com/workofart/harness-training So I recently wanted to see whether an AI agent could self-improve a harness to solve terminal bench tasks. To align on the definitions, “harness” means the system (e.g. Claude Code, Codex, ChatGPT web interface etc…) wrapping around the model (e.g. GPT-5.5, Claude Opus 4.7 etc…) that...
        </description>
        <pubDate>Sat, 18 Jul 2026 23:55:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2026-07-18-harness-training/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2026-07-18-harness-training/</guid>
      </item>
    
      <item>
        <title>What 1,000+ Harness Experiments Taught Me About Self-Improving Agents</title>
        <description>
          
          Project Repository: https://github.com/workofart/harness-experiment Update (July 2026): The follow-up, Training Self-Improving AI Agent Harnesses, turns these lessons into a deterministic training framework that allows for model-agnostic and task-environment-agnostic capability improvements. So I recently wanted to see whether an AI agent could self-improve a harness to solve terminal bench tasks. To align...
        </description>
        <pubDate>Mon, 25 May 2026 22:55:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2026-05-25-self-improvement-harness/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2026-05-25-self-improvement-harness/</guid>
      </item>
    
      <item>
        <title>How a Deep Learning Library Enables Learning</title>
        <description>
          
          1. The Familiar Training Step 2. Why Call loss.backward() At All 3. Why An Update Actually Helps 4. Values Remember Where They Came From 5. What One Operation Does During Backward 6. How loss.backward() Walks the Whole Graph 7. So We Have All the Gradients in the Graph. What’s Next?...
        </description>
        <pubDate>Sat, 14 Mar 2026 18:32:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2026-03-14-how-deep-learning-library-enables-learning/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2026-03-14-how-deep-learning-library-enables-learning/</guid>
      </item>
    
      <item>
        <title>How I Built a Deep Learning Library from Scratch Using Only Python, NumPy &amp; Math</title>
        <description>
          
          Motivation and Goals Abstraction layers of Machine Learning Libraries Comparing this project to PyTorch for the same functionality Efficiency vs Learning Technical Design Tensor Class Tensor-level Operations Function class Computational Graph Tensor.backward() NN Module Functional Module Optimizer Additional Thoughts Project link: https://github.com/workofart/ml-by-hand I recently started working on a project called...
        </description>
        <pubDate>Thu, 06 Feb 2025 03:23:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2025-02-06-ml-by-hand/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2025-02-06-ml-by-hand/</guid>
      </item>
    
      <item>
        <title>Peaking into the real game</title>
        <description>
          
          Video games were very attractive to me when I was kid. This is because the possibilities in the virtual world is vastly greater than the real world, as least during my teenage years where most of my life was filled with school work that can’t be related to in the...
        </description>
        <pubDate>Mon, 15 Nov 2021 00:23:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2021-11-15-peaking-into-the-real-game/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2021-11-15-peaking-into-the-real-game/</guid>
      </item>
    
      <item>
        <title>Tic-tac-toe Self-Play</title>
        <description>
          
          Code 1. Goal 2. Environment State Action Reward Termination Condition 3. Approach 3.1 Reward Function Design 3.2 Learning Algorithm 3.3 Hyperparameters 4. Experiment &amp;amp; Findings 4.1 Training Evaluation 4.2 Optimal Policy Discussion Experiment - Play two copies of the same agent against each other, by following the trained policy Experiment...
        </description>
        <pubDate>Fri, 06 Dec 2019 16:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-12-06-tic-tac-toe-selfplay/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-12-06-tic-tac-toe-selfplay/</guid>
      </item>
    
      <item>
        <title>OpenAI Gym - Acrobot-v1</title>
        <description>
          
          Code 1. Goal 2. Environment State: Action: Reward: Terminal Condition: Solved Condition: 3. Approach 3.1 Algorithm Comparison 3.2 Problem Parameterization 3.3 Policy Key consideration: 3.4 Neural Network Architecture 3.5 Hyperparameters 4. Experiment &amp;amp; Findings 4.1 Performance 4.2 Training Duration 4.3 Neural Network Complexity 4.4 Discount Rate 5. Next Steps Code...
        </description>
        <pubDate>Tue, 03 Dec 2019 16:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-12-03-acrobot/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-12-03-acrobot/</guid>
      </item>
    
      <item>
        <title>OpenAI Gym - Pendulum-v0</title>
        <description>
          
          Code 1. Goal 2. Environment State Actions Reward Starting State Episode Termination Solved Condition 3. Approach 3.1 Discretization 3.2 Exploration vs Exploitation 3.3 Gaussian Policy 3.4 Linear Value Function 3.5 Training 3.6 Hyperparameters 4. Experiment &amp;amp; Findings 5. Next Steps Code Here 1. Goal The problem setting is to solve...
        </description>
        <pubDate>Tue, 05 Nov 2019 16:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-11-05-pendulum/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-11-05-pendulum/</guid>
      </item>
    
      <item>
        <title>OpenAI Gym - MountainCar-v0</title>
        <description>
          
          Code 1. Goal 2. Environment State Actions Reward Starting State Episode Termination Solved Requirements 3. Approach 3.1 Discretization 3.2 Exploration vs Exploitation 3.3 Training 3.4 Hyperparameters 4. Experiment &amp;amp; Findings 4.1 Introducing baseline to reduce variance 4.2 Discrete vs Continuous Actions 4.3 Performance 5. Next Steps Code Here 1. Goal...
        </description>
        <pubDate>Mon, 04 Nov 2019 18:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-11-04-mountain-car/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-11-04-mountain-car/</guid>
      </item>
    
      <item>
        <title>BrawlStars AI Series (Part 2) - Reinforcement Learning</title>
        <description>
          
          1. Perception 1.1 Current Player Position Green Circle Player Name 1.2 Stars (Reward) Player Stars Team Stars 2. Planning 2.1 Agent 2.2 Brain 3. Error Analysis 4. Challenges &amp;amp; Future Steps First and foremost, I must say, perception is harder than planning. This part, I will be attempting to apply...
        </description>
        <pubDate>Thu, 25 Apr 2019 01:00:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2019-04-25-Brawlstars-RL/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-04-25-Brawlstars-RL/</guid>
      </item>
    
      <item>
        <title>BrawlStars AI Series (Part 1)</title>
        <description>
          
          1. Motivation 2. Goals 3. Starting Point 3. Related Work 4. Project Focus/Scope 5. Showcase 6. Supervised Learning 6.1 Creating training data 6.2 Features 6.2.1 Raw Pixels as Features 6.2.2 Using MobileNet as the feature extractor 6.3 Action Determination 6.3.1 AlexNet (Convolutional Neural Network) 6.3.2 Long short-term memory 7. Challenges...
        </description>
        <pubDate>Sat, 20 Apr 2019 01:00:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2019-04-20-Brawlstars-AI/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-04-20-Brawlstars-AI/</guid>
      </item>
    
      <item>
        <title>Creating a Policy Gradient (PG) Agent to Trade</title>
        <description>
          
          Policy Gradient Problem Setting Agent Environment Reward Technical Details Policy Network Design Training Key Considerations Key Challenges Challenge 1 Challenge 2 Results Next Steps This is the first post that’s part of the series for teaching an agent to trade. I will evaluate different reinforcement learning (RL) approaches and share...
        </description>
        <pubDate>Thu, 04 Apr 2019 01:55:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2019-04-04-pg-trading/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-04-04-pg-trading/</guid>
      </item>
    
      <item>
        <title>Creating Neural Networks with Python/Keras/Tensorflow to Predict the Future</title>
        <description>
          
          Previous Knowledge Required Goals Showcase Training Set Test Set Input Data Neural Network Architecture (All 3 Versions) Version 1 Version 2 Version 3 Previous Knowledge Required Understand what is a neural network (NN) and how it works conceptually. Python Basic understanding of what derivatives/gradients are Goals In this tutorial, I...
        </description>
        <pubDate>Wed, 20 Mar 2019 11:50:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2019-03-20-ml-tut-price-prediction/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-03-20-ml-tut-price-prediction/</guid>
      </item>
    
      <item>
        <title>Asynchronous Advantage Actor Critic (A3C)-Reinforcement Learning -Laymens Explanation</title>
        <description>
          
          The A3C method in Reinforcement Learning (RL) combines both a critic’s value function (how good a state is) and an actor’s policy (a set of action probability for a given state). I promise this explanation doesn’t not contain greek letters or calculus. It only contains English alphabets and subtraction in...
        </description>
        <pubDate>Wed, 27 Feb 2019 12:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-02-27-a3c-rl-layments-explanation/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-02-27-a3c-rl-layments-explanation/</guid>
      </item>
    
      <item>
        <title>React Redux Intro</title>
        <description>
          
          I’ve been bugged by the native state management system in React that I finally had to take a stab at Redux. Here are some notes I took along the way to understand what Redux is and why we need it. First off, why do we need Redux when we already...
        </description>
        <pubDate>Sat, 26 Jan 2019 12:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-01-26-react-redux-intro/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-01-26-react-redux-intro/</guid>
      </item>
    
      <item>
        <title>Career Paths in Data Science/Machine Learning</title>
        <description>
          
          This post is adapted from my answer on Reddit. I think there are various career paths that fall under “Data Science/Machine Learning”. This doesn’t mean there are 4 roles, it’s just how I see this industry; nevertheless, the more skills you possess, the better. Below are my personal thoughts based...
        </description>
        <pubDate>Thu, 10 Jan 2019 12:00:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2019-01-10-career-paths-in-ml/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2019-01-10-career-paths-in-ml/</guid>
      </item>
    
      <item>
        <title>Looking back, planning forward</title>
        <description>
          
          It’s been a while since my last post. There’s just too much going on in my life that I didn’t get time to write down. Anyways, here goes nothing. The past 1.5 year has been really, really rough without any exaggeration. After switching majors, I’ve learnt a lot of new...
        </description>
        <pubDate>Thu, 03 Dec 2015 08:46:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2015-12-03-looking-back-planning-forward/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2015-12-03-looking-back-planning-forward/</guid>
      </item>
    
      <item>
        <title>A few thoughts on choosing a career path</title>
        <description>
          
          When choosing a career path, the most important thing is to do the research and plan ahead. When we are talking about doing research for career cruising, we need to understand its industry. Its past, present, future. You don’t just wanna look at the present condition, because who knows what...
        </description>
        <pubDate>Tue, 24 Dec 2013 09:52:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2013-12-24-a-few-thoughts-on-choosing-a-career-path/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2013-12-24-a-few-thoughts-on-choosing-a-career-path/</guid>
      </item>
    
      <item>
        <title>Different Life Experiences Bring Different Perspectives</title>
        <description>
          
          How I ever wonder, how does so many people have so many different answers to a simple “1+1” problem. To put the question into perspective, we have all heard of the “Standard Deviation” term from basic statistics, if not, this measures the variability of the sample or population data points....
        </description>
        <pubDate>Sat, 16 Nov 2013 08:11:00 -0500</pubDate>
        <link>https://www.henrypan.com/blog/2013-11-16-different-life-experiences-bring-different-perspectives/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2013-11-16-different-life-experiences-bring-different-perspectives/</guid>
      </item>
    
      <item>
        <title>Finding the 'right' route</title>
        <description>
          
          It has been approximately 24 days since classes have started and I have gotten used to the work and life style in business school, the case method and socializing all the way. Most of the courses here are taught in the form of case studies, where the learning, supposedly comes...
        </description>
        <pubDate>Wed, 25 Sep 2013 04:11:00 -0400</pubDate>
        <link>https://www.henrypan.com/blog/2013-09-25-finding-the-right-route/</link>
        <guid isPermaLink="true">https://www.henrypan.com/blog/2013-09-25-finding-the-right-route/</guid>
      </item>
    
  </channel>
</rss>
