
What Really Happened with Vista - mrpippy
https://hackernoon.com/what-really-happened-with-vista-4ca7ffb5a1a
======
pacaro
From where I sat in Windows Security (I wrote much of the BitLocker UI) these
are a couple of anecdotes:

I remember one of the base team architects laughing and bragging about how and
why they killed managed code and banned it from the OS — the technical reasons
where valid, but the attitude was toxic. I think most or all of the generation
of architects that had come from DEC have now moved on, but they also took
tribal knowledge with them. I wonder how much they were encouraged to find
other things to do because of this type of attitude (which not all of them had
btw)

Moving on

The Avalon team appeared to be drinking their own cool aid. They had charts on
the wall showing their performance goals and progress. All the performance
measurements on those charts were annotated as "estimated". I remember an
internal alpha that had strong polynomial execution time based on the number
of elements in the logical tree. It felt like the design was good, but that
the correspondence of the implementation to the design was missing.

When Avalon was booted, we were told to write UI in a broken framework called
DirectUI which had a convoluted history, an arrogant maintainer, and a weirdly
mismatched documentation. Much was documented that wasn't implemented, the
standard answer to missing features was "add it yourself", but if I pushed a
code change to shell code (where it lived in the codebase) it would typically
cause a forward integration from winsec to base to be rejected.

Good times

~~~
wfunction
Very interesting! I feel like all the OS components are now written in
DirectUI too. Did it turn out to be the way to go, or did it happen because it
was shoved down everyone's throat?

~~~
contextfree
AIUI, DUI was the standard toolkit for first-party Windows UI from XP through
8.0 (this includes the "Metro" shell components in that release like the Start
screen). Starting with 8.1, new components have been written using the same
XAML toolkit that's promoted for third-parties, but there's still lots of
older DUI stuff in the OS, like File Explorer and the taskbar.

------
xpaulbettsx
This is an article as to why Longhorn failed. If you want to know why _Vista_
failed, here's two big reasons:

1\. In Vista, there was a completely new Antivirus framework that AV vendors
had to use in order to support Vista. Good idea in theory, but because it was
brand new (and because vendors had to write brand new code to support it), it
had a fuckton of problems, mostly contributing to an _enormous_ performance
degradation compared to XP. Like, horrendous. And since every laptop you could
buy in the store had 3rd party AV because that's how OEMs make $$, whoops
every laptop is absolute garbage out of the box.

2\. Windows Vista completely rewrote the USB stack, an _extremely_
complicated, timing-sensitive component (like, add a printf, break a device
kind of sensitive), and about 80% of the way through, the lead architect who
planned the rewrite left the company. Meanwhile, there were a _ton_ of devices
which weren't actually correct wrt the USB spec, but just happened to work
with the timings that WinXP solely by accident would exhibit. A friend of mine
made a lot of money in bonuses by slogging through bug after bug in the USB
stack trying to make it right for Vista SP1.

It's funny, because Vista shipped a ton of great features, that then got
attributed to Win7 - it really set the foundation for the modern Windows OS
until Win10 came out.

So, if you learn anything from the story of Windows Vista, it's this:
Performance is not a Feature, but it sure can make all of your other features
not matter at all

~~~
krylon
> It's funny, because Vista shipped a ton of great features, that then got
> attributed to Win7

I have heard that some people at Microsoft consider Vista a kind of public
Beta for Windows 7. Maybe not intentionally, but that is the way things worked
out on the road from XP to 7.

And Windows 7 is, as far as Windows systems go, very nice. Very stable, decent
performance on not-too-old hardware, I like the UI very much.

~~~
webwanderings
I have Windows 7 on a 4GB maxed out IBM laptop for personal use. Don't see a
reason to go anywhere, as long as I can. Although, XP was also fine.

------
hoodoof
From the outside world Vista just didn't look compelling.

Yet another Microsoft OS with a fresh set of incompatible hardware drivers.

There was no clear vision about what a modern OS should be. It felt bloated
and clunky. Vista felt like it was trying to be everything to everyone and not
really being anything much special to anyone.

