Live data from Hacker News

Windows: A software engineering odyssey (2000)

usenix.org

51–60 of 104 posts

Re: Windows: A software engineering odyssey (2000)

#51

What's crazy about this is that it sounds like the people writing the code haven't got the slightest hope of even compiling it, let alone running it. They're just writing code, crossing their fingers, and committing it. It's a wonder the thing ever worked at all.

There’s a slide saying few developers could build a whole instance of win2000, but when working at this scale you rarely build everything from scratch locally. You work on your module and the build system will have to build everything nightly. I don’t read this as devs throwing completely unchecked code into source control.

I was a dev on the Visual C++ team at this time (1990s). Part of making largish compiler changes would involve throwing a test compiler at all of WinNT and seeing what broke in the build process. It was challenging to do so, to say the least. Just getting the whole mess set up was a struggle for me.

Of course, things got better as time went on thanks to process improvement. I started in 1991, and I remember driving over to the NT team's building with a large (for the time) hard drive to grab a physical copy of the source tree. This was before NT was first released - when you tried running your build and went to shut it down, you had to watch the activity LED on the drive flash a few times to be sure the cache had synced to disk and powering down was safe. Fast forward a few years, and building all of WinNT was more routine, to the point it was just another component built by the automated VC++ checkin procedure (we called it submitting code to The Gauntlet), along with Excel and other Office components.

I might be misremembering if NT was part of Gauntlet, but it was definitely something we could and would build as desired.

Re: Windows: A software engineering odyssey (2000)

#52
post #38

Earlier quoted context omitted.

And some people still use WinXP, Win 7, Win 8 etc...

Later Windowses are full blown spyware with ads. If I had to use Windows for some reason it would be 7.

It's not difficult to de-shittify 10/11. There's a tool that automatically does it call ShutUp10.

It's arguably a bit shit from a business perspective, but has no real impact on power-users day to day.

Re: Windows: A software engineering odyssey (2000)

#53

Can’t imagine how these Windows engineers feel about the enshitification of their baby. So much time invested into it - must be hard to see it taking this current trajectory.

A core piece of enshitification though is that a product becomes Less Useful over time - Reddit and Twitter lose third party apps, Apple is making its desktop OS more "secure" (read: convoluted and does less stuff) every release. The things you Liked about it, goes away. Windows, despite its legitimately annoying monetization strategy, has absolutely done the opposite - it does More Stuff every release, and the stuff…

That's a really interesting take. Thanks!

Re: Windows: A software engineering odyssey (2000)

#54
post #27

Earlier quoted context omitted.

> Remember MSN and baking IE into the OS Yeat another thing where Microsoft was ahead of the curve, nowadays we get Electron (aka Chrome) all over the place. People even buy laptops where the browser turned into the OS!

Some of us wipe that and install Linux because the hardware is cheap.

And just like with Windows, contribute to the sales number.

Re: Windows: A software engineering odyssey (2000)

#55
post #50

Earlier quoted context omitted.

There’s a slide saying few developers could build a whole instance of win2000, but when working at this scale you rarely build everything from scratch locally. You work on your module and the build system will have to build everything nightly. I don’t read this as devs throwing completely unchecked code into source control.

Certainly building everything from scratch is time consuming, but why should it be difficult? Windows 2000 was developed before I became a programmer, but not too many years later (2003) I was a teenager running Gentoo, and while it was time consuming to build everything from scratch, it was easy and reliable. It was also quite easy to switch out or hack on individual parts. In particular I remember fiddling endlessl…

I have no information here, but I wouldn’t be surprised if in 2003 Windows had an order of magnitude more code in it than a Linux distribution. Don’t forget, back then, Windows NT had support for these runtimes: Win32, Win16, DOS, and POSIX. Also, Windows had drivers for a lot more hardware than Linux did. Add in all the management stuff (Active Directory came about around this time), and I think it almost had to have substantially more code than Linux.

Re: Windows: A software engineering odyssey (2000)

#56
post #24
post #20

Earlier quoted context omitted.

