Don't feel bad about feeling bad about STL. STL's design seems to have suffered from the "second system effect": it's far too general. And in the process, performance and error checking were left behind.
After writing a few 10klocs of O'CAML, I have rarely came across the problems you mention, and they were never really serious. Overloading and dynamic typing are supported by the new G'CAML features, which I would expect to become standard. I do think the O'CAML syntax could stand some improvement to eliminate common gotchas, in particular in imperative code.
Kodak is not saying every digital print must flow through Kodak. They are only saying that after you install a Kodak camera + software, and plug it in, the Kodak software you just installed should come up, and I agree. [...] Do you really think their team of engineers couldn't solve a 'minor technical issue' over the course of a year?
I didn't say that Microsoft's behavior was nice, merely that Kodak has behaved similarly in the past. Furthermore, Kodak had a choice: develop open standards or try to ride to market dominance on the coattails of Microsofts monopoly. Kodak made the latter choice. That carries the well-known risk that Microsoft is going to turn on you. Kodak should live with the consequences of their choice.
Kodak is BETTING THE COMPANY on digital cameras/film/prints.
Welcome to the business world. Kodak made choices, and they have to live with the consequences (as does Microsoft). The courts will work this one out, and it should stand as a warning to anybody else throwing their lot with Microsoft. I don't see any reason to feel particularly sympathetic towards Kodak given their track record.
I suspect Kodak wants to grab this market as badly as Microsoft: they simply want to make sure that as many people as possible are automatically sent to their partner companies, rather than Microsoft's. Kodak's record in this area is prety poor, with numerous attempts at using their market dominance in film photography to push through proprietary digital image formats and digital imaging standards.
Of course, the defense "we want to make it simpler" does have a kernel of truth: ultimate pushbutton simplicity means relieving the user of the choice of a company to send their prints to. But average consumers face that choice in the real world, so they are probably capable of making it on-line as well, without being infantilized by either Kodak or Microsoft.
The kinds of things people have written in Java as applets are a PDF viewere, a TIFF image viewer, 360 degree surround image viewers, optimal travel routing, MPEG and video decoders, interactive graph layout and visualization, and lots of other compute intensive stuff. It works. It often works so well that you don't even notice it. Java has grown up and is a fast, full-featured programming language (if you are still running JDK 1.1 in your browser, upgrade to 1.3). Flash has an easy-to-use but slow, limited scripting language that you can use to produce great animations and replace web forms, but do little else with.
There are lots of reasons for wanting an open source viewer besides dogma. For example, the Macromedia-supplied viewer crashes under Konqueror, and it doesn't run at all on some open source operating systems. Sorry, but a "free binary" just doesn't cut it.
Sun at least makes the Java sources available, if under a somewhat annoying license. And there are third party implementations of Java.
Don't forget that Flash is taking over a lot of territory from Java applets rather than HTML. Which would you rather have?
Java, without question. Java has a real GUI toolkit that behaves in ways people expect of GUI toolkits. Flash is all about looks, but usability of user interfaces written in Flash leaves a lot to be desired. From a programming point of view, I also prefer Java: it's not as easy as Flash programming, but ultimately, it's more powerful and you can do a lot more in Java.
But, yes, Macromedia very much would like to take over the applet space with their product. And by providing something that looks spiffy and is easy to get started with, they may well succeed, no matter how many corners they cut.
with Flash 5, can lead to very powerful web-based apps that interact with live data form a variety of sources... check this thing I did for the intranet of my last job:
Let's see, when I go to that site, it says "Loading and parsing XML... please be patient." and then it just sits there. There is no error message and now way of figuring out what's wrong.
When I open it in IE5, I do indeed get some kind of nifty looking display, something that would look swell on a set for StarTrek or The Matrix. Trouble is, it isn't very useful. It ignores my font preferences, so fonts are way too small for my display. The scrollbars don't look like scrollbars. The whole thing doesn't resize. I can't print it. And instead of responding instantly when I click somewhere, it animates. Let's not even talk about accessibility for people with disabilities. In fact, I have seen a number of sites that attempt to use Flash as some kind of "responsive" and "interactive" UI, and they all share the same problems.
So, thanks for the example: you have provided an excellent example of why Flash is a bad standard to use for writing web-based applications. You presumably invested a lot of time in building this thing, but while it looks nice, what you wrote ends up being considerable less useful and less user friendly than straight HTML and images.
Going after big companies like Unocal or the tobacco companies is going to backfire: those companies have enough clout to get the laws changed.
The approach that is needed is to apply charter revocation more in small, clearcut cases. Once sufficient legal precedent has been built up, there is at least a chance that one can go after bigger companies.
It might also be worth waiting for a less right-wing supreme court. The current supreme court seems to be able to call "black" "white" and get away with it.
A corporation isn't a human being and it doesn't deserve the kind of empathy you suggest. Corporations act with complete lack of empathy or human concerns only for the purpose of maximizing profits; that's the way we created them, and it's why they are predictable and useful.
Now, if a corporation is useful despite its criminal beginnings, it should continue to operate. But benefit to society should be the only criterion for the existence of a corporation. After criminal wrongdoings at a company, the legal system can decide whether this was a problem just with the individuals or with corporate culture.
Maybe you are using the wrong file system: even without any journalling, a few hundred GB of disk space shouldn't take "hours". It doesn't on Linux. Technically, journalling is overkill if all you want is fast reboots: you don't need the complexity of XFS or JFS.
Also, the tradeoff doesn't work out. Let's say journalling has 5% overhead. That's an hour a day on disk-bound machines. For reasonable server uptimes, you spend more time journalling than you would if you just ran fsck once in a blue moon.
If you say that you can't tolerate the downtime in a single chunk, journalling isn't going to protect you. To deal with hardware failures, you still need hot backup systems.
The thing with style sheets, it that they keep things consistent when you want it, alow you to give more control to you users, and give you tools to be able to sperate style from content.
That's the theory. The practice is that if a user tries to override or turn off style sheets many sites fall apart.
I find you statement a bit unrealistic anyway. Even slashdot have customised colors.
Not if you choose "Light" mode. You see, Slashdot does give users this option, and, unlike style sheets, it works. More sites should do that.
The W3C is is not responsible for bad web-designers.
No, but the W3C is responsible for the standards it releases and when it releases them.
Sun, in their infinite wisdom, hasn't gotten around to including a journaling file system or logical volume management into their OS.
I see no reason for using a journaling file system; you pay significantly in terms of performance and you do not get any meaningful improvements in reliability. And LVM actually greatly decreases system manageability and reliability. After several years of using that junk on IBM boxes, I'm glad I don't have to put up with it on Linux. Linux does need to have it, of course, but only to be buzzword compliant.
This isn't Microsoft, the OS maker, it's Microsoft Research, the R&D Lab.
They are one and the same company. Employees get the same stock options and they are under the same CEO. And most researchers are at Microsoft Research because they believe in the company and the mission. There's no use pretending: Microsoft Research is part of the Evil Empire.
I have used IE on friends and familly's windows machines and I agree that it rocks.
I don't think it's much better than Konqueror or the latest releases of Mozilla. IE is faster on low-end hardware, but that's easy to fix, and IE has its own set of really annoying behaviors.
setting up style sheets at all? Trust me, your users don't like it when you replace their color, font, and link preferences with yours.
Better yet, just turn away anybody who isn't using your favorite browser from your sites. It saves both you and the web browsing public a lot of trouble.
How are they supposed to be compatible with previous drives???
Easy--dispense with the proprietary dock and go with a FireWire connector on the disk: it's smaller and it's more compatible. If they want to sell universal connectivity, they can sell USB-to-FireWire and SCSI-to-FireWire adapters with that.
This is some sort of bizarre marketing gimmick, designed to tie you to IOmega. It makes little technical or financial sense.
Just get portable FireWire or USB drives. You don't have the hassle of using a "sleeve", you won't be tied to a single vendor for your next drive, and it will be more compatible.
I would very much like to get rid of wires and use a wireless keyboard. Unfortunately, companies like Logitech don't seem to think consumers care, so they just produce the cheapest possible device, which means little or no security. I called them and they didn't try to hide the fact that their devices aren't secure.
Let's hope that reports like this will create a consumer demand for security and cause lots of complaints to Logitech. So, if you see people use these devices, explain to them that anybody nearby can get their passwords, credit card numbers, and even take control of their computer. I think when properly explained to them, consumers do care.
Wireless keyboards can be made secure for a few more dollars; the company simply needs to care.
I agree that TiVo's patents are not as general as some people might fear. Nevertheless, something is wrong here. Either the patents are very specific and easily circumventable. In that case, they are not very meaningful and mainly an attempt to make the company sound more appealing to investors. Or the patents are very broad, in which case they likely claim things that are pretty obvious to people who have had digital video technology around them for years.
Don't get me wrong: I think TiVo is a pretty decent company that makes a pretty good product. I just don't think it's an example of breakthrough innovation: PVRs are here because disks and video compression have become cheap enough. TiVo had the business smarts to enter the market at the right time with a good product, and that's why they have been successful (but that's not something that ought to be patentable). Technologically, however, there is little that's surprising or unobvious about them.
Note that many high-end workstations were capable of doing that long before TiVo appeared on the scene. It's so obvious and trivial, why would anybody write it up? It only becomes an identifiable capability once you stick the whole thing into a box and call it a "consumer device".
So, what exactly is the innovation there?
It is really easy to take a look at a finished product and declare how anyone could have thought of it.
That's true, and it is also easy to fool oneself about whether one thought about something like that before the company did. However, in this particular instance, I had two other people describe the idea to me on separate occasions during brainstorming long before any of the PVRs ever made any press.
And it's not exactly particularly surprising that people come up with that idea when they have hardware sitting on their desk that can do this sort of thing out of the box, as many researchers at IBM, MIT, and other places did for many years. It's just that as long as that hardware costs $30000, you won't try to turn it into a consumer device.
In fact, hyperbole in place, everything that ever was invented or ever will be, would have eventually been thought of by someone else anyway,
True, too. However, people had been recording and playing back broadcast video digitally for years before TiVo came out. On reasonably well equipped workstations, you could even record and view multiple video streams simultaneously. What distinguishes TiVo is not some new capability but simply the fact that they defined a market niche for this product and entered the market with a consumer device roughly when disk storage prices and the availability of low-cost video compression chips made it feasible to do so.
I don't blame TiVo for filing these patents--they had to. Every startup does. But it's not an instance of innovative or far reaching thinking. To most people who have the hardware available to them, this is an obvious application, and the little tweaks you apply to make it more usable and convenient are standard engineering.
Don't feel bad about feeling bad about STL. STL's design seems to have suffered from the "second system effect": it's far too general. And in the process, performance and error checking were left behind.
After writing a few 10klocs of O'CAML, I have rarely came across the problems you mention, and they were never really serious. Overloading and dynamic typing are supported by the new G'CAML features, which I would expect to become standard. I do think the O'CAML syntax could stand some improvement to eliminate common gotchas, in particular in imperative code.
I didn't say that Microsoft's behavior was nice, merely that Kodak has behaved similarly in the past. Furthermore, Kodak had a choice: develop open standards or try to ride to market dominance on the coattails of Microsofts monopoly. Kodak made the latter choice. That carries the well-known risk that Microsoft is going to turn on you. Kodak should live with the consequences of their choice.
Kodak is BETTING THE COMPANY on digital cameras/film/prints.
Welcome to the business world. Kodak made choices, and they have to live with the consequences (as does Microsoft). The courts will work this one out, and it should stand as a warning to anybody else throwing their lot with Microsoft. I don't see any reason to feel particularly sympathetic towards Kodak given their track record.
Of course, the defense "we want to make it simpler" does have a kernel of truth: ultimate pushbutton simplicity means relieving the user of the choice of a company to send their prints to. But average consumers face that choice in the real world, so they are probably capable of making it on-line as well, without being infantilized by either Kodak or Microsoft.
Incidentally, is Linux out yet for the monochrome iPaq? Until recently, I don't think there was any driver for its screen.
With 16Mbytes of disk space, it isn't large enough to hold even the software necessary to run Notepad. And with 32Mbytes of RAM, you wouldn't want to.
The kinds of things people have written in Java as applets are a PDF viewere, a TIFF image viewer, 360 degree surround image viewers, optimal travel routing, MPEG and video decoders, interactive graph layout and visualization, and lots of other compute intensive stuff. It works. It often works so well that you don't even notice it. Java has grown up and is a fast, full-featured programming language (if you are still running JDK 1.1 in your browser, upgrade to 1.3). Flash has an easy-to-use but slow, limited scripting language that you can use to produce great animations and replace web forms, but do little else with.
Sun at least makes the Java sources available, if under a somewhat annoying license. And there are third party implementations of Java.
Java, without question. Java has a real GUI toolkit that behaves in ways people expect of GUI toolkits. Flash is all about looks, but usability of user interfaces written in Flash leaves a lot to be desired. From a programming point of view, I also prefer Java: it's not as easy as Flash programming, but ultimately, it's more powerful and you can do a lot more in Java.
But, yes, Macromedia very much would like to take over the applet space with their product. And by providing something that looks spiffy and is easy to get started with, they may well succeed, no matter how many corners they cut.
Let's see, when I go to that site, it says "Loading and parsing XML... please be patient." and then it just sits there. There is no error message and now way of figuring out what's wrong.
When I open it in IE5, I do indeed get some kind of nifty looking display, something that would look swell on a set for StarTrek or The Matrix. Trouble is, it isn't very useful. It ignores my font preferences, so fonts are way too small for my display. The scrollbars don't look like scrollbars. The whole thing doesn't resize. I can't print it. And instead of responding instantly when I click somewhere, it animates. Let's not even talk about accessibility for people with disabilities. In fact, I have seen a number of sites that attempt to use Flash as some kind of "responsive" and "interactive" UI, and they all share the same problems.
So, thanks for the example: you have provided an excellent example of why Flash is a bad standard to use for writing web-based applications. You presumably invested a lot of time in building this thing, but while it looks nice, what you wrote ends up being considerable less useful and less user friendly than straight HTML and images.
The approach that is needed is to apply charter revocation more in small, clearcut cases. Once sufficient legal precedent has been built up, there is at least a chance that one can go after bigger companies.
It might also be worth waiting for a less right-wing supreme court. The current supreme court seems to be able to call "black" "white" and get away with it.
Now, if a corporation is useful despite its criminal beginnings, it should continue to operate. But benefit to society should be the only criterion for the existence of a corporation. After criminal wrongdoings at a company, the legal system can decide whether this was a problem just with the individuals or with corporate culture.
Also, the tradeoff doesn't work out. Let's say journalling has 5% overhead. That's an hour a day on disk-bound machines. For reasonable server uptimes, you spend more time journalling than you would if you just ran fsck once in a blue moon.
If you say that you can't tolerate the downtime in a single chunk, journalling isn't going to protect you. To deal with hardware failures, you still need hot backup systems.
That's the theory. The practice is that if a user tries to override or turn off style sheets many sites fall apart.
I find you statement a bit unrealistic anyway. Even slashdot have customised colors.
Not if you choose "Light" mode. You see, Slashdot does give users this option, and, unlike style sheets, it works. More sites should do that.
The W3C is is not responsible for bad web-designers.
No, but the W3C is responsible for the standards it releases and when it releases them.
I see no reason for using a journaling file system; you pay significantly in terms of performance and you do not get any meaningful improvements in reliability. And LVM actually greatly decreases system manageability and reliability. After several years of using that junk on IBM boxes, I'm glad I don't have to put up with it on Linux. Linux does need to have it, of course, but only to be buzzword compliant.
They are one and the same company. Employees get the same stock options and they are under the same CEO. And most researchers are at Microsoft Research because they believe in the company and the mission. There's no use pretending: Microsoft Research is part of the Evil Empire.
I don't think it's much better than Konqueror or the latest releases of Mozilla. IE is faster on low-end hardware, but that's easy to fix, and IE has its own set of really annoying behaviors.
Better yet, just turn away anybody who isn't using your favorite browser from your sites. It saves both you and the web browsing public a lot of trouble.
Easy--dispense with the proprietary dock and go with a FireWire connector on the disk: it's smaller and it's more compatible. If they want to sell universal connectivity, they can sell USB-to-FireWire and SCSI-to-FireWire adapters with that.
Just get portable FireWire or USB drives. You don't have the hassle of using a "sleeve", you won't be tied to a single vendor for your next drive, and it will be more compatible.
Let's hope that reports like this will create a consumer demand for security and cause lots of complaints to Logitech. So, if you see people use these devices, explain to them that anybody nearby can get their passwords, credit card numbers, and even take control of their computer. I think when properly explained to them, consumers do care.
Wireless keyboards can be made secure for a few more dollars; the company simply needs to care.
That claim may be lengthy, but it seems pretty general.
Don't get me wrong: I think TiVo is a pretty decent company that makes a pretty good product. I just don't think it's an example of breakthrough innovation: PVRs are here because disks and video compression have become cheap enough. TiVo had the business smarts to enter the market at the right time with a good product, and that's why they have been successful (but that's not something that ought to be patentable). Technologically, however, there is little that's surprising or unobvious about them.
$ mpeg_capture live.mpg &
$ mpeg_play previously_recorded.mpg
Note that many high-end workstations were capable of doing that long before TiVo appeared on the scene. It's so obvious and trivial, why would anybody write it up? It only becomes an identifiable capability once you stick the whole thing into a box and call it a "consumer device". So, what exactly is the innovation there?
That's true, and it is also easy to fool oneself about whether one thought about something like that before the company did. However, in this particular instance, I had two other people describe the idea to me on separate occasions during brainstorming long before any of the PVRs ever made any press.
And it's not exactly particularly surprising that people come up with that idea when they have hardware sitting on their desk that can do this sort of thing out of the box, as many researchers at IBM, MIT, and other places did for many years. It's just that as long as that hardware costs $30000, you won't try to turn it into a consumer device.
In fact, hyperbole in place, everything that ever was invented or ever will be, would have eventually been thought of by someone else anyway,
True, too. However, people had been recording and playing back broadcast video digitally for years before TiVo came out. On reasonably well equipped workstations, you could even record and view multiple video streams simultaneously. What distinguishes TiVo is not some new capability but simply the fact that they defined a market niche for this product and entered the market with a consumer device roughly when disk storage prices and the availability of low-cost video compression chips made it feasible to do so.
I don't blame TiVo for filing these patents--they had to. Every startup does. But it's not an instance of innovative or far reaching thinking. To most people who have the hardware available to them, this is an obvious application, and the little tweaks you apply to make it more usable and convenient are standard engineering.