Skip to main content

Posts

Showing posts from April, 2016

Software Release Management For Small Teams

Formalizing The Release Management Process (If There’s Any) In some team configurations, especially ones that are found in startups, there are no DevOps, nor infrastructure engineers, to provide support when releasing a new version of the product. Moreover, unlike large bureaucratic companies with defined formal processes, the CTO or Head of Software Development team in a startup is often not aware of the complexities of the software release management process; a few developers in the company may be aware of the complex details of the process, but not everyone. If this knowledge is not documented thoroughly , I believe it could result in confusion. In this article, I’ll try to provide some tips about how to formalize the release process, particularly from the developer’s point of view. Enter The Software Release Checklist You may be familiar with the idea of a checklist for some operations, as per the Checklist Manifesto , a book by Atul Gawande. I believe a formal release proc

Adapting your sources for Python 3 without loosing Python 2 compatibility

As a follow up of the previous article I'd like to list here some hints about adapting your Python2 sources for the migration to Python3 that I discovered while doing the same job on some of my scripts. The list is not complete because, as I said, it's the result of a personal experience and not of a thorough exploration. To write code compatible with Python version 2 and 3 you have to enable some backports that are available starting from the 2.5 version of the language. General changes “long”s will be gone In Python 3 the distinction between int and long will disappear, so as the "0L" syntax. To avoid syntax problems you can replace "0L" with "long(0)" and in Python 3 you'll redefine long=int so that everything will work again. At the beginning of the script you have to check for the Python version to enable the substitution: import sys python_version_major = sys.version_info [ 0 ] if python_version_major > 2:  long = int x