By contrast, OSX seemed to know what it was, and provided a cohesive
integrated whole in which things just worked. Most importantly, Apple somehow
managed to generally provide just one way of doing things. For example
configuring networking on OSX happens in network preferences. On Windows, to
this day, configuration seems to be all over the place, a bit here, a bit
there, and many different visual and UI styles for the configuration. Made
even worse by add in software for configuration from hardware vendors. Even
now with Windows 10 I dread having to resolve ANY sort of network issue -
where to start - which rabbit hole will the required setting be down?

Windows had - and still has - problems that have never bee fully solved and
they make the platform so unappealing. Shutdown of the Windows OS could never
be relied on to actually happen without hanging for some reason. Hibernate
mode when closing the laptop lid was equally unreliable. Constant application
crashes. Multitasking that just wasn't - all the time the OS would become
unresponsive due to the behaviour of some application, which leads to the next
major issue was a seeming inability for Windows to actually force kill
processes when instructed - that rarely worked. Even something as trivial as
deleting a job from a printer queue - basically forget it.

After Vista, Windows 7 seemed to clean things up a bit before they got even
worse, with Windows 8 just being an absolutely definitive statement that
Microsoft did not know what Windows was or where to take it - I mean for
goodness sake - removing access to control panel? Crazy.

The latest versions of Windows are better but no-one has had the courage to do
what Windows really needs which is to get rid of the registry - that chewing-
gum-in-the-hair-mixed-with-spaghetti central configuration settings black
hole.

~~~
Joeri
None of the usability problems you mention have to do with the registry, so I
fail to see how getting rid of it would materially improve the windows
experience.

The core problem with windows 10 for me is and remains the crappy driver
situation. Drivers on windows are far less robust than on OS X, and OS and/or
driver updates create many more problems. This isn't tied to any particular
windows version, but W10 suffers from it more because updates happen with much
less control over the when and where, which means drivers break in more
awkward moments.

An example from my own workplace is that a lot of my coworkers have had their
laptop keyboard break after a W7 update. Windows reboots to update, and ctrl-
alt-del no longer works, not on the built-in keyboard and not on an external
one, so you're locked out. The solution is connecting via remote desktop and
logging in once, after which windows update picks back up and fixes the
problem, but that's not always a convenient thing to do. I bet that microsoft
doesn't even see that in their metrics, because to them it's just a remote
desktop login, so they probably think those updates don't have any problems
(after all, the update gets installed and people seem to go back about their
business).

~~~
thomasrognon
To be fair, drivers are a much more difficult problem for Microsoft because
they don't control the hardware like Apple does. There are way more devices
out there for Windows machines, and an insane number of combinations that have
to work together without ever having been tested together.

~~~
Joeri
That still doesn't explain why an external keyboard breaks. Keyboards are not
exotic hardware, and they all work just fine when connected up to a mac.

~~~
metaphor
If Windows Update was able to fix the problem after being reinitialized, then
your original description sounds more like a Windows Update hiccup rather than
an inherent driver issue.

~~~
digi_owl
Could be a permissions problem.

These days you can authorize Windows to log you in upon reboot so that Update
the finish up.

------
wanderr
The first laptop I could afford was a used Toshiba Satellite that had Vista on
it. A well off college student was having problems with it BSODing constantly,
so she was selling it as "broken, maybe you can use it for spare parts?" For
about $200. When I looked at the BSOD error and saw that it looked like a
driver issue, I told her it was probably fixable she said she didn't care, she
had already bought a MacBook to replace it. So I got it for $200. I
immediately rolled it back to Windows XP and it worked perfectly fine ever
since.

