Live data from Hacker News

How did the Win 95 user interface code get brought to the Windows NT code base?

devblogs.microsoft.com

61–70 of 114 posts

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#61
post #18

It's always funny to me, the more you go into the depth of windows settings, the older the UI that start to show up. Which makes sense, between the "if we change it we break it in some subtle way" and "we don't expose that in UI anymore so the new panel doesn't have it". My understanding is that windows want to move to a "you can't configure much of anything, unless you use group policy and then you set everything th…

Would be nice in theory, if MS didn't make Windows 10 and 11 outright disobey group policies.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#62

moving changes from Windows 95 to Windows NT involved manually doing three-way merges for all of the files that changed since the last drop. I suspect that this manual process was largely automated, but it was not as simple as a git merge. The first release of git was in 2005, around a decade after Windows 95.

and even then, it's easy for merges to turn into chaos, git has no semantic awareness (no surprises here) and sometimes similar patterns will end up collapsed as a single change and conflict

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#63
post #55
post #37

Earlier quoted context omitted.

I wonder what percentage of people on HN have ever used subversion or cvs, let alone older systems.

CVS was released in 1990. Subversion was released in 2000. Google still uses a clone of Perforce internally (and various wrappers of it). Perforce was released in 1995.

Perforce is standard in gamedev currently. As a programmer first and foremost, I prefer git but I've certainly come to appreciate the advantages of Perforce and it's an overall better fit for (bigger) game projects.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#64

Earlier quoted context omitted.

Funnily enough the Linux Kernel still use patches (and of course Git has helpers to create and import patches)

Don’t they get emailed patch from git? Sorry if I’m super ignorant here, it’s interesting to me if they do!

You can use `git format-patch` to export a range of commits from your local git tree as a set of patches. You can then use `git send-email` to send that patch set out to the appropriate mailing list and maintainers (or just do it in one step, send-email accepts a similar commit range instead of patch files). It talks directly to an SMTP server you have configured in your `.gitconfig` and sends out e-mail.

Of course, `git send-email` has a plethora of options, e.g. you'd typically add a cover letter for a patch set.

Also, in the Linux kernel tree, there are some additional helper scripts that you might want to run first, like `checkpatch.pl` for some basic sanity checks and `get_maintainer.pl` that tells you the relevant maintainers for the code your patch set touches, so you can add them to `--cc`.

The patches are reviewed/discussed on the mailing list that you sent them to.

On the receiving side, as a maintainer, you'd use `git am` (apply mail) that can import the commits from a set of mbox files into your local git tree.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#65
post #37

Earlier quoted context omitted.

I wonder what percentage of people on HN have ever used subversion or cvs, let alone older systems.

sccs, I was using it as late as the 90s. But the percentage is probably small, yes.

Sun used SCCS until they moved to Mercurial in the early 2000s.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#66

moving changes from Windows 95 to Windows NT involved manually doing three-way merges for all of the files that changed since the last drop. I suspect that this manual process was largely automated, but it was not as simple as a git merge. The first release of git was in 2005, around a decade after Windows 95.

Funny how fast Git became entrenched as the way of doing things, though. Around 2010 I said in passing, in a forum discussion about how a FOSS project was getting along, “…you’d think someone could send in a patch…”, and I immediately got flamed by several people because no one used patches any more.

> Funny how fast Git became entrenched as the way of doing things, though.

> ...and I immediately got flamed by several people because no one used patches any more.

How are these ideas connected? The intent of git is that you work with patches.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#67

Earlier quoted context omitted.

Funny how fast Git became entrenched as the way of doing things, though. Around 2010 I said in passing, in a forum discussion about how a FOSS project was getting along, “…you’d think someone could send in a patch…”, and I immediately got flamed by several people because no one used patches any more.

> Funny how fast Git became entrenched as the way of doing things, though. > ...and I immediately got flamed by several people because no one used patches any more. How are these ideas connected? The intent of git is that you work with patches.

For most people, git is that you work with pull requests, and already early on some bristled at the term “patches” which implied an obsolete way of working.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#68
@dang: It would be nice if we can add an exception to these URLs. Currently, the domain hint only says: "microsoft.com". It would be better if it said: "devblogs.microsoft.com/oldnewthing" or "microsoft.com/oldnewthing". I think we did something similar with forbes.com to illuminate when it was a blog (which are frequently low quality), instead of the official media website.

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#69

Really wish someone would just take the win95 UI code and tell an LLM to make it work on the win11 74 bit kernel

Yes please! Speaking of which, was it Window Blinds(?) that could back/forward port UI themes across various Windows versions? Are they still around?

Re: How did the Win 95 user interface code get brought to the Windows NT code base?

#70

What's the reason for moving from ASCII CHAR to UTF16 WCHAR rather than UTF8 CHAR? I wouldn't think any parts of the codebase that don't need to render the string or worry about character counts would need to be modified. Edit: https://devblogs.microsoft.com/oldnewthing/20190830-00/?p=10... seems the justification was that UTF-8 didn't exist yet? Not totally accurate, but it wasn't fully standardized. Also that other…

Oh god, this again. One word: "History". No one thought we would need more than 16 bits (65k chars) to represent all the world's written languages. Then it happened. There must be no less than one thousand individually authored blog posts and technical articles on this matter. Win32, Java, and Qt all suffer from the same UTF-16 internal representation. There has been endless discussion on the matter over the last 10 years about how to change these frameworks to use UTF-8 internal representation. It is a crazy hard problem.
Post reply on HN