@ihugo

Hello there

I turn thinking into simplicity, architecture into adaptability, and quality into time. I write about iOS, software engineering, tools, and the long work of building better systems.

Recent Posts

  • Refactoring the Neo4J Cache Layer

    Last week was almost entirely firefighting. We use Neo4J as our graph query backend, and to speed things up we had been caching a large volume of relationship data in Redis. The problem: the cache kept growing, and so did the AWS bill.

  • How I Improved CoreText Rendering to 60 FPS

    Recently, I started building a video player that uses CoreText to render subtitles. However, when scrolling through the UI, the frame rate dropped to an unacceptable 15 FPS. To fix this, I created a demo that wraps a native text view with CoreText rendering, eventually optimizing the performance to a smooth 60 FPS.

  • Swift Concurrency - From GCD to Structured Concurrency

    I remember when I first graduated and started iOS game development, I used NSThread directly for multithreading. When GCD (Grand Central Dispatch) was introduced, it was very convenient to use, and I used it almost exclusively. occasionally, when tasks had dependencies, I would use NSOperation.