RSSAmplifier

Blog

James Lao

Recent content on James Lao

jameslao.comRSS feed ↗7 posts

Latest posts

GCRA With Burst Limiting

In a previous posts we looked at how to implement a leaky bucket rate limiter using the generic cell rate algorithm (GCRA) and then again how to derive several common rate limiting headers . In this post we’ll look at how to apply a burst limit. Consider a rate limit of \(X = 10\) requests per \(P = 60\) seconds. With GCRA we can make all 10 requests in an instant because it allows us to…

Rate Limit Status Headers With GCRA

How to calculate the rate limit status when using the GCRA for response headers.

GCRA Rate Limiting

Efficient rate limiting using the generic cell rate algorithm explained.

How to Implement IDisposable

I review a lot of C# code and the one thing I see people screw up the most is IDisposable. I think part of the reason is they don’t understand why IDisposable exists. After all, isn’t C# managed? IDisposable exists to to cleanup unmanaged resources. When I say unmanaged, I mean things like raw file handles or unmanaged memory you might get from calling into unmanaged code. All standard .NET…

Ninjas Space Horror and Crafting

One of the perks of working at Xbox is I can get pretty much any game I want. Unfortunately I don’t have time to play every game I want, so I have pick and choose. These are the favorite games I played since I started working at Xbox. Mark of the Ninja I played the crap out of this game. I first saw Mark of the Ninja when I was wandering around the indie games section at PAX. There was no line so…

Bioshock Infinite

BioShock Infinite is insanely great. The story is amazing. The characters are unforgettable. The gameplay is a blast. Sorry, am I gushing? The first two thirds of the story is pretty standard. The gameplay really shines here though. The combination of shooting, vigors, and the skyhook creates a unique combat experience. You might be tempted to stand back with sniper rifle and just pick off enemies…

Resume

Resume Bungie Principal Engineer | July 2022 - Present Working on services for Marathon . Unity Technologies Staff Engineer | January 2021 - July 2022 Worked on Multiplayer services for Unity Game Services. Microsoft Principal Architect | March 2012 - January 2021 I worked on Xbox Live from Xbox One through Xbox Series X. Shared service framework used by all Xbox Live services. Authentication and…