Hacker News new | ask | show | jobs
by my123 32 days ago
Windows CE late in its lifetime (CE 6.0) had that go away with per-process address spaces.
1 comments

CE 6 doesn't get enough love. It was an amazing OS that had a tiny runtime and a tiny on device foot print (it could get under 16MB iirc).

Too bad the tooling around it was so bad. I should do a writeup of why, it is an interesting case study in how poor extendability of tooling can hurt an entire company.

Part of the reason CE 6 didn't get much love is that everyone had been burned so many times by all the previous CE releases -- not to mention that CE 6 was far too late!

In the end, though, it was better than Mobile, but hindsight is 20/20.

Parent poster is probably conflating Windows CE, Windows Mobile, and Windows Phone.

Windows Mobile 5 was tremendously popular with over 100 phones from various manufacturers. But that was also around the time iPhone was released and by the time Windows Mobile 6 rolled out, the iPhone 3G/3GS was taking the world by storm. Windows Mobile 6.5 had a partially revamped UI but not enough to be competitive. From there we go to Windows Phone 7, 8, and 10 and that story is well known.

Me? Conflating? I think not.

We all dumped Windows CE for Windows Mobile. It was a lot of work and in the end it was an inferior product for pretty much every use case imaginable. The certification was not difficult but costly. Porting practically every application was a huge waste of time and money when they already worked well enough on WinCE.

Windows Mobile, built on WinCE, effectively cannibalized itself. We had Microsoft PMs and engineers tell us WinCE was a dead end. I moved onto to greener pastures before WinCE 6 but my understanding is that it triggered a crisis of faith within at least a few engineering organizations.

There were a number of things Windows Mobile excelled at compared to its predecessor but in particular it excelled at wasting corporate resources.

I worked on WM6, 6.5 and WP7.

WP would've had a better chance if the windows org hadn't murdered CE to move everything over to the Windows Kernel.

I’d be interested in reading that.
Tl;dr wince team forked visual studio 6 (I think it was 6, I don't recall it was long ago) to make a custom UI and a tool called platform builder.

This was needed because VS didn't have the extensibility needed to do this without source access.

The fork got more and more out of date and it is hard to justify spending resources on an internal tool like that. WinCE was incredible but what was shipped to customers was a tiny sliver of what the OS could really do.

WinCE was also source available, which let it sneak into some really cool places, but the license didn't allow a community to be built up around it. MIT licensed WinCE would have easily gone toe to toe with embedded Linux.

WinCE 6 Platform Builder was based on Visual Studio 2005 I think.

Building applications for WinCE 6 was also only supported with Visual Studio 2005 or 2008, which put a hard cap on available language features and development OS support. I had the thankless job of trying to port C++ code from Linux to WinCE 6 in 2014, and even then VS2008 felt way behind.

Ah that's what platform builder was.

I remember at the CE shop we had to copy around a WinXP VM to do the building in, because Platform builder wouldn't install on Win10 or something.

Huh? CE7 platform builder is just extension to stock VS2008. And it doesn't really do much, just few treeviews for selecting components. The real issue is the build system, which is some hideous combination of bat files and nmake.

Kernel is the only part that seems written with any sort of care, everything else is barely holding together with duct tape.

Earlier PBs were a complete hard fork of VS. I was out of the show by the time the CE7 PB came along.