Sunday, June 7, 2009

Pretzels and other loopy knots

I do this every summer. After a couple of weeks of post-school decompression, I drag out the couple of coloring algorithms I've been bashing at for the last several years, and get them a little closer to what I want. This year, the process is complicated (and also simplified) by the new object-oriented systems in UF5.

My biggest difficulty is that I am not in any sense a programmer; I've worked with fractal colorings enough to understand the logic in a sort of abstract way, and I know exactly what behaviors and effects I'd like to make possible, but there are huge categories of basic programming experience that I don't have, and so sometimes the answer to "Why isn't this doing what I think it should?" is "Because it doesn't work that way, you dope. This is where the semicolon goes!"

So I take apart bits of code that other people have written, and try to see what's going on inside them, and I also pester anyone around me who I even vaguely suspect of knowing how to write code, and I make slow progress. With a substantial amount of help from the Professor (my constant—though sometimes reluctant—ally), I was able to get a basic plug-in working in less than a day. Adding some of the more complicated bells and whistles turns out to be fiddly, and in the meantime I've also figured out some ways of improving the old-school non-object-oriented version. So now I have two different coloring methods that each do about seventy-five percent of what I want, but not the same seventy-five percent.

It's nice when there are brief glimmers of illumination.

Wire Lanterns

But mostly it just ties my brain in knots like little pretzels.

Pretzel Logic

No comments: