When you change the insides, nobody notices

Date:May 25, 2004 / year-entry #205
Tags:history
Orig Link:https://blogs.msdn.microsoft.com/oldnewthing/20040525-00/?p=39193
Comments:    74
Summary:I find it ironic when people complain that Calc and Notepad haven't changed. In fact, both programs have changed. (Notepad gained some additional menu and status bar options. Calc got a severe workover.) I wouldn't be surprised if these are the same people who complain, "Why does Microsoft spend all its effort on making Windows...

I find it ironic when people complain that Calc and Notepad haven't changed. In fact, both programs have changed. (Notepad gained some additional menu and status bar options. Calc got a severe workover.)

I wouldn't be surprised if these are the same people who complain, "Why does Microsoft spend all its effort on making Windows 'look cool'? They should spend all their efforts on making technical improvements and just stop making visual improvements."

And with Calc, that's exactly what happened: Massive technical improvements. No visual improvement. And nobody noticed. In fact, the complaints just keep coming. "Look at Calc, same as it always was."

The innards of Calc - the arithmetic engine - was completely thrown away and rewritten from scratch. The standard IEEE floating point library was replaced with an arbitrary-precision arithmetic library. This was done after people kept writing ha-ha articles about how Calc couldn't do decimal arithmetic correctly, that for example computing 10.21 - 10.2 resulted in 0.0100000000000016.

