Development Machine Environment Build and Base OS Load

When choosing an operating system to work with there are a number of factors to take into account. Some of these factors include; What language stack and tooling will you need to use?
What focus beyond software development will the machine have?
What apps and tooling do you already have?