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?)
5
  • 2
    This will probably depend on the size/type of the organization. A 10-person shop/start-up filled with 1337 HaxXorZ will probably have some variety on every workstation. At the other end, large financial companies with huge IT departments will probably have 1 (or more) standard image for different roles (Programmer, Business Analyst, Helpdesk support) that is used to image the hard drives of the staff, and standardized hardware profiles as well. Commented Sep 19, 2011 at 23:11
  • 1
    What do you mean by "SOE"? Can you provide an example?
    – S.Lott
    Commented Sep 19, 2011 at 23:12
  • 1
    An example is a pre-built Norton Ghost image that bundles Windows, Office, Visual Studio, McAfee, and other random software needed by most company users. Commented Sep 19, 2011 at 23:15
  • 2
    @S.Lott SOE == Standard Operating Environment. As Paul said, it's just a base OS install with a set of common apps preconfigured for all users. They are usually locked down and centrally managed by the sysops/IT Pros via group policy. When you have hundred/thousands of desktops to manage and "average" uses, then supporting a single image is seen to be much easier than a menagerie of different configurations. Commented Sep 20, 2011 at 5:34
  • @Richard Banks: "it's just a base OS install with a set of common apps preconfigured for all users" Really? Not everyone will agree with that. "They are usually locked down and centrally managed by the sysops/IT Pros via group policy"? Really? Not everyone will agree with that either. How do you know that this is what the question actually means? What is in the question that conveys all of these definitions?
    – S.Lott
    Commented Sep 20, 2011 at 9:43

2 Answers 2

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.

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).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.