[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Fwd: Re: Thoughts on https://trac.torproject.org/projects/tor/wiki/dev/SupportPolicy

Looks like I did not send this (rather old email) to the mailing list as
intended. Since the discussion how far back an OS should be supported
appears to remain live and well, here ya go:

On 2010-11-22 21:06, Andrew Lewman wrote:
> As for operating system support, I'm fine with supporting whatever the
> current OS manufacturer (for loose meanings of organization that
> creates the releases) supports.  I'd caution this with finding out what
> our users actually need.  There are a many places in the world where
> they use operating systems from more than 10 years ago.  If we truly
> want to help people, both -alpha and -stable branches should have wide
> and a variety of OS functionality.

The intuition that OS version adoption _significantly_ (i.e. by many
years) lags in certain "places in the world" is often retold, generally
without hard proof. Yet research does not support this intuition.

Just looking at Windows versions, actual surveys show Windows 98, ME,
2000, and 95 to all be well under the 1% mark of Internet connected
devices with many of these versions coming in at below 0.1%. Meaning
they are obsolete.

(PCs that never connect to the Internet, which are not part of such
automated surveys, are of course of no relevance to
Tor and we need not concern ourselves with by how many years OS versions
may or may not lag on such unconnected devices).

Detailed per-country drill-downs of OS version surveys tend to cost
money and are copyrighted, which precludes me from linking to them here.
However, global views (which include Africa, Asia, and the Middle East)
can be readily found for free on the Internet. Here is one example:

Having seen the for-pay versions of OS version drill-downs, the
inescapable conclusion is that Windows 95, ME, 98, and 2000 are dead
world-wide. Sure, existence proof of users can be found. I had one
customer request support for Windows 3.x only a couple of years ago. And
he was from US.

The continued existence of some Windows 3.1 users however does not mean
that investing development effort into Windows 3.1 or 98 support is a
reasonable engineering trade-off for Tor when that same development
effort could be invested in adding features or improving performance on
Windows 7. Even if Tor's target market were exclusively those other
places in the world.

From a policy perspective, the standard approach when serving
international consumer markets is to support one major Windows version
back. Considering the fact that Windows 7 is basically the /real/
release of Windows Vista, this means that today Tor should run on
Windows XP, Windows Vista, and Windows 7. I believe that policy would
serve the Tor Project well.

Another important policy decision to codify is which Service Pack level
to support. Here the answer is "latest", for a number of reasons:

1) Tor will have no choice but to be compatible with the latest shipping
Service Pack due to the sheer number of users that will upgrade to the
SP upon release.

2) OS bugs that prevented an application from operating correctly prior
to a particular SP release can rarely be worked around in the
application if that workaround has not been found by the time the SP is
released. (Nor is creating such a workaround at that time an appropriate
investment of resources when a functional, no-cost, SP exists).

3) SPs are readily available to most anybody with an Internet connected
PC. Even in areas of poor bandwidth SPs tend to readily be available
in CD-R format in such communities and news of such availability quickly

Indeed, the longest laggards in SP adoption tend not be faraway places,
but large corporate IT environments with corporate PC images that cannot
upgrade to a particular SP because of poor coding practices in
mission-critical enterprise applications that cannot be worked around
since the original dev team has long left the company and source code is
incomplete/cannot be found.

Hope this helps,