Newsgroup: it.comp.programmare.win32
Titolo: [!] Windows 2000: amministrazione (in)sostenibile? primo bersaglio: Amaya

Forse alcuni di voi mi conoscono già.
Forse non avete mai sentito parlare di me.
Beh, per farla breve, sono un'infelice utente di Windows 2000. Non a
causa del sistema, che anzi rende la mia situazione se non altro
tollerabile, ma a causa di scelte alquanto opinabili di software
house più o meno professionali. 
Prima vittima: Amaya. Browser sperimentale del World Wide Web
Consortium - l'autorità de facto in materia di standard Internet - in
cui riponevo molte speranze, considerando che mi sto affacciando a
nuove tecnologie come XHTML e MATHML, ma che mi ha delusa prima
ancora di poterlo vedere in azione (sto postando anche in
it.comp.software.browser per sapere: primo, se il browser vale la
pena, e secondo, se c'è qualcuno che come me ha avuto gli stessi
problemi) 
Per farla breve, Amaya s'è rifiutato, ripetutamente, di partire. Ho
indagato, ho scoperto che cercava di creare una directory C:\Temp,
strafregandosene del fatto che il MIO disco C: è di sola lettura (a
proposito, anche la vostra partizione di boot lo è, vero...?), ma lui
voleva creare la sua dannata directory là dentro, per forza. Al
diavolo, mi sono detta, chi non mi rispetta non mi merita, e l'ho
disinstallato immediatamente. Non contenta (perchè Amaya è solo
l'ultimo di una lunga serie... sinora ho sopportato, e sgobbato al
posto di chi di dovere...), ho anche spedito questa lettera a "chi di
dovere", e vorrei sapere quanti di voi condividono le mie idee (se mi
volete dare della cretina testa di cavolo, siete liberi di fare anche
questo): 
======================================================================
AMAYA GO HOME, or THE AMAYA EXPERIENCE
"Compliant with the W3C standards, multi-platform, open source, free,
support for PNG images, a HTML/XHTML/MATHML editor... *woah*, I NEED this
Amaya!"
This is what I thought, in the beginning. My mind was about to change.
To go straight to the point...
Compliance with W3C standards? ok guys, nothing to argue about. But what
about the Microsoft standards? Never heard of the Official Guidelines for
User Interfaces? Some (pertinent - you'll see) hints:
 1. setup programs must be straightforward, a luser must be able to
    accomplish setup without doing anything else than pressing the "Enter"
    key (sounds stupid, I know, but if you already comply with all of the
    other guidelines, it makes perfect sense)
 2. no entries in Start Menu for help files, readme's or uninstal
    programs, list only the main executable
 2bis. so the help files and the readme's must be accessible from within
       the program
 3. never hardcode absolute paths, read them from the registry
 4. put all user data in the user's profile directory
 5. use the default temp directory
 5bis. if you need a cache of some type, put it within the user's
       profile directory, and register the directory with the Disk Clean
       applet, so it's marked as temporary folder
 6. provide meaningful error messages
My votes for Amaya:
 1. AA
 2. A+
 2bis. D - (the readme and help are accessible, but the program DIDN'T
           start at all the first time - see below, point 6)
 3. F - C:\Temp\Amaya IS hardcoded. Not even as a string resource (so at
        least I could edit it), but as an embedded string constant (NOTE:
        for security reasons - it's my boot drive, but NOT my system root
        - my drive C: is read-only to the Administrators user group, and
        even inaccessible to any other user - you can bet that any
        serious administrator takes this precaution)
 4. E - C:\WINNT\Profile\User is NOT the user's profile directory. In
        Windows NT you gotta read it from the %USERPROFILE% environment
        variable, but anyway you shouldn't create a directory directly
        in there: you should add in the appdata directory (read it from
        HKEY_CURRENT_USER:\Software\Microsoft\Windows\CurrentVersion\
        Explorer\ShellFolders:AppData) a directory with your company's
        name (W3C I presume), and the application's user specific
        directory in that. On my system, it should look like "G:\Documents
        and Settings\<my name>\Dati Applicazioni\W3C\Amaya" (oh yes,
        it's a localized Windows, too)
 5. F - C:\temp is neither the default temp directory nor even an
        acceptable directory (some other guidelines state that you
        shouldn't create directories or files in the disk root, neither
        imply a "C:\" drive ready for anything - I could even have my
        drives start from D: or E:, anyway even if it was writable, my
        drive C: is only 10 megs)
 5bis. F - the cache should be a subdirectory in the LocalSettings user
           folder (guess where you read this from). e.g. : "G:\Documents
           and Settings\<my name>\Impostazioni Locali\Amaya.cache". The
           Disk Clean applet reads the temp directories from
           HKEY_LOCAL_MACHINE:\SOFTWARE\Microsoft\Windows\CurrentVersion
           \Explorer\VolumeCaches, the existing entries should give you
           enough hints to add your own
 6. FF - (paths translated for your convenience)
       - Start Menu> Programs> Amaya> amaya: <nothing>. (Damn)
       - Start Menu> Programs> Amaya> amaya: <nothing>. (Shit)
       - Start Menu> Programs> Tools> administration> File Monitor> Include:
         amaya.exe, Highlight: fail;deny;denied
       - Start Menu> Programs> Amaya> amaya: <red highlight>C:\temp - access
         denied</red highlight> (Bingo!)
       - Start Menu> Programs> development> editors> Res Hacker: open
         amaya.exe: no string tables (<swear><bangs on desk>)
       - G:\Program files\net\web\Amaya\doc\manual.htm> Configuring Amaya>
         "The AmayaTemp Directory"yak yak yak, "C:\temp"yak yak yak,
         "The user may change both the AmayaTemp and cache directories"
         (yeah!!! tell me how the...)"by means of the General Preferences
         and Cache menus"(F*CK!!!)
       - Start menu> Settings> Control panel> Setup wizard> Amaya>
         Change/Remove> "Are you sure?" (YES! DIE AMAYA DIE!)
What else? oh, yes. Please:
 - put the help files in the appropriate Help directory (%WinDir%\Help,
   or better %WinDir%\Help\Amaya), in Unix I suppose you put them in
   /usr/doc/amaya.
 - register amaya.exe in HKLM:\Software\Microsoft\Windows\CurrentVersion\
   AppPaths, so I can start it by typing "amaya" in Start Menu> Run or in
   a text shell (kinda like symlinking amaya from its directory to the
   /usr/local/bin dir).
 - user interface files (non user-specific, kinda the Unix /usr directory)
   should go in the All Users' AppData folder (read from
   HKLM:\Software\Microsoft\Windows\CurrentVersion\AppPath\ShellFolders:
   AppData), in a W3C\Amaya subdir.
