Fog Creek Software
Discussion Board

Windows update and development

We write commercial shrink-wrap software for Windows. Currently, our platform for development is Windows XP Professional. My question is, and assuming that “security” is not a priority, how updated should our development platform be in order to minimize configuration and compatibility issues with other versions of Windows?

These are some candidate configurations:

Win 2000 Pro out of the box
Win 2000 Pro SP3
Win 2000 Pro SP3 + latest updates
Win XP Pro out of the box
Win XP Pro out of the box
Win XP SP1
Win XP SP1 + latest updates


William Williams
Saturday, May 10, 2003

All of the above.

The only way to know if a configuration works is to test it.

We keep a variety of different configurations for test and development.

However most are configured to our corporate standard: Win2k sp 2 + security hotfixes.

Security and EULA are our largest issues.

Anonymous Coward
Saturday, May 10, 2003

Possible System Configurations are always an issue with the software we develop and deploy to our 700,000+ Subscriber base, so I hear you loud and clear.

Here is the process that I follow:

1st) You HAVE to set your Includes, Excludes, and Assumptions up... this prevents confusion and saves tonnes of time in the long run ..

Included: 98a, 98se, ME, 2k-pro, XP.
Excludes: 95, NT, 98a (Unpatched)
  All Included Operating Systems must be patched to the highest working patch level.
  If a Patch is tested and found not to work, it will be added to the Excludes until a workaround can be provided.

Ok, so now everyone is on the same page, and has realistic expectations... what about testing in a timley manner though? ....

2nd) We use VMWare ( This allows us to have a single box (lotts of RAM, BIG HD) setup with each OS and patch level and combinations, all installed in seperate VM's.

3rd) We have Testers (I saw a realy good article somewhere.... ;-) ... )

4th) We let our QA team loose, and it's up to them to prove our Includes, and Assumptions were NOT met, allowing us to tighten the belt.

In all cases to-date, Developing on Systems that are always "up-to-date" I.E. Latest OS SP's, Browser SP's, and Development Software SP's (XP Pro) .. Has allowed us to meet not only our Includes, but our Excludes as well... (Providing the Excluded OS is patched to the higest level)
This dosn't mean that we change our support policy, but it still nice to know.

Note: .. you will most likley find that setting a minimum Version of IE as a requirement helps ALOT ...  Mickeysoft has been patching the OS through browser upgrades (IE) for years, and if you plan on supporting 98 flavors of Windows for your users... then IE 5.5 should be MANDITORY...

Hope that Helps!

Robert French
Saturday, May 10, 2003

"assuming that “security” is not a priority"

You are definitely a windows developer.  You don't happen to work in Redmond do you?

Sunday, May 11, 2003

Security isn't always an issue. Anyone who thinks it is has spent too much time working for "Big Corp".

When dealing in shrink-wrap, the #1 priority is that "it works" no matter how illiterate you end-user is. This is just a fact of life in this sector. It isn't that we don't care about security, it is that our end-users don't care about security. And no amount of telling them about it will make them care.

70% of our users have 98 on the clients and an NT Workstation as a server-ish PC. They have no domains, no security protocols, not even common list of user IDs. How do they share files then? Well, then enable the Guest user of course. :-)

In the end, you serve your customer and are bound to the rules as they lay them out. So if your end-users care about security, lucky you. I sure wish mine did.

Monday, May 12, 2003

For development purposes I'd go with WinXP+SP+Patches. If you develop a shrink wrap app, have you gotten it Gold Certified yet? The cost is fairly minimal ($4000-6000) when you consider the benefits, once certified you can then become MS gold partners. This for a $1500 per year gives you 100 desktop licences for XP + Office and 10 MSDN licences for your developers and a 100 user server setup. If you have more than three developers the whole thing easily pays for itself inside of a year. (I believe if you self certify as "designed for XP" you can still join and get 10 lots of Office/XP + 5 MSDN licenses)
Back to your original question, I personally would go for WinXP for daily use, Win2K plus SP1 for your build machine (tends to mean most sites don't need to reboot on install just 'cos you shipped a later shfolder.dll, happened to us when one of the developers got "clever" and thought he'd do a build on his machine)
Check the installs you build on Win95,Win98se,Win2K and WinXP with the latest service packs installed. A plain Win95 install (no service packs) may throw up a LOT of missing DLLs which you didn't know you needed.
Make the testers do some of their work on Win9x machines, things like the GDI only being 16 bit can bite (Been there done that) Also the model for focus events is different between Win95/98 and 98se/WinNT. We have had some fun here with making controls visible and whether or not they get focus.
In theory you should be able to get away with forcing customers to have the latest service packs installed if they're getting "odd" problems.

Peter Ibbotson
Tuesday, May 13, 2003

Robert French:  Thanks for the overview.  Question:  Why don't you run automated tests on all of the VMWare distributions, rather than paying the QA team to prove that the includes and assumptions are met?

Brent P. Newhall
Tuesday, May 13, 2003

*  Recent Topics

*  Fog Creek Home