Rather, I consider it pretty easy.
Is this really what Windows users consider easy? On a Mac, it depends on the keyboard layout, but for me it's alt-2. A cent symbol is alt-4 (dollar is shift-4). Entering a character with an accent is alt-something for the accent and then the letter that it goes on top of. For example, i-umlaut is option-u then i.
If memorising unicode character numbers is your idea of good HCI, then I really hope I never use a program that you've designed.
But that's a pretty big "if" there
Oh, I agree - you'd have added a lot of hardware complexity and probably more than you'd be able to fit if you wanted to keep 7 of them in the thermal envelope of the Cell.
It depends a lot on the codebase. Codebases tend to accumulate cruft. Having people refactor them because their requirements are different to yours can help, as can having a project developed without key product ship dates as the driving force. The bigger barrier is culture though. It's really hard to have a group of developers that have been working on a project for 10 years in private move to developing in public. In the list, he actually gives different numbers of fail points, more for projects that were proprietary for longer than they were open, which makes a lot more sense than the summary in the 'article'.
The one that I disagree with is 'Your source builds using something that isn't GNU Make [ +10 points of FAIL ]'. I disagree for two reasons. The first is that it implies using GNU make features, which likely means that you're conflating building and build configuration (which should gain some fail points). The projects that I most enjoy hacking on use CMake and Ninja for building by default (CMake can also emit POSIX Makefiles that GNU Make can use, but I take his point to mean that gmake is the only command you need to build, so the CMake dependency would be a problem). LLVM still more or less maintains two build systems, though the autoconf + gmake one is slowly being removed in favour of the CMake one. If I make a small change, it takes Ninja less time to rebuild it than it takes gmake to work out that it has nothing to do if I don't make any changes.
I'd also disagree with 'Your code doesn't have a changelog' - this is a GNU requirement, but one that dates back to before CVS was widely deployed. The revision control logs now fill the same requirement, though you should have something documenting large user-visible changes.
As for "web page", AJAX apps do exactly this
AJAX provides a mechanism for delivering the XML. How many popular web apps can you name that completely separate the back end and the front end and provide documentation for users to talk directly to the back end and substitute their own UI or amalgamate the data with that from other services? Of those, how many provide the data in a self-documenting form?
You knew the job was dangerous when you took it, Fred. -- Superchicken