Tuesday, September 23, 2014

Watch Your Back, Git

Changeset evolution is a big deal.  But nobody seems to be talking about it.  Well, except for this guy:


But even he says it's a small set of incremental improvements.  This is not small.  But it is all a little abstract right now.  Let's write a use case.

Friday, September 19, 2014

The Pendulum and the Winch

I often find that explaining computer science to non-computer-scientists is difficult.  It's been said that computer science is like no other field of study.  Well, I think that's a rather strong claim to make.  What follows is a translation of a standard problem in computer science into physics.  It is an analogy, unrealistic but nevertheless interesting.

I have a pendulum, supported by some apparatus ultimately connected to a pillar or pole.  It is possible to move the apparatus up or down, but only by manually detaching and reattaching it by hand.  I have a winch affixed to this apparatus which may raise or lower the pendulum.  It is connected to a coil of rope or string (which, for the purposes of this problem, is infinitely long yet magically takes up a finite volume), and can be remotely controlled at the press of a button.  The winch is also geared discretely; it only turns in units, and then only one at a time.

I wish to carry out a series of experiments involving varying the length of my pendulum.  In particular, I often want to lengthen the pendulum.  Most of the time, this setup suits me quite well.  But sometimes, I find I need a pendulum longer than the apparatus is high off the ground.  In these situations, I need to climb the pillar and move the winch up.  In so doing, I may need to start an entire experiment over again because the pendulum lost energy while I was climbing.  How can I avoid or minimize those climbs in proportion to the maximum length of the pendulum?  We must assume I do not know the maximum length in advance, perhaps because my experiments are highly complex and difficult to predict, or perhaps because they are directed by someone else's instructions, and they did not think to tell me in advance how long a pendulum I would need.

Wednesday, August 27, 2014

The Great Picard Theorem

The great Picard theorem states that, if an analytic function contains an essential singularity, then within any punctured neighborhood of the singularity, the function takes on every value with at most a single exception.

Thursday, August 1, 2013

Singularities happen all the time

We will soon create intelligences greater than our own. When this happens, human history will have reached a kind of singularity, an intellectual transition as impenetrable as the knotted space-time at the center of a black hole, and the world will pass far beyond our understanding. -- Vernor Vinge, 1983
 The technological singularity is supposed to occur when we develop "true" or "strong" AI.  Beyond that point, we are told, everything will be different, in the most conveniently vague ways.  Perhaps society will run on communism, or anarcho-capitalism, or something we don't have a name for (in other words, whatever the author happens to think would be ideal).  We are told that the resulting society will be totally incomprehensible to those of us still living in the present day.

My reaction to all this can be summed up in two words: "So what?"

Tuesday, July 16, 2013

Races and names in Mass Effect

I'm a pretty big fan of Mass Effect.  One thing I really like about it is the wide variety of races, differentiated in culture as well as appearance.  Turians, for instance, rarely commit crimes and will, we're told by the all-knowing codex, readily confess to any crimes which they may have committed.  Contrast this with Star Trek, whose Klingons, despite their reputation for "honor" and such, engage in back-room politicking in practically every episode featuring them.

But this isn't about Mass Effect vs Star Trek.  One of the more subtle differences between the Mass Effect races is naming.  Asari names are quite different from turian names, reflecting their greatly differing philosophies on life.  I thought I'd try to collect some rules for constructing these names.

