Embracing failure by virtue of A/B split testing


Pushing the envelope, and thinking outside of the box by navigating uncharted waters is how the human species innovates. Undoubtedly some attempts to innovate have less than stellar results. Some attempts fail in the most spectacular ways (think the Hindenburg). Others simply sputter out (but still fail)… But every once in a while an attempt succeeds and innovation inches foreword. One of the more recent examples is the notorious SpaceX rocket landing attempts. Conducted in June of 2015, the first attempts at landing a SpaceX rocket failed spectacularly. With a determination to succeed and willingness to innovate the SpaceX team would eventually pave the way for a monumental success. In December of 2015 SpaceX safely landed a rocket on a landing pad, thus creating the first reusable rocket in history. […]


Managing Stale Binaries in Artifactory


OVERVIEW Managing outdated artifacts is a necessary exercise to ensure proper scalability of an artifact management system. ┬áThe professional version of Artifactory has plugins which can assist with this but the open source version does not. To prevent the system from growing exponentially Artifacts need to be managed and removed if no longer deemed needed. To facilitate this I typically implement four repositories for each logical division of an artifact type: foo.development foo.production foo.promoted foo.released For this tutorial each repository will have a different retention policy increasing in length as the repository is closer to “released” status. For example: Development – 30 days Production – 90 days Promoted – 180 days Released – Infinity Artifacts deployed into a given repository are promoted up the chain until either released or rejected. […]