Domain: ox.ac.uk
Stories and comments across the archive that link to ox.ac.uk.
Comments · 560
-
Online linksFeynman is good for clarifying the "harder" math based books, Asimov, imho, should be overlooked- unless you are scared of math. There are many good online books for Physics which I have not seen any links posted.
Here is a 700+ page book similar in content to a freshman college text MotionMountain
This is a Classical Electrodynamic book at a graduate level Classical Electrodynamics-Bo Thide
A site for Statistical and Thermal Physics with some good notes by Harvey Gould Statistical and Thermal Physics (STP) Curriculum Development Project
Quantum Mechanics--Niels Walet-- see the "Big
.ps fileLecture Notes on General Relativity-- Sean M. Carroll
A list of books to look into Cease's Book List
A few authors I like are A.P. French, Halliday Resnick for intro, Griffiths
A very respectable Oxford Physics booklist can be found in their handbook here
-
Re:Sounds more like the ultimate nagware to me!
-
Re:It's about time
"what I really want is some black market adrenaline. Why arent people manufacturing and selling that?
Because it's a tad dangerous? This page has some toxicity information
I'm not sure how to interpret the dosage figures, but any chemical with warnings like Highly toxic. May be fatal if inhaled, swallowed or absorbed through the skin. May cause harm or be fatal to the unborn child. Note low LD50s below. May cause reproductive defects. is not on my list of recreational chemicals.
It also comes with a list of coded warnings
-
Here's with the stats and links (on tread)
Coronary heart disease statistics
Eating habbits and desiese
It's hard to get straight figures about food, smoking is easy because it's an easy target.
Here's what i found on food
Diet
One reason why CHD rates are high in the UK is because the average diet is so unhealthy. In particular fat intake - especially of saturated fat - in the UK is too high, and fruit and vegetable consumption is too low.
The percentage of food energy derived from total fat in the UK diet is falling only gradually. It was about 42% in the mid 1970s and is now around 39% but the type of fat eaten has changed: the percentage of food energy derived from saturated fat falling from around 20% to about 15%.
The fall in saturated fat consumption is reflected in changes in the types of food consumed. For example, since the mid 1970s the consumption of whole milk has fallen by 74% and butter by 76%.
However not all recent dietary changes have been beneficial. Since the mid 1970s consumption of potatoes (other than chips) has fallen by 40% and bread by 22%. The consumption of fresh fruit has risen by 43% but vegetable consumption has not increased.
UK dietary statistics also show marked social class and regional differences in the consumption of fresh fruit and vegetables, with people on lower incomes, and those living in Scotland, Northern Ireland and the North of England eating considerably less than those on higher incomes or living in the South.
Smokers account for 111,000 deaths
CVD (cardio vascular desiese) accounted to 260,000 deaths (some of whome were smokers).
CHD by itself is the most common cause of death in the UK. One in four men and one in five women die from the disease. CHD caused over 140,000 deaths in the UK in 1997
an article on fluride in water etc
There's quite a bit of stuff on Fluorosis &co out there if you look
Here's a cracker
Materials and dosages:
Calcium Citrate and Magnesium (Nature's Life, Garden Grove, CA 92841) containing Calcium (Citrate) 1000 mg, Magnesium (Oxide) 667 mg) 2 tablets with 1 capsule of Potassium 99 mg (Nature's Way Products, 10 Mountain Springs Parkway, Springville, Utah 84663) - 99 mg Potassium amino acid chelate
In addition, nutrients may be supplemented with a good multivitamin preparation (which must contain choline and inositol, and very low - or no - iron). The best one I have turned up is "Green Multi" from Nature's Life, Garden Grove, California 92841. Because the organophosphates diminish absorption of nutrients while increasing the requirement for them, both this preparation, plus the calcium/magnesium and potassium mentioned above, can be dissolved in the mouth - absorbing through the mucous membranes of the mouth. Individual supplements can be taken as desired - such as vitamin E (an antioxidant), vitamin A (to help protect vision), copper (which phosphorus binds to), zinc (balances copper), and B complex (balanced - the only balanced formula I know of is "Balanced B-Complex Formula" from General Nutrition Corporation, Pittsburgh, Pennsylvania 15222). Vitamin C is also useful, although I don't recommend dissolving that in the mouth. The teeth (and bones) are under sufficient stress as it is - both from the corrosive effect of the phosphorus, and from the storage of fluoride which makes teeth and bones brittle. Dissolved Green Multi dissolves through the skin, too.
All fluorine exposure should be avoided - which may be difficult considering water supplies are being increasingly fluoridated. Fluoride absorbs through the skin as well as via mouth, making hot tubs and swimming pools places to add to the body's already excessive fluoride.
I Troll no more
-
Here's with the stats and links (on tread)
Coronary heart disease statistics
Eating habbits and desiese
It's hard to get straight figures about food, smoking is easy because it's an easy target.
Here's what i found on food
Diet
One reason why CHD rates are high in the UK is because the average diet is so unhealthy. In particular fat intake - especially of saturated fat - in the UK is too high, and fruit and vegetable consumption is too low.
The percentage of food energy derived from total fat in the UK diet is falling only gradually. It was about 42% in the mid 1970s and is now around 39% but the type of fat eaten has changed: the percentage of food energy derived from saturated fat falling from around 20% to about 15%.
The fall in saturated fat consumption is reflected in changes in the types of food consumed. For example, since the mid 1970s the consumption of whole milk has fallen by 74% and butter by 76%.
However not all recent dietary changes have been beneficial. Since the mid 1970s consumption of potatoes (other than chips) has fallen by 40% and bread by 22%. The consumption of fresh fruit has risen by 43% but vegetable consumption has not increased.
UK dietary statistics also show marked social class and regional differences in the consumption of fresh fruit and vegetables, with people on lower incomes, and those living in Scotland, Northern Ireland and the North of England eating considerably less than those on higher incomes or living in the South.
Smokers account for 111,000 deaths
CVD (cardio vascular desiese) accounted to 260,000 deaths (some of whome were smokers).
CHD by itself is the most common cause of death in the UK. One in four men and one in five women die from the disease. CHD caused over 140,000 deaths in the UK in 1997
an article on fluride in water etc
There's quite a bit of stuff on Fluorosis &co out there if you look
Here's a cracker
Materials and dosages:
Calcium Citrate and Magnesium (Nature's Life, Garden Grove, CA 92841) containing Calcium (Citrate) 1000 mg, Magnesium (Oxide) 667 mg) 2 tablets with 1 capsule of Potassium 99 mg (Nature's Way Products, 10 Mountain Springs Parkway, Springville, Utah 84663) - 99 mg Potassium amino acid chelate
In addition, nutrients may be supplemented with a good multivitamin preparation (which must contain choline and inositol, and very low - or no - iron). The best one I have turned up is "Green Multi" from Nature's Life, Garden Grove, California 92841. Because the organophosphates diminish absorption of nutrients while increasing the requirement for them, both this preparation, plus the calcium/magnesium and potassium mentioned above, can be dissolved in the mouth - absorbing through the mucous membranes of the mouth. Individual supplements can be taken as desired - such as vitamin E (an antioxidant), vitamin A (to help protect vision), copper (which phosphorus binds to), zinc (balances copper), and B complex (balanced - the only balanced formula I know of is "Balanced B-Complex Formula" from General Nutrition Corporation, Pittsburgh, Pennsylvania 15222). Vitamin C is also useful, although I don't recommend dissolving that in the mouth. The teeth (and bones) are under sufficient stress as it is - both from the corrosive effect of the phosphorus, and from the storage of fluoride which makes teeth and bones brittle. Dissolved Green Multi dissolves through the skin, too.
All fluorine exposure should be avoided - which may be difficult considering water supplies are being increasingly fluoridated. Fluoride absorbs through the skin as well as via mouth, making hot tubs and swimming pools places to add to the body's already excessive fluoride.
I Troll no more
-
Re:Silence
I am surprised nobody has posted the "Dark Suckers" joke in response to this yet.
Screw it, here it is
For years, it has been believed that electric bulbs emit light, but recent information has proved otherwise. Electric bulbs don't emit light; they suck dark. Thus, we call these bulbs Dark Suckers. The Dark Sucker Theory and the existence of dark suckers prove that dark has mass and is heavier than light.
First, the basis of the Dark Sucker Theory is that electric bulbs suck dark. For example, take the Dark Sucker in the room you are in. There is much less dark right next to it than there is elsewhere. The larger the Dark Sucker, the greater its capacity to suck dark. Dark Suckers in the parking lot have a much greater capacity to suck dark than the ones in this room.
So with all things, Dark Suckers don't last forever. Once they are full of dark, they can no longer suck. This is proven by the dark spot on a full Dark Sucker.
A candle is a primitive Dark Sucker. A new candle has a white wick. You can see that after the first use, the wick turns black, representing all the dark that has been sucked into it. If you put a pencil next to the wick of an operating candle, it will turn black. This is because it got in the way of the dark flowing into the candle. One of the disadvantages of these primitive Dark Suckers is their limited range.
There are also portable Dark Suckers. In these, the bulbs can't handle all the dark by themselves and must be aided by a Dark Storage Unit. When the Dark Storage Unit is full, it must be either emptied or replaced before the portable Dark Sucker can operate again.
Dark has mass. When dark goes into a Dark Sucker, friction from the mass generates heat. Thus, it is not wise to touch an operating Dark Sucker. Candles present a special problem as the mass must travel into a solid wick instead of through clear glass. This generates a great amount of heat and therefore it's not wise to touch an operating candle.
Also, dark is heavier than light. If you were to swim just below the surface of the lake, you would see a lot of light. If you were to slowly swim deeper and deeper, you would notice it getting darker and darker. When you get really deep, you would be in total darkness. This is because the heavier dark sinks to the bottom of the lake and the lighter light floats at the top. The is why it is called light.
Finally, we must prove that dark is faster than light. If you were to stand in a lit room in front of a closed, dark closet, and slowly opened the closet door, you would see the light slowly enter the closet. But since dark is so fast, you would not be able to see the dark leave the closet.
Next time you see an electric bulb, remember that it is a Dark Sucker.
'Stolen' from here
and of course for every good Hoax theory that has to be an expository page going into more depth.
Which can be found here -
Annealing
I was thinking of writing such a piece of code for my company. I haven't got the time yet. I think it can be solved by using Annealing, which is one of the strongest optimisation methods for multivariate functions (see here for example). Basically you simulate a gas of students which under hot temperature jump from shift to shift, when cooling down the probability for a change is simulated with a bolzmann factor (which includes temperature). By modelling the energy (or money) of persons in a shift this should be a flexible way of optimisation. (shift overlaps with lectures, for example, would raise the energy so when minimizing energy, they should disappear.)
-
Same idea, but without the laser...
Many, many, moons ago I got a job working here while I was doing my A levels and one of the things that they where working on was propulsion systems for extremely high speed planes. If my memory serves me (which is not guaranteed cos I was only humble code monkey and not privee to the finer arts of engineering theory and it was a long time ago), then they where planning to use conventional propulsion methods up to their maximum effective threshold and then start spraying fuel onto the trailing edge of the wings directly, which due to the intense heat and pressure due to the (already quite unfeasibly high) speed would spontaneously ignite thereby generating more thrust without all the hassles of trying to force an extremely unpredictable fluid down a tube at high speed. Absolutely no idea of whether or not they made any progress on this or whether or not I would be prepared to fly in one if they did...
-
Not just the course, but what else goes with itSure, the course is important, but you'll likely find that half the places have virtually identical courses.
So, start asking about related things. Are you going to want some work experience? If so, does the department have industry links, and with who? How about on campus work - do they have openings for students to do some tech support? My college has a couple of student computer reps, who do some websites, maintain a few machines, help out the paid staff with admining etc. The experience I've got with doing this was looked upon very favourably by the company that are employing me this summer. No matter which area of IT you want to go into, experience is a big help, so does this place help you get it?
Finally, ask about the facilities. How many computer rooms do they have, and what stuff do they have on them? What centralised 'Nix facilities do they offer? Ethernet to you room is very nice, so do they offer that, and if so what restrictions are placed on it (no webservers? low bandwidth limits?). What about their central web hosting, can you do much with that? If not, are there any other boxes you can use for any dynamic content you want to play with?
Oh, and while you're on campus, go look round the other facilities too. Places to hang out are important, as are sports facilities, on campus shops etc. Also, speak to the students as well as the tutors, find out all you can
-
Not just the course, but what else goes with itSure, the course is important, but you'll likely find that half the places have virtually identical courses.
So, start asking about related things. Are you going to want some work experience? If so, does the department have industry links, and with who? How about on campus work - do they have openings for students to do some tech support? My college has a couple of student computer reps, who do some websites, maintain a few machines, help out the paid staff with admining etc. The experience I've got with doing this was looked upon very favourably by the company that are employing me this summer. No matter which area of IT you want to go into, experience is a big help, so does this place help you get it?
Finally, ask about the facilities. How many computer rooms do they have, and what stuff do they have on them? What centralised 'Nix facilities do they offer? Ethernet to you room is very nice, so do they offer that, and if so what restrictions are placed on it (no webservers? low bandwidth limits?). What about their central web hosting, can you do much with that? If not, are there any other boxes you can use for any dynamic content you want to play with?
Oh, and while you're on campus, go look round the other facilities too. Places to hang out are important, as are sports facilities, on campus shops etc. Also, speak to the students as well as the tutors, find out all you can
-
Re:Perfect Timing....
I never really bothered what happens to my spare cpu cycles... so why not waste them on SETI it's fun, isn't it? But now I saw that link in an earlier post and I think I will use my cpu for something meaningful now...
IMHO brute forcing RC5 is.., well, It was always clear it could be done... maybe thats the difference to Seti and it produces no useful results thats the difference to the cure cancer project...anyway, thanks to the guy who posted that link. -
Re:the original?
ET: Greetings, hu-mans. We contact you to usher you into the great community of sentient species!
Human: We have d3crypt3d ur private k3v/s! \|/3 wi11 h4xxor u!
ET: Stop that. It's an insult to the dignity of all thinking beings.
Human: 1 4m s0 3|_33T!
ET: I didn't wait 10,000 years for my answer to cross the icy depths of space so I could read your sophmoric babblings.
Human: 1 r0xx0rd u!
ET: Your puny intellect is no match for our massive weapons!
Human: Br1|\|g it on! U \|/1|_|_ f34r /|\3!
Of course, I just assume that alien intelligence is like me. Maybe I'm just too closed-minded to envisage a form of consciousness that isn't driven into a homidical rage by leet-speak.
Seriously, while there are a great many ways besides SETI you can meet people and waste processor cycles together (I know - keep analysing the ripples in the surface of loch ness until you find the "messages" pixies are sending us from another dimension!) my colleagues at Oxford have managed to come up with something genuinely useful to do with your spare processor cycles.
-
Neutrino interactions and ball bearings
This might be a good place to mention my calculation that looks at a quote from the late latmented Douglas Adams:
"It all depends on what you mean by 'hit' of course, seeing as matter consists almost entirely of nothing at all. The chances of a neutrino actually hitting something as it travels through all this howling emptiness are roughly comparable to that of dropping a ball bearing at random from a cruising 747 and hitting, say, and egg sandwich."
Also incidently, the neutrino toaster is not an invetion, it's a discovery: being close to a supernova would make you feel mighty warm, even if you did have shielding to protect you from the light and the matter shockwaves. Supernovae release 90% of their energy as neutrinos.
---Nathaniel, on the Neutrino Prowl, co-author on the recent SNO papers. -
Re:Homeopathy & "alternative" medicine
Quinine is a homeopathic.
No. It comes in pill form.
It is, in fact, the only effective treatment for malaria that exists.
There's also chloroquine and mefloquine.
See this page, or hey, search google yourself. -
Re:S390
now all you need is the OS
IBM placed the original OS/360 into the public domain a while back. You can get a CD image of it from http://www.cyberdynesys.com/os360.tgz or ftp://ftp.ox.ac.uk/pub/linux/hercos360/os360.tar.g z
It's a bit of work to install (the process is reasonably well documented online, but it probably helps if you've had actual hands-on experience operating an S/360), but it works. And there are goodies like compilers for COBOL, FORTRAN, ALGOL and PL/I thrown in, just to round out that retro experience. (My dual 550 MHz P-III emulates a 370/158 faster than the original hardware, as far as CPU goes. Probably slower on I/O). -
OT: Re:More, more, more!
I wouldn't have any problem with teachers teaching about condoms if they also taught about the condom failure rate for which many reports are available. To drive the point home, perhaps the teachers could also have the students play a game. They could spin a wheel each day of class. If the wheel landed on the safe zone, they would get a free piece of candy. If it landed on the danger zone they would have to pay for all the candy they had eaten. At the 100 to 1 odds cited in the linked study, I wonder how many students would play the game.
-
Re:My perl is not as grand as it once was...
My post was actually a joke (I'm surprised that someone has moderated it as Troll! If that moderator thought I don't like Perl, he/she obviously hasn't read my code...) and this was a parody for Java's "write once, run everywhere". ...but I do not think that perl is the "Write Once, Read Nowhere" langue you make it out to be ^_^Just for a little fun, I thought I'd try out my rusting perl tricks and unroll your silly script.
You're a first person I know about, who was ever interested in understanding this code. This is my original, clean version:$c = 'plfeY04jaJnYI';
I'm amazed, that your code is almost identical, congratulations! I like this program, because looking at it (the clean version) it's impossible to know how long it would take to get the result. For example your domain voila.fr would be written if $c was frmHZ0u6Ne2HQ but it takes about an hour to crack on my machine, while my domain in plfeY04jaJnYI is cracked in only 4 seconds. It would take over 2 years and 7 months to crack this xxFHuIaD7CdpI, which is the worst case, zzzzzzzz, the last key guessed by my program. So, the average time for guessing random keys (containing 1 to 8 lowercase letters) is over one year!
$s = substr $c, 0, 2;
for $l (1..8) {
for ('a' x $l .. 'z' x $l){
if($c eq crypt($_, $s)) {
print "$_.$s\n";
exit;
}
}
}If you want to see a really good password cracking program, check out Alec Muffett's great and famous Crack. It's really great, especially when you have good dictionaries. If you want to check if your password is easily cracked by Crack, you can use Alec Muffett's CrackLib. Check out my online Password-Guessability-O-Meter, I wrote it some time ago to demonstrate to one of my clients how does the CrackLib work. You just enter your desired password, and it tells you if (and why) it is easy to guess, using English, Polish, Czech, French and Latin dictionaries.
I use CrackLib for online registrations CGI scripts etc. so users can't have silly and easy to guess passwords. It can also be used with passwd program. Great library, and easy to use (there's Crypt::Cracklib Perl interface), but may be quite difficult to set up for the first time.
Not very difficile, Mister shiny@rfl.pl, but I shall compliment you for at least trying to obfuscate with the silly "q//" perl operateur ^_^
Thanks. :) I like it too. That's the most recent obfuscation, if I remember correctly. When I started to experiment with q// using q,x, and q.x. and q;x; etc. I was even trying to use something like this:$q=q,p,.q,l,.q,f,.q,e,.q,Y,.q,0,.q,4,.q,j,.q,a,.q
(in one line and with no spaces) but it looks terrible, as you can see., J,.q,n,.q,Y,.q,I,;The "if" statement is another ruse; suffixed "if" is in fact called before the condition of the "if" statement, and he uses this to initialise $q apparently after it's been first used. The above code is in fact equal to this:
Yes, this is exactly the original code, and this is exactly the way I was thinking. You're very good.$q = 'plfeY04jaJnYI';
$x = substr $q, 0, 2; :)And it makes itself apparent that $q is the crypt hash (henceforth called $crypt) and $x is the salt ($salt).
The original variables were $c and $s, I changed them to $q and $x for easy mistakes with q// quoting and x repetition operator.for (++$_..$_<<3){...}
Now you are just being silly
:-) $_ is not used yet and thus is 0, and ++0 is of course 1. 1<<3 is 8. :) 1..8 looked just to clear and simple... And that way I have 3 independent values of $_ variable (i.e. the original global $::_ is two times localized) in 3 nested scopes (main program, outer loop and inner loop), which makes it more interesting.for($i = 1; $i <= 8; ++$i) {...}
Actually in newer versions of Perl, the foreach loop is faster than the C-style for loop. See perlop manpage: Range Operators and perlsyn manpage: Foreach Loops.Which not only looks simpler, but runs faster too ^_^
I just run this benchmark:
#!/usr/bin/perl -w
and with Perl 5.6.1 I got this results:
use Benchmark;
sub s1{ for ($i = 1; $i <= 1_000_000; ++$i) { } }
sub s2{ for (1 .. 1_000_000) { } }
$t1 = timestr timeit 100, \
$t2 = timestr timeit 100, \
print "1. $t1\n2. $t2\n";1. 103 wallclock secs (87.77 usr + 0.15 sys = 87.92 CPU) @ 1.14/s (n=100)
2. 60 wallclock secs (51.93 usr + 0.04 sys = 51.97 CPU) @ 1.92/s (n=100)But in my code this loop has only eight iterations, where the 8th one takes two years, so the loop control overhead itself doesn't really matter here. The inner loop is more important but crack() function takes most of the time, anyway.
Older versions of Perl (I don't know which exactly) created a temporary array for the range operator in foreach loop, so the code like:
for (1
could easily take all of the memory, but now it's fixed. Fortunately, it doesn't create a temporary array any more, and it's highly optimized, so it's safe to use it now for large ranges. .. 1_000_000_000) { ... }The "and die" bit just is taking advantage of the short-circuit boolean operateur système. The "die" only is executing when $crypt (the origin hash) and the encrypted form of the current guess are equal, in which case the key has been found and we quit ^_^ I changed it to a nicer looking "print" statement for further clairitie.
Yes, there were print and exit in the original version. You have exactly reconstructed my way of thinking. Well done. :)I think you're very good, really. Most of people have no idea how to analyze such obfuscated code. Actually I'm quite disappointed that decrypting my code was so easy for you...
:)I'll tell you why and how I wrote this program. I was inspired by this code:
#!/usr/bin/perl
and few JAPH signatures. I wanted to write a small program, that it would be impossible to tell what it writes, until you run it. Most of such programs are very obfuscated but after enough work you can usually find the printed message, without running them. So I thought that the message could be ciphered using some one-way alghoritm, like crypt(3) or MD5, and the code would just brute-force crack it. That way it's really impossible to tell what the message is, until you run the code. The code itself only cracks, but doesn't know what is being cracked and when it finishes. Using crypt(3) had this advantage, that it has 2-character salt, which can act as country code in domain name.
@a=(Lbzjoftt,Inqbujfodf,
Hvcsjt); $b="Lbssz Wbmm" ;$b =~ y/b-z/a-z/ ; $c =
" Tif ". @a ." hsfbu wj" ."suvft pg b qsphsbnnfs"
. ":\n";$c =~y/b-y/a-z/;
print"\n\n$c ";for($i=0;
$i<@a; $i++) { $a[$i] =~
y/b-y/a-z/;if($a[$i]eq$a
[-1]){print"and $a[$i]." ;}else{ print"$a[$i], ";
}}print"\n\t\t--$b\n\n";So I wrote the first working version and started to make it as small as possible. Originally it didn't have to be obfuscated, just small. This is the smallest version I've written so far:
$c='plfeY04jaJnYI';$s=substr$c,0,
with 98 characters. But today I shrinked it some more, to 93 characters:
2;for(1..8){for('a'x$_..'z'x$_){
die"$_.$s\n"if crypt($_,$s)eq$c}}$c='plfeY04jaJnYI';$s=substr$c,
and few minutes ago (while I write this comment!) I found a better idea and wrote this:
0,2;for(1..8){$c eq crypt$_,$s
and die"$_.$s"for'a'x$_..'z'x$_}$c='plfeY04jaJnYI';$s=substr$c,0,2;$k=
which having only 79 characters is my record so far (thanks to Perl's magical auto-increment operator) and finally fits in one line!
'a';$k++while$c ne crypt$k,$s;die"$k.$s";Hopefully that wasn't too difficile to follow, my english is not perfect.
Your english is OK, don't worry. Actually, I like the way you use French spelling for some words, like difficile. It's like a French accent in written text, very nice in my opinion.Just remember, Mr. shiny@rfl.pl, no langue is completely impenetrable (except perhaps Intercal, but that's a small bit pathological
Good point. :-) :) I wonder if these guys tried Intercal when proving the impossibility of obfuscating programs... I personally like Unlambda and Brainf***.This Unlambda program "calculates and prints the Fibonacci numbers (as lines of asterisks)":
```s``s``sii`ki
`k.*``s``s`ks
``s`k`s`ks``s``s`ks``s`k`s`kr``s`k`sikk
`k``s`kskI wanted to show a Hello world example of Brainf***, but I got this error:
Lameness filter encountered. Post aborted!
Visit Esoteric Topics in Computer Programming, great stuff if you want to go mad.
Reason: Please use fewer 'junk' characters.You like Perl, so if you know Inline::C and Inline::CPR (if you don't, read Pathologically Polluting Perl by Brian Ingerson) you may enjoy understanding this code:
#!/usr/bin/cpr
It's great, once you really understand it.
int main(void) {
CPR_eval("use Inline (C => q{
char* greet() {
return \"Hello world\";
}
})");
printf("%s, I'm running under Perl version %s\n",
CPR_eval("&greet"),
CPR_eval("use Config; $Config{version}"));
return 0;
}Are you up to date with Perl 6 development? It's going to be great and extremely powerful language. Read Larry Wall's Apocalypses and Damian Conway's Exegeses if you're interested:
- Apocalypse 1: The Ugly, the Bad, and the Good (April 2, 2001)
- Apocalypse 2: Fundamental data types, variables and the context and scoping of the language (May 3, 2001)
- Exegesis 2 (May 15, 2001)
- Apocalypse 3: Operators (October 2, 2001)
- Exegesis 3 (October 3, 2001)
- Apocalypse 4: Syntax (January 18, 2002)
-
Re:Laptops
Hot swapping floppy disks does not require any special care. IDE devices are a bit more complicated, and somewhat limited in their capabilities. You have to issue an appropriate system call. Newer versions of hdparm might help here, but if you're interested in a GUI tool, I've written one that should work if your CD/DVD is the only device attached to the secondary IDE interface (ide1).
But in general you're right, hot swapping and power management is very poorly supported in the linux kernel. (Actually, the core support is there but many drivers, notably the IDE stuff, don't use it.) Windows ME is actually not much better, hot swapping is still a bit of a kludge. Windows 2000 does it quite well. If you can get anything useful done with Windows, you're probably better off using it on a portable. I couldn't.
-
README, Changlog, LICENSE, AUDIT... huh?
I use vsftpd, (vs stands for "very secure" and is a goal, not a declaration of its status). Included with the source are a number of explanatory files you are familiar with: README, INSTALL, Changelog, LICENSE. There is another you probably haven't seen: AUDIT. AUDIT lists each source code file and a rating of 1-5 to indicate how much scrutiny it has received from other competent parties. 1 indicates no scrutiny and 5 means many competent programmers have reviewed it. Most of the files are rated 2 or 3.
I think this is an excellent idea, one that should be expanded upon by other developers.
Oh, and vsftpd 1.0.1 can be obtained from this ftp site at Oxford. It's written on Linux but I run it on Solaris with just a tweak to a #define. -
Is the cloned cat dead or alive?
I'm sure these people will be happy... -
Further ReadingThere's quite a bit of this stuff going on - Just last week I was talking to the guy in the Engineering department here that has a project doing something similar. I can't seem to find his site at the moment, but the ABI project is another similar effort with a nice, informative site at about the same level of development.
The actual reseacrh described in the Yahoo article using implanted electrodes seems a bit strange - though the claim to have identified a few individual neurons is interesting.
Most of the other groups are working with stick-on electrodes. At the moment all they can do is move a mosue around a screen and click, but progress seems to be good - Correct recognition is around 70% after 5 one-hour sessions, which sounds impressive to me. The big obstacle to getting this into service for real people with disabilities is that the hardware is currently a bit chunky, especially the EEG machine. But we all know what happens to hardware, very, very quickly.
Oh - and, yes, the guy i talked to says the thing that secretlty drives him is eventually using it to play Quake. (Wonderful thing, altrusim)
Now wouldn't that be cool.(Unfortuantely you have to shave your head, I think!) -
Not the Wellcome Trust Centre for Human GeneticsThe work was actually done at the Wellcome Trust Sanger Institute near the town of Cambridge, not at the Wellcome Trust Centre for Human Genetics, part of the University of Oxford.
The WTCHG is actually a cool place that looks for genes for complex diseases, writes useful software, and are heavily invested in using Linux as a scientific computing platform.
They have an 86 cpu Mosix/Linux cluster, and two 8 CPU, 8GB machines running Linux.
-
Not the Wellcome Trust Centre for Human GeneticsThe work was actually done at the Wellcome Trust Sanger Institute near the town of Cambridge, not at the Wellcome Trust Centre for Human Genetics, part of the University of Oxford.
The WTCHG is actually a cool place that looks for genes for complex diseases, writes useful software, and are heavily invested in using Linux as a scientific computing platform.
They have an 86 cpu Mosix/Linux cluster, and two 8 CPU, 8GB machines running Linux.
-
Not the Wellcome Trust Centre for Human GeneticsThe work was actually done at the Wellcome Trust Sanger Institute near the town of Cambridge, not at the Wellcome Trust Centre for Human Genetics, part of the University of Oxford.
The WTCHG is actually a cool place that looks for genes for complex diseases, writes useful software, and are heavily invested in using Linux as a scientific computing platform.
They have an 86 cpu Mosix/Linux cluster, and two 8 CPU, 8GB machines running Linux.
-
Re:Huge water tank?
Well, according to them it contains about the same amount of energy per gram as gasoline. It's as dense as water (about), while gas is half as dense, so, assuming you don't have to dilute it in order to store it, your tank of sodium borohydrate should be smaller than an equivalent gas tank. However, you're right about the water.
So, every 3+5+4 = 12 grams of sodium borohydrate (1 mole) need 2 * (18) = 36 grams (2 moles) of water. At that rate, you end up with four times the mass, which is over twice the volume, of water and sodium borohydrate together, as you'd need of gasoline. -
Carnegie is a good example.
Bill Gates is giving away some of his fortune; look at, for example, his considerable donations to Cambridge University. (Though quite why he wanted to support them instead of a worthier cause, I can't imagine.)
But he shall probably do things the "American Way", and that does mean cutthroat business followed by philanthropy in later years. Better that way than that none of his profits are ever given back. Maybe there is another way still better - but could Microsoft actually change?
-
Theorem proving softwareFor the more logic inclined mathematicians, as well as anyone interested in structured proofs, theorem proving, etc, the HOL theorem prover is a very powerful engine. On the down side - it can be tricky to learn, but there is a large quantit of documentation and a big user base to help get people started.
See: http://archive.comlab.ox.ac.uk/formal-methods/hol
. html amongst other pages. -
Forget Acupuncture
Link
Link
Link
Link
Link
Link
Link
OK, that's enough. You can probably find more yourself. Bottom line: Lots of people would love to believe it works, but despite many years of investigation, the evidence that it works is scant. One would think that if acupuncture was as effective as its proponents claim, the evidence would fall solidly in favor of acupuncture. The fact that it does not ought to tell you something.
-
More viola jokesWhat's the difference between a viola and a trampoline?
You take your shoes off to jump on a trampoline.Why do violists stand for long periods outside people's houses?
They can't find the key and they don't know when to come in.Why do so many people take an instant dislike to the viola?
It saves time.Why do violists leave their instruments on the dashboards of their cars?
So they can park in "handicapped" parking places.Why shouldn't you drive off a cliff in a car with three violas in it?
You could fit in at least one more.A violist in an orchestra was crying and screaming at the oboe player sitting directly behind him. The conductor asked, "What are you so upset about?"
The violist replied "The oboist reached over and turned one of the pegs on my viola and now it's all out of tune!"
The conductor asked "Don't you think you're overreacting?"
The violist replied "I'm not overreacting! He won't tell me which one!"In case you couldn't tell, I have an acquaintance who plays viola. These jokes, however, were plagarized from here.
-
Re:Internet and Appliance Integration
Beware of litter box security problems: http://security-archive.merton.ox.ac.uk/bugtraq-1
9 9803/0072.html -
Programming languages for parallel machinesHow do you rate occam as a programming language for multiprocessor machines ?
Cheers, Andy! PS. My Transputer stuff
.. -
(+1, Karma Whoring)
-
Bugtraq and call to UKers
How long will it take for Bugtraq and similar full disclosure lists to be prosecute under the DMCA ?
Last year I posted a simple exploit to Bugtraq which allowed remote access to a users file. That after all is a way of gaining an unauthorized copy of a file by circumventing copy-protection methods (i.e operating system defences). Would this now be a violation of the DMCA ?
How long before buffer overflow exploits get regarded as methoods to circumvent copyprotection methods ?
How long until legal action is taken against SecurityFocus ?
If you're in the UK write to the foreign office and try and get them to change the "LOCAL LAWS AND CUSTOMS" section in their USA travel advice to include a warning to anyone who is either a computer developer or taking any computer software/hardware abroad that they could be arrested if they or any of their possesions violate the DMCA.
While your at it don't forget to have a look at the Free Sklyarov UK protest site and Fax your MP abput the issues that matter to you. -
Unfortunate choice of name
There's already a language called Ruby; it's a circuit design language that's been around since at least as early as 1990.
More info here.
-
Rational Programming vs Semantic WebAs I posted to Slashdot a year ago on the topic:
The future of the Internet is in what I call "rational programming" derived from a revival of Bertrand Russell's Relation Arithmetic. Rational programming is a classically applicable branch of relation arithmetic's sub theory of quantum software (as opposed to the hardware-oriented technology of quantum computing). By classically applicable I mean it is applies to conventional computing systems -- not just quantum information systems. Rational programming will subsume what Tim Berners Lee calls the semantic web. The basic problem Tim (and just about everyone back through Bertrand Russell) fails to perceive is that logic is irrational. John McCarthy's signature line says it all about this kind of approach: "He who refuses to do arithmetic is doomed to talk nonsense." More on this a bit later, but first some history, because he who fails to learn from history is doomed to repeat its nonsense:
When I invented the precursor to Postscript (an audacious claim that I can back up -- it started as a replacement for NAPLPS which I proposed while Manager of Interactive Architectures for Viewdata Corp of America back in November of 1981 -- the Xerox PARC guys found my approach of what they called a "tokenized Forth" communication protocol to be an intriguing way to encode text and graphics), I was interested in having a Forth virtual machine migrate into silicon (ala Novix) so it could evolve from mere graphics rendering into a distributed Smalltalk VM environment (ala Squeak) as videotex terminal/personal computer capacities increased. But I was _not_ interested in object-oriented programming as the long-term semantics of distributed programming environments. (I still have some of the hardcopy of the communiques with Xerox PARC and others from this period.)
Rather, relational semantics were what I saw as the ultimate direction for distributed programming. I had a bit of a go at Tony Hoare's "communicating sequential processes" paradigm and its Transputer realization because he was, at least, starting with the hard problem of parallelism rather than making like the drunk looking for his keys under the light post the way everyone else seemed to be doing (and still are, save for Mozart, since threads, etc. are always an afterthought). But, because there were other hard problems like abstraction, transactions and persistence that he ignored, I christened his approach "Occam's Chainsaw Massacre" in my communiques (in honor of his distributed programming language "Occam") and dropped it in favor of relational programming, which has inherent parallelism resulting from both dependency and indeterminacy. (BTW: Dr. Hoare seems to have finally come to his senses about this issue.)
Unfortunately, the only researcher doing hardcore work on relational programming (meaning, getting to the root of relational semantics in a way that Codd had failed to do) at the time was Bruce MacLennan, then, of The Naval Postgraduate School, and he just didn't have the glamour of Alan Kay at places like Xerox PARC to attract the attention of guys like Steve Jobs. Bruce had a bit of a blind-spot, too, when it came to transactions and persistence, which I attempted to remedy by bringing David P. Reed's work on distributed transactions for the ARPAnet to him, but although he wrote a white paper on a predicate calculus (close to a relational) implementation of Reed's thesis (MIT/LCS/TR-205), he didn't really "get it", IMHO. Reed and MacLennan abandoned their work for other pursuits (ironically, Reed was chief scientist at Lotus while Notes was being developed but did not contribute his ideas on distributed synchronization to that development despite the fact that we had a mutual acquaintance from my Plato days by the name of Ray Ozzie -- so, I share some of the blame for this failure) even as Steve Jobs botched the embryonic object oriented world by abandoning Smalltalk and giving us, instead, a lineage consisting of Object Pascal on the Lisa/Mac which begat Objective C on Jobs's NeXT which begat Java at Sun via Naughton and Gosling's experience with NeXT.
This brings us to the present -- a world in which Javascript-based technologies like Tibet promise to not only salvage the object oriented aspect of the Internet from the birth defects of Jobs's spawn, but actually provide an advance over Smalltalk in the same lineage as CLOS and Self. But it is also a world in which there is growing confusion over the proper role of "metadata" in the form of XML -- particularly when it comes to speech acts and distributed inference. I would call Tibet "the next major Internet advance" except for the fact that the basic idea for a Tibet-like system has been around and well understood since the early 1980's. When it is finally released, Tibet (or a system like it) will put the Internet back on track. I call that a "recovery", not an "advance".
We are now poised to move forward with type inference based on full blown inference engines, thereby dispensing with the nonterminating arguments over statically vs dynamically typed languages that allowed Steve Jobs's spawn to get its nose in the tent. If you want to declare a "type" in a declarative language, just make another declaration and let the inference engine figure out what it can do with that information prior to run time. See how easy that was? Well, there is more to it than that, but not that much: Assertions have implications and assertions made prior to run time have implications prior to run time. Live with it and don't repeat the mistakes of the past.
The confusion over semantic webs, and the reason Berners Lee et al will fail, is essentially the same as the confusion that has beleaguered all inferential systems such as logic programming and "artificial intelligence" over the years: logic is irrational and the real world demands rationality -- otherwise nothing makes sense. By "rationality" I mean that reasoning must literally incorporate "ratios" -- or, as John McCarthy would put it, doing arithmetic so things make sense. By making sense, I mean there is a sense in which one interprets the sea of assertions that clearly dominates for a particular purpose. With logic not only are you limited to 0 and 1 as effective quantities; you have no adequate theoretic basis from which to derive more accurate quantities with which to make sense by taking ratios and determining which inferences are dominant.
Fuzzy logic and expert systems incorporating probabilities have typically failed because they are not based in the first principles of probability and statistics. As Gauss, the premiere probability theorist put it, "Mathematics is the study of relations." He didn't say, "Mathematics is the study of multisets." There are good reasons that relational databases, and not set manipulation languages, have come to dominate business applications -- and Gauss was aware of these differences when he began to derive his laws of probability. Subsequent axiomatizations of mathematics based on set theory were similarly misguided and have led to the idea that "fuzzy sets" are the way to introduce rationality into programming. Rather than sets, relations are the foundation, not just of mathematics but of rationality in the same sense that Gauss realized when he derived his theory of probability from the study of relations.
Rationality allows for judgment which is recognized as inherently fallible -- but which allows one to procede without exponentiating all possible paths of inference. Judgment also allows various identities to limit sharing of information to that needed -- thereby creating speech acts and a basis for rational measures of credibility associated with those identities. Since credit-rating is a degeneration of credibility, it should come as no shock that the invention of negative numbers, originating as they did with the Arabic invention of double entry account keeping, has its analog in something that might be called "logical debt" with which negative probabilities are associated.
And now we have come to the "quantum" aspect of rational programming. It is precisely the "credibility debt" aspect of rational programming that corresponds, in mathematical detail, to the various equations of quantum mechanics and their negative probability amplitudes. (Von Neumann's quantum logic failed to properly incorporate logical debt which has led to much confusion.) Logical debt is important to distributed programming for the same reason debt is important to financial networks. Logical debt is a way of handling poor synchronization of information flow in the same way that financial debt is a way of handling poor synchronization of cash flow. As in any rational system, there are both limits to credit and limits to credibilty that influence one's judgments and actions, including speech acts.
The object oriented folks may, in a sense, have the last laugh here because when we divide up inference into identities that engage in speech acts, we are reintroducing the notion of objects that hide information via exchange of speech act messages that can be thought of as "setters" (assertions) and "getters" (queries). However, I believe it is only fair to recognize that the excellent intuitions of Johan Dahl and Kristen Nygaard did need the added insights and rigor of philosophers like J. L. Austin and T. Etter.
-
Rational Programming vs Semantic WebAs I posted to Slashdot a year ago on the topic:
The future of the Internet is in what I call "rational programming" derived from a revival of Bertrand Russell's Relation Arithmetic. Rational programming is a classically applicable branch of relation arithmetic's sub theory of quantum software (as opposed to the hardware-oriented technology of quantum computing). By classically applicable I mean it is applies to conventional computing systems -- not just quantum information systems. Rational programming will subsume what Tim Berners Lee calls the semantic web. The basic problem Tim (and just about everyone back through Bertrand Russell) fails to perceive is that logic is irrational. John McCarthy's signature line says it all about this kind of approach: "He who refuses to do arithmetic is doomed to talk nonsense." More on this a bit later, but first some history, because he who fails to learn from history is doomed to repeat its nonsense:
When I invented the precursor to Postscript (an audacious claim that I can back up -- it started as a replacement for NAPLPS which I proposed while Manager of Interactive Architectures for Viewdata Corp of America back in November of 1981 -- the Xerox PARC guys found my approach of what they called a "tokenized Forth" communication protocol to be an intriguing way to encode text and graphics), I was interested in having a Forth virtual machine migrate into silicon (ala Novix) so it could evolve from mere graphics rendering into a distributed Smalltalk VM environment (ala Squeak) as videotex terminal/personal computer capacities increased. But I was _not_ interested in object-oriented programming as the long-term semantics of distributed programming environments. (I still have some of the hardcopy of the communiques with Xerox PARC and others from this period.)
Rather, relational semantics were what I saw as the ultimate direction for distributed programming. I had a bit of a go at Tony Hoare's "communicating sequential processes" paradigm and its Transputer realization because he was, at least, starting with the hard problem of parallelism rather than making like the drunk looking for his keys under the light post the way everyone else seemed to be doing (and still are, save for Mozart, since threads, etc. are always an afterthought). But, because there were other hard problems like abstraction, transactions and persistence that he ignored, I christened his approach "Occam's Chainsaw Massacre" in my communiques (in honor of his distributed programming language "Occam") and dropped it in favor of relational programming, which has inherent parallelism resulting from both dependency and indeterminacy. (BTW: Dr. Hoare seems to have finally come to his senses about this issue.)
Unfortunately, the only researcher doing hardcore work on relational programming (meaning, getting to the root of relational semantics in a way that Codd had failed to do) at the time was Bruce MacLennan, then, of The Naval Postgraduate School, and he just didn't have the glamour of Alan Kay at places like Xerox PARC to attract the attention of guys like Steve Jobs. Bruce had a bit of a blind-spot, too, when it came to transactions and persistence, which I attempted to remedy by bringing David P. Reed's work on distributed transactions for the ARPAnet to him, but although he wrote a white paper on a predicate calculus (close to a relational) implementation of Reed's thesis (MIT/LCS/TR-205), he didn't really "get it", IMHO. Reed and MacLennan abandoned their work for other pursuits (ironically, Reed was chief scientist at Lotus while Notes was being developed but did not contribute his ideas on distributed synchronization to that development despite the fact that we had a mutual acquaintance from my Plato days by the name of Ray Ozzie -- so, I share some of the blame for this failure) even as Steve Jobs botched the embryonic object oriented world by abandoning Smalltalk and giving us, instead, a lineage consisting of Object Pascal on the Lisa/Mac which begat Objective C on Jobs's NeXT which begat Java at Sun via Naughton and Gosling's experience with NeXT.
This brings us to the present -- a world in which Javascript-based technologies like Tibet promise to not only salvage the object oriented aspect of the Internet from the birth defects of Jobs's spawn, but actually provide an advance over Smalltalk in the same lineage as CLOS and Self. But it is also a world in which there is growing confusion over the proper role of "metadata" in the form of XML -- particularly when it comes to speech acts and distributed inference. I would call Tibet "the next major Internet advance" except for the fact that the basic idea for a Tibet-like system has been around and well understood since the early 1980's. When it is finally released, Tibet (or a system like it) will put the Internet back on track. I call that a "recovery", not an "advance".
We are now poised to move forward with type inference based on full blown inference engines, thereby dispensing with the nonterminating arguments over statically vs dynamically typed languages that allowed Steve Jobs's spawn to get its nose in the tent. If you want to declare a "type" in a declarative language, just make another declaration and let the inference engine figure out what it can do with that information prior to run time. See how easy that was? Well, there is more to it than that, but not that much: Assertions have implications and assertions made prior to run time have implications prior to run time. Live with it and don't repeat the mistakes of the past.
The confusion over semantic webs, and the reason Berners Lee et al will fail, is essentially the same as the confusion that has beleaguered all inferential systems such as logic programming and "artificial intelligence" over the years: logic is irrational and the real world demands rationality -- otherwise nothing makes sense. By "rationality" I mean that reasoning must literally incorporate "ratios" -- or, as John McCarthy would put it, doing arithmetic so things make sense. By making sense, I mean there is a sense in which one interprets the sea of assertions that clearly dominates for a particular purpose. With logic not only are you limited to 0 and 1 as effective quantities; you have no adequate theoretic basis from which to derive more accurate quantities with which to make sense by taking ratios and determining which inferences are dominant.
Fuzzy logic and expert systems incorporating probabilities have typically failed because they are not based in the first principles of probability and statistics. As Gauss, the premiere probability theorist put it, "Mathematics is the study of relations." He didn't say, "Mathematics is the study of multisets." There are good reasons that relational databases, and not set manipulation languages, have come to dominate business applications -- and Gauss was aware of these differences when he began to derive his laws of probability. Subsequent axiomatizations of mathematics based on set theory were similarly misguided and have led to the idea that "fuzzy sets" are the way to introduce rationality into programming. Rather than sets, relations are the foundation, not just of mathematics but of rationality in the same sense that Gauss realized when he derived his theory of probability from the study of relations.
Rationality allows for judgment which is recognized as inherently fallible -- but which allows one to procede without exponentiating all possible paths of inference. Judgment also allows various identities to limit sharing of information to that needed -- thereby creating speech acts and a basis for rational measures of credibility associated with those identities. Since credit-rating is a degeneration of credibility, it should come as no shock that the invention of negative numbers, originating as they did with the Arabic invention of double entry account keeping, has its analog in something that might be called "logical debt" with which negative probabilities are associated.
And now we have come to the "quantum" aspect of rational programming. It is precisely the "credibility debt" aspect of rational programming that corresponds, in mathematical detail, to the various equations of quantum mechanics and their negative probability amplitudes. (Von Neumann's quantum logic failed to properly incorporate logical debt which has led to much confusion.) Logical debt is important to distributed programming for the same reason debt is important to financial networks. Logical debt is a way of handling poor synchronization of information flow in the same way that financial debt is a way of handling poor synchronization of cash flow. As in any rational system, there are both limits to credit and limits to credibilty that influence one's judgments and actions, including speech acts.
The object oriented folks may, in a sense, have the last laugh here because when we divide up inference into identities that engage in speech acts, we are reintroducing the notion of objects that hide information via exchange of speech act messages that can be thought of as "setters" (assertions) and "getters" (queries). However, I believe it is only fair to recognize that the excellent intuitions of Johan Dahl and Kristen Nygaard did need the added insights and rigor of philosophers like J. L. Austin and T. Etter.
-
Re:Hmmm>It's just one of these "I don't like what
>you are saying but I will defend your
>right to say it" (who's quote is this
>anyway?) thingsVoltaire, if I remember right.
____________________________
2*b || !(2*b) is a tautology
-
enemy of the state
Its nice to see companies joining to assist the NSA, however I would never install it, for paranoia reasons. Aside from that its not all that. (read this to back those claims and we can't forget its first security incident)
Its a nice idea, but ask yourself this question... The NSA could have done this a long time ago, why now? With the rising amount of cybercrime, one would think that, _THAT_ would be their motives however, if that were the case they would be strong opponents of crypto for the masses, so why one and not the other?
So again jumping into the paranoia stage, could it be because the typical script kiddiot is using various forms, of Linux, this could be a method to monitor them? If so how do corporations who use this (SELin) fall into the muck of it all, what about employees of the NSA, and NAI, if they were capturing data, that could affect stock markets, integrity of people, confidence. Total PR nightmare...
Anyways it is nice to see a secure (for now) OS on the market, but as for me... I'd take Open over SELinux anytime.
click this link... get fired -
Where is the info in Oxford University's website?
I wish the team at Oxford University would have more information about how it is going to be copyrighted, patented or licensed any posible medicamente, cure, medicine, vaccination or whatever they find based on this effort.
One would say for the lack of information in their website that this is completely unimportant for the team and for the University, or not as important as it would appear to be to the lay person.
I wish they would say where we can all see how the IP is going to be released and shared all in writing and signed....
-
Re:Making Billions of the public
Please don't forget the project is being carried out by Oxford University's Centre for Computational Drug Discovery - a unique 'virtual centre' funded by the National Foundation for Cancer Research (NFCR), which is based in the Department of Chemistry. Not a pharmaceutical company!
-
News to some at IBM, evidently...
We had a talk recently by someone from IBM all about the technology behind Deep Blue, and its current and future applications. He didn't mention PlayStation 3...
:-)
(The talk was fairly interesting but he glossed over a LOT of interesting details and expounded at length his own rather ill-formed opinions on artificial intelligence, which I thought was a pity.)
-
Re:Gutenberg Texts in XML
Yes, I have run across this heroic effort, but every fiber of my being cries out against manual markup. I spent some time doing this sort of heavy lifting for a living and my wrists are shot. I am looking for the Perl magic: they's patterns in them thar ASCII!
I am surprised that they didn't stick on TEI as already thoroughly covering their problem domain. Too much detail, perhaps, although there are some high quality style sheets already available for transforming TEI instances.
At any rate, I am going to have a go at stylesheets for the gutbook dtd's and contribute those; let the younger fingers pound out the angle brackets. -
Someone had to do this sooner or later...I promise I'll make no more Zero Wing references after this one
For the permamently afraid, it's not a goatsex / anything else revolting link, just a bit of a laugh
:)Dave
-
Quantum Mechanic relation?
This looks an awfully lot like all the sites that have tried Schrödinger's Cat Experiment. Explained here and tested over there.
-
Re:the advantage of security through obscurity
It doesn't matter how many NDAs you have people sign or how private the list. c0re digest was being read by people who hacked the systems of the list members! This is a common occurence on "closed" security lists.
-
Re:Pervasive Gaming - Radical Mobile RPGs
I played something like this as a member of the Oxford Guild of Assassins; they just call it the Assassination Game. I believe that some other variants are known as "Killer".
-
Dahl, Dijkstra, and Hoare
Structured Programming, by O.-J. Dahl, E. W. Dijkstra, and C. A. R. Hoare has been continuously in print since 1972. It came highly recommended by Don Knuth, no less, in his recent lecture.
Gerv -
Random "Free" PDF Books
"Light and Matter Physics" High School/Community college level.
"Handbook Of Applied Cryptography"
"Numerical Recipes in {c, fortran}"
"The Scientist & Engineer's Guide to Digital Signal Processing"
"Using Z"
"The Red Book"
etc. I'm sure there are a ton of others. -
Pick the right tool for the right job!
Look, folks, object orientation is just one tool of many in the big box of software tools. Use it when appropriate, use something else when it isn't. This guy rants rants about OOP basically on three grounds, all of which are straw-man agruments:
- OOP doesn't live up to the hype of its most zealous proponents (What does?)
- When you do stupid things with OOP, you get stupid results. (What did you expect?)
- Contrived, obviously-false statements about OOP are not true. Examples taken from the document: "Myth: Only OOP has automatic garbage collection", "Myth: Only OO databases can store large, multimedia data", "Myth: Components can only be built with OOP", and so on. These aren't legitimate myths widely believed by folks who use OOP; these are straw men propped up so that he could knock them down.
The reality is that OOP is a good tool for solving a lot of common problems. It's also a lousy tool for solving a lot of other common problems. When OOP isn't the right tool, don't use it.
Just use the right tool to begin with. When it comes to programming paradigms, there are lots of tools in box:
- rule based
- procedural
- functional
- object oriented
- logic based
- contstraint based
- declarative (often in terms of w/ functional and logic based)
Use the right tool for the job. You'll be glad you did. (And you won't have to put up a web site just to rant about your bad experiences with using a hammer to place dry-wall screws.)
-
Re:complexity of system, not syntaxThe good news for all involved is that there's nothing stopping someone from incorporating TeX into the back end of a CSS or FO processor. It's just a Small Matter of Programming.
Been done: PassiveTeX