Start Menu WTF



  • A year or two ago someone asked me to have a look at their PC because
    "it was going incredibly slow" (as we all know, 99% of users report
    problems with this level of technical detail).



    Since I'd set it up for them the previous year with AV, anti-spyware
    software, firewall, etc, I assumed that they'd disabled some or all of
    these. Nope, everything fine with no infections or malicious software
    to be found. So what could be the problem?



    Then I went into their start menu....



    Imagine 600+ applications installed into the start menu. No no, not
    hundreds of applications showing in the start menu (which would be bad
    enough in itself), but hundreds of applications INSTALLED INTO the
    start menu.



    Think about that a minute and let it sink in...... I certainly did. I
    must have sat at it for 5 minutes with my jaw on the floor while trying
    to comprehend the sheer instanity of it all.



    That's right, C:\Docs&Settings\UserName\StartMenu\Programs\AppName
    had been set as the install location for every damn bit of software he
    had on his PC, excepting what was on there when I sold it to him. This
    guy had been putting up with this, and making it worse by the day, for
    a year and never questioned this monstrosity of a start menu until i
    tcame to this point. It wouldn't have even been so bad if he wasn't the
    "every bit of software I don't install is a lost opportunity" kind of
    guy.



    Needless to say, I just wiped the damn lot, started from scratch, and
    told him that there was a good reason why installers tended to default
    to C:\Program Files\AppName.



    Still, it's the only time in my life that I've seen a 100GB start menu folder.




  • I can honestly say that I've never encountered that one before (most uninformed users just seem to accept the defaults, which precludes this). This person seems to have been hell-bent on being featured on TDWTF.

    I still have noobie mom-n-pop store owners that ask about the PC's cup-holder...

    Aside: as f'd up as Windows is, it's fairly interesting that it handled this without crashing.

    Nothing surprises me anymore.



  • <FONT face=Georgia>I'm just wondering how long it took him to boot up his PC. Did he have time to bake a cake while waiting for it to start?</FONT>

    <FONT face=Georgia>And what were the specs on his machine? Please tell me he was running XP with 256MB of RAM. ;^)</FONT>



  • @BiggBru said:

    <FONT face=Georgia>I'm just wondering how long it took him to boot up his PC. Did he have time to bake a cake while waiting for it to start?</FONT>

    <FONT face=Georgia>And what were the specs on his machine? Please tell me he was running XP with 256MB of RAM. ;^)</FONT>

    I would imagine that the code in those directories would not get executed at startup time (unless it was also referenced in the startup folder), just as code under program-files doesn't get auto-executed at startup unless it's also linked from startup.  As such, other than the (mind-boggling) time to scan the tree and populate the start menu (with .exe, .dll, .ini, gaaa), I don't expect that it would impact startup time or memory use.



  • @RayS said:



    Imagine 600+ applications installed into the start menu. No no, not
    hundreds of applications showing in the start menu (which would be bad
    enough in itself), but hundreds of applications INSTALLED INTO the
    start menu.


    Uhh... and to think of it, pidls were invented to prevent slowdowns of exactly the same nature - http://blogs.msdn.com/oldnewthing/archive/2006/07/12/663365.aspx

    Looks like we need some faster structures like 'hops' [hashmap of pidls] to avoid future nightmares.



  • @RayS said:

    100GB start menu folder.

    <FONT face=Tahoma>wow. just. wow.



    </FONT>



  • @v0idi said:

    The guy is lucky not having to use network login. As far as I remember, the whole Documents and Settings\user folder is copied every damn time you log in on another computer in the same network. :)
    (Or that's at least how it worked at school some years ago.. another wtf? maybe not.)


    That's really a mixed WTF between windows limitations and the network administrator. Windows must have a local copy of at least some files to work properly (as far as I know, you can't have the user registry on a network share, for example.)

    So by default the entire user data folder is copied over. For most applications this is entirely unneccesary.
    Any smart admin will change the paths for the various windows 'special' folders from
    c:\Documents and Settings\user\My Documents to \server\user\mydocuments. This includes the desktop (which would otherwise get copied over every time..)




  • @Nandurius said:

    @v0idi said:
    The guy is lucky not having to use network login. As far as I remember, the whole Documents and Settings\user folder is copied every damn time you log in on another computer in the same network. :)
    (Or that's at least how it worked at school some years ago.. another wtf? maybe not.)


    That's really a mixed WTF between windows limitations and the network administrator. Windows must have a local copy of at least some files to work properly (as far as I know, you can't have the user registry on a network share, for example.)

    So by default the entire user data folder is copied over. For most applications this is entirely unneccesary.
    Any smart admin will change the paths for the various windows 'special' folders from
    c:\Documents and Settings\user\My Documents to \server\user\mydocuments. This includes the desktop (which would otherwise get copied over every time..)




    Only with roaming profiles, which, as far as I know, isn't the default for Windows.



  • @xrT said:

    @RayS said:
    100GB start menu folder.

    <font face="Tahoma">wow. just. wow.

    </font>


    My thoughts exactly.



    As for the roaming profiles stuff - I hadn't considered that, but it
    could make for some fun times. Windows does however give you options
    for deciding what to keep in your roaming profile and what to keep
    local through Group Policies etc, but I can't remember off the top of
    my head exactly how fine grained you can be about it.

    Unless you have applications following users around (or entirely
    server-based apps) too, users' Start Menus following them around
    doesn't make much sense anyway. Either way, you don't really want to
    try it to find out.



  • I knew someone who installed all his games into "C:\games"  i.e.
    didn't create a different folder for each one.  This worked fine
    with about 5 games installed into the one folder... until he tried to
    install a game from the same makers of another game he already had
    installed.  There were DLL's with the same name that were
    overwritten causing conflicts all over the place and oddly enough some
    games stopped working after a while.  I tried to explain that he
    should uninstall them all and reinstall them in their own
    directories.  I don't think he ever quite grasped why this would
    be a Good Thing.



  • @RayS said:





    Imagine 600+ applications installed into the start menu. No no, not
    hundreds of applications showing in the start menu (which would be bad
    enough in itself), but hundreds of applications INSTALLED INTO the
    start menu.




    OK, just to play devil's advocate for a bit: while this is incredibly poor system administration from our point of view, it is also not at all self-evident to a newbie that this is a bad idea.  In fact, very little about Windows system administration is self-evident, or even in some cases visible at all without special non-Microsoft tools.  This is even more true for Unix, but less so for Mac OS X.  Remember that these systems (I'm talking about Windows again now) are being marketed to people whose first instinct is to sue when the coffee they spill in their lap turns out to be too hot.  Of course they're not going to understand the difference between Start Menu and C:\Program Files when they go to install something.  The fact that it is necessary to understand this difference (among thousands of others) is one of the things that prevents Microsoft operating systems from being truly ready for the networked masses.  Not that the other alternatives are much better!  We still have a long way to go.

    I would say that among other things, it needs to become a lot more obvious (to an end user) what the entire extent of the relationship is between an application and its operating system, and between the pieces of an application if those pieces are separately visible.  It also needs to be a lot less critical where a file (or any other user-visible object) is, so that it is much harder to make bone-headed decisions about where to put things.  And of course it needs to be impossible for one application's DLL (whatever part that plays in a properly designed OS)  to overwrite another's with the same name but different contents.  It also needs to be impossible for the operating system to execute  (or grant network privileges to) anything that the user didn't specifically request.  If all of these criteria were met, we might have an operating system that could be safely marketed to Ma & Pa Jones down at the corner deli.  As it stands, we don't.




  • Yes, admittedly computers are still too complicated at times for Average Joe and Average Jill, but that's not the point.

    However, common sense has got to play a point at some time. At some point you've just got to look at it and say "that just ain't right.". My betting (nay, my hope!) is that for most people that point comes long before the above happens.



  • @stevekj said:

    Remember that these systems (I'm talking about
    Windows again now) are being marketed to people whose first instinct is
    to sue when the coffee they spill in their lap turns out to be too hot.


    Apologies for going way off-topic, but I squirm whenever I hear this
    mentioned.  The original lawsuit involving spilled coffee is
    misunderstood.  The woman was over 70 years old, and received
    third degree burns which required a skin graft.  McDonald's
    encouraged people to transport in a moving vehicle something which can
    cause these burns.  Would any chemist do that with corrosives?



    Not that I'm a fan of the insanely ligitious society that the US has
    become.  I just think this is an undeserved symbol of frivolous
    lawsuits.  (The lady who claimed she found a finger in Wendy's
    chili would be a better symbol, since it was a true scam.)



  • I used to work at an organization with roaming profiles.  It created a lot of network problems, especially since they went cheap on routers and the such.  Anyway, it was mostly used for customer service and sales that used tightly controlled computers.  Each one was configured identically and the users couldn't install software etc.  This allowed people to move around desks if neccessary to support an area that might be short staffed.  The roaming profile actually worked very well for this purpose and the company was able to do things such as move call centers to emergency centers during severe weather etc. and everyone had what they needed.



  • @VGR said:

    @stevekj said:
    Remember that these systems (I'm talking about Windows again now) are being marketed to people whose first instinct is to sue when the coffee they spill in their lap turns out to be too hot.

    Apologies for going way off-topic, but I squirm whenever I hear this mentioned.  The original lawsuit involving spilled coffee is misunderstood.  The woman was over 70 years old, and received third degree burns which required a skin graft.  McDonald's encouraged people to transport in a moving vehicle something which can cause these burns.  Would any chemist do that with corrosives?

    It should also be noted a few other things:

    1) The coffee was heated to a very unsafe temperature, which was acknowledged by McDs

    2) McDs had several lawsuits against them for exceedingly hot coffee which they had paid settlements to and swept under the table. 

     

    Lots of information on it here:

    http://lawandhelp.com/q298-2.htm

    http://www.lectlaw.com/files/cur78.htm



  • @stevekj said:



    It also needs to be a lot less critical where a file (or any other user-visible object) is, so that it is much harder to make bone-headed decisions about where to put things.  And of course it needs to be impossible for one application's DLL (whatever part that plays in a properly designed OS)  to overwrite another's with the same name but different contents.




    If you're thinking of the Mac OS X's .app folders, RISC OS had those in the early 1990es. Also, the base OS resided in ROM, so it was impossible to totally mess up the system. Not to mention it booted in seconds. Oh and it had a very advanced GUI for its time. The result? RISC OS never had more than a limited number of users in one country - UK.

    In my experience, most people expect computers to be awfully complicated. And behave unlike any other devide on the face of the Earth. Most people believe computers to be magical items, posessed by spirits or something. They're happy to pay big bucks to the mighty wizards of MS/Apple so they never have to think for themselves. What's so complicated about a program's files having to go in... "Program Files"? Nothing, except thinking hurts.

    Oh crap. Sorry for the rant.



  • @seejay said:

    @VGR said:

    @stevekj said:
    Remember that these systems (I'm talking about Windows again now) are being marketed to people whose first instinct is to sue when the coffee they spill in their lap turns out to be too hot.

    Apologies for going way off-topic, but I squirm whenever I hear this mentioned.  The original lawsuit involving spilled coffee is misunderstood.  The woman was over 70 years old, and received third degree burns which required a skin graft.  McDonald's encouraged people to transport in a moving vehicle something which can cause these burns.  Would any chemist do that with corrosives?

    It should also be noted a few other things:

    1) The coffee was heated to a very unsafe temperature, which was acknowledged by McDs

    2) McDs had several lawsuits against them for exceedingly hot coffee which they had paid settlements to and swept under the table. 

     

    Lots of information on it here:

    http://lawandhelp.com/q298-2.htm

    http://www.lectlaw.com/files/cur78.htm



    Most people would agree that it is an essential right to be able to sue McDonalds or any other corporation/individual for your monetary loss. The thing about these lawsuits is someone takes a painful injury where the medical expenses are lets say $100,000 but they want to sue for 10 million. Why should they be rewarded these ridiculous amounts of money just because they were harmed by a public company that has a lot more money than they do?

    In England, if you sue someone and lose, you have to pay for their lawyer fees. As a result people don't sue unless they have a legitimate complaint and can reasonably expect to win. People over here have gone completely crazy with the amount of lawsuits, the types of lawsuits and the amount of money that you can win if you are successful. There are lawyers that will take your case and you pay nothing unless you win. That's why this has become such a big problem.


  • @ferrengi said:


    Most people would agree that it is an
    essential right to be able to sue McDonalds or any other
    corporation/individual for your monetary loss. The thing about these
    lawsuits is someone takes a painful injury where the medical expenses
    are lets say $100,000 but they want to sue for 10 million. Why should
    they be rewarded these ridiculous amounts of money just because they
    were harmed by a public company that has a lot more money than they do?

    In
    England, if you sue someone and lose, you have to pay for their lawyer
    fees. As a result people don't sue unless they have a legitimate
    complaint and can reasonably expect to win. People over here have gone
    completely crazy with the amount of lawsuits, the types of lawsuits and
    the amount of money that you can win if you are successful. There are
    lawyers that will take your case and you pay nothing unless you win.
    That's why this has become such a big problem.


    Well, if due to the incident that person cannot work again for example,
    despite the $100,000 surgery, then I wouldn't say that a $10m claim is
    totally unreasonable, depending on the situation.



    As for the situation here in England, that's not quite right. The
    "loser pays the winner's legal fees" position would be worse than the
    "everyone pays their own fees" model. NOBODY could afford to take on a
    large corporation, since losing the case to their teams of expensive
    lawyers would bankrupt you for life. You simple get get a reputation of
    spending £1m minimum per legal defense, and you're all but untouchable
    out of fear. Instead, it's generally down to the discretion of the
    judge.



    As for those "no win, no fee" lawyers - it's mostly limited to injury
    claims etc, but you can barely get by an ad break here without seeing
    at least one of the dozens of companies advertising it.



  • @ferrengi said:

    Most people would agree that it is an essential right to be able to sue McDonalds or any other corporation/individual for your monetary loss. The thing about these lawsuits is someone takes a painful injury where the medical expenses are lets say $100,000 but they want to sue for 10 million. Why should they be rewarded these ridiculous amounts of money just because they were harmed by a public company that has a lot more money than they do?
    The Liebeck v. McDonalds case isn't one of those, though it's often cited as though it was.  As mentioned in the linked articles above, she first tried to settle out of court with McDonald's for $20,000, just to cover her medical expenses.  They refused, and she had to take them to court to get anything out of them.



  • @VGR said:

    McDonald's
    encouraged people to transport in a moving vehicle something which can
    cause these burns.

    But if people knew McDondald's served their coffe hotter then other restorants - for years... Shoouldn't that count as mitigating circumstances?



  • @seejay said:

    It should also be noted a few other things:

    1) The coffee was heated to a very unsafe temperature, which was acknowledged by McDs



    Amazing; the coffee was hot! Even to the degree of 'unsafe'.

    WTF, coffee should be hot.


  • @felix said:

    @stevekj said:


    It also needs to be a lot less critical where a file (or any other user-visible object) is, so that it is much harder to make bone-headed decisions about where to put things.  And of course it needs to be impossible for one application's DLL (whatever part that plays in a properly designed OS)  to overwrite another's with the same name but different contents.




    In my experience, most people expect computers to be awfully complicated. And behave unlike any other devide on the face of the Earth. Most people believe computers to be magical items, posessed by spirits or something. They're happy to pay big bucks to the mighty wizards of MS/Apple so they never have to think for themselves. What's so complicated about a program's files having to go in... "Program Files"? Nothing, except thinking hurts.

    Oh crap. Sorry for the rant.

    I wouldn't say that warrants an apology, I see superstitous computer use regularly from people who really should know better.

    I do think it's just plain crazy having the start menu as a part of the file system filled with shortcuts. I quite like the idea of users being able to install programs where ever  they want. The start menu should be a configuration file of some sort, maybe with a .mnu extension. That way, people would never be able to install programs into it. They could delete it, rename it, copy it and create many other WTFs, but it would maintain the boundary between the UI and installed software. Simple.

    If people then wanted to edit the start menu, another tool, maybe sold seperately from the OS, could provide a nice GUI interface  for doing so.

    For those of us that understand the logical simplicity that is a computer, it's easy to differentiate between a program and something that exists solely to provide a user interface. For Mr and Mrs Stupid, it probably doesn't make any sense, but a seperate file would at least force the concept of this separation on them.

    I think the real WTF here is any OS that maintains a major UI component as a directory structure in the filesystem.



  • @Some Idiot said:

    For those of us that understand the logical simplicity that is a computer, it's easy to differentiate between a program and something that exists solely to provide a user interface. For Mr and Mrs Stupid, it probably doesn't make any sense, but a seperate file would at least force the concept of this separation on them.

    I think the real WTF here is any OS that maintains a major UI component as a directory structure in the filesystem.



    I fully agree.


  • @Some Idiot said:

    I do think it's just plain
    crazy having the start menu as a part of the file system filled
    with shortcuts. I quite like the idea of users being able to install
    programs where ever  they want. The start menu should be a
    configuration file of some sort, maybe with a .mnu extension. That way,
    people would never be able to install programs into it. They could
    delete it, rename it, copy it and create many other
    WTFs, but it would maintain the boundary between the UI and
    installed software. Simple.

    If people then wanted to edit the start menu, another tool, maybe sold seperately from the OS, could provide a nice GUI interface  for doing so.

    For those of us that understand the logical simplicity that is a computer, it's easy to differentiate between a program and something that exists solely to provide a user interface. For Mr and Mrs Stupid, it probably doesn't make any sense, but a seperate file would at least force the concept of this separation on them.

    I think the real WTF here is any OS that maintains a major UI component as a directory structure in the filesystem.

    The thing is, for those that know what they're doing, the current file-system-based Start Menu does the job perfectly, and is far more flexible than your suggestion above.

    Sure you could add a nice GUI that does the job as well as Explorer, or better. However, I for one make real use of the flexibility you have from pretty much every shortcut (start menu, desktop, quicklaunch bar, IE favourites, etc) being made of the same stuff. Want that start menu item on your desktop? Drag and drop. Got a favourite that you wanty adding to some other user's start menu on another computer? Browse, drag, and drop.

    The system, as it works, works perfectly. I don't think it's fair to blame the tool for the user abusing it. For just about everything else in life, we expect people to have a minimum of appropriate knowledge to use it. That just isn't there for computers. I presume it's because the pointy-haired-bosses of the world don't understand them, so don't expect others to. And lame AOL ads. I don't know.

    Sure a file based (perhaps even XML - that'd actually be a rare genuine use for it) Start Menu would work. You could write the tools to treat it at least close enough to the current system, but why? While I'm not in the arrogant slashdot/linux "omg do NOTHING to make things easy" camp, I'm also very much not in the "make computers like a Fisher Price toy" camp either.


  • @RayS said:

    The thing is, for those that know what they're doing, the current file-system-based Start Menu does the job perfectly, and is far more flexible than your suggestion above.

    Sure you could add a nice GUI that does the job as well as Explorer, or better. However, I for one make real use of the flexibility you have from pretty much every shortcut (start menu, desktop, quicklaunch bar, IE favourites, etc) being made of the same stuff. Want that start menu item on your desktop? Drag and drop. Got a favourite that you wanty adding to some other user's start menu on another computer? Browse, drag, and drop.
    ........

    Sure a file based (perhaps even XML - that'd actually be a rare genuine use for it) Start Menu would work. You could write the tools to treat it at least close enough to the current system, but why? While I'm not in the arrogant slashdot/linux "omg do NOTHING to make things easy" camp, I'm also very much not in the "make computers like a Fisher Price toy" camp either.

    I don't see how a filesystem is any more flexible than what I'm suggesting, especially considering that what I'm suggesting is vague and open ended. I see both systems as just as flexible.

    A start menu could be an xml implementation that allows extensions by ignoring elements that aren't understood, like the way as browsers deal with html. If you wanted to copy a shortcut to the desktop, you could drag it to the desktop. If you want to share a favourite, send it to a friend, and if their version of the OS doesn't happen to include the fancy animated icon that yours does, no problem, the shortcut still works with a basic icon, or some OS provided generic icon with text to identify it. It all comes down to the implementation of the desktop environment.

    Try dragging an icon from the start menu to the desktop and see what happens. Then try selecting a bit of text in a word document and dragging that to the desktop. The reason it behaves the way it does is because drag and drop behaviour is independant of the filesystem.

    @Carnildo said:

    KDE uses this system, or one functionally identical to it. I'd rather use a filesystem-based structure, because that way, I wouldn't be at the mercy of the limits the developers put on the menu and the editing software.

    KDE does use this system, but the implementation sucks IMO. As does the Gnome implementation. Neither of them use an extensible system as described above. Such a system would require a bare minimum set of tags for compatibility, but you would be a lot less limited than the current are at the mercy of the limits of the start menu.

    I'm not trying to compare existing desktops, I'm just making the point that using a file system to define a menu mixes metaphors, adds to the confusion for idiots and creates many potential nightmares for support.

    I honestly believe that if Microsoft were in the position to dump all of their legacy code without worrying about backwards compatibility, the "C:\Documents and Settings\USER\Start Menu" directory would go the way of the dodo. It seriously is a WTF.



  • @Some Idiot said:

    @RayS said:

    The thing is, for those
    that know what they're doing, the current file-system-based Start Menu
    does the job perfectly, and is far more flexible than your suggestion
    above.

    Sure you could add a nice GUI that does the job as well
    as Explorer, or better. However, I for one make real use of the
    flexibility you have from pretty much every shortcut (start menu,
    desktop, quicklaunch bar, IE favourites, etc) being made of the same
    stuff. Want that start menu item on your desktop? Drag and drop. Got a
    favourite that you wanty adding to some other user's start menu on
    another computer? Browse, drag, and drop.
    ........

    Sure a file based (perhaps even XML - that'd actually be a rare genuine use for it) Start Menu would work. You could write the tools to treat it at least close enough to the current system, but why? While I'm not in the arrogant slashdot/linux "omg do NOTHING to make things easy" camp, I'm also very much not in the "make computers like a Fisher Price toy" camp either.

    I don't see how a filesystem is any more flexible than what I'm suggesting, especially considering that what I'm suggesting is vague and open ended. I see both systems as just as flexible.

    A start menu could be an xml implementation that allows extensions by ignoring elements that aren't understood, like the way as browsers deal with html. If you wanted to copy a shortcut to the desktop, you could drag it to the desktop. If you want to share a favourite, send it to a friend, and if their version of the OS doesn't happen to include the fancy animated icon that yours does, no problem, the shortcut still works with a basic icon, or some OS provided generic icon with text to identify it. It all comes down to the implementation of the desktop environment.

    Try dragging an icon from the start menu to the desktop and see what happens. Then try selecting a bit of text in a word document and dragging that to the desktop. The reason it behaves the way it does is because drag and drop behaviour is independant of the filesystem.


    OK, then try doing it from a logon script or similar. The standard script environments all provide abilities for file copying/moving. You or someone else will need to provide tools for manipulating this file in a standard way (you're surely not going to be giving people raw access to this config file...). Currently I can manipulate my start menu from Linux, DOS, or any other OS or script environment capable of accessing the file system. Either you tell anyone using such methods where to stick it, or you extend your workload to encompass them also.

    I just fail to see any real benefit to what you're suggesting that outweighs the deleopment costs, migration headaches (for everyone using your OS that manipulates the start menu), backwards compatibility concerns, etc. And for what? So clueless users have one less chance out of thousands to mess things up?

    As for the metaphor mixing - how is a file system object containing a hierarchical binary or text data structure any more appropriate for populating a hierarchical menu than a hierarchical file system?



  • I suppose there's something to say for keeping such a menu in the filesystem.

    So the simplest solution would be to exclude normal files from it. Drag and drop operation shall always create shortcuts, and applications are expressly forbidden from putting anything but shortcuts in the Start Menu.

    There.
    Problem solved.



  • @dhromed said:

    I suppose there's something to say for keeping such a menu in the filesystem.

    So
    the simplest solution would be to exclude normal files from it. Drag
    and drop operation shall always create shortcuts, and applications are
    expressly forbidden from putting anything but shortcuts in the Start
    Menu.

    There.
    Problem solved.
    Yes, that would work.



    You can't stop people putting whatever they want in those folders
    though, there are too many other ways in - from another OS, etc.. A
    check at logon or something would be close enough to be effective,
    though. Even then, for something that sounds simple - "delete non-link
    files from the start menu" - you open a load of security and system
    issues.



    "Oh, you just re-mapped your Start Menu folder to C:\WINDOWS? Ok, let's just go and delete any non-link files....."



  • @RayS said:

    ........
    OK, then try doing it from a logon script or similar. The standard script environments all provide abilities for file copying/moving. You or someone else will need to provide tools for manipulating this file in a standard way (you're surely not going to be giving people raw access to this config file...). Currently I can manipulate my start menu from Linux, DOS, or any other OS or script environment capable of accessing the file system. Either you tell anyone using such methods where to stick it, or you extend your workload to encompass them also.

    I just fail to see any real benefit to what you're suggesting that outweighs the deleopment costs, migration headaches (for everyone using your OS that manipulates the start menu), backwards compatibility concerns, etc. And for what? So clueless users have one less chance out of thousands to mess things up?

    As for the metaphor mixing - how is a file system object containing a hierarchical binary or text data structure any more appropriate for populating a hierarchical menu than a hierarchical file system?

    I agree that at this point it is probably too late to do this with windows. It's already broken.

    If you have a reasonably functional shell, you can manipulate a text based menu with a script, plus I think it would make sense to provide command line tools to manipulate such a menu.

    I guess in all this I'm just trying to describe an ideal engineering solution as if there was no legacy. We need a means to store a menu, and we require that users can't store actual programs and data files in said menu. We also require the ability to manipulate the menu easily from a GUI and from the shell.

    The first requirement is met by using a text file to store the menu, but this breaks the second requirement.

    The second requirement is met by using the file system to store the menu, but this breaks the first requirement.

    Using a text file can meet the second requirement if software is provided to allow editing. Given modern development techniques this would require minimal development as most of the logic would already be developed in creating the menu in the first place, regardless of how it was implemented, and xml manipulation, for example, is established for numerous libraries/languages/OSs.

    Using a file system can meet the first requirement if we provide a band aid (read poorly engineered) solution - see below.

    @RayS said:

    @dhromed said:
    I suppose there's something to say for keeping such a menu in the filesystem.

    So the simplest solution would be to exclude normal files from it. Drag and drop operation shall always create shortcuts, and applications are expressly forbidden from putting anything but shortcuts in the Start Menu.

    There.
    Problem solved.
    Yes, that would work.

    You can't stop people putting whatever they want in those folders though, there are too many other ways in - from another OS, etc.. A check at logon or something would be close enough to be effective, though. Even then, for something that sounds simple - "delete non-link files from the start menu" - you open a load of security and system issues.

    "Oh, you just re-mapped your Start Menu folder to C:\WINDOWS? Ok, let's just go and delete any non-link files....."

    As RayS points out here, there are a bunch of security issues with applying fixes for the problem of having the menu defined by a filesystem.

    If I had a system where I could put my programs anywhere on the file system according to my personal way of organising things, I would get pretty pissed of if programs disappeared simply because I chose to put mission critical app in "C:\Documents and Settings\Some Idiot\Start Menu\My Incredible Mission Critical App to Rule the World". I would fire the support guy who wrote the logon, and if it was part of the OS, I might just be angry enough to change to a Micantoch. I don't see why rules that apply everywhere else on my system should suddenly break in this one "magic" path.

    If you think about it from the point of view of someone who is designing a desktop environment from the ground up, using the filesystem really doesn't make any sense for this.

    ooh ooh! Just thought of another nifty way windows could have done it. The registry! That way one could manipulate it with scripts, etc, plus it wouldn't create this magically broken part of the file system.

    Just thoughts, really...



  • @RayS said:

    @dhromed said:
    I suppose there's something to say for keeping such a menu in the filesystem.

    So
    the simplest solution would be to exclude normal files from it. Drag
    and drop operation shall always create shortcuts, and applications are
    expressly forbidden from putting anything but shortcuts in the Start
    Menu.

    There.
    Problem solved.
    Yes, that would work.



    You can't stop people putting whatever they want in those folders
    though, there are too many other ways in - from another OS, etc.. A
    check at logon or something would be close enough to be effective,
    though. Even then, for something that sounds simple - "delete non-link
    files from the start menu" - you open a load of security and system
    issues.




    If the main OS listens for copy/create actions into the Start Menu and expressly forbids anything but *.lnk, then how exaclty could any ordinary file get into the start menu?



    "Oh, you just re-mapped your Start Menu folder to C:\WINDOWS? Ok, let's just go and delete any non-link files....."


    You can't remap your start menu, as far as I know. Not from the GUI, in any case.

    If you can, it's in the registry.
    No ordinary user touches the registry.
    No advanced user would be foolish enough to remap the Start Menu.



  • @dhromed said:


    If the main OS listens for copy/create
    actions into the Start Menu and expressly forbids anything but *.lnk,
    then how exaclty could any ordinary file get into the start menu?


    From another OS accessing the drive for starters.


    "Oh, you just re-mapped your Start Menu folder to C:\WINDOWS? Ok, let's just go and delete any non-link files....."


    You can't remap your start menu, as far as I know. Not from the GUI, in any case.

    If you can, it's in the registry.
    No ordinary user touches the registry.
    No advanced user would be foolish enough to remap the Start Menu.


    Powertoys, group/local policy & scripting. Possibly other ways too.
    True, I don't think you can do it out of the box, though.



    Not saying any of the above is probable to happen, but going back to
    the theme of the thread, who would have thought installing apps into
    the start menu probable?


Log in to reply