The issue of "render correctly everywhere" is a red herring. Word Processors are not desktop publishers, though many people try to use them as such. Word processors, much like Web browsers, are designed to make the content look good given the constraints of the rendering environment, thus how it renders is irrelevant to the document format (other than obvious stuff like style definitions, and what not).
While I don't think it's possible to anticipate every possible extension, you should at least be able to anticipate common areas for extension and provide a mechanism to extend those. My examples of adding a new border type is a good example.
The OASIS standard is too tight in areas it should be loose, and too loose in areas it should be tight.
The fact that the standard requires anything added to it to be in its own namespace is way too restrictive. Yes, totally new features should be in a different namespace, but extending existing features makes that problematic, otherwise it won't validate against the DTD or Schema.
"To prevent this virus from infecting your computer, follow these steps: 1. Turn on the Internet Connection Firewall feature (ICF) in Windows XP, Windows Server 2003, Standard Edition, and in Windows Server 2003, Enterprise Edition; or use Basic Firewall, Microsoft Internet Security and Acceleration (ISA) Server 2000, or a third-party firewall to block TCP ports 135, 139, 445, and 593; UDP ports 69 (TFTP), 135, 137, and 138; and TCP port 4444 for remote command shell. "
How precisely do you expect an older version of an application to support a newer versions features? If that version of the application simply does not have the feature, it can't very well know anything about it, can it?
If you can figure that one out, you should be a billionaire.
So what do you suggest? That a commercial office application developer wait until OASIS gets its act together and supports what they want?
Certainly a developer can work with OASIS, but OASIS doesn't move quickly. That means you tie your application to the release schedules of a standards body rather than your own.
It always amuses me when people say this. It shows how ignorant they are of the very format they're criticizing.
The Word format hasn't changed since Office 97. That's 4 versions ago. Excel hasn't changed since Excel 5, that's something like 7 versions ago. I can't speak for PowerPoint, but Access is the only one that has really changed much, but that's hardly a "document format".
Yeah, Word and Excel have both added new features that older versions ignore, but that's not the same thing.
Unfortunately, the OASIS format is modeled around the OpenOffice document model. There is no facility for extensions to the format, which means that it becomes impossible to use it if your applications feature set doesn't map directly to OpenOffices (or is a true subset).
Yes, it's XML and XML can be extended, but then it's no longer the OASIS standard document format.
And don't try to pretend that you can use your own namespaces to create your own functionality. Yes, you can, but since the OASIS standard doesn't require applications to maintain foreign elements, it's kind of a moot point.
It also doesn't address the issues of when you need to add something to a standard defined format because OpenOffice didn't support that feature. I mean things like a new border type, or a new data field format. Since the standard requires that anything you add to it be in a new namespace, you can't just add your own types and expect the document to validate.
I think OASIS severely erred on adopting one applications format rather than developing an open and extensible standard.
Altair BASIC wasn't a port of DM Basic anymore than Linux is a "port" of Unix.
DM Basic was compiled. Altair Basic was interpreted. DM Basic used about 16k of memory, AB could be loaded into the 4k of the Altair with room for applications code. DM Basic was written in (IIRC) GE GAP (General Assembly Program) while of course AB was written in 8080 Assembly.
Yes, they'll be unblockable, short of blocking the content itself. If you can't differentiate between the content and the advertising automatically, then you're stuck either avoiding the content or putting up with ads in a way that you can't automatically block.
Advertising will never go away. It will just become more insidious. In a way, I think adblocker and the like are akin to people taking anti-biotics every time they get a sniffle. It just ends up creating new strains of antibiotic resistant germs which, eventually will not be able to be combatted.
Today, it's relatively easy to spot the advertising within the page to block it out. Eventually, advertising will become so integrated with the content that you can't automatically detect and strip it out.
I agree whole heartedly with blocking truly annoying forms of advertising, such as popups, but to block all advertising, including stuff that goes out of its way to not be annoying (such as Google Ad Sense) is really just shooting ourselves in the foot.
I have never said someone who is victimized by through no faulf of their own is to blame. But, if you go swimming in the ocean with bits of bloody fish hanging off your body, don't be surprised if you get bit by a shark.
I knew a girl that was date raped 27 times. Now, one can give her some benefit of the doubt about the first few times, but after that you have to realize that she's putting herself in situations where she's likely to be raped.
Is the rapist at fault? You bet. But when you are repeatedly putting yourself in harms way, or perhaps even inviting it through your own actions.
I am not, in any way, diminishing the blame on the perpetrator. But come on, take a little responsiblity for yourself.
Wrong. While many victims are victims through no fault of their own, there are plenty of people that are victims because of their own actions.
That's not to say the perpetrators aren't at fault either, but it's your responsibility to protect yourself. Otherwise you'll be a victim your entire life.
I can't stand them either! Even though I am one of them (hacker, not cracker).
Seriously. I know we all want to live in a nice and peaceful society, but frankly society doesn't work that way. If you don't at least take basic precautions to protect yourself, you're at fault as much as the evil doer. You've made yourself a target.
Now, basic precautions aren't going to prevent a determined intruder from gaining access to your home, car, computer, or whatever, but at least it makes the drive by's look for easier targets.
If you have something really valuable to protect, then it falls on your own shoulders to use a higher level of security.
Human Nature is such that someone will always try to take advantage of others. If you don't prepare for that, that's your own fault.
You really don't understand the Mac mindset if you think Synaptic or Kym or Yumex are simple and not arcane. Granted, you don't need to know command line switches, but the baffling number of choices is very intimidating to a typical (non-techie) Mac user.
You may dismiss this as silly, but spend some time around non-techie Mac users and you'll understand what I mean.
And come on, adding shortcuts is more than just two clicks. You also have to type the path the executable, and various other information (Without even a "browse" button, last I noticed, though i've not used FC4 or the most recent gnome).
Then we haven't even gotten into things like button naming. Windows uses buttons such as "Yes No Cancel", and KDE and Gnome aren't a hell of a lot better. MacOS uses verbs and clearly defines what you're doing when you click the button.
"Are you sure you don't want to delete this very important file" "Yes No"
Versus "Are you sure you don't want to delete this very important file" "Keep it" "Delete it"
I'm no Mac zealot. I have both a PC (well, several) and Mac on my desktop, and I think a lot of the Mac "ease of use" arguments are bullshit (I don't buy the "infinite menu" argument or the single mouse) but there are definately some areas of the Mac desktop that ARE easier to use.
For starters, even though OSX uses the same sort of "throw all apps in one folder" approach that most Linux distro's use, the "app" package structure makes it simple to actually find the apps, or delete them for that matter. You don't need arcane package management systems. Just drag the package to the trashcan and it's deleted, similarly just drag the package from the CD-Rom or dmg archive and it's installed.
Then, and this is a biggie, you need only drag the app icon to the dock to add it to your quicklaunch. Compare this to the rather cumbersome ways to add apps to either gnome menu or gnome panel. (KDE isn't any better at this either).
Anyone can use any of the major OS's if they don't have to administer it... it's the administration that sucks so badly under Linux, at least for a non-techie.
If the unix shell were the "implementation of the Unix philosophy" you wouldn't have a monolithic shell that's capable of doing almost anything BY ITSELF.
In other words, it wouldn't have tons of builtin functions. Why does it have them? Performance most likely. It's expensive to launch a new process for every little function.
Unfortunately, your premise is in fact wrong. This is why Monad won't be released for another 3 - 5 years. They ARE in fact rewriting everything to work under Monad.
What I don't understand is why you even NEED a shell to execute scripts. It seems to me that this is the most un-unixy thing about unix. That is, the philosophy of discrete components that do one thing well.
When you can simply execute any scripting language through the #! syntax, what point is there in having a monstrous shell that executes scripts?
Other than extremely simple scripts that don't warrant the overhead of loading perl or python or whatever, it just makes no sense to me.
You really don't understand the "immediate need" concept do you? Linus threw git together in a few hours, it would take him days just to become familiar enough with the SVN code to even attempt a single patch, much less everything he'd need.
Unfortunately, Linus didn't have the luxury of waiting for Subversion to mature to his needs. He needed something, and needed it now, so he cobbled together a simple solution that worked for him. Who's to say that Git will be a lonter term thing or not, but for now it works for him.
The issue of "render correctly everywhere" is a red herring. Word Processors are not desktop publishers, though many people try to use them as such. Word processors, much like Web browsers, are designed to make the content look good given the constraints of the rendering environment, thus how it renders is irrelevant to the document format (other than obvious stuff like style definitions, and what not).
While I don't think it's possible to anticipate every possible extension, you should at least be able to anticipate common areas for extension and provide a mechanism to extend those. My examples of adding a new border type is a good example.
The OASIS standard is too tight in areas it should be loose, and too loose in areas it should be tight.
The fact that the standard requires anything added to it to be in its own namespace is way too restrictive. Yes, totally new features should be in a different namespace, but extending existing features makes that problematic, otherwise it won't validate against the DTD or Schema.
Even if you had a software firewall, you were still open to the Windows RPC worm.
That's not true.
http://support.microsoft.com/?kbid=826955
"To prevent this virus from infecting your computer, follow these steps: 1. Turn on the Internet Connection Firewall feature (ICF) in Windows XP, Windows Server 2003, Standard Edition, and in Windows Server 2003, Enterprise Edition; or use Basic Firewall, Microsoft Internet Security and Acceleration (ISA) Server 2000, or a third-party firewall to block TCP ports 135, 139, 445, and 593; UDP ports 69 (TFTP), 135, 137, and 138; and TCP port 4444 for remote command shell. "
How precisely do you expect an older version of an application to support a newer versions features? If that version of the application simply does not have the feature, it can't very well know anything about it, can it?
If you can figure that one out, you should be a billionaire.
So what do you suggest? That a commercial office application developer wait until OASIS gets its act together and supports what they want?
Certainly a developer can work with OASIS, but OASIS doesn't move quickly. That means you tie your application to the release schedules of a standards body rather than your own.
It always amuses me when people say this. It shows how ignorant they are of the very format they're criticizing.
The Word format hasn't changed since Office 97. That's 4 versions ago. Excel hasn't changed since Excel 5, that's something like 7 versions ago. I can't speak for PowerPoint, but Access is the only one that has really changed much, but that's hardly a "document format".
Yeah, Word and Excel have both added new features that older versions ignore, but that's not the same thing.
Unfortunately, the OASIS format is modeled around the OpenOffice document model. There is no facility for extensions to the format, which means that it becomes impossible to use it if your applications feature set doesn't map directly to OpenOffices (or is a true subset).
Yes, it's XML and XML can be extended, but then it's no longer the OASIS standard document format.
And don't try to pretend that you can use your own namespaces to create your own functionality. Yes, you can, but since the OASIS standard doesn't require applications to maintain foreign elements, it's kind of a moot point.
It also doesn't address the issues of when you need to add something to a standard defined format because OpenOffice didn't support that feature. I mean things like a new border type, or a new data field format. Since the standard requires that anything you add to it be in a new namespace, you can't just add your own types and expect the document to validate.
I think OASIS severely erred on adopting one applications format rather than developing an open and extensible standard.
Perhaps that's because CSS2 *IS* flawed, and that's why CSS2.1 is being worked on to fix it.
Altair BASIC wasn't a port of DM Basic anymore than Linux is a "port" of Unix.
DM Basic was compiled. Altair Basic was interpreted. DM Basic used about 16k of memory, AB could be loaded into the 4k of the Altair with room for applications code. DM Basic was written in (IIRC) GE GAP (General Assembly Program) while of course AB was written in 8080 Assembly.
Yes, they'll be unblockable, short of blocking the content itself. If you can't differentiate between the content and the advertising automatically, then you're stuck either avoiding the content or putting up with ads in a way that you can't automatically block.
True, but there seem to be a lot of people that want to get rid of ALL advertising, including Google. I think that's a bit extreme.
Advertising will never go away. It will just become more insidious. In a way, I think adblocker and the like are akin to people taking anti-biotics every time they get a sniffle. It just ends up creating new strains of antibiotic resistant germs which, eventually will not be able to be combatted.
Today, it's relatively easy to spot the advertising within the page to block it out. Eventually, advertising will become so integrated with the content that you can't automatically detect and strip it out.
I agree whole heartedly with blocking truly annoying forms of advertising, such as popups, but to block all advertising, including stuff that goes out of its way to not be annoying (such as Google Ad Sense) is really just shooting ourselves in the foot.
We want to encourage non-annoying advertising!
I have never said someone who is victimized by through no faulf of their own is to blame. But, if you go swimming in the ocean with bits of bloody fish hanging off your body, don't be surprised if you get bit by a shark.
An Example?
I knew a girl that was date raped 27 times. Now, one can give her some benefit of the doubt about the first few times, but after that you have to realize that she's putting herself in situations where she's likely to be raped.
Is the rapist at fault? You bet. But when you are repeatedly putting yourself in harms way, or perhaps even inviting it through your own actions.
I am not, in any way, diminishing the blame on the perpetrator. But come on, take a little responsiblity for yourself.
Never blame the victim.
Wrong. While many victims are victims through no fault of their own, there are plenty of people that are victims because of their own actions.
That's not to say the perpetrators aren't at fault either, but it's your responsibility to protect yourself. Otherwise you'll be a victim your entire life.
I can't stand them either! Even though I am one of them (hacker, not cracker).
Seriously. I know we all want to live in a nice and peaceful society, but frankly society doesn't work that way. If you don't at least take basic precautions to protect yourself, you're at fault as much as the evil doer. You've made yourself a target.
Now, basic precautions aren't going to prevent a determined intruder from gaining access to your home, car, computer, or whatever, but at least it makes the drive by's look for easier targets.
If you have something really valuable to protect, then it falls on your own shoulders to use a higher level of security.
Human Nature is such that someone will always try to take advantage of others. If you don't prepare for that, that's your own fault.
You really don't understand the Mac mindset if you think Synaptic or Kym or Yumex are simple and not arcane. Granted, you don't need to know command line switches, but the baffling number of choices is very intimidating to a typical (non-techie) Mac user.
You may dismiss this as silly, but spend some time around non-techie Mac users and you'll understand what I mean.
And come on, adding shortcuts is more than just two clicks. You also have to type the path the executable, and various other information (Without even a "browse" button, last I noticed, though i've not used FC4 or the most recent gnome).
Then we haven't even gotten into things like button naming. Windows uses buttons such as "Yes No Cancel", and KDE and Gnome aren't a hell of a lot better. MacOS uses verbs and clearly defines what you're doing when you click the button.
"Are you sure you don't want to delete this very important file" "Yes No"
Versus "Are you sure you don't want to delete this very important file" "Keep it" "Delete it"
I'm no Mac zealot. I have both a PC (well, several) and Mac on my desktop, and I think a lot of the Mac "ease of use" arguments are bullshit (I don't buy the "infinite menu" argument or the single mouse) but there are definately some areas of the Mac desktop that ARE easier to use.
For starters, even though OSX uses the same sort of "throw all apps in one folder" approach that most Linux distro's use, the "app" package structure makes it simple to actually find the apps, or delete them for that matter. You don't need arcane package management systems. Just drag the package to the trashcan and it's deleted, similarly just drag the package from the CD-Rom or dmg archive and it's installed.
Then, and this is a biggie, you need only drag the app icon to the dock to add it to your quicklaunch. Compare this to the rather cumbersome ways to add apps to either gnome menu or gnome panel. (KDE isn't any better at this either).
Anyone can use any of the major OS's if they don't have to administer it... it's the administration that sucks so badly under Linux, at least for a non-techie.
If the unix shell were the "implementation of the Unix philosophy" you wouldn't have a monolithic shell that's capable of doing almost anything BY ITSELF.
In other words, it wouldn't have tons of builtin functions. Why does it have them? Performance most likely. It's expensive to launch a new process for every little function.
Unfortunately, your premise is in fact wrong. This is why Monad won't be released for another 3 - 5 years. They ARE in fact rewriting everything to work under Monad.
What I don't understand is why you even NEED a shell to execute scripts. It seems to me that this is the most un-unixy thing about unix. That is, the philosophy of discrete components that do one thing well.
When you can simply execute any scripting language through the #! syntax, what point is there in having a monstrous shell that executes scripts?
Other than extremely simple scripts that don't warrant the overhead of loading perl or python or whatever, it just makes no sense to me.
You really don't understand the "immediate need" concept do you? Linus threw git together in a few hours, it would take him days just to become familiar enough with the SVN code to even attempt a single patch, much less everything he'd need.
Rejected what patches? You think he could turn SVN into a distributed CMS with a few patches?
Unfortunately, Linus didn't have the luxury of waiting for Subversion to mature to his needs. He needed something, and needed it now, so he cobbled together a simple solution that worked for him. Who's to say that Git will be a lonter term thing or not, but for now it works for him.
have you been living under a rock? Google "Linus Subversion" and it's the first link.
l
http://subversion.tigris.org/subversion-linus.htm
Strange then that even the Subversion developers disagree with you that SVN "works fine" for Linus's needs.
You would think that if SVN did in fact work fine, that the SVN developers would be the first to be championing it.