[blog] manage software dependency with semantic versioning [#31]