If (note, Slashdot posters, *if*) GNOME is more attractive than KDE, then perhaps Ximian GNOME is better still, since they try to make it more polished and simplified (although it's usually a release or so behind). So perhaps there could be a bootable distribution which uses Ximian GNOME. This could outdo all the others with the pinnacle of silly names, Xnoppix.
So... these ATI cards that now have the performance lead, do they have free drivers for Linux and X11?
A card that works reliably and is supported out-of-the-box by a free Linux distribution is (for many) preferable to a card that doesn't have drivers or requires some binary-only junk to be loaded into kernel space.
If this is just 'Card X (which has no free driver) beat Card Y (which has no free driver) in some gaming benchmark', I fail to see the interest.
But whoever has enough access to the machine to change program binaries presumably has enough access to change the key that's used for verification, or to turn off verification altogether.
Some mechanism to check the integrity of code can be useful - we already have something like this with the RPM package manager, for example: it can verify PGP signatures on packages and then rpm --verify checks installed files against a fingerprint. This is not the same as making sure that only signed software can run, regardless of the owner's wishes and with no control over which public key is trusted.
I use a modem for web browsing. I've found that wwwoffle is a good proxy server, because it can operate in both online and offline modes - when offline, it serves the most recent version of each page, and if you try to view a non-cached page, it's marked to be downloaded next time you connect. If you want to speed up your browsing some more at the expense of having to hit 'reload' occasionally, you can configure wwwoffle to always use an available cached version even when online.
If you have a shell account on another machine, and that machine has access to a proxy server, then you can tunnel port 3128 or 8080 (common http proxy ports) through ssh. This makes browsing a lot quicker because there is only a single TCP/IP connection going over the modem link - you don't have to connect separately for each page downloaded. Unfortunately I found that while this gave very fast browsing for half an hour or so, eventually it would freeze up and the ssh connection would have to be killed and restarted. Perhaps this has been fixed with newer OpenSSH releases.
RabbIT is a proxy server you can run on the upstream host which compresses text and images (lossily).
The author of rsync mentioned something about an rsync-based web proxy where only differences in pages would be sent, but I don't know if this program was ever released.
But if you don't want to run a particular program (such as a worm), don't run it. There is no need for all this signature stuff, except to prevent the user from running software of his own choosing.
If you did decide to run only code signed by a trusted key, the only reasonable system would be for the owner of the PC to posess that key. (This could be the company IT department, or the individual user for home systems.)
Re:I'm not sure how accurate this statement is.
on
MRAM in 2004?
·
· Score: 2, Interesting
Well, when a PC boots up you also lose all the applications you had running, and that's more than a few minutes' loss of work. Even if you save everything before shutting down you still won't have all the right windows / Emacs buffers / web pages open. Suspend to hard disk can alleviate this, but even there you worry about network connections and strange things that can go wrong on restore.
Hmm, what's my argument here? MRAM would be just as bad as suspending to disk, only a bit faster. And if suspending to disk is not popular now (I don't know anyone who does it for desktop systems - and by popularity I include 'the OS and vendor support it') then why should it be any better with MRAM?
Re:Faster startup times? Whatever...
on
MRAM in 2004?
·
· Score: 4, Insightful
I don't think you're seeing the big picture. If MRAM can store data persistently, that means no more need for a hard disk (backups happen over the network). A big cause of failure, noise and expense is cut out immediately, at least for systems that don't need to store large amounts of data locally.
You could just boot the machine from a Knoppix CD - or the equivalent for Windows - and save your files into MRAM. This assumes MRAM can mature to the point where it is no more unreliable than a hard disk, which shouldn't be too difficult.
Huh? Any half-decent implementation of the standard library will already have a specialization of vector for pointer types so that all pointer types use the same object code. And things that aren't pointers cannot safely (and portably) be cast to void* and back again.
It would make a lot more sense if websites allowed you to identify yourself by your PGP or SSH public key. At the very least this could provide a secure way of doing the 'I've forgotten my password, please reset it' thing.
Huh? There may be resistance to incorporating changes to proprietary software too. At least if it's free you have the additional option of maintaining your own version.
You're quite right of course. So the BBC article is correct: the chance is expected to become even less. However, this is a fairly meaningless piece of information; what matters is the chance _now_. In your 10-dice example, being told that the chance of all-fours will probably diminish doesn't help you at all if you already know what the chance is.
The chances of a catastrophe are likely to become even slimmer once more measurements of the asteroid's orbit have been made.
Surely the estimated probability now will already have taken that into account? Or is the one in 900k chance quoted not a true reflection of what astronomers feel is the likelihood?
But of course, if LZW increases the storage capacity of a computer and so is patentable, then any algorithm is patentable since you can always think of a practical application. This is the nonsensical doctrine of 'technical effect' adopted by the European Patent Office: an algorithm is patentable if it has a technical effect, despite the explicit exclusion of computer programs under the European Patent Convention. Then a couple of years later the EPO decided that since all algorithms do have a 'technical effect', it might as well just grant patents on them immediately without the fig-leaf. Thus do patent offices get around explicit exclusions of computer programs.
I get the analogy... I don't think it is appropriate. What you describe is more analogous to picking the wrong component. If you design a car and pick the wrong type of seats, or seats with a known design flaw, then you must change the kind of seats you're using or fix their design and manufacture some more. You wouldn't change the rest of the car to work around an always-faulty component. Only for tolerance of particular components that might be faulty in one particular car - and that situation doesn't really happen in software.
I've often wondered why it is that no new *safe language* has ever been widely successful
Well how about Perl, Tcl, Python, etc. Tcl and sometimes Perl have their own gotchas related to quoting, but these aren't so bad and relatively easy to avoid
About string classes, arrays and so on: yes I know C does not use the 'class' keyword. But many C libraries present what is effectively a class interface, with functions foo_create(), foo_frob(int), foo_add(foo, foo), and foo_destroy().
In my earlier post I wasn't really talking about malware but about unsafe software in general. If the user is told 'any executable you run will have your permissions, and so you are responsible for it' but chooses to ignore that and run the dancing elephants demo anyway, I don't see why anyone else should be liable. The user interface could certainly be improved to make this point more explicit to the user, and it would be good to have better sandboxes for untrusted code (and to wean users away from 'active content' in general, except for specialized applications). But that's not a liability issue I think.
I wasn't thinking of bounded array access (though that is useful) so much as using fixed size buffers or variable sized ones. Does a programmer think 'I should use a growabable buffer, but it's too much effort, so I'll just use char[1000] instead'? That's what I mean by making it hard to do the right thing.
You're correct that there isn't universal agreement on what the right thing is for array access; a language ought to make it pretty simple to do either, eg 'char[1000 unchecked]' versus 'char[1000 checked]' or something like that.
If (note, Slashdot posters, *if*) GNOME is more attractive than KDE, then perhaps Ximian GNOME is better still, since they try to make it more polished and simplified (although it's usually a release or so behind). So perhaps there could be a bootable distribution which uses Ximian GNOME. This could outdo all the others with the pinnacle of silly names, Xnoppix.
I thought the article was about 3d cards. Besides, 'why does this belong on Slashdot?' posts are a long tradition.
So... these ATI cards that now have the performance lead, do they have free drivers for Linux and X11?
A card that works reliably and is supported out-of-the-box by a free Linux distribution is (for many) preferable to a card that doesn't have drivers or requires some binary-only junk to be loaded into kernel space.
If this is just 'Card X (which has no free driver) beat Card Y (which has no free driver) in some gaming benchmark', I fail to see the interest.
But whoever has enough access to the machine to change program binaries presumably has enough access to change the key that's used for verification, or to turn off verification altogether.
Some mechanism to check the integrity of code can be useful - we already have something like this with the RPM package manager, for example: it can verify PGP signatures on packages and then rpm --verify checks installed files against a fingerprint. This is not the same as making sure that only signed software can run, regardless of the owner's wishes and with no control over which public key is trusted.
I use a modem for web browsing. I've found that wwwoffle is a good proxy server, because it can operate in both online and offline modes - when offline, it serves the most recent version of each page, and if you try to view a non-cached page, it's marked to be downloaded next time you connect. If you want to speed up your browsing some more at the expense of having to hit 'reload' occasionally, you can configure wwwoffle to always use an available cached version even when online.
If you have a shell account on another machine, and that machine has access to a proxy server, then you can tunnel port 3128 or 8080 (common http proxy ports) through ssh. This makes browsing a lot quicker because there is only a single TCP/IP connection going over the modem link - you don't have to connect separately for each page downloaded. Unfortunately I found that while this gave very fast browsing for half an hour or so, eventually it would freeze up and the ssh connection would have to be killed and restarted. Perhaps this has been fixed with newer OpenSSH releases.
RabbIT is a proxy server you can run on the upstream host which compresses text and images (lossily).
The author of rsync mentioned something about an rsync-based web proxy where only differences in pages would be sent, but I don't know if this program was ever released.
This sounds like a great idea. I wonder if there is software that can detect logos and blur them? An ad-blocker for television.
But if you don't want to run a particular program (such as a worm), don't run it. There is no need for all this signature stuff, except to prevent the user from running software of his own choosing.
If you did decide to run only code signed by a trusted key, the only reasonable system would be for the owner of the PC to posess that key. (This could be the company IT department, or the individual user for home systems.)
Well, when a PC boots up you also lose all the applications you had running, and that's more than a few minutes' loss of work. Even if you save everything before shutting down you still won't have all the right windows / Emacs buffers / web pages open. Suspend to hard disk can alleviate this, but even there you worry about network connections and strange things that can go wrong on restore.
Hmm, what's my argument here? MRAM would be just as bad as suspending to disk, only a bit faster. And if suspending to disk is not popular now (I don't know anyone who does it for desktop systems - and by popularity I include 'the OS and vendor support it') then why should it be any better with MRAM?
I don't think you're seeing the big picture. If MRAM can store data persistently, that means no more need for a hard disk (backups happen over the network). A big cause of failure, noise and expense is cut out immediately, at least for systems that don't need to store large amounts of data locally.
You could just boot the machine from a Knoppix CD - or the equivalent for Windows - and save your files into MRAM. This assumes MRAM can mature to the point where it is no more unreliable than a hard disk, which shouldn't be too difficult.
No - the word 'bug' was in common usage, as the journal entry makes clear if you think about it.
'First actual case of bug being found.'
Do you think they'd have written this if the word 'bug' didn't already exist?
The record is humorous. The word 'bug' had long been used. But this was the first time it was due to a real insect.
Imagine the modern equivalent of disabling the backspace key: you might remove the second and third mouse buttons - oh, wait...
Huh? Any half-decent implementation of the standard library will already have a specialization of vector for pointer types so that all pointer types use the same object code. And things that aren't pointers cannot safely (and portably) be cast to void* and back again.
It would make a lot more sense if websites allowed you to identify yourself by your PGP or SSH public key. At the very least this could provide a secure way of doing the 'I've forgotten my password, please reset it' thing.
Huh? There may be resistance to incorporating changes to proprietary software too. At least if it's free you have the additional option of maintaining your own version.
All software is more valuable when Open Source, however it may not be more valuable *to its author*.
I keep all my messages in two big mbox files and use grepmail.
You're quite right of course. So the BBC article is correct: the chance is expected to become even less. However, this is a fairly meaningless piece of information; what matters is the chance _now_. In your 10-dice example, being told that the chance of all-fours will probably diminish doesn't help you at all if you already know what the chance is.
Or you could get the mailing list to be carried by Gmane and browse the articles using a newsreader. No need for any of this newfangled RSS nonsense.
But of course, if LZW increases the storage capacity of a computer and so is patentable, then any algorithm is patentable since you can always think of a practical application. This is the nonsensical doctrine of 'technical effect' adopted by the European Patent Office: an algorithm is patentable if it has a technical effect, despite the explicit exclusion of computer programs under the European Patent Convention. Then a couple of years later the EPO decided that since all algorithms do have a 'technical effect', it might as well just grant patents on them immediately without the fig-leaf. Thus do patent offices get around explicit exclusions of computer programs.
I get the analogy... I don't think it is appropriate. What you describe is more analogous to picking the wrong component. If you design a car and pick the wrong type of seats, or seats with a known design flaw, then you must change the kind of seats you're using or fix their design and manufacture some more. You wouldn't change the rest of the car to work around an always-faulty component. Only for tolerance of particular components that might be faulty in one particular car - and that situation doesn't really happen in software.
About string classes, arrays and so on: yes I know C does not use the 'class' keyword. But many C libraries present what is effectively a class interface, with functions foo_create(), foo_frob(int), foo_add(foo, foo), and foo_destroy().
In my earlier post I wasn't really talking about malware but about unsafe software in general. If the user is told 'any executable you run will have your permissions, and so you are responsible for it' but chooses to ignore that and run the dancing elephants demo anyway, I don't see why anyone else should be liable. The user interface could certainly be improved to make this point more explicit to the user, and it would be good to have better sandboxes for untrusted code (and to wean users away from 'active content' in general, except for specialized applications). But that's not a liability issue I think.
I wasn't thinking of bounded array access (though that is useful) so much as using fixed size buffers or variable sized ones. Does a programmer think 'I should use a growabable buffer, but it's too much effort, so I'll just use char[1000] instead'? That's what I mean by making it hard to do the right thing.
You're correct that there isn't universal agreement on what the right thing is for array access; a language ought to make it pretty simple to do either, eg 'char[1000 unchecked]' versus 'char[1000 checked]' or something like that.
Yes, I know, but it hardly merits the description 'end-to-end'.