(These all came from people who didn't understand how computers handle floating point. I have a future entry planned to go into floating point representations in more detail.)

Today, Calc's internal computations are done with infinite precision for basic operations (addition, subtraction, multiplication, division) and 32 digits of precision for advanced operations (square root, transcendental operators).

Try it: 1 / 3 * 10000000000 - 3333333333 =. The result is one third exactly. Type 1/x - 3 = and you get zero back. (Of course, if you don't believe that, then repeat the sequence "* 10000000000 - 3333333333 =" until you're bored and notice that the answer always comes back as 0.33333333333333333333333333333333. If it were fixed-precision, then the 3's would eventually stop coming.)

Thirty-two positions of precision for inexact results not good enough? The Power Calculator PowerToy uses the same arithmetic engine as Calc and lets you crank the precision to an unimaginable 512 digits.

Anyway, my point is that - whether you like it or not - if you don't change the UI, nobody notices. That's so much effort is spent on new UI.


Comments (74)
  1. Scott says:

    So was it fixed because it made Microsoft look bad or because it was just done wrong in the first place? :)

  2. Alex says:

    The coolest change in Notepad was adding of shortcuts for Save function. Amen!

  3. Mike Weiss says:

    I, for one, DID notice the Notepad changes. THANK YOU! Being the primary development enviroment in Windows ;) I was very happy with recent changes to the menu hot-keys. I think it was the ctrl-f and ctrl-h keys that were added. What I did in the past was alter the resource file on Notepad.exe to "fix" this.

  4. Ross says:

    Raymond said : These all came from people who didn’t understand how computers handle floating point. I have a future entry planned to go into floating point representations in more detail.

    But to be fair should users actually care how computers handle it. I would guess they just want a calculator that works the way they expect it to – the same way their handheld calculator (no I don’t mean Palm) works.

  5. Doug says:

    Basically, when you have an army of people looking for any excuse to attack you, anything you do or don’t do can be twisted.

    Picking on Calc and Notepad just proves that the picker has an extremist viewpoint, and is looking for anything to attack on.

    Kinda like religion. Some of those within MS have the MS religion. Some of those outside MS have the anti-MS religion.

    Me? I don’t particularly like or dislike MS. I just try to get the job done. Sometimes MS helps, sometimes gets in the way. And in the last few years has made some positive changes.

  6. Mike Dunn says:

    This also explains why the Office team reinvents the toolbars every version. ;)

  7. Anon says:

    On the subject of notepad, you should check out notepad2 – notepad with syntax highlighting 8)

    http://www.flos-freeware.ch/notepad2.html

  8. "These all came from people who didn’t understand how computers handle floating point. I have a future entry planned to go into floating point representations in more detail."

    I think that this article explains it perfectly :)

    http://falafelsoft.com/Flogs/julian/articles/FloatEquality.aspx

    Oh and for a notepad replacement I use notetab, http://www.notetab.com.

    Much much better.

  9. Centaur says:

    Yesterday, I was tempted to cook up a calculator that would do time spans, as in 00:02:41.745 – 00:02:40.500 = 00:00:01.245. But then laziness took over and it occured to me that hours:minutes:seconds relate the same as degrees:minutes:seconds and so, 0.0241745 [i]nv d[m]s [-] 0.0240500 [i]nv d[m]s [=] d[m]s gives 0.0001245. When you get used to reading it as “0h 00m 01s 245”, it becomes quite natural.

    Now, if only Calc showed the keyboard shortcuts as underlined letters… (No, a resource editor doesn’t help.)

  10. nojer2 says:

    I certainly noticed the improvements to notepad in the newer versions of windows, with huge sigh of relief.

    Call it anti-MS religion if you like, but I still find it absolutely staggering that this app was included in all the various versions of windows for over a decade without a ‘Ctrl-F’ keyboard shortcut. I mean jesus, has Microsoft only just hired their first useability analysts?!!

    Currently I am forced to work on an NT4 workstation, so I am still living with this lagacy of MS incompetence.

  11. 4nd3r$ says:

    I have always used resource hacker to add (imho the missing) Ctrl+ shortcuts

  12. "Basically, when you have an army of people looking for any excuse to attack you, anything you do or don’t do can be twisted.

    Picking on Calc and Notepad just proves that the picker has an extremist viewpoint, and is looking for anything to attack on."

    Heh, well I use to attack Microsoft for Notepad but I like most of Windows very well. So you’re quite wrong with that statement, or maybe I’m just the exception of the rule :)

    What’s wrong with wishing a small and useable texteditor from the operating system? I use Notepad quite often to edit small textfiles, but it sucks to handle big files. For example I had a database dump which was a textfile ~200MB big. Notepad would use a loooong time to open it, so I switched to VIM instead – where the same file opened in a few seconds. In a lot of other areas VIM is much more powerful then notepad.

    Also some of the new features in Notepad are quite hidden. When you select ‘word wrap’ then Notepad disables the statusbar and goto feature. I can’t find any reference to this in the help document, but happily someone commented about this earlier in this blog.

    So, I’ll say notepad is good but there is a lot more they could add to make it more useful, such as:

    – Option to replace tab with x spaces

    – ‘Open in new window’ command

    – Auto-indent option

    – Make file loading much quicker

    With those features I’d be very happy to use it when having to edit some text files for example fixing my parents computer :). IMO it should still be lightweight and don’t replace the Visual Studio editor.

    Would be very nice to also see support for regexp. in search and search&replace. Hm, thinking of it – is the search&replace feature new for Windows XP too?

  13. Raymond Chen says:

    Notepad was never meant to be anything more than a simple text editor. (It’s just an edit control with a menu bar.) If you want a fancy one, there are plenty of alternatives to choose from.

  14. Max Battcher says:

    Personally, if anything, I’d rather see a more robust Text Edit control beyond the normal and RTF variants. Both have buffers that don’t grow well, and poor formatting control. Oftentimes when you see a "text edit" box with formatting your dealing with MSHTML, Word or otherwise Owner Drawn. Why not an extensible "mini-Visual Studio Text Area" at the Win32 API level, or at the very least, the WinForms level? THEN you can build Notepad around that… keep it’s small size and memory requirements, but use a nicer text box…

  15. Raymond Chen says:

    When designing an operating system, you have to decide where to draw the line between OS and application. No matter where you draw this line, some people will complain that it is too far forward; others will complain that it is too far back.

  16. Mike Dimmick says:

    Typically the users will complain it’s too far back, and your competitors complain it’s too far forward ;)

    There’s not much difference between a just-sufficient web browser and a full-featured web browser.

  17. slide says:

    Speaking of Notepad, why does auto-scroll work oddly in Notepad? When auto-scrolling (I have to deal with huge .TXT files at work), NP will scroll slowly and with fits and starts as I move the cursor away from the neutral point. If I stop moving the cursor, the document scrolls by glacially (regardless of distance from the neutral point), until I reach some point (it never seems to be the same point) and then the text will scroll by so fast that I can reach the end of 7 meg text file in a second or two. What’s going on there?

  18. Raymond Chen says:

    As I noted before, Notepad is an edit control with a menu. So your complaint is really with the system edit control, not with Notepad.

  19. The Other John says:

    I for one noticed the improvements to calc’s accuracy, and am HUGELY grateful. It has lodged itself permanently at the top of my "most used" list on XP at work (and I didn’t even pin it there). I frequently need to do rather bizarre math as part of my job, and calc is so nice to have readily available.

    The first time I noticed the infinite precision I practically yelled for joy. I then spent a good 10 minutes trying to make it fail, and I couldn’t.

    As someone who has to do deal with all sorts of floating point precision issues in my code, I appreciate the effort taken to make this work right :)

  20. jim crawford says:

    <i>Picking on Calc and Notepad just proves that the picker has an extremist viewpoint, and is looking for anything to attack on.<i>

    Only if you think the quality of calc and notepad doesn’t matter. Or you think they were good enough in Windows 95.

    I, personally, get this a lot. I get the "you’re just looking for things to attack" line a lot. But actually, no, I just get annoyed by stupidity very easily. Frustration in any program matters.

    I haven’t been paying much attention to calc, but notepad has seen considerable improvement … still waiting for it to be able to open files with unix line endings, though! It still takes a frustratingly long time for the DOS environment to load so I can use edit to look at a file.

  21. Scott says:

    If the system edit control doesn’t solve the problems correctly, wasn’t it a bad choice for notepad?

  22. C-J Berg says:

    I know actually did notice these changes, both of them! :)

    There are, however, two Shell-related things that really puzzles me:

    – The Add Font-dialog, which still looks like something written for 16-bit Windows – it’s nothing but awful!

    – The speed, or rather the total lack of it, of the Add/Remove Programs dialog – how could it pass QA unnoticed? At least there ought to be a "don’t read icons & other useless stuff for each and every installed program, because I really care more about speed" option.

    And then of course there are all those dialogs that still aren’t resizable. Shouldn’t an operating system of today make as many as possible of its standard dialogs resizable? It’s not that hard. :)

  23. Raymond Chen says:

    The system edit control was the only thing available in 1985. If you prefer the rich text control, you can use Wordpad.

    As for unix line endings: Again, this is a limitation of the system edit control. Notepad could try to "pretty up" the lines before handing them to the system edit control, but then you have the problem of files that contain a mix of unix and Win32 line endings.

    Yes, the Add Fonts dialog was written for 16-bit Windows. But it turns out that almost nobody installs fonts that way any more. Which Longhorn feature would you cut to make room to improve the Add Fonts dialog?

    Add/Remove Programs: It reads the icons only once then caches them. It comes up for me in a few seconds.

    Creating a resizable dialog is very hard work under the Win32 model. WinFX makes it a snap.

  24. Chris Sells says:

    Raymond, is the arbitrary-precision library used in calc and powercalc available for use in other apps?

  25. Scott says:

    You do have to wonder who came up with that design for Add/Remove Programs. It’s got a very "invent a new control" feel. And has most of the negatives of that, like not allowing multi-selection.

    One very weird feature of that dialog is that it fills in the list of programs incrementally

    (and may take 15-20 seconds to do that), then when it completes populating the list it resets the list selection back to the first item. So even if you’ve selected an item off the partial list, it loses the selection. (And because the rows expand when selected, the item you had selected isn’t even in the same place as it was before.) Give me a standard control anyday.

  26. More on-topic, what are the chances of having a paper tape added to calc.

    My wife’s been using the mac calculator, and she adores the paper tape – it’s saved her a huge amount of work on more than one occasion :)

  27. x says:

    New features are nice, but why do long-standing bugs like this one go unfixed:

    http://blogs.msdn.com/oldnewthing/archive/2003/11/19/55744.aspx#55753

    This behavior has been present since NT 4.0 (!) and remains even in XP SP2. Windows 9x’s notepad.exe doesn’t exhibit this problem, even when run on one of these newer OSes.

  28. David Candy says:

    I edit the menu resource, put in a line break, put menu items on the second row of the menu bar and I have a toolbar.

    I didn’t realise notepad used an edit control in 2000/XP. I thought they must be using a RTF edit in plain text mode (eg a wordpad type text editor).

  29. David Candy says:

    The 8088/6 had BCD functions from it’s calculator days. Why not program in BCD and get a real calculator. I only use calc for arithmetic and decimal/hex conversions. Does anything use the BCD functions.

  30. What’s wrong with wishing a small and

    > useable texteditor from the operating system?

    There is a veritable industry of code and general text editors out there; take your pick: http://www.vbbox.com/tools/editors/content.asp?c=1

    Complaining about Notepad is not only pointless, it’s utterly dumb. It’s the equivalent of the clueless user that has never touched his/her start menu, has 160 icons on the desktop and a tray area that takes up half the taskbar. If Microsoft had included a full-blown code editor like TextPad or vim in Windows everyone would be crying "monopoly" and tearing out their hair.

  31. pds says:

    I noticed the addition of CTRL-F to notepad, but I’m happier with the changes to WordPad (additional text formats available). I always used WordPad anyway over Notepad – Notepad used different rules for deciding what is considered a ‘word’ than WordPad–I don’t know if they’ve changed/fixed this in the recent version, but CTRL+SHIFT+RIGHTARROW selected a WHOLE LOT more than I wanted to. WordPad is more natural.

    Also, they updated Minesweeper so that I can’t cheat anymore. Previously, I could click-and-hold on the title bar (as if to drag the window) and it would stop the clock, giving me precious seconds. Now, no dice.

  32. Klaus: At my own system I have lot’s of editors available. I don’t have a problem there :)

    But what does that help when I’m for example visiting my brother and he wants me to fix something? If I’ll decide to write a script to fix it… then I’m really gonna miss VI or something similar ;).

    Also it’s not good to install more third-party software then necessary at test systems and similar. So, you end up with having Notepad or Wordpad available there too…

    Maybe I should just copy some free text editors to a USB keychain or something similar and be happy with that solution :)

    PS: Notepad could open files quicker, using file mapping (correct me if I’m wrong…), without any changes to the edit control. A nice inside change :)

  33. Raymond Chen says:

    I don’t see how file mapping would make things any faster. It all has to get parsed by the edit control one way or another.

  34. pds: If you want to cheat in winmine then you can easily navigate to HKCUSoftwareMicrosoftWinmine and edit the highscore there :)

  35. Creating a resizable dialog is very hard work under the Win32 model. WinFX makes it a snap.

    Eh? You need a new operating system to write resizable dialogs??? Why, if you want it RIGHT NOW, use Delphi!

    Go Delphi! ;o)

  36. Andreas: Ultimately it comes down to what you want in an OS. Microsoft ships a subset of accessories that are good enough for 90% of people out there. I stand by my statement: Microsoft has to be very careful what it includes with the base distribution. If they had shipped a full-fledged text editor someone would have accused them of monopolistic strong-arming and the usual evil wickedness. Further, the type of people that complain about the abysmal Notepad feature set are developers, who understandably expect more from a text editing tool, but Windows, unlike the Unixes, is not a developer-oriented operating system.

    You mention using an USB keychain – here’s what I normally do: I have a stripped-down version of vim (actually gvim) that also fits in a floppy (for older machines) which I carry around. vim is easy to build on Windows, and you can get the executable size down to about 400K or so playing with the makefile and some of the code. There are dozens of other editors which require nothing more than being copied to the machine and leave nothing behind (registry, etc.) when you remove them.

    If you want an OS that ships with 14 editors you should use one of the BSD’s instead =)

  37. Raymond wrote: "I don’t see how file mapping would make things any faster. It all has to get parsed by the edit control one way or another."

    Since the file is quite big (for example > 10MB) the user won’t see all of the file contents at once anyways, so why parse it all at the same time? So one small view of the file could be presented to the user and another view could contain the whole file where which could be used to count linenumbers etc.

    Just did a little quick testing with loading a quite huge file and it seems like the ‘Word wrap’ feature takes most of the loadtime. So could it be possible to display a warning if you try to open a big file with ‘word wrap’ enabled?

    [Actually I’m happy that I didn’t write anything like "would probably take a day to implement" in the earlier comment. Since you may have noticed I’ve never written any text editor myself, and used (as notepad!) the edit control in my programs. But I’ve never had to display much text in it.]

  38. Raymond Chen says:

    The standard edit control doesn’t support virtual content.

  39. Raymond: Regarding the font installation issue, I probably wouldn’t sweat it considering how fantastically and mind-bogglingly (is that a word?) complicated it is to install a puny TrueType font in Linux <g>

    But one thing I never understood is why font files don’t have a context menu entry that reads "Install" and works the same way as simply dragging the file into %WINDIR%Fonts. Or maybe the font viewer could have an "Install this font" command.

  40. Chris Walker says:

    re: file mapping

    Actually, Notepad on NT/W2K/XP/Server 2003 has been using file mapping since before NT4 shipped. BTW, there is a negative side effect of file mappings: parsing has to be done under a try/except because File I/O errors get translated to NO_ACCESS pages.

    This is not where the load time is going. On large files, it all in the initialization of the edit control. Unlike richedit (used in wordpad) the edit control builds all its internal structures before showing a single character.

    The edit control really wasn’t designed for huge files. If you ignore performance, then it works fine. As an experiment, modify a 100 megabyte file.

    I wonder if there is a better control in Longhorn. One that scales better, appears to load faster, can be cancelled before it is done loading (important for large files or slow networks) and knows about UTF-8 and other standard end of line sequences.

  41. David Candy says:

    I used spad from Douglas Boling of PCMag till 2000’s notepad. Basic text editor (like noteopad) but reads x KB at a time. Very fast and the size limit is maximun file size.

    Even the VI people converted.

    I’ve yet to find a text editor (apart from notepad/wordpad/spad) that I can stand in the PC world. And I’m too spoilt by Win GUI conventions to go back to XEdit (I’ve tried).

    I ignore colour coding, hate MDI, and hate anything that clogs up menus.

    Get the Word team to remove formatting and release it as a text editor.

    Text editors should do CSV/tab, regular exp, column block, sort, (actually they should be a text database manager – after my one off programs I then write a second one off analysis program then convert to any one of 50 mainframe data formats), bookmarks, and deduplicating (I worked till first pay day for a spamming software company once).

    But one feature I miss from XEdit is Xtract command (extract all line containing a string (or nth line), edit the extracted lines, then write the extracted lines back to the original file in their original position.

    Mainly used to extract via BQL a list of cost prices, up them (with rexx) by 5%, then convert the BQL report into a 80 column card image data format for writing back to the database (an ERP type thing). Once one has used Xtract it is useful any and everywhere.

    I wrote a partial implemtation for Word 7 (Search and Delete, Search and Copy, and Search and Run Command).

  42. Add/Remove Programs takes 30 seconds to load on my PIII-1.2GHz ThinkPad. Of course, it probably doesn’t help that I have 235 programs listed in it!

    I wouldn’t mind so much if it supported the standard keyboard interface. With this many entries, it would be nice if PgUp/PgDn and type-a-letter-to-scroll worked.

  43. Jack Mathews says:

    PgUp/PgDown does work in that control.

  44. CowFool says:

    I use Notepad for everything and I’m not annoyed by any lack of features. That’s because I remember Edlin (yes, I used it and knew all the commands). Perspective is everything kids.

  45. Xas says:

    I’m interested to know if Notepad had improvements within the same version of Windows.

    It’s very hard to *not* see any differences between Notepad in Win98 and Notepad in Win2ooo.

    The big one you can see quickly is about the maximum file size you can open.

    But as I didn’t have anymore a Win98 in my life, I don’t know if WindowsUpdate makes it better…

    And I don’t know the differences between Notepad in Win2ooo and WinXP, but I’ll not surprised if they are…

    But for Calc, sure that I didn’t notice improvements (well because I don’t use a lot maybe).

  46. RichB says:

    I doubt that Calc should have ever used IEEE fp in the first place. IEEE fp is an approximation designed for speed – whereas the people who are making calculations in Calc were clearly never after speed – they were after accuracy. The amount of neuron time to signal the movement of the mouse to click the = sign is much more significant than the amount of saving by using hardware fp.

  47. RichB says:

    If notepad has never had any reworking, why does it still reflow the text following a save, but not actually redraw the screen! A scrollbar and a GoTo line number option does not make up for a lousy user experience.

  48. RichB says:

    Arghh! StatusBar not scrollbar!

  49. Steve says:

    I support Doug’s last comment. Well done.

    Precision goes beyond floating point. Try graphing this function in the powertoy calculator.

    function(var)=var*cos(var*3)

    It just gives up the ghost when radians get above 21. ;-p

  50. I’m aware you’ve got to draw the line somewhere, but is there a guideline I’m missing somewhere about when you’re allowed to put an "Always on Top" option in an application?

    I feel Notepad and Calc could use this option. It must have been considered, and perhaps rejected at some point?

    Also, is it a big procedure getting the required go ahead to make changes to things like these, that exist across all versions of windows and have looked largely the same for close to 10 years? (i.e Is there a Notepad PM?)

  51. Raymond Chen says:

    The rule of thumb for random options is "You’d better have a good explanation of why resources should be pulled from other projects to implement your feature." Everything has an opportunity cost.

  52. Cooney says:

    you can check out my favorite text editor over at http://www.textpad.com – it defaults to a single pane of text with a list of files on the side, and it does block mode with a fill option that works nicely on flat files.

  53. Andreas Hber says:

    I’ll rest my case then :)

    But please think about inserting a warning for opening big files with word wrapping enabled. Something like this (with Yes as default button):

    —————————

    Warning

    —————————

    You are opening a big file with word wrapping enabled. Do you want word wrapping to be disabled before opening this file?

    —————————

    *Yes* No

    —————————

  54. Omar Shahine says:

    People in this case is me and I don’t ask "Why does Microsoft spend all its effort on making Windows ‘look cool’? They should spend all their efforts on making technical improvements and just stop making visual improvements."

    "Tyrany of or"… do the cool stuff and make the technical improvements. We do this in Mac Office all the time. Windows is a different beast, and I don’t have the history to say anything authoritative about it except that I love it. I just find many rough edges that need a smoothin. The Mac Calculator and Notepad are far better than ours. Not that I have a mac any more.

  55. Chris Walker says:

    re: Is there a Notepad PM?

    There wasn’t until 2000. Notepad is Legacy code. It has a copyright date of 1984 in the sources.

    The code was converted with 16 bit to 32 bit porting tools in the early 1992 by the test team working on the tool. It was checked into to the source tree warts and all. It worked, but the shell dev team didn’t want to maintain it. Major work to support Unicode was done in 1993. Most development was just bug fixes which typically don’t need a PM, but management to approve checkins. It wasn’t until 1996 or 1997 that a shell developer even code reviewed changes. Test still had to do their day job, so the maintainence was just a labor of love.

    Many of the games, paintbrush, cardfile and I think wordpad and calc were also ported and maintained by the test organization for years. Many of these were written as examples of what could be done with windows and for one reason or another got shipped. Cardfile got dropped from NT4, and many of the games got the old heave-ho for Server 2003 when they need CD space. Hard to justify Solitaire instead of management program on Server.

    This is not the normal process at Microsoft now. It is standard now to have a PM, specs, devs, test plans and other collateral material and support before something gets put into the system.

  56. Phaeron says:

    Not wanting to make Notepad into a full-blown editor is fine, but frankly, it was a bit embarrassing for MS-DOS’s text editors (edit.exe, qbasic.exe) to be better than Notepad, and QBasic shipped in at least Windows 95. Windows XP Notepad STILL cannot handle LF-only line endings, even though everything else including the TYPE command can do so. The default .txt application displaying ostensibly normal text files as a solid brick does not reflect well on Windows.

    Wordpad has some characteristics that make it less usable as a text editor, one being that it doesn’t handle hard tabs properly, and as far as I can tell, you can’t change the default font.

    My preference: take the Visual C++ 6.0 editor, strip it, and ship it as Notepad in Longhorn.

  57. Serge Wautier says:

    Calc. Notepad. Hey ! You forget Paint and its support for new file types in every new version ;-)

  58. Raymond Chen says:

    Phaeron: Except that the languages group is not part of the OS group.

  59. Pete Bassett says:

    Raymond Chen : The standard edit control doesn’t support virtual content.

    Raymond Chen : Except that the languages group is not part of the OS group.

    You really do like putting up walls don’t you?

    These are the things that we, as developers, want.

    Remember the battle cry!

    Developers! Developers! Developers! Developers, Developers, Developers!

    Jump up and down while you say it!

    I really dont thing these little, and they are little, changes are a great deal to do. Do you?

    Pete

  60. Nekto says:

    In OSS world you just provide ChangeLog or list of New features (cleared changelog) and need no change in UI to be noticed :)

    http://www.mozilla.org/releases/mozilla1.7rc2/README.html#new

  61. C-J Berg says:

    Pete: Even seemingly small changes quickly grow big for Microsoft, as it has to support many languages, translations and documentation for these languages, QA tests, etc. So it’s hardly not that easy…

    Raymond: You are of course right when you now focus on WinFX, instead of fixing old stuff no one uses today. What puzzled me was that some of these somewhat ugly dialogs have been there for a decade by now, without any sign of improvement, and that’s a long time. While I agree writing resizable dialogs in pure C is a tedious task, a framework such as WTL makes it fairly easy. But I reckon it’s a matter of priorites, and MS probably made the right ones.

    Anyway, from what I’ve seen so far of WinFX, it looks terrific. It is pretty easy to say the future looks interesting for Windows developers.

  62. Anon says:

    There’s nothing that separates people faster or more completely than text editors :)

  63. David Candy says:

    Suggestion for the future.

    I’d like to know about Hotkeys (in shortcuts) and tweakui’s 1.33 Repair feature.

    There are registry keys but they are only there with tweakui (it’s been a few years since I ran regmon on it). Does what it repaired no longer a problem in XP (a few NG posters suggest otherwise). What was the story behind it.

  64. Raymond Chen says:

    Pete: Supporting virtual content in the standard edit control takes it way beyond its original goal of being a "simple" edit control. The standard controls are meant to provide basic functionality, not to be the most awesome control in the world.

    As to the point about "walls" – bear in mind that some of these walls are legal in nature.

    Also, making a control part of the standard set is much more than just taking some working code and adding it to the CD. Because the moment you do that, people are going to start complaining about all the things it *doesn’t* do. "How do I change the syntax coloring algorithm?" "Why doesn’t it do hyperlinks?" "How do I change the keybindings?" "Stupid Microsoft, foisting an incomplete control on everybody."

    (Some of the controls in comctl32 were "donated" by other groups and have probably created more complaints than they quelled.)

    The standard controls endeavor to be simple. It’s another line-drawing decision. With the OS come simple, basic controls. If an application wants fancy controls, then the application can write them.

  65. Joku says:

    Klaus H. Probst:

    > If Microsoft had included a full-blown code editor like TextPad or vim in Windows everyone would be crying "monopoly" and tearing out their hair.

    That is, if few of the most vocal people accounts for "everyone".

    I am not sure if Microsoft has already been doing Notepad for Longhorn, but in any case, it would be cool if such project was open for the developer community so that MS could have it’s base notepad and people who’d like a few fancier features in it, could either plug them in or create their own branch, or perhaps have two MS managed branchs, one for basic notepad and one for "advanced". The "base code" for the whole project would be made initially by MS to guidelines and performant base.

    The "advanced" branch would not need to be any code editor IMHO, just something that adds whatever minor details the basic version is missing. If one wanted to create their own code editor/hex editor/disassembler/kitchen sink of the base code, they could make their entirely own project for that.

  66. mschaef says:

    "The ‘advanced’ branch would not need to be any code editor IMHO, just something that adds whatever minor details the basic version is missing. If one wanted to create their own code editor/hex editor/disassembler/kitchen sink of the base code, they could make their entirely own project for that. "

    I hate to be a luddite, but I’m not sure I see the point. To me, the one single compelling benefit of Notepad is that it’s always there, in every version of Windows. Therefore, it’s a decent lowest common denominator if lacking the time or ability to download something better.

    Given the chance to download something else, a slightly ‘hacked’ version of Notepad would be just about last on my list, behind XEmacs, FSF Emacs, the various VI’s, and a host of others. Even Emacs (Eight Megabytes And Constantly Swapping ;-) consumes a trivial amount of system resources these days…

  67. Joku says:

    mschaef: Well I was trying to avoid listing features, but incase there is no open project for developing.. I’ll add my voice to: LHornpad: Reads non-win line endings, reads files in a such manner that load time doesn’t increase with file size. Possibility to plugin some managed add-ins would be appreciated while not mandatory.

  68. Arden says:

    Try "calc /p:64" to get 64 bits of precision.

  69. Raymond Chen says:

    Commenting for this article has been closed.

  70. Comments on “The Device/Desktop” Opportunity The Device/Desktop Opportunity got a number of comments,

Comments are closed.


*DISCLAIMER: I DO NOT OWN THIS CONTENT. If you are the owner and would like it removed, please contact me. The content herein is an archived reproduction of entries from Raymond Chen's "Old New Thing" Blog (most recent link is here). It may have slight formatting modifications for consistency and to improve readability.

WHY DID I DUPLICATE THIS CONTENT HERE? Let me first say this site has never had anything to sell and has never shown ads of any kind. I have nothing monetarily to gain by duplicating content here. Because I had made my own local copy of this content throughout the years, for ease of using tools like grep, I decided to put it online after I discovered some of the original content previously and publicly available, had disappeared approximately early to mid 2019. At the same time, I present the content in an easily accessible theme-agnostic way.

The information provided by Raymond's blog is, for all practical purposes, more authoritative on Windows Development than Microsoft's own MSDN documentation and should be considered supplemental reading to that documentation. The wealth of missing details provided by this blog that Microsoft could not or did not document about Windows over the years is vital enough, many would agree an online "backup" of these details is a necessary endeavor. Specifics include:

<-- Back to Old New Thing Archive Index