Monthly Archives: December 2004

Concerto Progress

Latest progress on my piano concerto: This is the exposition (the first three minutes or so) and the beginning of the development (sections 1 and 2). Section 1 is the developmental theme, the dissonant quarter-note theme that begins on the piano left hand. Section 2 is beginning to restate the soft theme from the exposition. Running time: 5:42. MIDI | MP3.

Pure Psychology

The other day, I came across the description of a game on Wikipedia known as Cooper Young (not a very catchy name, I know). It is the essence of psychological games: it removes the concept of game mechanics altogether. It is now one of my favorite games.

It is played on a checkerboard of any size, or a simulated one on pencil and paper, which is how I usually play. It is a two-and-a-half player game (the game is for two players, but you need three people). Player 1 picks a row of the board, player 2 picks a column. Then players alternate placing pieces (or writing their initials) on the board until someone picks the intersection of the chosen row and column. The third person, the referee, is necessary to tell the players when the game has been won.

My next programming project is to write an AI for this game.

Open Society

I’m no sociologist, but I do enjoy the occasional cultural fancy.

I’ve been thinking recently about a concept that I’ve come to call Voluntary Socialism. It’s the equivalent of open source software for general living. There are a couple of things we can notice about open source if we’re thinking in a more general sense:

  • It’s not a law. Sharing your software is a choice that you, the author, makes. You can choose to run a little business and try to get people to pay for your software, or you can share it with everybody for free. There is the GPL, but that’s just to formalize the concept of “share”.
  • People do it.
  • There are freeloaders. There are plenty of people who use open source software while contributing nothing, and it still functions.
  • It costs nothing to copy. Redistributing your software basically means that you have a sourceforge account.

So what if people start mimicing these values on a general scale. People who like to cook just cook, and they give the food away for free. Not “free as long as the person is contributing in their own way”; just free. People who like to assemble computers make computers, and they give them away to people who want them.

So now I’m thinking what it would take for a society like this one to exist within a capitalist system like ours. There would need to be people with money who are willing to contribute those things that need paying for. Modern life depends on foreign goods, and geeks like myself aren’t willing to give up modern life, so nothing could be small and self-sufficient.

And the biggest difference between most social tasks and software is #4 above. It’s not trivial to copy a dish of food; it takes work. And the resounding question above all these musings is: would people do it nonetheless?

Next semester when I have some income I’m going to perform this experiment. I’m not sure how, but I’m thinking I’ll give away food for free once a week. Something cheap and simple like pasta or salad. I’m just going to do it to see what people think about it. I’ll doubtless get lots of questions and remarks, and so I’m looking forward to hearing them. Of course I’ll post my results here. My bigger goal which isn’t very measurable is to affect people’s mindset. Put the idea in their head that they can afford to give something away for free.

In particular, I won’t have a donation box.

So I can theorize all I want, and real sociologists can theorize all they want, but I’m going to try it, because that’s really the only thing that’s going to show us what happens.

Don jomomma know nuffin bout bruvas

Ugh. I have a huge project due on Saturday for my linguistics class. The project entails filling out the information on the Wikipedia page African-American Vernacular English. It’s interesting, but I have about six pages worth of information there, and I need about eighteen pages worth of information there. Yeah, I’m screwed.

Moreover, I need 40 hours of field work. I have zero. I’m not even sure there’s that much time between now and Saturday morning. I’m not going to fudge and say that I have all 40 hours, but I imagine I can fudge my hour-or-so (which I’m doing today) into five to ten. Make up some people, you know, things like that.

I am wholly frustrated. The Wikipedia page has a lot of information now (thanks to me :-), and now I don’t know what else to put there.

Random Music with Mathematica

Here’s some mathematica code that will generate random musical tunes. Sometimes they come out half decent… sometimes.


    (* randomwalk: generates a sequence where each element is within 2*range of the
       previous one. *)
    randomwalk[length_, range_] := Module[{ret={0}, cur=0},
        Do[AppendTo[ret, cur += Floor[Random[]*(2r+1)]-r], {n}];

    (* scaletone: index into a scale (of cents), incorporating negatives *)
    scaletone[scale_, index_] :=
        scale[[ Mod[index, Length[scale]] + 1 ]]
            + 1200*Floor[index/Length[scale]];

    (* palendromify: append the reverse of a list to itself *)
    palendromify[list_] := Join[list, Reverse[list]];

    (* randomtune: generate a nice random song *)
    randomtune[scale_, range_, notes_, length_] :=
        Scale[scaletone[scale, palendromify[randomwalk[notes, range]]]], 440, length];

    (* example *)
    Show[randomtune[JustMajor, 3, 32, 10]]

Try it out. Or if you don’t have mathematica, then… don’t try it out.