points problems pointers problems

Two-fifths of the links in my sphere arrangements page were broken. Ouch! I found new addresses for a few of them, and used the Wayback Machine for the rest.

Posted in mathematics | Leave a comment

next time you hear someone blame Hitler on Darwin or atheism

Nazi racial ideology was religious, creationist and opposed to Darwinism — long and thoroughly documented

Posted in history, religion | 1 Comment

fun with colors

Here, have a couple of Python scripts. Each creates an image file, 2^12 pixels square, each pixel of a different color.

colorshuffle.py puts the coordinates of each pixel in Gray code, assigns each bit to one of the color channels, and converts each channel back from Gray code to choose a color. The assignment is chosen at random from 141926400 possibilities.

colorfold.py is my attempt to re-create and extend this: it folds the square eight times to make a cube fitting the color space. The interesting part was maintaining continuity through multiple folds. This one has only 107520 possible outcomes; again they’re chosen at random. I don’t like the result nearly as much as the other, but you might!

You’ll need Python Imaging Library.

On my machine each takes less than two minutes, so with a simple shell script you can whip up hundreds overnight.

Continue reading

Posted in eye-candy, neep-neep | 3 Comments

SEOperstition

I get this comment a lot:

Hello Web Admin, I noticed that your On-Page SEO is is missing a few factors, for one you do not use all three H tags in your post, also I notice that you are not using bold or italics properly in your SEO optimization. . . .

I probably also don’t sprinkle enough chicken’s blood.

Posted in spam | Leave a comment

hilarious title

On a private mailing list, a novelist asks for suggestions: what technological hobbies might a bright teenager have, in Oakland circa 1975? Chemistry sets were mentioned, among other things.

I may have had a chemistry set at age 8 or so; memory is spotty. A few years later we got an electronics kit, consisting of a collection of elements in Lego-like blocks. There was a booklet, starting with easy things like a light switch and an electromagnetic telegraph relay. (Maybe I thought the latter was easy because Dad and I had made one, about the same time as the possible chem kit).

Then on the next page was an oscillator or something. No explanation of why it was an oscillator. I thought, well, if I can’t see for myself why it’s an oscillator, evidently I’m not cut out for this stuff; so I quietly abandoned it.

My adolescence in a nutshell.

Of course it never occurred to me that perhaps there was no explanation because I was not expected to understand an explanation; I was expected to treat the oscillator as a black box. (Not that I had the concept of “black box”, either!)

Oh well.

Posted in bitterness, technology | 4 Comments

adaptive sampling

I got an interesting idea today.

As you may already know, I’ve been making models of Klein bottles an’ stuff; heretofore they’ve all been in the form of bent rods, but where possible I’d prefer a continuous surface. (A hollow body must have holes so that unused powder can be shaken out; but not all of my designs have enclosed spaces.) How to place a minimum number of vertices so that deviations from the abstract shape are within the resolution of the process? That’s less obvious with more degrees of freedom.

So, today’s idea. Start with an arbitrary set of sample nodes (in the abstract space of the parametric variables, rather than on the target surface itself), and their Delaunay triangulation. Along each edge of the triangulation, measure the deviation of the surface from a straight line; this gives the edge a weight. Move each node to the weighted average of its neighbors (with a bit of noise); thus, an edge whose image is strongly curved gets shorter.

After the movement phase, each edge ought to be checked, whether it’s still a Delaunay edge or needs to be replaced by the other diagonal of the quadrilateral formed by its two triangles. I don’t yet have criteria for adding nodes where existing nodes are too far apart, or merging them if they become redundant.

Posted in mathematics | 2 Comments

steam and circuitry

One of my favorite games is Ticket to Ride (despite its silly name), in which a strategic element is choosing tickets: pairs of cities to be joined. The value of a ticket is the length of the shortest path that could fulfill it.

It occurs to me that, if each segment of track is considered as a resistor, the resistance between two cities may be considered a measure of the difficulty of the ticket: you’re less likely to be blocked if redundant paths exist. One could then make a list of tickets ranked by payoff divided by resistance. But each move changes this: after a route is claimed, it has zero resistance for its owner and infinite resistance for others.

Your first act in the game is to choose two or more tickets from a draw of three or four or five; it’s not obvious how to apply this idea to find the most compatible set.

Posted in games | Leave a comment