I'm going to be using some rather technical terminology here, which I only know because I've spent some time browsing the relevant Wikipedia articles.  But, since you probably have better things to do, here's a quick reference:
Stop
t (but not th), d, k (and "hard" c), "hard" g, b, and p (there's also another stop which we don't have much in English called the glottal stop; it may be represented as an apostrophe or hyphen but there's no hard-and-fast rule).
Fricative
Lots of things; almost anything that isn't a stop or a sonorant.
Some phonemes (specifically ch and j) begin as stops and end as fricatives. 
Sonorant
All vowels including y, m, n, r (not trilled), l, and w.
These are in alphabetical order, with council races first.
  • Asari: I see lots of sonorants and some fricatives, but very few stops, and most of those are at the beginning or end of names, while the vowels often form diphthongs; this gives the words an elvish feel, which is apropos since the asari are basically space elves.  The names also have a Greek feel; the Asari Republics strongly resemble Ancient Greece, so this is hardly shocking.
  • Drell: We don't meet very many of these, so it's hard to tell.  There do appear to be relatively few fricatives, but I can't really be sure.
  • Elcor: Again, there really aren't a lot of them, but I will note that every stop is voiceless (t, k, and p) rather than voiced (g, d, and b).
  • Hanar: "Blasto" is fictional and looks out of place.  The other names seem to have few fricatives and voiceless stops.
  • Human: Basically modern names, no fancy "smash two names together to make a futuristic-sounding one" shenanigans here.
  • Keeper: Keepers don't have names.
  • Salarian: According to the Mass Effect wiki, salarian names consist of "the name of a salarian's homeworld, nation, city, district, clan name and given name," in that order.  They have a lot of fricatives and some stops.
  • Turian: A lot of turian names end in "[i]us."  Stops and fricatives are relatively plentiful, and stops tend to be voiceless rather than voiced, though this is far from universal.  The "[i]us" thing, combined with what I know of turian culture, makes it apparent that their names are meant to sound Roman.
  • Batarian: These resemble the turians, but with a more even balance of voiced and voiceless stops.
  • Collector: Collectors don't have names.
  • Geth: Geth usually take designations rather than names as-such.  The easiest way to do that is something like "Unit 1234" (side-note: 1025's assertion that the number 1025 is meaningful is bullshit; the significant numbers in that neighborhood are 1024 and 1023.  The explanation it gives is even more wrong since 210 = 1024 has 11 digits in binary, much like 1010 has 11 digits in decimal.).
  • Krogan: Krogan names are composed of a clan name (such as "Urdnot") and a personal name (such as "Wrex").  Mass Effect 3 says that krogan personal names are selected via males having belching contests.  "Bakara" doesn't sound like a belch, so I'm guessing this is only for male names.  A belch-name should consist of an optional stop followed by a series of sonorants and fricatives, possibly terminated with another stop; moreover, it will probably be monosyllabic or nearly so.  This is based on the assumption that a belch consists of a single continuous expulsion of breath; if there are stops in the middle, it isn't continuous (air stopped coming out, hence the name "stop").  "Fortack," "Okeer," and "Skarr" clearly break this rule, but the other names mostly seem consistent with it.  The latter two can be explained as someone cheating, starting to make sounds before the real belch began, but "Fortack" just doesn't seem like it could possibly occur as a belch.  Maybe someone stuck the t in afterwards.
  • Leviathan: We don't really have enough information.
  • Quarian: FirstName'LastName nar/vas ShipName.  The names tend to be monosyllabic, which makes a kind of sense since the population of any given ship is small and the ship's name can be used to disambiguate; there's no need for elaborate names.  Diphthongs are rare; the only one I can see is "Rael."
  • Raoli: We don't see any of them and I only know of them through the wiki.
  • Reaper: "Nazara" and possibly "Harbinger."  That's not enough names to generalize.
  • Virtual Alien: Uh... who are these guys?
  • Vorcha: It's hard to generalize.  Most of the galaxy regards vorcha as vermin, and pays relatively little attention to their individual names.
  • Yahg: We don't know anything about yahg names.

Wednesday, June 26, 2013

DOMA is alive... for now

Earlier today, the Supreme Court struck down the Defense of Marriage Act.

Well, actually, that's not technically true.  SCOTUS struck down section 3 of DOMA, which prevents the federal government from giving marriage benefits to same-sex couples.  Section 2 of DOMA, which permits a state without same-sex marriage to deny recognition of same-sex marriages from other states, is still in force, at least for the moment.  But section 2 is a legal nightmare.

Ordinarily, when you sign a contract, its validity is a federal matter.  Either it is valid in every state, or it is valid in no state.  Marriage no longer works that way.  Suppose two men are married in New York.  Under Windsor, the federal government now recognizes that marriage, and extends tax and other benefits to them.  But then they travel to Texas, which does not recognize same-sex marriage.  Suddenly, they are single.  Or are they?  It's unclear whether the federal government should apply New York or Texas law in determining benefits.  But clearly, as far as the state of Texas is concerned, the men are single.

Next, they go to California, where (it would seem, given the outcome of Perry) same-sex marriage is recognized.  Are they married again?  Did their original marriage contract from New York survive this transition?  Or did it vanish at the Texas border?  If it did, then that suggests a contract has been dissolved without any legal process, which seems troubling to me.  If it didn't, then why wasn't it in force in Texas?  Was it in abeyance somehow?

If the contract was in some kind of legal limbo, but not actually dead, this suggests a rather interesting situation.  A contract is valid but unenforceable thanks to a provision of Texas's state laws.  State laws aren't allowed to impair contracts under the Contract Clause.  But maybe Congress can authorize them to do so via DOMA.  Let's consider that.

Section 2 of DOMA is as follows:
No State, territory, or possession of the United States, or Indian tribe, shall be required to give effect to any public act, record, or judicial proceeding of any other State, territory, possession, or tribe respecting a relationship between persons of the same sex that is treated as a marriage under the laws of such other State, territory, possession, or tribe, or a right or claim arising from such relationship.

I find the term "required" rather interesting in this context.  Required by whom, exactly?  If it means "required by the courts," then this seems an entirely inappropriate attempt to dictate the outcomes of court cases.  Under the doctrine of separation of powers, Congress isn't supposed to be doing that.

On the other hand, if it refers to constitutional requirement (i.e. "required by the constitution"), that really isn't much better.  If the constitution says one thing, and the law says something else, generally the constitution wins.  Laws aren't allowed to dictate how the constitution is interpreted; again, that's a matter for the judiciary.

Just about the only "required" that I believe Congress could refer to here would be "required by federal law."  But if that's what the statute means, I don't think it will have any effect whatsoever.  I'm not aware of any attempts by federal law to require Texas to recognize a same-sex marriage.

In conclusion, it's not at all clear to me that DOMA section 2 even needs to be challenged on due process and equal protection grounds.  It could fall to separation of powers.

Updated: It's been brought to my attention that the contract clause is inapplicable to marriage contracts under longstanding precedent.  This is why I'm not a lawyer.  All the same, there are quite a few interesting questions raised above, so I'm leaving this post up.

Thursday, June 13, 2013

Why I am not recommending GeoNode

For the past few weeks, I've been working for a professor on a project involving geographical data.  As part of this project, I was asked to evaluate GeoNode.  So I looked at the website, and after wandering around for a while trying to get past the usual marketing bullshit (side note: Can anyone explain to me why so many open source projects these days have such enormous quantities of marketing bullshit?), I eventually found some real documentation.  It was in the form of a developer "workshop," however, so I was a bit leery of it.