Microsoft Internet Explorer Team, when they had to port their browser
to Sun Solaris and HP-UIX, not only rewrote their code to make IE work
on top of another API, but they even redesigned their application's user
interface, to meet the requirements and the habits of Unix users (TAB key
for auto-complete, copy text in clipboard as it's selected, etc). They did
a helluva redesign work, you can read this story in MSDN Library, under the
Articles section. The core code of MS apps maybe is not the best in the
world, but at least they put a lot of effort in the user interface and in
the system integration (even when it's not their own system)
I'm not a Microsoft or Windows addict, neither I work for Microsoft or some
of their affiliates. I just *work*. I'm trying to reach the state of art in
system administration, I've got this machine running for a whole week (then
rebooted because of a third-part driver failure - apropos, they ignored my
bug report), the task manager currently reports the CPU idle loop pseudo-
process to be running for 35 hours or so, my goal is to reach or at least
touch perfection with a finger, and having to monitor every setup program,
being afraid of some funky default setting, is a terrible stress, believe
me.
Sorry for bothering you, but I'm fighting my battle against clutter, that
clutter that seems affecting the Windows family of operating systems. If
you are ever releasing another version of Amaya, please oh please follow
these simple directives. I fight for free software and web standards too,
but the crusade against rude and fascist/anarchic apps is way more important
for me (for this reason I killed amaya without even trying it). NOTE: these
are just suggestions, nobody is forcing someone to do something, you can
ignore me since no other user whould be so <put your favourite adjective
here>, but hey, you're not forcing me to use Amaya, nobody is, though I'd
be very sorry to give it up just for some minor misbehavior
Good work guys
PS: sorry for my ugly english
======================================================================
perchè ho postato questo lungo, inutile messaggio in "questo" newsgroup?
 - it.comp.os.win.win2000, perchè scommetto che sono in molti ad essersi
   convertiti a Windows 2000 e NTFS, ma che sono poi rimasti delusi
   dall'ignoranza (spesso in buona fede) di certi programmatori - e perchè
   potrei essere d'aiuto a chi è appena entrato in questo mondo
 - it.comp.programmare.win32, perchè quello che ho detto ai ragazzi del W3C
   vale anche per voi...
 - it.comp.lang.visual.basic, perchè vale SOPRATTUTTO per voi che
   presumibilmente vi siete appena avvicinati alla programmazione, meglio
   indirizzarvi da subito sulla retta via
 - it.comp.os.dibattiti, perchè se ne è già parlato, e anche se la mia l'ho
   già detta, credo di non essere stata molto convincente (e perchè i miei
   fan impazziranno per la mia nuova sign ;)
 - it.comp.software.browser, perchè il "pupo" è roba vostra, e anche la
   prossima infornata (BrowseX, ne ho quattro da dire anche a loro) sarà
   in tema.
Se vi ho infastiditi, questo sarà il mio ultimo messaggio a riguardo
-- 
=== UN*X is SEXY! ===
who|grep -i "green eyes"|date; cd ~; apropos fsck; whatis `unzip`|touch;
strip; finger; mount; gasp; yes|more; uptime; umount; sleep 

 least I could edit it), but as an embedded string constant
Non un grosso problema, la vai a cercare con un editor esadecimale e
sostituisci "C:" con quello che vuoi.
---
Bye! Lorenzo Lutti
http://antani.virtualave.net/