------
m12k
I always had the impression that the biggest gripe with Vista were the
incessant UAC dialogs asking you to approve every little thing (I think Apple
even poked fun at it in one of their 'Hi, I'm a Mac' ads). And that this
problem was actually a consequence of the (sensible) change from having all
programs running with full privileges to limiting them and asking users for
escalations only when needed - but since most existing programs were not
prepared for this, they caused UAC dialogs left and right, where they could
and should have been avoided. And understandably it took a while for all the
3rd party devs to catch up to this and change their code to fit well within
this more restrictive security model. But the way I see it, this is much like
pulling off a band-aid that's been on too long - it'll hurt no matter what, so
best just get it over with. I imagine that if Windows 7 had been released
instead of Vista and at the same time (and AFAIK it has pretty much exactly
the same security model) then it would have born the brunt of all that
negativity stemming from all those UAC dialogs. In other words, Vista had to
take that bullet, in order for Windows 7 to go on the scene later as the hero.

~~~
draw_down
It reeked of CYA to me- if something bad happened, well, you clicked OK in the
dialog. Shouldn'ta done that. Except you couldn't do anything at the time
without those dialogs constantly coming up.

------
Hasknewbie
A clue that could tell the non-tech-savy audience that something was off with
Vista was its laughable "wow" advertisement campaign: invariably depicting a
starry-eyed person looking at an unseen and undescribed thing off-screen, and
expressing "wow". No product features. No aesthetics. Basically just an
industrial ad with a soundtrack. The only thing that was crystal-clear was the
subtext: "we have no idea why we're selling this thing so we'll just say wow".

------
zerr
Never understood the criticism towards Vista... during that time I made a
switch from Linux (to Vista). It was quite slick & fast. Afterwards, when I
moved to Win7, it was not that much different at all.

~~~
untog
Later versions of Vista weren't dramatically different to 7. But the initial
versions were hideous, and once you've had a failed launch people's
perceptions tend to get stuck.

~~~
zerr
Isn't this the same for all Windows-es? I've never switched to next version
until at least a first SP was released.

------
tehabe
What I thought was weird about Winodws Vista was the contacts folder. It had
its own contacts application which didn't store the data hidden but directly
in as vcards in this folder. The application got removed in Windows 7, like
many other tools. But the folder is still there. I'm sure it is not the only
one which isn't really being used anymore since then.

------
phr4ts
The power hungry Vista forced millions to upgrade to newer devices with at
least 1gb ram and faster processors.

~~~
Theodores
...and for a small handful to move to Ubuntu. Vista was the last Windows I
used. Plenty others went OSX. The public sector stayed on XP.

------
skc
I was one of the lucky ones with Vista in that by the time I'd upgraded to it,
it was pretty stable.

Forgettable and boring yes, but plenty fast and stable on an old HP box that
served as my workstation

------
MR4D
If I look at Vista and compare it to Apple's iterations through OSX, I see
that Apple spread out the macro changes while MSFT tried to cram them all into
one huge release.

Given the results, it seems that Apple had much better leadership/management
and maturity in their team.

Apple's approach, while not perfect, clearly worked much better. I often
wonder what it would be like if MSFT had taken that approach. I think the
world would have been much better off for the last 15 years.

------
johannes1234321
If one talks about failed Windows versions my favorite is still Windows ME ...

~~~
cr0sh
My favorite is Bob...everyone wants to forget about Bob.

------
walterbell
_> In fact, the OS innovations in iOS were what made it so clear in retrospect
how wrong-headed the overall world view driving this work was._

What were those OS innovations in iOS?

~~~
interpol_p
Initially, the strict limits it placed on its own software and third-party
apps. The first iPhone had pretty meagre hardware but still managed smooth
60fps scrolling, one-to-one interaction with your touches, and hitting the
home button _immediately_ stopped whatever you were doing and took you home.

Those things didn't come around by accident. It's because the OS was ruthless
in cutting off applications from hardware resources, because its compositor
was designed for basically moving a textured quad around the screen with very
little latency on a mobile GPU, and because its main animation system ran in a
high priority thread way above your applications.

All these little things are what made it feel "magical" to use the first
iPhone, to have your finger perfectly tracked when pinching and panning on a
mobile computer in the palm of your hand. It can't be overstated how important
it is for a human to get an instant visual response to their touch, and how
highly iOS prioritised this exact thing.

~~~
pjmlp
Symbian had them first.

~~~
interpol_p
Not sure I understand your comment.

Symbian had 60fps one-to-one correspondence with your touch on a multi-touch
surface in a handheld computer? It had a high priority animation thread that
continued to run even if your application crashed? I was never a Symbian
developer, but I don't recall any pre-iPhone Symbian devices performing in
this way.

The examples I gave were all about driving the physics-based movement of an
OpenGL based UI compositor on a very rudimentary mobile GPU. It's putting your
finger on the screen and getting an instant response from the underlying
visuals, and having that response tracked perfectly across the surface of the
screen.

The innovations in iOS (e.g., resuming an app by showing a screenshot of it's
last use while it came to the foreground) were all in favour of increased
perception of responsiveness and actual increased responsiveness. Not just
about maintaining battery efficiency.

~~~
pjmlp
N95 was the first mobile with an hardware GPU, until then OpenGL ES was
software emulated.

The Series 90 was the very first touch driven device with hardware GPU, one
year earlier than iOS got released to the world.

~~~
interpol_p
I still fail to understand your point. I'm trying to educate myself on the N95
but videos of its interaction bear no resemblance to the first iPhone OS.

Putting a touch interface OS on a hardware GPU is not the same as the specific
developments I am talking about. The graphics compositor (CoreAnimation /
CALayer architecture on iOS), physics-driven animation and one-to-one
correspondence with your touch at 60fps was what made the platform unique on
its release.

Edit: this is the best video I can find of a 2007 Nokia device with touch
interaction:
[https://youtu.be/YrS1PGj27VI?t=1m4s](https://youtu.be/YrS1PGj27VI?t=1m4s) —
the interaction is incredibly high latency and not at all one-to-one like an
iPhone. Absolutely none of the innovations I mentioned are present on the
Nokia (or if they are, they are not being used to facilitate human interaction
with the device in this video).

~~~
pjmlp
I also mentioned Series 90, aka Nokia 7710.

Although I do concede that if it wasn't for iPhone's success, OpenGL ES would
probably never had taken off, as Symbian was one of the very few mobile OSes
that had some flagship devices with hardware support for it.

~~~
interpol_p
Thank you for the specific device (Nokia 7710). I've looked at some videos and
I can explain more clearly what I mean.

In the following video
[https://youtu.be/CUUnnf_gX1s?t=46s](https://youtu.be/CUUnnf_gX1s?t=46s)
you'll see that when the button is tapped, the screen "tears" when the device
re-renders its display. I doubt this OS was using the GPU to render and
composite its components to the display. It seems more like it is software
rendering the UI then passing the entire buffer to the GPU for display.

Notice also that the scrolling on the device is line-by-line rather than per-
pixel. It's done to minimise screen redraws but it is exactly the opposite of
what made the first iPhone so pleasant to use. The only one-to-one interaction
in the Nokia 7710 video is the little sliders being moved by the stylus, but
they too flicker when redrawing.

My point wasn't really about whether a phone supported OpenGL. I was pointing
out the software design of the graphical compositor used to render and animate
the UI, and how every small decision was made in favour of prioritising an
immediate reaction to human input.

The only reason I mentioned the iPhone's meagre mobile GPU was to emphasise
how iOS was able to produce such low-latency and smooth performance from very
low powered hardware.

~~~
tsul
_Notice also that the scrolling on the device is line-by-line rather than per-
pixel. It 's done to minimise screen redraws but it is exactly the opposite of
what made the first iPhone so pleasant to use._

Yep—smooth scrolling was a famous obsession of Steve Jobs that was emphasized
in just about every Apple product where it was feasible, the idea borrowed
from one of the fated PARC demos. Little things like this go a long way in
building a sense of symbiosis between user and device.

------
alkonaut
TL;DR- Microsoft old guard saw that C++, html, hierarchical file systems were
stupid. They were right. They thought of some excellent solutions but were 1)
ignoring what MS knows today about open source etc 2) wrong on the cost and
difficulty by a factor 10 3) surprised by swift technology changes

If the "new" Microsoft had materialized sooner and (e.g) successfully shipped
.NET core in 2005 _before_ betting on WinFS/Avalon then perhaps in 2017 we
wouldn't be taping our backends together with javascript.

~~~
enqk
this is a really misleading summary of the post.

~~~
alkonaut
Ok I started writing TL;DR and then wrote an opinion instead of an
abbreviation - granted (too late to remove TL;DR)

------
based2
Didnt they demo it with flash...

