Why Vista Took So Long
twofish writes, "Following on from Joel Spolsky's blog on the Windows Vista shutdown menu, Moishe Lettvin, a former member of the Windows Vista team (now at Google) who spent a year working on the menu, gives an insight into the process, and some indication as to what the approximately 24 people who worked on the shutdown menu actually did. Joel has responded in typically forthright fashion." From the last posting: "Every piece of evidence I've heard from developers inside Microsoft supports my theory that the company has become completely tangled up in bureaucracy, layers of management, meetings ad infinitum, and overstaffing. The only way Microsoft has managed to hire so many people has been by lowering their hiring standards significantly. In the early nineties Microsoft looked at IBM, especially the bloated OS/2 team, as a case study of what not to do; somehow in the fifteen year period from 1991–2006 they became the bloated monster that takes five years to ship an incoherent upgrade to their flagship product."
So, Microsoft has finally adopted the Linux development model?
The owls are not what they seem
Every single organization seems to follow this exact same path. Lean and mean at first, to fast and nimble second, to large but feature, to slow and bloated. The next step after this tends to be, jump at any and all projects to see if anything will stick progressing slowly down a spiral with a large change either acquisition by another company or dramatic slashing of middle-management workers and projects to focus on their core. Unfortunately I have yet to see a large organization that doesn't seem to go down something similar to this path.
I've been in a sysadmin job now for about 4 years.
I work with computers daily, both Windows and Linux (and a dabble with OSX).
Can I tell you the difference between sleep and hibernate? No.
What are the differences, and why do they matter to the average Joe? Why not just have the 'best' one and forget the other one?
For that matter, why are they duplicating the Lock option, seems pretty dumb to me.
Because it had to move through the digestive tract and on through the large intestine.
Doesn't "the approximately 24 people who worked on the shutdown menu" already tell you everything you need to know?
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
...uninstalled Vista instead? Now that would be a simple way to solve the matter.
It was those 18 month long sound effects.
People would want Vista if it were revolutionary. But you can't just sit down and say 'let's make something revolutionary' and then set up a timeline and claim to be able to create a revolution within that timeframe. Revolutions happen by accident if at all, not on purpose.
So why hurry? For money? In my experience hurrying to make money never works out.
TLF
I do not respond to cowards. Especially anonymous ones.
Sure. In five years after SP1 and SP2 and maybe SP3 are out to fix what's wrong with Windows Vista now and the hardware is able to run it fast. From what I seen, it's just a bloatware update to Windows XP. Meanwhile, I'm looking forward to Mac OS X Leopard. ;)
I don't get the new cult of never turning your PC off. If I'm away from my computer, it's usually for an extended period (IE - a night I'm not downloading crap, or a full day of work). Doesn't it make vastly more sense to not have the power supply fan running for those 8 hours? Or the HD randomly going idle and then spinning up again? When I'm done, I shut the machine down and turn off the power strip. Interested in why others don't, however.
Looking at the article... Is it just me or getting that menu to pop up for the shutdown options by that arrow seem really unintuitive? I've gotten that feeling all around while using vista. Nice looking in places, but much of what the windows/system is telling you is hard to make sense of.
From the article:
"Windows has a tree of repositories: developers check in to the nodes, and periodically the changes in the nodes are integrated up one level in the hierarchy. At a different periodicity, changes are integrated down the tree from the root to the nodes. In Windows, the node I was working on was 4 levels removed from the root. The periodicity of integration decayed exponentially and unpredictably as you approached the root so it ended up that it took between 1 and 3 months for my code to get to the root node, and some multiple of that for it to reach the other nodes."
Monotone, BitKeeper, git, bzr, and so on would all handle this situation efficiently and gracefully; all the repositories can sync to each other and none need be more than a few minutes out of date. Amazing that Microsoft's solution is so poor by comparison
Xenu loves you!
I've read other blogs in regards to Windows Vista, and from what I am gathering the primary reason why Windows Vista took so long to complete was because of management. Philip Su argued how the gargantuan amount of code included in Vista slowed it development dramatically, however I think that this strengthens my point and the point made in this article.
However, I'm not terribly surprised that this occurred for Vista. The higher execs at the company wanted Vista to be a revolution and had a clear and concise goal that they wanted this operating system to achieve. In order to do this, from what I've read, they needed to form many more separate divisions inside of the Windows division to concentrate on small parts of the operating system. This probably sounded like a good idea, but the problem was that none of their work was in sync with each other. Some had more work completed than others. Furthermore, rifts within divisions such as the one present here spurred disagreement after disagreement, that including the decision to switch the codebase of the OS to the one present in Server 2003 (something that from what I understand should have been decided from the beginning). With all of this, it was only inevitable that confusion and miscommunication would occur.
All in all, while I think Windows Vista is definitely more capable than Windows XP and warrants itself a much needed upgrade, I feel that the actual improvements of the operating system do not warrant a five-year delay. Okay, so the compositing manager, networking stack, and audio stack may have needed some time to complete, but five-years? I am not a programmer, so my impression may not carry a lot of weight, but being that Linux and UNIX based systems have already included some of these "future technologies," it becomes naive to deem this delay as acceptable.
cumputer
I bet I know what you use your PC for.
See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
1. As a monopoly, they define how much they charge.
/. waiting for next week's meeting?
2. Sales/Marketing's job is to force this product down OEM's throats. Good, bad, whatever, just buy it.
3. There is no accept or reject market mechanism. You WILL be buying Vista if you choose to buy a new PC later. It will be the very rare individual who switches to a mac or just slaps linux on their current box.
4. There is no incentive to establish a more productive developer environment.
Therefore, chaos and mismanagement won't ever harm the beast.
Joel's comments are fun to read, but the scale at which MS develops their OS makes it too easy to criticize from Joel's relatively tiny company.
Finally, How many hours did the developer spend/waste reading
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
While that can work with a web-based program/service, something as large as an OS which has to be installed on your computer is a completely different story.
In order to properly set up a windows box with all of the programs I want and the settings I prefer takes about a day. That's not something I want to do once a week/month/quarter.
Everything I need to know I learned by killing smart people and eating their brains.
"The only way Microsoft has managed to hire so many people has been by lowering their hiring standards significantly."
Leave it to Joel to turn every issue into a hiring standards one. The problem was that too many people were involved in the project, not their quality. Joel likes to stroke his ego and promote his company by claiming he always hires the best people. This issue afforded him another excuse for self-promotion.
I just get the idea of a really long flatulent fart..
These layers of complexity are added to many Vista functions, copying files, burning CDs, running applications that have not received Microsofts blessing, video/desktop settings...ugh! I give up. Give my my nice functional XP anyday. XP was the best thing they have done so far. I don't think I'll say that about Vista. I'll miss XP when I am forced to upgrade. I am an IT implentor and I am going to pesonally kill any move to Vista for as long as I can. My users will hate it, they just want to do their jobs, not relearn how to use a computer. I ran Vista 3 weeks and last weekend I hung it up and "upgraded" back to XP.
It runs perfectly fine on my 5 year old...
:P
You run Windows Vista on your kid?! Not even Linux users would do that!
Ok. I've been running vista on one machine or another for a while.. since early beta.. and am now running the release version on my main machine. There are quite a few headscratchers in here. I often tell my colleagues I'm like the little kid from the 6th sense.. except instead of dead people I see bugs. Things that annoy the crap out of me that have been there at least one maybe two versions of windows ago.
In the past days of clicking through endless options and dialogs to configure things such as encryption certificates, etc I often wondered if this was really better than editing a single line in an easy-to-find text file.
Start menu? Hardly ever used the damn thing. Shortcut keys with and I put the quicklaunch bar off to one side with the 40 or so frequently used programs I use.
Vista doesn't support dragging the quicklaunch bar off of the stat menu and off to one side because it was "confusing to end users." No one seems to have found a registry override as yet.
Vista doesn't handle symlinks properly. It used to be "c:\documents and settings" but now in vista it is c:\users. I see a clever little "C:\documents and settings" shortcut on my C drive. OOOOoo is this a symlink? No? I get Access Denied when trying to double-click. Opening the path via an API however works fine. Go figure.
BUGS. Features? Half-Features? Call them what you want. I think most technical folks that have to work on this know these problems exist but architecturally or bureaucratically they are hard or impossible to fix.
Often on XP, 2000, NT and 95 I would hit control-esc then R for run and type frequently used programs into run. I would say this is just an odd quirk about me and how I think menus take too long and too much work to do something, but now the run area has been replaced with a little place you type in stuff and through the magic of windows desktop search it finds whatever you type in the area above that normally occupied by program icons. The bug? You have to let it search. No matter what. Yeah, WTF? This works great on a home PC where you maybe have maybe 10,000 files. Network drives? Oh no. You can't just type n:\ then hit enter. You have to physically wait a sec for it to pull up n:\ in the list of programs above the start menu THEN hit enter. WOW, WHAT A GREAT FEATURE. No more control-esc n:\ enter for me. It is nowctrl+esc n:\ wait..wait..wait.. enter. Otherwise I get some random program like Notepad. Or Flash. Or Firefox.
On the one hand I can see how the start menu splaying itself all over your screen as you "drill down" to whatever the hell obscure program you need might be unappealing. On the other hand confining the entirety of all programs available to you to a 400x600 pixel window doesn't seem like a good fix.
This is just the start menu. Don't even get me started on the new file explorer, which is the least half-baked area of Vista in my opinion. Does Slashdot have an option for submitting a rant and getting comments? I'm sure I could go on all day.
I take all this as evidence that a lot of new features in vista are based on good ideas.. new paradigms in UI design.. it just seems that the vast majority are implemented poorly at best and implemented recklessly at worst. I would not expect this in 2006 when others are able to produce such polished and solid OSs. I would have to agree this seems like code-rot from the inside out probably due to the megalithic internal structure at MS
Does nayone have any info on how the OS X team works? I mean in a few years Apple did a complete paradigm shift from OS 9 to OS X on the OS level. I would be interesting to see what, if anything, they are doing better. Links or experiences would be nice.
And while I am at it, the start menu requires input from the kernal team. WTF? This is violating some very basic software design principles. The OS should just be basic services, then the applications, including the UI, should ride on top of the kernal without really caring much about how the kernal works.
I can see integration with the shell, but the kernal? It looks like MS policy of tight OS integration with the applications is biting them *hard*.
putting the 'B' in LGBTQ+
Not to most people. Certainly not past a *few*,*salient* choices. Past this point, more choices just add confusion. You do not need 255 different ways to tell a laptop to "close up for later use". A true geek would want to be questioned for each process about whether it needed to be persisted or killed. This is a problematic mindset.
That is all.
But you won't know you have a bug for months so the teams will code away making buggier software and not realizing it until the root sync. (Wait...why does that sound familiar...hrm...dunno...)
FTA, the shutdown menu relied on the shell team and the kernel team, and they only shared root. So how do you know if the menu's broken unless it's synced with everything? Can't test a new menu without the most recent kernel and shell build... Or you can, but once kernel re-syncs, who's to say menu won't up and break?
Wait until you read about the development of the "About" menu item!
--- What?
Yes, clearly you should be running NetBSD on that kid instead.
I read the internet for the articles.
Uh, Microsoft told us it would take less time. Therefore it's their fault when they miss their self-imposed deadline. They underestimated the difficulty of the project and therefore we should have nobody to blame but MS.
rm -rf
IBM is terminating the final remnants of their OS/2 staff at the end of December, 2006 as OS/2 takes its last few agonized dying breaths. What's interesting, though, is that over the last 5 years, there has been a skeleton crew of OS/2 people at IBM to support the last few OS/2 customers and this tiny crew was able to accomplish a lot of stuff to keep OS/2 updated and running on current hardware that a much larger crew probably could not have. They were even able to add a lot of stuff that was never even included in the last 'official' Warp 4 release such as the logical volume manager, journaling file system, updated kernel for multicore AMD, USB 2.0 support, UDF DVD support, etc. In this case, a small crew could do a lot more than a large staff and the final dying remnants of the OS/2 business at IBM became more like the original tiny Windows group at Microsoft.
The UI isn't all that terrible. Joel Spolsky is making a mountain out of a molehill. Look at the screenshot he gives in his article. Here's what I notice:
1) There's a power button. That shuts things down fully. ("I am going away from my computer now, but I'd like the power to be really off.")
2) There's a lock button. That leave it running, but keeps others out of your stuff. ("I am going away from my computer now.")
3) There's a menu of choices if you care to look at it, and the button is much smaller than the other two and has a nondescript arrow icon on it which makes it much less attractive to non-techie users.
Yes, his suggestions for combining lock with switch user and sleep with hibernate are good, but I don't think what they actually implemented is all that difficult to understand. His problem is that he's "one of us" and went looking for all the extra options. Most people will never click that arrow to make that menu appear. Ever. It's kind of unfair, even to Microsoft, to rag on something for being unfriendly to non-techies when non-techies are never going to even see it. Usually Joel Spolsky's observations are spot-on, but this time I'm going to have to give him an F for eFfort.
Microsoft has often fradulently claimed that the EU's directive to unbundle certain MS Apps from Windows is the cause of significant development delays.
Mac OS X and Windows XP working side by side to fight back the night.
Good God you have no sense of humor. Oooh oooh! Somebody insulted Linux!!!! Alert the authorities! Won't somebody PLEASE mod the GP???? Think of the children!
Incidentally, the Catholic Church also provided the model for Microsoft's DRM marketing:
It's not buggery, it's a feature!
They can't afford that Steve.
They're stuck with the other one
the more they over-think the plumbing the easier it is to stop up the pipe
First off all, he's retarded because in the screenshot he gives obviously there is one button for "off" and one for "lock" and one for "other". That's not a lot of choices. There are a lot of subtly different choices after you choose "other", but the answer isn't to have one option that somehow magically does everything right.
His "answer" is one choice that:
1) saves all memory to persistent storage (usb drive, hd, etc).
2) locks screen,
3) where you can: log in as a different user
4) or wait 30+ seconds for some kind of magic 'power off'
Except saving memory may take a long time (on say a 10mb/s flash drive) and if you have any tasks running like say a fileshare or bittorrent or whatever then you have to freeze them at the locked screen. And what does it mean to "power off"? Do you really want your bittorrent to stop because your computer just assumed after 30 seconds of idle it could shut down completely? If you actually want the power off you have to wait until it says "ok to turn power off" before unplugging the cord at full system power because your system doesn't even have an "off" button?
Solve the actual problem. People don't want to tell the computer what to do, they want to inform the computer of what they are doing. So instead of shutdown you have "Sign off". Instead of sleep you have "I'm Away". Instead of lock you have "I'm Idle". Like instant messengers. If people can say "Away->Extended Away" vs "Away->Eating" then this isn't a burden of choice at all. The computer can then magically do the right thing because it knows what you are going to do. Plus it can inform other computers of what you are doing, so you don't have to select "Eating" in gaim/trillian AND in the system menu.
Does Slashdot have an option for submitting a rant and getting comments?
You're already using it. Go right ahead...
you had me at #!
Would you have a 30 page argument on the merits of sleep vs. hibernate...
Joel obviously has no clue on what he is writing about... Any laptop user will tell you important basic difference between Sleep and Hibernate - Sleep is quick and still uses significant amount of power (yet takes less than 1 sec to power up), while hibernate takes 10-15 seconds to restore but uses very small amount of power. With my laptop I always use sleep, unless I on trip where Hibernate is very useful to squeze last ounce of battery power.
What he is also not understanding is that those are actually options, signified by them being located on option button-arrow which is supposed to provide you more options. It is actually one of the 3 main icons/choices, and is the smallest one - big icon is Power icon which shuts down your computer (60% of screen), lock is next to it and slightly smaller (25% of the screen, while option arrow is smallest (15% of the screen).
So why in the world would you actually want to lower the choices in Additional Options menu? He obviously ignores large power and lock buttons next to it and comes to the same conclusion as MS Devs did in his summarization on what should be there (Lock and Power, which are already there - funny stuff). Article makes no sense, and whoever posted it here also didnt take 10 seconds to actually read it.
Or is he debating on why do we even have options? Maybe when I become an moron, and start writing blog with my real name and picture, I will understand why would anyone be annoyed with developer giving you an option in form of 15 pixels wide button.
What competion do you speak of?
Mac market share that still stands at less than 10% of total market share despite being the superior mass-market OS?
Linux/BSD? Desktops.... Nope. Not even close.
Either you are astroturfing for MS to prop up the appearance of competition or you haven't examined the history of MS's share of the desktop computing market.
I urge you to consider the issue with a bit more objectivity.
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
Now I'm not a Microsoft employee, but even as an outsider I've seen some hints that it might be the "promiscuous dependency taking" that has delayed Vista.
1) Integration of Internet Explorer.
Microsoft claims that IE and Windows are inextricably linked together, and at least for Windows 2000 and newer this seems to be true. For instance, if you type a URL into the address bar of the Windows Explorer, it will show you web pages. IMHO a stupid design, the web browser should be an application, not a fixed part of the GUI.
2) The RPC service being responsible for things a "remote procedure call service" has no business handling.
In August 2003, a worm called MSBlast spread by exploiting a buffer overflow in the DCOM RPC service (see Wikipedia, http://en.wikipedia.org/wiki/MSBlast). At that time me, trying to be clever, thought:
"I don't want anyone remotely executing stuff on my PC anyway. I'll just switch the service off and be fine".
Lo and behold:
After turning off the RPC service, various local functions were dead as well. Including the Services menu in the control panel. I was lucky that I could reactivate the RPC service by manually editing the registry, else I would have spent a day reinstalling.
So it seems quite believable that Microsoft is choking itself by lack of discipline in designing Windows
C - the footgun of programming languages
In order for competition to have its benefic effects (on prices and innovation), all is necessary is that MS be afraid that, should it do some wrong move, it would loose market share to competitors.
You can tell something is very wrong when the lamentable Zune software doesn't work properly (or at all) in Vista beta. I mean what the hell is going on? How could they be this far wrong?
spoonerize "magic trackpad"
"In an almost spooky series of events, Microsoft has shadowed Apple's brush with death, making the exact same set of moves exactly ten years after Apple:
- In the mid 90s, Microsoft rapidly built upon its past success with MS-DOS to establish Windows as a vast empire
...just as Apple used the success of the Apple II as a stepping stone to launch the Mac in the mid 80s.
- From 1995 to 2001, Microsoft rapidly delivered advancements to its desktop Windows product
...just as Apple rapidly advanced the Mac System Software from 1985-1991.
- In 2001, Microsoft began announcing technologies that would be released as part of Longhorn and later Blackcomb
...just as Apple described new technologies intended for Copland and Gershwin a decade prior.
- From 2002-2006, Microsoft dropped features, changed plans, and started over several times in protracted efforts to ship Longhorn
...just as Apple had fumbled around with Copland ten years earlier.
- By 2006, it was obvious that Microsoft's Longhorn was not going to live up to the hype, and would really be just a refresh of the existing Windows XP
...just as Copland had been gutted in 1996 and its salvaged remains delivered as the optimistically named Mac OS 8.
- Microsoft outed Blackcomb as vaporware
...just as Apple admitted that Gershwin had never been anything but a list of deferred goals ten years earlier.
What's Next? The only difference between Apple and Microsoft is that today, in the final days of 2006, there is no equivalent to a 1996 NeXT waiting in the wings to swoop down and fix Microsoft's mess. Leopard vs Vista 5: Development ChallengesA true geek probably wouldn't bother with something that took 2-3 mouse-clicks to do if there was a keystroke-combo that did the job. The problem is the semi-geek who wants to have every option available but can't remember something slightly esoteric like "hold shift when you click the power button icon" to access those "advanced" features.
To appease this type of geek wannabe, MS makes all 7 options available via the shut down menu. However, if the "power" and "lock" icon do what they seem they would do, then what's the beef. Does the fact that you *can* click the little arrow to access 5 more options cause convulsions in the techno-illiterate crowd? I have more of an issue with the "on/off" icon if the point is to make things easy for non-geeks since many have no clue what that means.
http://www.strangehorizons.com/2004/20040405/badge r.shtml
Steve Ballmer, is that you?
Vista's UI is nice, and I like that it finally uses non-boneheaded names for system directories (e.g. c:\users\blincoln\documents instead of c:\documents and settings\blincoln\reparse point that sometimes shows as 'my documents' and others as 'blincoln's documents).
However, no way is that worth the upgrade price.
"...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
What is a buttseck, and why would you want to shave it?
You should be looking at this more objectively, not the GP.
First of all, has Mac's market share gone down any time recently? There's a trend to look at, not snapshot figures.
Another example - is the Linux/BSD desktop getting worse, is it losing more users than it's gaining? Where was it five years ago? Or ten years ago? How could you really tell for that matter - what counts as FOSS "market share"? Ubuntu CD download counts? Come on, market share is a fallacious argument when discussing MS' competition, not so much with regards to Mac admittedly. Newegg alone sells $millions in computer hardware daily; is all of that system hardware being counted against MS' totals? Or the people who buy a legit OEM XP to run games (like me) and use Linux for 97% of my other tasks?
I know that neither of my folks were using Linux even two years ago, but they are now... given no support, I can't possibly imagine how the three of us together would count in any market share statistics - but together we make up five computers which run Linux as a desktop OS.
I also see a very surprising number of laptops with Linux on them at school - apparently a lot of students have discovered the giant multiple-DVD-sized heap of free software that you get with most FOSS OS'; things like circuit simulators, databases, publishing packages, music composition software, development tools, a gazillion little addictive games for the not-so-hardcore gamers (parents love those too btw), etc.
Now all that said, do you think MS will deliver an even better Windows any time sooner than 5 years? How long will it take them to get all these "features" working together that were supposed to be in Vista 3 years ago? They've hyped Vista through the stars, they can't exactly come out in a year with a new Windows... they could make a very drastic service pack and charge people for it, which is actually the most likely case from what I've heard.
Windows really does have a lot of competitive pressure on it.
Not to marginalize Joel or anything, but you can configure all behaivors. Like if you want your computer to sleep on shut lid it will. The default is it sleeps. Forcing it to one would be dumb. Take my case: I have dual monitors at home not using my laptops LCD. I want my lid closed my cat sleeps on it:) It was a really simple change to make. While someone else would want it to just turn off. MOST people just want it to sleep as they walk to class or between clients. You can have it do whatever you want. Why should microsoft decide what is best for me? That's what Joel is suggesting. Saying Vista sucks cause you don't like how they did the UI design of the power off buttons is kinda like complaining you don't the ash tray design in a BMW. And his comment about how he rather restart than log off a user and on as another is ignorant of the majority of the PC market. Most people it takes a minute or more to boot up. The log off and shut down are far more graceful in Vista. The user is finally in total control. The user could bring it down at break neck speed or save open documents without this enforced deadline XP caused. Maybe we should educate the user about a smart product instead dumbing down the product for ignorance we percieve in a user.
And I thought that thing was complicated enough just with just the Log Out/Switch/Sleep/Shutdown options! No wonder it's taking so long!
Of course, the decision to not re-write and keep ugly legacy code itself (rather than just the API) isn't always the correct one either. The judgement of what is "best" is tough for managers and coders. Though I've only started to listen to the "pragmatic" arguments for about a year and a half or so, the best thing I've found to answer this question is unit testing. And I don't particularly like writing unit tests.
If there are unit tests that have already been written, I can see just what sort of implementation problems happened in the past. When I want to re-write code, I'm usually thinking in the stratosphere about how the new approach will make everything better, but looking over unit tests written by other developers often brings me back down to earth and I see that my perfect solution may wind up retreading similar problems in an unfamiliar way. That's even more important when the customer sees an old problem re-surface in new code: they've already been down this road and they'll be out for blood that we're backpedaling and charging them for regression rather than development.
Since unit tests are a new practice at my work, they aren't always written for legacy code to make this judgement. In that case, I find that forcing myself to sit down and write some unit tests is a good thing. Though writing them is on par with my desire to floss, I have to admit that it is a good practice. It scratches my itch to actually dig into the details and write code. After I've really looked at the failure possibilities, it really helps me make a better decision to rewrite or not. And whether we choose to rewrite now or not, it's useful in the future whether the decision is made to dump or rewrite.
I am curious about the testing practices for major products like Vista and OS X are standardized and used. I know Microsoft has a huge testing infrastructure, but I wonder if the delays in Vista have been due to too much influence of the testers, or too little, or no net effect at all. I was under the impression that Apple's testing was much better, but some major, obvious regressions lately make me think that perhaps Apple simply has a smaller "legacy" of custom code to support. Do big companies even have sound testing practices and require their use?
As a final note though, I prefer to write unit tests on other people's code since mine, of course, never needs them :-)
I doubt its because the SCC cannot handle the physical number of users (5000 users, for MS and its unlimited hardware budget, I mean, come on, no way) but the way these users interact with each other.
If you have 5000 devs checking stuff in, if 1 of them does something that breaks the nightly build just once each, then you'll actually never produce anything the ever compiles. Instead you have to come up with some solution to this issue. Options are: make developers work on totally separate products (eg, Media Player has no dependencies on anything in the kernel, shell etc so they can do what they like knowing they won't break anything other that Media Player), or make devs work on subtrees.
Whilst the first is arguably the better option, its not always feasible, and I think MS way of working means that you end up with dependencies between projects - eg, the Shutdown UI was dependent on features in the Shell and Kernel even if these dependencies were made by contract (eg, Shutdown team said 'we need the following functionality, once you've implemented it we'll finish our job') the bureaucracy of MS meant that wasn't possible (ie, you can't be paid to sit around for a month waiting for the kernel team to fulfill their contract with you).
So, the 2nd option was utilised - you check your stuff into a branch that gets merged once you've completed your work. The trouble is that the project is so large that you're working on a branch that is branched off a branch, which in turn is branched.
Linux works the same way - no-one works off the main trunk, you'd check work into (eg) a test branch that gets merged into a unstable one, that then gets merged into the root.
... and, of course, with a license that allows the user to redistribute freely the modified version so anyone can benefit from the improvements made.
The trademark on duke nukem forever has expired
it has changed to duke nukem never® according to british law
Hmmmm. I wonder.
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
Personally, I dislike the Mac OS X interface, and prefer the original system 6/7 interface, the Apple HIG people did lots of great work, and it showed. But in any case, the above quote said all that needed to be said.
Windows 95 = Mac 84, etc.
(The real problem we face today, however, is that nowhere is a new Doug Engelbart, or Alan Kay, or Jef Raskin, or Bruce Tognazzini, or Ted Nelson, etc to be found. Human interface research seems to have stagnated. Apparantly the interface we use now is good enough - worse is always better. What a pity. Oh well, I can get by OK with XFCE and some xterms on my NetBSD laptop.)
-Lasse
Its a trick. Get an axe. http://en.wikipedia.org/wiki/Features_new_to_Windo ws_Vista#Digital_Rights_Management