1 hour ago · 8 min read1683 words · Tech · hide · 0 comments

In the fall of 2005, my employer was acquired by another company, and I was transferred to the team that developed a centralized translation memory system. The group had a strong not-invented-here culture, which I did not appreciate at the time1. One example of functionality that, in my opinion, should have been reused rather than rewritten was the handling of UTF‑8 encoded text. I looked around to find some portable C++ open-source libraries to prove my point, and to my astonishment, there was almost nothing. There was only ICU, which started as a Java library and then was ported to some very non-idiomatic C++. I wanted something light, portable, and unintrusive that plays well with the C++ Standard Library.BeginningsIn the summer of 2006, while my family was away for a few weeks2, I got busy. The primary design goals I came up with were:Portability. I wanted it to run on any reasonably C++98 compliant compiler and be OS agnostic.Flexibility. It was meant to be easy to use with as…

No comments yet. Log in to reply on the Fediverse. Comments will appear here.