Sorry, we can't count Freenet. It hasn't been
anything like a popular success.
When I last tried it, it was excruciatingly slow,
and eventually got stuck in an infinite loop that
gradually consumed all of swap (or tried to, until
I killed it). That might have been the JVM, but
what difference does it make, really?
OK, I was wrong, Limewire is under GPL.
(Not that you could tell, looking at limewire.com --
but limewire.org
reveals all.) Somebody else posted about something
called DVArchive,
something for fooling with your ReplayTV. Moneydance was
announced recently, and might get popular. Anything
else?
Are there any popular, mainstream Free Software
projects implemented in Java, other than stuff
only useful in Java development shops? (Stuff like
IDEs, text editors, web server add-ons, and XML
validators don't count. Limewire doesn't count either -- it's not Free Software.)
That isn't a rhetorical question. If you've got
'em, post 'em.
By the way... if MS was smart -- and they can
afford to hire smart -- then each game will have been signed with a hundred different keys, and
each Xbox will only know one of them, so that if
you do figure out the key on yours, only one in a
hundred other Xboxes will also have it.
Once the key-extraction process is elaborated, for
it to be very useful you would need to apply it to
a whole farm of Xboxes -- assuming MS really did
do the smart thing.
Of course nobody modded it up, but I posted
a plan for this approach back in February.
I'm not claiming any credit, this guy did the
work. Rather, everybody else should be
embarrassed that they weren't working on it too.
The next big advance will be somebody doing power
consumption or timing analysis while the xbox is
checking (bad) signatures, and teasing out the
key a bit at a time. Then you will be able to
sign anything you like. (Look up Markus Kuhn's
papers.)
It's written in Java, which means, by my
experience, it will tend to get stuck in infinite
loops, consume all of RAM, and (thereby) crash my
other programs. People tell me that's the
various JVMs' fault, not the language's, but I
haven't discovered yet how to apply that fact
usefully.
Are there any successful Free Software
projects written in Java and popular outside of
Java development shops? (I don't mean that
question rhetorically -- post 'em if you got 'em.)
In particular, he confuses the distinction between safe and unsafe programming practices with the choice of language, and an makes a specious distinction between "high-" and "low-level" languages. He further fails to recognize why "the number of bugs in Web applications written in Perl and PHP is astounding" despite their supposed high level.
An advantage of some languages that are very unlike Perl and PHP (such as C++ and O'Caml) is the ability to perform a variety of error checks at compile time. That these languages tend also to support "low-level" operations does not, by itself, make coding in them less safe. Rather, what matters is whether there are inherently safe ways to do all the common operations a programmer needs to do.
What Jon Lasser should call for, if he wants to be taken seriously, is for better use of well-tested libraries that present high-level interfaces for common functions. Safe libraries may be written in any language strong enough to support a sound library interface. The more error checking that can be automated or obviated, the safer the code can be.
C++ offers library authors strong tools for safe library implementations. Python enables sound interfaces, albeit checked only at runtime. C offers much less to the library designer, mainly because resource management in C cannot be automated. Perl offers the least of all, because global state may may affect the semantics of primitives used in a library more or less at random, and because the language semantics themselves tend to chaos. Java encapsulates memory management but offers little help in managing other resources.
These languages don't fall neatly into "high-" and "low-level" bins that imply safety or unsafety. Safety comes, to a large degree, from use of well-designed, -implemented, and -tested libraries. Language choice affects safety in the availability and usability of such libraries.
Every time I have tried Freenet, before, it either
crashed, or (more usually) got stuck in an infinite
loop and/or consumed all of memory and crashed my login session. I have tended to blame JVMs, and
Java. I certainly don't run any other daemons
that behave that way.
What are the chances of a C or C++ implementation?
I mean, how complicated could this thing be?
Surely everybody reading this realizes that
LCD stands for "Liquid Crystal Display". So,
an LCD Display would be a Liquid Crystal
Display Display.
There might be one in your ATM machine (
Automatic Teller Machine machine) which you
can look at while you poke in your PIN number (Personal Identification Number number),
which it will store momentarily in its RAM memory
(Random Access Memory memory).
Free: It's no good unless it's everywhere... or at least in lots of places. TarProxy is Open Source Software released under a BSD-style license and available on SourceForge (see project page for details).
Platform Independent: TarProxy is written in Java, so it runs on Linux, Windows, Solaris, OS X, and any other operating system with a Java Virtual Machine available.
contradict one another, and therefore directly
suggest incipient failure. Any program you want
widely deployed had better not depend on having
some buggy JVM installed.
(Arguably that is the reason that Freenet has
been a practical failure. Every time I have
tried to use it, it has got stuck in an infinite
loop, or consumed all my swap space, or crashed.
I blame buggy JVMs.)
If you want software to be widely and successfully
deployed, it should (must!) resemble the software that already has been. Almost all such code
(99%+) has been in C or in C++. Are there
any Free Software programs written in
Java successfully deployed outside of Java
development shops? (Rhetorical question; the
answer is "not enough to matter".)
If you want portability to Unixes, to w32, and to
Macosix, you already get that with Gcc and
autoconf.
If it's in Java, I certainly won't
run it as a daemon.
"...where can I learn about the direct electromagnetic approach..."
Google is your friend. Look for lithium fusion,
fusion and charged particles, electromagnetic
kinetic energy extraction. Russia used to loft
fission reactors in satellites, based on the
principle. (In fact one of their reactors which
they brought to a conference as a demo was
confiscated and held for many years as a result of
a confused export law on the books.)
The method avoids neutron bombardment by not
emitting neutrons, but only whole nuclei, which
may be confined and guided to traps to release
their kinetic energy.
Fusion is one of the cleanest forms of energy conversion, excluding renewable natural sources, like wind farms, tidal generators, and solar cells.
They don't like to mention how many hundreds of
tons of material would be made radioactive by the
heavy neutron bombardment from hydrogen
reactors. The whole apparatus would have to be
replaced frequently as it gets too damaged by
the bombardment to hold itself up, and the scrap
would have to be put somewhere safe, just as with
fission reactors.
(These remarks apply to thermal neutron processes,
not those that extract electromagnetic energy
from kinetic charged particles. For some reason
nobody likes to talk about those.)
Two key points are that (1) most of the
bugs Reasoning found are false alarms (which
is an occupational hazard for this kind of
analysis), and (2) one reason Linux does so
well is that those lunatics at Stanford have
been doing just this kind of analysis for
quite some time, so most of the easily-found
bugs were found long ago.
This doesn't invalidate any of their conclusions,
of course: the Stanford lunatics haven't been
analyzing NT, they've been analyzing Linux,
and for sound academic reasons.
They don't need for MS to sign their bootloader.
All they need is to find a security hole in any
binary MS did sign.
The ideal scenario is with some free demo disc
that connects over the network to what it thinks
is a game server. Your handy substitute server
smashes the stack with its bootloader, and then
you're off and running.
It would be interesting to see what the Relax-NG
schema looks like, and whether it is strong enough
to represent (a) every feature of the w3c schema,
and (b) the things the w3c schema wasn't up to.
So, in this vein, what exactly is the difference
between "I currently work at..." and
"I work at..."? Are you anticipating
getting fired?
(Sorry, little joke. "Anticipating" doesn't mean
what most people think it does. To anticipate
being fired, you might stop worrying about your
action items and objectives,
knowing they won't make any difference. It implies
jumping the gun somehow. Say "expecting" or "hoping for" when that's what you mean.)
Techies have their own crappy jargon, but it's
used more to stall than to confuse or mislead
people.
- "Ogg's Goodies Gavel-Slammed"
- "Ogg Gets Gonads-Suckage"
- "Oggs Get Gut-Sliced"
But of course you can do better.When I last tried it, it was excruciatingly slow, and eventually got stuck in an infinite loop that gradually consumed all of swap (or tried to, until I killed it). That might have been the JVM, but what difference does it make, really?
OK, I was wrong, Limewire is under GPL. (Not that you could tell, looking at limewire.com -- but limewire.org reveals all.) Somebody else posted about something called DVArchive, something for fooling with your ReplayTV. Moneydance was announced recently, and might get popular. Anything else?
Them's the rules -- for the sake of this posting, they just don't. (You can probably figure out a good reason if you think about it.)
That isn't a rhetorical question. If you've got 'em, post 'em.
Once the key-extraction process is elaborated, for it to be very useful you would need to apply it to a whole farm of Xboxes -- assuming MS really did do the smart thing.
The next big advance will be somebody doing power consumption or timing analysis while the xbox is checking (bad) signatures, and teasing out the key a bit at a time. Then you will be able to sign anything you like. (Look up Markus Kuhn's papers.)
It's written in Java, which means, by my experience, it will tend to get stuck in infinite loops, consume all of RAM, and (thereby) crash my other programs. People tell me that's the various JVMs' fault, not the language's, but I haven't discovered yet how to apply that fact usefully.
Are there any successful Free Software projects written in Java and popular outside of Java development shops? (I don't mean that question rhetorically -- post 'em if you got 'em.)
In particular, he confuses the distinction between safe and unsafe programming practices with the choice of language, and an makes a specious distinction between "high-" and "low-level" languages. He further fails to recognize why "the number of bugs in Web applications written in Perl and PHP is astounding" despite their supposed high level.
An advantage of some languages that are very unlike Perl and PHP (such as C++ and O'Caml) is the ability to perform a variety of error checks at compile time. That these languages tend also to support "low-level" operations does not, by itself, make coding in them less safe. Rather, what matters is whether there are inherently safe ways to do all the common operations a programmer needs to do.
What Jon Lasser should call for, if he wants to be taken seriously, is for better use of well-tested libraries that present high-level interfaces for common functions. Safe libraries may be written in any language strong enough to support a sound library interface. The more error checking that can be automated or obviated, the safer the code can be.
C++ offers library authors strong tools for safe library implementations. Python enables sound interfaces, albeit checked only at runtime. C offers much less to the library designer, mainly because resource management in C cannot be automated. Perl offers the least of all, because global state may may affect the semantics of primitives used in a library more or less at random, and because the language semantics themselves tend to chaos. Java encapsulates memory management but offers little help in managing other resources.
These languages don't fall neatly into "high-" and "low-level" bins that imply safety or unsafety. Safety comes, to a large degree, from use of well-designed, -implemented, and -tested libraries. Language choice affects safety in the availability and usability of such libraries.
What are the chances of a C or C++ implementation? I mean, how complicated could this thing be?
These are two totally unrelated stories.
A virulent, fatal flu is scary enough without dragging in flesh-eating bacteria and the Andromeda Strain.
If we end up with this deal with the devil, at least we should try to have the monopoly-maintenance fee double on each round.
There might be one in your ATM machine ( Automatic Teller Machine machine) which you can look at while you poke in your PIN number (Personal Identification Number number), which it will store momentarily in its RAM memory (Random Access Memory memory).
- Free: It's no good unless it's everywhere... or at least in lots of places. TarProxy is Open Source Software released under a BSD-style license and available on SourceForge (see project page for details).
- Platform Independent: TarProxy is written in Java, so it runs on Linux, Windows, Solaris, OS X, and any other operating system with a Java Virtual Machine available.
contradict one another, and therefore directly suggest incipient failure. Any program you want widely deployed had better not depend on having some buggy JVM installed.(Arguably that is the reason that Freenet has been a practical failure. Every time I have tried to use it, it has got stuck in an infinite loop, or consumed all my swap space, or crashed. I blame buggy JVMs.)
If you want software to be widely and successfully deployed, it should (must!) resemble the software that already has been. Almost all such code (99%+) has been in C or in C++. Are there any Free Software programs written in Java successfully deployed outside of Java development shops? (Rhetorical question; the answer is "not enough to matter".)
If you want portability to Unixes, to w32, and to Macosix, you already get that with Gcc and autoconf.
If it's in Java, I certainly won't run it as a daemon.
Google is your friend. Look for lithium fusion, fusion and charged particles, electromagnetic kinetic energy extraction. Russia used to loft fission reactors in satellites, based on the principle. (In fact one of their reactors which they brought to a conference as a demo was confiscated and held for many years as a result of a confused export law on the books.)
The method avoids neutron bombardment by not emitting neutrons, but only whole nuclei, which may be confined and guided to traps to release their kinetic energy.
They don't like to mention how many hundreds of tons of material would be made radioactive by the heavy neutron bombardment from hydrogen reactors. The whole apparatus would have to be replaced frequently as it gets too damaged by the bombardment to hold itself up, and the scrap would have to be put somewhere safe, just as with fission reactors.
(These remarks apply to thermal neutron processes, not those that extract electromagnetic energy from kinetic charged particles. For some reason nobody likes to talk about those.)
Two key points are that (1) most of the bugs Reasoning found are false alarms (which is an occupational hazard for this kind of analysis), and (2) one reason Linux does so well is that those lunatics at Stanford have been doing just this kind of analysis for quite some time, so most of the easily-found bugs were found long ago.
This doesn't invalidate any of their conclusions, of course: the Stanford lunatics haven't been analyzing NT, they've been analyzing Linux, and for sound academic reasons.
One of the things that makes it funny is how penetratingly insightful it is, but only accidentally!
Funny, I used to get lots of letters from irate fanboys who asserted that it was an obvious fake. Not one of them could spell.
The ideal scenario is with some free demo disc that connects over the network to what it thinks is a game server. Your handy substitute server smashes the stack with its bootloader, and then you're off and running.
On a network, does it only work on a shared filesystem like NFS?
Nothing is certain but Death in Texas!
It would be interesting to see what the Relax-NG schema looks like, and whether it is strong enough to represent (a) every feature of the w3c schema, and (b) the things the w3c schema wasn't up to.
(Sorry, little joke. "Anticipating" doesn't mean what most people think it does. To anticipate being fired, you might stop worrying about your action items and objectives, knowing they won't make any difference. It implies jumping the gun somehow. Say "expecting" or "hoping for" when that's what you mean.)
Techies have their own crappy jargon, but it's used more to stall than to confuse or mislead people.