- From: KJK <noog@libero.it>
- Date: Wed, 14 Feb 2001 02:27:09 +0100
- To: <www-amaya@w3.org>
"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"(FSCK!!!)
- 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
"start
amaya" in a text shell (kinda like symlinking amaya from its directory to
the /usr/local/bin dir I guess).
- 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). PLEASE don't
reply to this message if you consider this paragraph some sort of flame bait
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. I'm no C/C++ programmer either, so I'm afraid I can't help you directly
(for this reason I'm not posting to amaya-dev - forward if you think it
should be more appropriate)
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
Received on Tuesday, 13 February 2001 22:05:48 UTC