Thanks for the positive feedback!
Something else that can help mitigate such issues that I didn't mention in the post is to you can use DTO classes with Option fields and then convert those to better typed internal classes. But that comes with lots of new boilerplate... (Though maybe something like the Chimney library can help.)
Alex Boisvert
Good post! JSON support, as well as database binding are often the top things that stop me for building a more semantically-precise domain model.
Next is probably dealing with backward compatibility once you realize you didn't have the right semantic model in the first place...