I visited China very recently (to attend a conference which was being held there), and stayed in a pretty Westernized hotel with internet access.
slashdot was accessible, as was google, which IIRC was even nice enough to talk to me in the appropriate language. Some bits of yahoo.com were accessible, but not the webmail or news. CNN and BBC News were both blocked, as were quite a few other news sites, and unsurprising things like Amnesty international.
I say blocked, but what I mean is that when I tried to access these sites, the connections would always just time out while others were fine. I can't remember what happened when I tried to ping them.
I had no trouble downloading an SSH client and using it to connect back home.
They're already heading that way; the Register had an article
describing some work being done to do general raycasting in hardware.
I guess it's heading towards turning graphics cards into boards full of many highly parallel mini-CPUs, since vertex and/or pixel shading are rather parallelizable in comparison to other things the main CPU might be doing.
Of course, OpenGL is already a sufficiently versatile system that one can implement Conway's Life using the stencil buffer, so for a sufficiently large buffer, you could implement a Turing machine; I don't know how much (if any) acceleration you'd get out of the hardware, though.
The transcript
of the hearing makes interesting reading, particular Sen. Hollings' view on the music he is now so keen to protect:
But in all candor, I would tell you it is outrageous filth, and we have got to do something about it. I take the tempered approach, of our distinguished chairman, and commend it. Yet, I would make the statement that if I could find some way constitutionally to do away with it, I would.
I'm doing a PhD on simulations of soft condensed matter, and mainly use either free software, or stuff we wrote in-house.
Off the top of my head:
VTKis a very good package for scientific visualization.
Maxima is a Free computer algebra system, a bit like Mathematica. It can solve equations, do calculus, plot things, produce TeX output of what you've done, and lots more. Incredibly useful for long tedious bits of algebra.
gnuplot is a versatile graphing package (2D and 3D, but maxima or VTK are IMO better for 3d stuff). As well as graphing, it can try to fit arbitrary functions to your experimental data.
LaTeX -- it's very hard indeed to typeset equations better than LaTeX can.
If you're interested in condensed matter physics (or a few other areas), then you should have a look at the Los Alamos E-print server, which contains preprints of a lot of scientific papers.
I have a 3/140 running NetBSD, which makes a fantastic heater. It doesn't have a fan, but it's free-standing and has little ventilation slots in the top and bottom, so it continually wafts out warm air. A room heater you can play nethack on! However, the great thing is, a lot of Universities etc are now throwing these machines away because they're so darned big, but they still make *excellent* X terminals. The type-3 keyboards are probably big and heavy enough to constitute an offensive weapon if you wield them right.
Rather than splashing out on a load of Mindstorms kit, how about downloading and running a MOO server? The MOO (Mud Object Oriented) language is a full Object Oriented language which lets you customize an interactive text-based VR to your heart's content. You can make anything from simple hello-world objects, to eerily human bots which wander round and talk to people. The language is similar to Javascript: strongly OO in a funny sort of way, but simple enough to pick up very quickly. The fact that it all happens inside a world containing other people means (a) There are people around to help you, and (b) You can show off your code. (Other than that, I guess I'm with the python crowd) (There's a list of MOO tutorials here, amongst other places. Check it out, it's great fun.)
Sort of:-) I believe the canonical explanation involves ants, and runs something like this:
Draw two dots on a piece of paper. The path between the two dots with the shortest length (ie, the path in which you will expend the least ink or graphite drawing), is a "straight line". Now, draw two dots on an orange (say, at the North Pole and somewhere on the Equator), with a magic marker or something. The shortest path on the surface of the orange between those two points is some part of a great circle - part of the meridian running down from the pole to the other point. Most of the time, the path you've drawn on the orange looks curved to you, and you can imagine drilling a hole through the orange which would connect the two points as the crow flies. This is because you live (pretty much) in 3-dimensional Euclidean space. But imagine a tiny ant or microbe on the surface of the orange - in the same way that the Earth looks flat to us, the orange would look flat to the ant. If you put some ant food (say, a drop of sugar or something) on the equator of the orange, and drop a hungry ant at the North pole, then the ant will take the shortest path it can to the food, which is along a meridian. This path looks like a straight line to the (2d) ant, but like a curve to (3d) us. Mathematicians have a special name for a curve which takes the shortest route between two points - they call it a "geodesic". Certain theoretical physicists irritatingly call it a straight line, which can be confusing, because it's almost always not a straight line in the Euclidean sense. Aaanyway. The special theory of relativity showed that you can't treat time and space separately - they are all wrapped up in one another in a way which only really becomes apparent if you have things travelling at high speeds. In a sense, we live in a 4-dimensional mixture of space and time, but we perceive this as 3 space dimensions and 1 time dimension which don't intermix much because you need to travel at an appreciable fraction of 600 million miles per hour to notice anything going on, and very few people ever manage to travel at a millionth of that relative to the planet's surface without ending up a bloody pulp. So, the special theory of relativity ("SR" to its friends), says we really live in 4 dimensions. The *general* theory of relativity ("GR"), which emerged later, talks about how, in addition to time and space being wrapped up in one another, the presence of matter changes this relationship. This is where get to spout the physics catchphrases like "Matter tells space how to curve, and space tells matter how to move". Let's get back to the ants. Say you decide to raise a load of ants who spend their entire lives on a flat rubber sheet - the ants' idea of a straight line (quickest line between ant and food), coincides with our ideas of straight line. Now, drop a marble on to the rubber sheet - if the marble is heavy enough, it will distort the sheet. Drop a cannonball on the sheet, and you get lots of distortion. Put a drop of sugar near the cannonball, where there's lots of distortion, and you'll see the ants travelling along curves again. Now - generalize this. Imagine a race of four-dimensional beings, who have a 3-dimensional rubber sheet on which they watch some beings who are so tiny, they usually only notice the surface of the sheet.
We are those ants.
(Sort of.) Now, Einstein's Field equations, which you arrive at after wrestling about with some rather tedious algebra, originally took the form: (curvature of a bit of space) = (constant) * (amount of matter in it) Except that it was phrased in an exceedingly accurate way that boils down to sixteen smaller equations. Notice that this kind of implies that if you take away all the matter, or you travel to some region of the universe with very little in it, there's no curvature - "straight lines" are straight lines in the Euclidean sense. Now, Einstein wasn't sure of this for various reasons, and changed the equations to read: (curvature) = (const) * (amount of matter) + (another constant) Where the second constant he threw in is the famous "Cosmological constant", which represents the curvature of space when you take all the matter away. If it was nonzero, it would be like you had a really saggy rubber sheet and hung it up by the corners so it was curved even if you didn't put any weights on it. What the article suggests (as far as I can gather), is that, to a not huge degree of accuracy, this constant is zero. (Or that something else is going on - see other posts). (Sort of. It's much, much more complicated than this, and I'm sure I'll get jumped by the local physics mafia, but I hope you get the idea.) Apologies for the huge post, I hope it was of use to someone. If you want to read more on the subject, go for vol. 2, chapter 42 of the Feynman lectures for a very readable explanation which also involves ants, or if you want something more solid, "Essential Relativity" by Wolfgang Rindler (ISBN 0-387-10090-3) is rather good. Someone else suggested "Gravitation" by Misner, Thorne, and Wheeler, which is good and really comprehensive, but forbiddingly huge.
Not quite - E=mc^2 is only true in the rest frame of the particle. That is to say, if you see an electron flying past at speed v, and you speed up until you're travelling at the same velocity as it is, then you will measure it to have energy E.
The more general form of that equation is E^2 = p^2c^2 + m^2c^4, where p is the momentum and c is the speed of light (299792458 metres per second).
If you see an electron flying past with momentum p, you can speed up until you're travelling with the same velocity, at which point it will look (to you) as if it has no momentum, p=0. Then you will measure it to have energy E=mc^2. Now, if neutrinos had zero mass (it looks like it's close to, but not quite, zero), they would travel at the speed of light - in which case you could *never* speed up until you were travelling with the same velocity, since you have mass and therefore can't get to light speed. Hence, if you measure the energy of a neutrino, it will always come mostly from the momentum, not the mass. In fact, this is true for any particles travelling fast enough (the physics jargon term for "fast enough" is "highly relativistic" - meaning that the speed is so high that Newtonian ideas go out the window).
If you're interested, find a decent text on relativity:- the relevant chapters of Halliday, Resnick and Walker, "Fundamentals of physics" are quite good at explaining the basics without needing anything more than high-school maths.
AFAIR, the phrase used by Mr. Ford was "You can write this shit, but you can't say it". I think it referred in particular to the technobabble spouted by Han as the blast out of Tatooine.
I remember having your site bookmarked when it was still called "Chips'n'Dips".
Thanks for an awful lot of enjoyably (and, in retrospect, quite productively) wasted time!
There's a whole chapter on "Alternatives to XS", covering SWIG and Inline::*.
I visited China very recently (to attend a conference which was being held there), and stayed in a pretty Westernized
hotel with internet access.
slashdot was accessible, as was google, which IIRC was even nice enough to talk to me in the appropriate language. Some bits of yahoo.com were accessible, but not the webmail or news. CNN and BBC News were both blocked, as were quite a few other news sites, and unsurprising things like Amnesty international.
I say blocked, but what I mean is that when I tried to access these sites, the connections would always just time out while others were fine. I can't remember what happened when I tried to ping them.
I had no trouble downloading an SSH client and using it to connect back home.
They're already heading that way; the Register had an article describing some work being done to do general raycasting in hardware. I guess it's heading towards turning graphics cards into boards full of many highly parallel mini-CPUs, since vertex and/or pixel shading are rather parallelizable in comparison to other things the main CPU might be doing. Of course, OpenGL is already a sufficiently versatile system that one can implement Conway's Life using the stencil buffer, so for a sufficiently large buffer, you could implement a Turing machine; I don't know how much (if any) acceleration you'd get out of the hardware, though.
- VTKis a very good package for scientific visualization.
- Maxima is a Free computer algebra system, a bit like Mathematica. It can solve equations, do calculus, plot things, produce TeX output of what you've done, and lots more. Incredibly useful for long tedious bits of algebra.
- gnuplot is a versatile graphing package (2D and 3D, but maxima or VTK are IMO better for 3d stuff). As well as graphing, it can try to fit arbitrary functions to your experimental data.
- LaTeX -- it's very hard indeed to typeset equations better than LaTeX can.
If you're interested in condensed matter physics (or a few other areas), then you should have a look at the Los Alamos E-print server, which contains preprints of a lot of scientific papers.I have a 3/140 running NetBSD, which makes a fantastic heater. It doesn't have a fan, but it's free-standing and has little ventilation slots in the top and bottom, so it continually wafts out warm air. A room heater you can play nethack on! However, the great thing is, a lot of Universities etc are now throwing these machines away because they're so darned big, but they still make *excellent* X terminals. The type-3 keyboards are probably big and heavy enough to constitute an offensive weapon if you wield them right.
Rather than splashing out on a load of Mindstorms kit, how about downloading and running a MOO server? The MOO (Mud Object Oriented) language is a full Object Oriented language which lets you customize an interactive text-based VR to your heart's content. You can make anything from simple hello-world objects, to eerily human bots which wander round and talk to people. The language is similar to Javascript: strongly OO in a funny sort of way, but simple enough to pick up very quickly. The fact that it all happens inside a world containing other people means (a) There are people around to help you, and (b) You can show off your code. (Other than that, I guess I'm with the python crowd) (There's a list of MOO tutorials here, amongst other places. Check it out, it's great fun.)
Draw two dots on a piece of paper. The path between the two dots with the shortest length (ie, the path in which you will expend the least ink or graphite drawing), is a "straight line". Now, draw two dots on an orange (say, at the North Pole and somewhere on the Equator), with a magic marker or something. The shortest path on the surface of the orange between those two points is some part of a great circle - part of the meridian running down from the pole to the other point. Most of the time, the path you've drawn on the orange looks curved to you, and you can imagine drilling a hole through the orange which would connect the two points as the crow flies. This is because you live (pretty much) in 3-dimensional Euclidean space.
But imagine a tiny ant or microbe on the surface of the orange - in the same way that the Earth looks flat to us, the orange would look flat to the ant. If you put some ant food (say, a drop of sugar or something) on the equator of the orange, and drop a hungry ant at the North pole, then the ant will take the shortest path it can to the food, which is along a meridian. This path looks like a straight line to the (2d) ant, but like a curve to (3d) us.
Mathematicians have a special name for a curve which takes the shortest route between two points - they call it a "geodesic". Certain theoretical physicists irritatingly call it a straight line, which can be confusing, because it's almost always not a straight line in the Euclidean sense.
Aaanyway. The special theory of relativity showed that you can't treat time and space separately - they are all wrapped up in one another in a way which only really becomes apparent if you have things travelling at high speeds. In a sense, we live in a 4-dimensional mixture of space and time, but we perceive this as 3 space dimensions and 1 time dimension which don't intermix much because you need to travel at an appreciable fraction of 600 million miles per hour to notice anything going on, and very few people ever manage to travel at a millionth of that relative to the planet's surface without ending up a bloody pulp.
So, the special theory of relativity ("SR" to its friends), says we really live in 4 dimensions. The *general* theory of relativity ("GR"), which emerged later, talks about how, in addition to time and space being wrapped up in one another, the presence of matter changes this relationship.
This is where get to spout the physics catchphrases like "Matter tells space how to curve, and space tells matter how to move".
Let's get back to the ants. Say you decide to raise a load of ants who spend their entire lives on a flat rubber sheet - the ants' idea of a straight line (quickest line between ant and food), coincides with our ideas of straight line. Now, drop a marble on to the rubber sheet - if the marble is heavy enough, it will distort the sheet. Drop a cannonball on the sheet, and you get lots of distortion. Put a drop of sugar near the cannonball, where there's lots of distortion, and you'll see the ants travelling along curves again.
Now - generalize this. Imagine a race of four-dimensional beings, who have a 3-dimensional rubber sheet on which they watch some beings who are so tiny, they usually only notice the surface of the sheet.
We are those ants.
(Sort of.)
Now, Einstein's Field equations, which you arrive at after wrestling about with some rather tedious algebra, originally took the form:
(curvature of a bit of space) = (constant) * (amount of matter in it)
Except that it was phrased in an exceedingly accurate way that boils down to sixteen smaller equations. Notice that this kind of implies that if you take away all the matter, or you travel to some region of the universe with very little in it, there's no curvature - "straight lines" are straight lines in the Euclidean sense.
Now, Einstein wasn't sure of this for various reasons, and changed the equations to read:
(curvature) = (const) * (amount of matter) + (another constant)
Where the second constant he threw in is the famous "Cosmological constant", which represents the curvature of space when you take all the matter away. If it was nonzero, it would be like you had a really saggy rubber sheet and hung it up by the corners so it was curved even if you didn't put any weights on it.
What the article suggests (as far as I can gather), is that, to a not huge degree of accuracy, this constant is zero. (Or that something else is going on - see other posts).
(Sort of. It's much, much more complicated than this, and I'm sure I'll get jumped by the local physics mafia, but I hope you get the idea.)
Apologies for the huge post, I hope it was of use to someone. If you want to read more on the subject, go for vol. 2, chapter 42 of the Feynman lectures for a very readable explanation which also involves ants, or if you want something more solid, "Essential Relativity" by Wolfgang Rindler (ISBN 0-387-10090-3) is rather good. Someone else suggested "Gravitation" by Misner, Thorne, and Wheeler, which is good and really comprehensive, but forbiddingly huge.
The more general form of that equation is E^2 = p^2c^2 + m^2c^4, where p is the momentum and c is the speed of light (299792458 metres per second).
If you see an electron flying past with momentum p, you can speed up until you're travelling with the same velocity, at which point it will look (to you) as if it has no momentum, p=0. Then you will measure it to have energy E=mc^2. Now, if neutrinos had zero mass (it looks like it's close to, but not quite, zero), they would travel at the speed of light - in which case you could *never* speed up until you were travelling with the same velocity, since you have mass and therefore can't get to light speed. Hence, if you measure the energy of a neutrino, it will always come mostly from the momentum, not the mass. In fact, this is true for any particles travelling fast enough (the physics jargon term for "fast enough" is "highly relativistic" - meaning that the speed is so high that Newtonian ideas go out the window).
If you're interested, find a decent text on relativity:- the relevant chapters of Halliday, Resnick and Walker, "Fundamentals of physics" are quite good at explaining the basics without needing anything more than high-school maths.
On that subject, there was a reference in the Wired article about 3d pie charts being patented. To my dismay, it's true: the claim is here.
AFAIR, the phrase used by Mr. Ford was "You can write this shit, but you can't say it". I think it referred in particular to the technobabble spouted by Han as the blast out of Tatooine.