Branching is an overstatement. SourceDepot didn't _really_ do branching. You had patches you'd float with "changelists" on top of enlistments. Each part large enough in thhe org (for example Excel or Word) gets a "branch" and it gets "forward integrated" and "reverse integrated" to the main "branch". From your perspective the tool used to submit stuff (usubmit usually) you just push to the same branch as everyone els…

SD was basically P4 with syntactic sugar. You likely didn't have permissions to create branches. Windows sources 20 years ago used to have a ridiculously complicated branching strategy, driven by middle managers and made worse by having actual devs sneak around the edges to do "buddy builds" of changes with some godawful batch file that I heard may have originated with RaymondC (who was exactly the kind of person to…

> You likely didn't have permissions to create branches

I did, it was just a very long and complicated process. You had to set up a lot of tooling for it and you were strongly discouraged from doing it so in the year of SourceDepot (on Office) I saw this option being used exactly once.

Re: Windows: A software engineering odyssey (2000)

#57
post #49
post #17

Earlier quoted context omitted.

Am still in Microsoft, was part of that transition and can confirm it. We did move stuff we could to other git repos inside Microsoft. SourceDepot is still running for some stuff and is still awful but git is working great. > Also, they have about 10k people working on Windows (and devices) and about 10k people working on ads nowadays (that paints a good story of priorities). I'm not sure I'm privvy to all informatio…

If you have a moment, a tangential question. A little while ago I read a very interesting comment responding to some general "why is this and that broken [in Windows]", that said > Windows is only $5m a year https://news.ycombinator.com/item?id=34934946 I was very impressed to determine that was only $416k/mo. Since I read that I've been like "that can't be right." (There's certainly no qualification of scope to work…

I'm just a software engineer working for Microsoft and I'm on HN since I worked on 3 startups (one YC funded) and do a ton of open source (in my free time, Microsoft funds none of it).

I enjoy working for Microsoft (mostly) but I have _no idea_ how our sales looks like.

Re: Windows: A software engineering odyssey (2000)

#58

Earlier quoted context omitted.

Windows 95 and 98 loved to crash because a fly at the other corner of the room moved an atom which hurt the OS' feelings momentarily. Ran out of memory? BAM. An official driver from Intel or nVidia or ATI did something slightly off-time because silicon decided to wait a clock for something, BAM. You had a professional capture card with high bandwidth for that time, and you wanted to capture a video, BAM. A blue scree…

Oh yeah it did. The amount of times when you are writing something in Word, then figure it has been 15 minutes, I should save. Only to move the mouse to the save icon only to have the entire system just stop. No error just a total lock. This is why you can tell if people grew up in that era, you have muscle memeoy of CRTL + S every few minutes burned into your soul.

> you have muscle memeoy of CRTL + S every few minutes burned into your soul.

I'm honestly afraid that my child will born with it and do that pinky-midfinger combo on air like playing air guitar on day 1.

Re: Windows: A software engineering odyssey (2000)

#59

Zachary's Show Stopper covers this ground in a very readable manner, and gives a lot of useful detail on Dave Cutler's design ideas, and DEC VAX VMS background.

Not sure why you were downvoted, but that book was excellent. Shows that people 30 years ago were having precisely the same problems on big software projects we have today.

Re: Windows: A software engineering odyssey (2000)

#60
post #17
post #6

Source Depot was still a thing in Office as of last year when they finally transitioned to Git. Windows started transitioning to Git 5 years ago. Also, they have about 10k people working on Windows (and devices) and about 10k people working on ads nowadays (that paints a good story of priorities). Source: 2nd hand from MS friends

Am still in Microsoft, was part of that transition and can confirm it. We did move stuff we could to other git repos inside Microsoft. SourceDepot is still running for some stuff and is still awful but git is working great. > Also, they have about 10k people working on Windows (and devices) and about 10k people working on ads nowadays (that paints a good story of priorities). I'm not sure I'm privvy to all informatio…

> I'm not sure I'm privvy to all information but looking at the org chart this part is false. The ads org is much much smaller than E+D.

Look at Panos' org and compare to the WebXT org (both under E+D).

Post reply on HN