4

As a developer on the Windows/.NET stack, it's pretty normal for the company-supplied machine to come with Windows (usually an ancient, archaic version like Windows XP) and a stack of software pre-installed as part of a Standard Operating Environment.

In companies building software on the Java/Ruby/PHP/C stack using Linux/Unix/BSD as a primary OS, in your experience:

  1. Does everyone tend to use the same OS/version?
  2. How do you ensure everyone is using the same version of libraries/dependencies/tools (do you?)
  3. How do you create an SOE to pre-configure a machine (do you?)
Paul Stovell
  • 1,719

2 Answers2

5

Does everyone tend to use the same OS/version?

No.

We specifically write software that runs on a variety of Linuxes (Lini? Linen?). A same OS or same version isn't particularly helpful.

Unless one is writing kernel-oriented software, exact Linux versions don't matter the way exact Windows versions seem to matter. Why? Linux conforms to a standard (POSIX); for most "ordinary" application development, the version only needs to be reasonably close. Standards compliance assures that things really work.

How do you ensure everyone is using the same version of libraries/dependencies/tools (do you?)

A list of RPM's (or whatever's appropriate) to download and install.

How do you create an SOE to pre-configure a machine (do you?)

Sometimes a sys admin will bundle a collection of RPM's for us.

S.Lott
  • 45,522
  • 6
  • 93
  • 155
0

It depends on the organisation - more enlightened organisations allow developers to work in an environment that's comfortable for them (even if it means providing a VM so the developer doesn't pollute the 'base SOE').

In the Java space we worry more about managing the dependencies of the Java software itself. That is typically standardised and various build tools and CI servers ensure that it stays that way.

I personally write my code on Windows XP SP 3, Mac OS Lion and a host of *nix systems (whatever I'm ssh'd onto at the time).