Oliver NguyeninConnectly AIImplement a Distributed State Machine with Redis to Migrate Billions of RecordsAs a start-up company, we started with a simple architecture: All data were stored in a single centralized Postgres instance, shared by a…Oct 22Oct 22
Oliver NguyeninConnectly AIUpgrade your scripts using ‘direnv’ and ‘run’ scriptIn JavaScript/Node world, we usually store scripts in package.json and run them using npm. In other worlds, we use Makefile or create a…Jul 24Jul 24
Oliver Nguyenezpkg.io — Collection of packages to make writing Go code easierAs I work on various Go projects, I often find myself creating utility functions, extending existing packages, or developing packages to…Jun 27Jun 27
Oliver NguyeninBetter ProgrammingWorking With Stacked PRs using git-branchless, git-autofixup, and git-prWork with stacked PRs easily within the git worldFeb 22, 2023Feb 22, 2023
Oliver NguyeninBetter ProgrammingMaking “goconvey” Work With “gomega” AssertionSimplify writing testsJan 4, 2023Jan 4, 2023
Oliver NguyenMake direnv work with saplingIn the last post, I shared my experience with Sapling, Meta’s new Git client. It requires some workaround with direnv. This post explains…Dec 21, 2022Dec 21, 2022
Oliver NguyeninBetter ProgrammingMy First Impressions of Sapling — Meta’s New Git ClientExperimenting with stacked pull requestsDec 16, 2022Dec 16, 2022
Oliver NguyeninBetter ProgrammingCreate an Emoji Ball-drop Game With Matter.jsConnect the dotsSep 21, 2022Sep 21, 2022
Oliver NguyeninBetter Programming7 New ES2022 JavaScript Features You Might Have MissedOld vs. new JavaScriptSep 16, 20224Sep 16, 20224
Oliver NguyeninBetter ProgrammingValidate Zero Enum Value in Protocol BufferHow to validate that a Protobuf message does not contain enum fields with zero value? Turns out that this isn’t supported directly by…Mar 2, 2022Mar 2, 2022