Earlier quoted context omitted.
I don't remember much hungarian in CNF, I do remember a lot of whitespace... // // Comments are always surrounded both by empty comment lines // And by whitespace // // // The return type is always on its own line. // The function name always starts at column 0 and is whitespace delimited, // this (allegedly) was a consequence of search macros that Cutler used // int main ( int argc, char **argv) { // // Even a one l…
Thanks for the example! I especially found the commenting style and return type on its own line to be interesting. Regarding placement of curly braces, did you see them on their own line or at the end? This article seems to imply that CNF had braces at the end: https://blogs.msdn.microsoft.com/peterwie/2008/02/04/pedanti... I'm interested because it seems that lower-level systems programming at Microsoft put braces a…
The engineer’s engineer: Computer industry luminaries salute Dave Cutler
61–70 of 79 posts
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#62Earlier quoted context omitted.
And then Microsoft screwed up NT, over Cutler's objections, by putting in crap code from Windows 95 to make it "compatible" with programs that relied on quirks of Windows 95. It took many years to clean up that mess. (I started with Windows NT 3.51, which was a very nice system. The 16-bit emulation module was entirely optional, and I configured it off. Worked fine, as long as you bought applications certified for NT…
Did any of that crap code from Windows 95 go in the kernel, or was it just in user space?
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#63Earlier quoted context omitted.
After reading this, I have so much I would give my right arm to ask him (similar to my sentiments on other luminaries). His focus on quality is a trait that often seems to go unrewarded in his very institution, and I often struggle to reconcile the success I see achieved with the merit based success often insinuated, and the act of "getting things done" often seems blocked with politics and bureaucracy. Clearly howev…
> His focus on quality is a trait that often seems to go unrewarded In most companies focus on quality is something you're precluded from having, and usually it's in the same category as security and maintainability (refactoring). I've been in various planning meetings where I wasn't able to convince the dev team manager to allow time for such things, because they stubbornly wouldn't accept that these things will pay…
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#64Earlier quoted context omitted.
And then Microsoft screwed up NT, over Cutler's objections, by putting in crap code from Windows 95 to make it "compatible" with programs that relied on quirks of Windows 95. It took many years to clean up that mess. (I started with Windows NT 3.51, which was a very nice system. The 16-bit emulation module was entirely optional, and I configured it off. Worked fine, as long as you bought applications certified for NT…
Did any of that crap code from Windows 95 go in the kernel, or was it just in user space?
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#65Earlier quoted context omitted.
Not to detract from the achievement, but the transition to NT wasn't quite as rosy at that. It took many years for apps written for Windows 3.x/95/98/etc. to catch up and run correctly on NT. In the early years, app and game producers had a distinct bias in favour of Win9x (popular consumer OS) and to the detriment of NT (esoteric, less shiny business/server OS). The game compatibility situation, in particular, was q…
I ran an NT4 / 98 dual boot system for years, and in practice the only applications that required rebooting into 98 were games and things that had a hardware component (scanner, digitizer, ...). So in my recollection the transition was actually quite smooth, games left aside.
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#66Dave Cutler is a legend, but he keeps a relatively low profile, so it was nice to watch the rare new video interview with him at the bottom. I especially liked what he said at the end: "I have this little saying that the successful people in the world are the people that do the things that the unsuccessful ones won't. So I've always been this person that, you know.. I will build the system, I will fix the bugs, I wil…
I read Show Stopper that when it first came out, it's a great read. It's up there with Tracy Kidder's "Soul of a New Machine", which I first read when I was a Data General apprentice, and whilst spending free time in college on the campus VAX clone (a Systime 8750).
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#67Earlier quoted context omitted.
Did any of that crap code from Windows 95 go in the kernel, or was it just in user space?
They moved the entire graphics subsystem into kernel because it was "too slow" in user mode
[1] http://windowsitpro.com/windows-server/did-microsoft-shut-do...
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#68Earlier quoted context omitted.
Do you remember any details from Cutler Normal Form? I'd love to learn more about this. From a quick search I see that it uses braces at the end. I'd be curious if CNF encouraged subsystem prefixes (e.g. the "Ke" in "KeBugCheck"). I wonder if CNF had any influence on "Systems Hungarian" (e.g. "dwCreationFlags") that dominates the Win32 API or if that came as an accidental offshoot of Simonyi's "Application Hungarian"
I don't remember much hungarian in CNF, I do remember a lot of whitespace... // // Comments are always surrounded both by empty comment lines // And by whitespace // // // The return type is always on its own line. // The function name always starts at column 0 and is whitespace delimited, // this (allegedly) was a consequence of search macros that Cutler used // int main ( int argc, char **argv) { // // Even a one l…
if (argc == 2) {
//
// explanatory comment
//
}
Also, Dave hates Hungarian notation of any flavor.Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#69Earlier quoted context omitted.
I don't remember much hungarian in CNF, I do remember a lot of whitespace... // // Comments are always surrounded both by empty comment lines // And by whitespace // // // The return type is always on its own line. // The function name always starts at column 0 and is whitespace delimited, // this (allegedly) was a consequence of search macros that Cutler used // int main ( int argc, char **argv) { // // Even a one l…
Thanks for the example! I especially found the commenting style and return type on its own line to be interesting. Regarding placement of curly braces, did you see them on their own line or at the end? This article seems to imply that CNF had braces at the end: https://blogs.msdn.microsoft.com/peterwie/2008/02/04/pedanti... I'm interested because it seems that lower-level systems programming at Microsoft put braces a…
You can see more examples of CNF in the now open-sourced Windows-Driver-Frameworks: https://github.com/Microsoft/Windows-Driver-Frameworks
Re: The engineer’s engineer: Computer industry luminaries salute Dave Cutler
#70Earlier quoted context omitted.
> His focus on quality is a trait that often seems to go unrewarded In most companies focus on quality is something you're precluded from having, and usually it's in the same category as security and maintainability (refactoring). I've been in various planning meetings where I wasn't able to convince the dev team manager to allow time for such things, because they stubbornly wouldn't accept that these things will pay…
Refactoring can be its own source of problems. I've seen far too many refactorings that merely exchanged one mess for another. I'm a bit sympathetic to a manager who is skeptical of refactorings.