After that conversation, a local came into the pizzeria. He was wearing workman's overalls, so I'm guessing he was a mechanic or painter or something manual. He had two glasses of white wine, said only a few words (that I couldn't understand on account of his accent) and then left. After he left, the Kurd said that this guy is a HUGE racist. Huh? Apparently he comes from the vicinity of Graz, where there's all these anti-foreigner clubs and they vow to not partake from any restaurants/taverns/inns that are run by foreigners, with just a few exceptions. It doesn't matter if the pizzeria were run by the Kurd or by me, we're both foreigners, so he wouldn't get food from there and drinkwise he could only order wine, water, apple juice and Almdudler. I didn't inquire why those drinks were excluded, though I'd guess Almdudler is so Austrian that not even a foreigner serving it could tarnish it. Anyway, from what I understood, these people are against foreigners owning restaurants and stores in Austria because they take the place of traditional Austrian stores or replace the Austrian owners of traditional Austrian stores and they think that these people should just stay in their own countries and have stores rather than taking away from Austrians. I can somewhat sympathize with the "authenticity" argument: for example, I'd find it weird if I found out a Polish bakery/butcher shop was owned by a non-Polish person, and I don't go to P.F. Chang's or other "Chinese" restaurants I suspect as not being own and run by Chinese people because I don't think the food would be authentic. But if the food didn't change and still tasted authentic, then what difference does it make who owns the restaurant? The second part of the their gripe, that of Austrian-owned stores disappearing, well that's just the market and unlike, say, Croatia where wealthy foreign investors bought up everything, here it's poor immigrants who are working their way up economically so I don't feel like there's any injustice being done against the Austrians. But, apparently this Kurdish guy feels lots of Austrians, especially in Graz and other smallers towns, are racist. I thought that since Leon wasn't mentioned he was not a racist Austrian, but tonight I found out from the Kurdish guy that Leon's a Nazi. He belongs to a rather radically far right party; this is also why he shaves his head. And while Leon's nice to me and the Kurdish guy, we're apparently exceptions. He's gotten into fistfights with one of the other Kurdish employees of the pizzeria who works a different shift, and he's not nice to foreigners on the street. I find it hard to believe that he's a neo-Nazi, but I'm glad that I haven't come out to anyone there!
And since we were on the subject of racism, the conversation turned over to the treatment of Kurds by Turkey. Turkish is the only language of instruction allowed in schools, even in Kurdish parts of Turkey (ref) and at the beginning of each schoolday, students are required to recite a Pledge of Allegiance-style pledge saying "I am Turkish". Apparently the Turkish government also came into the Kurdish region and painted in huge letters on the side of a mountain the words "We are only Turkish".
Tonight the conversation was lighter, including things like swingers clubs. Also, I got to try raki, or rather three shots of it, for the first time. One of those shots was with water, because the Kurd wanted to show me that clear raki turns milky white when you add water to it. I have no clue what's reacting, but it's a damn cool chemical reaction. Also, I just learned from WP that its common name in Turkish is "milk of the brave". You mean I just drank heroic manmilk? Wow.
HECK YEAH
IT IS ELITE
ON THE N900
THAT IS ALL
Post-talk dinner occurred at the Krebsen Keller, a traditional Styrian restaurant (the one where one of my Styrian writing examples comes from). At one point Alfred noticed my ring and asked if I was married and I said yes and he asked for how long and then asked if my wife was with me in France. I was hesitant to go along this line of interrogation because the table was filled with a bunch of people I didn't know well and frankly I didn't even know how Alfred would react. If it was just him or a couple people, I wouldn't mind and just tell him, but announcing that I have a husband to a whole table of colleagues I'm trying to court, while seated in a public place in a highly Catholic country, well, that just had me uncomfortable. But then as I'm hesitating, Andreas the postdoc says incredulously to David: "Didn't you know he had a husband? George mentioned it to you." Ah yes, thank you,
Dinner was pretty good. They had roe deer (Reh) as a special, and I (and David) really wanted that, but they were out of it, so for dinner, but they were out of it, so we settled for some other kind of larger wild deer (Wildpfandl). I suuuppose I can settle for common Wildpfandl. But, as with my talk, there was an unsatisfying non-finish to the meal: I didn't get dessert. :(
(source)
Styrian = Deutsch = English
-----
(advertisement for Puntigamer, a Styrian beer whose slogan is "das 'bierische' Bier" = the 'beery' beer)
Darf's a bisserl mehr sein = Darf es ein bißchen mehr sein = Could there be a little more
-----
(traditional restaurant menu)
Anfoch steirerer = einfach steirer = simply/only Styrian
für der nix steirerer essen will = für der nichts steirer essen will = for he who doesn't want to eat Styrian
-----
(headline in the cultural life section of a local newspaper)
Advent "wia's früahrer wor" = Advent "wie es früherer war" = Advent "like it was before"
-----
(title of a columnist's piece in the same newspaper)
Wenn's mit'm Wetter so weitergeht, miass' ma halt in Badehosen und Bikini vorm Christbaum Weihnachtslieder singen.
=
Wenn es mit dem Wetter so weitergeht, ? mich holt in Badenhosen und Bikini vor dem Weihnachtsbaum Wiehnachtslieder singen.
=
If the weather keeps up like this, I'll arrive in bathing trunks and a bikini to sing Christmas carols in front of the Christmas tree.
-----
At dinner Thursday night, Andreas spoke his village's dialect of Styrian German and it was wild. So many consonants disappear that the dialect uses glottal stops ubiquitously to indicate the ends of words because otherwise one word would blend into another. (This came up when I mentioned how people learning English don't usually learn that t's get replaced with glottal stops all over the place) The phrase he used as an example was something I could have understood: "fetch the carrots from the cellar to feed the piglets" but I couldn't understand it AT ALL.
I like to entertain and prepare things, but I find that I get really irritated when I am doing this at someone's house who isn't too organized or who isn't so into making a good presentation. The other cook (Nicholas) said that he might make the gravy. He then proceeded to look up how to make gravy. I would have none of this. I've made gravy tons of times and it is always pretty good (especially from turkey). My gravy turned out wonderfully.
We ended up having dinner at about 9 PM, which isn't too late by Mexican standards, but 6 hours late by American standards. Everyone was very hungry, but there was a ton of food to be had. The evening was good, but I felt like the Mexican guests weren't really into a big feast late in the evening. I've had some bad thanksgivings over the years, like 5 years ago when I went with Lisa to this international grad student house. The whole concept was completely destroyed by these foreigners who didn't care or think about what the holiday should be. Maybe I'm too much of a purist, but I long for a holiday that sticks to the traditions that I've grown to love.
- Location:Oaxaca
I went to get a haircut yesterday. Now, I've gotten haircuts in Mexico with mixed results over the years. There is a fancy salon (Armando's) that I've gone to a few times, but it is a long walk from my hotel and I didn't feel like going there yesterday. So, I stopped by this one place by the side of this main street in Oaxaca city. The whole front of the salon was open. Inside was a big motorcycle next to various barber-ing instruments and this middle-aged dude with slicked hair, sunglasses, and a chain necklace. As I walked in, I asked the guy if I could get a haircut. His response was a curt, "Sí!" he said, as he swiveled the barber chair to face me. I asked him "Dónde debo dejar mis cosas?" (Où dois-je laisser mes choses?) His response was just as curt, "Allí." he said.
I sat down in the chair. He asked me "Cómo?." By this time, I understood that he was not a man of many words. I just said "corto." But, myself being a man of too many words, I started to explain, "quiero los lados más cortos pero desvanecidos y lo quiero más largo encima." (I want the sides shorter but faded and I want it longer on top.) He just said, "por supuesto." He shook off and beat the apron he was to tie around me, then tied me up.
He asked me what number razor I wanted on the sides. I wanted #2. He brought the shaver over to me and demanded "Corto o largo?". Yet, without my glasses on, I couldn't see what he was referring to. Apparently the shaver had two settings that he was demonstrating to me. I curtly told him "Largo." He proceeded to shave the sides of my head. The strong vibration of the razor sent tingles down my back. He then switched to the scissors to cut the top of my head. After a quick go-through, he asked if I wanted it shorter. "Bien?" he asked, as he handed me my glasses. I told him I wanted more off the top.
Once he finished, I was duly impressed. It was a relatively quick haircut but it was perfect. He took off my apron and beat it again against another chair. Just as I was about to get up, he told me "Espére." I sat back down. He tied me up again, then pulled down the top of my shirt collar. He asked me how I wanted the lower edge of the back of my head to look. "Redondo o cuadrado?" he asked me. (Rounded or square?) I told him I wanted it rounded. He then wets his fingers in this warm liquid, and rubs the back of my neck with it, grabs some cream, and squirts it on my neck. He takes a flat-edge razor, and cleanly trims up all the areas where there was a loose hair. I've never had a barber use a regular razor before with such precision. It almost didn't feel like he was using such a sharp instrument. After cleaning me up, I get up, admire his work, pay him, and leave feeling quite satisfied. It was one of the best haircuts I've ever gotten. The minty aftershave lingered in my nostrils all day.
- Location:Mexico, Oaxaca
- Mood:
amused
I am thinking of what to make for 2010.
I think I will try to write a sonnet every week.
I think I will try to write another children's novel.
I will certainly do my best to get the programming book I'm working on finished.
But perhaps I'm too close up to myself to see with the best resolution. If you could wave a wand and make a resolution that I'd keep-- that is, change something about or for me-- what would it be? Comments are screened, but anonymous ones are fine. Say if you want your comment unscreened.
I am going to contact my parents tomorrow and ask for the source code of Avaricius and Avalot so that I can release them as free software. (It was written in Turbo Pascal.) This may mean finding a way to read 5½" floppies. I wonder if I can just buy a very cheap very old computer and hook it up with a serial cable.
Some of the nifty things about Avaricius and Avalot, just from memory:
- Compilation. One of the odd things about Avvy is that only the code was compiled, not the data. The data was a significant part of the whole, and these days I would have created it in some easy-to-edit format and compiled it. But in those days, with a few exceptions, I first designed the binary format in which it would ship, and then wrote an editor for it. So I think, in order to make it at all useful, one of the things I'm going to have to write is a decompiler for all the data formats, so you can read them as XML or something.
- How the images got included. This actually extended to having to write a general image editor "hiz" for Avaricius, because I didn't have any information on the save file format of any image editors I had access to. But for Avalot I wrote a screenshot program and my brother used Dr Genius to edit the images (he drew almost all the images in Avalot, which is good, because the images I drew in Avaricius rather sucked).
- Why EGA? The game required EGA (and used sixteen colours) because we didn't have VGA when coding started. By release time we had VGA, but the only concession to it was to use its ability to redefine colours to make change "bright magenta" to be more Caucasian-flesh-coloured.
- Codename. Avalot was codenamed "Project Minstrel" during development.
- Dogfood. One of the jokes that was so laboured that I never explained it: the minstrel who plays games against you was briefly called "Winalot", because almost all the characters' names ended in -alot; "Winalot" is a brand of dogfood, so he was soon renamed "Dogfood".
- Cameos. Dogfood, Spludwick, and Baron du Lustie were cameo appearances by the development team.
- Beta testing. We had different beta testers complain that both the Dogfood and Jacques puzzles were both incredibly difficult and ridiculously easy.
- Scroll drivers. You could embed ASCII control codes in what was effectively standard output (the "scroll drivers"), which would otherwise have gone into dialogue boxes on the screen, and affect lots of things about the game. Much of the moment-to-moment control of the game happened in this way.
- Wordwrap. The scroll drivers in Avaricius didn't do wordwrap, so I had to do all the wordwrap by hand. Big mistake, rectified in Avalot.
- Bootloaders. "avalot.exe" was merely a bootloader that allocated a few kilobytes of empty memory and ran "avalot9.exe", which was the real program. It pointed one of the user interrupts to the empty memory, and by manipulating this memory the child processes could instruct the bootloader either to load a given other child process after they quit, or to quit itself. This meant that a lot of the cut scenes could be implemented in separate executables. There was also space in the empty memory to store the current game state, so that you could seamlessly return to the game. One of the possible subprocesses was command.com, so that you could shell out to DOS and not have Avvy resident in memory, so there was actually space enough to do something.
- Edna. The save-game format ("edna") had generalised header information which meant that if you attempted to load a file from any other Avvy game, the correct game could be loaded to handle it.
- Chunk. Each room had a set of associated sub-pictures in a format called "chunk" which could be set to display at set intervals, meaning that animations could be put together without changing the code.
- Also. There was a resources format called "also" which allowed you to define things about each room such as where the doors connected to the next room and what direction you'd be walking in when you got there, and it had a set of opcodes which could be made to run a given cut scene, put up a given piece of boilerplate text, etc, when you walked into a given area or touched a line between two given points. Strangely, I never unified these opcodes with the scroll driver control characters.
- Skellern. There was the usual routine which hooked the clock interrupt to slow the game down. Around the time I was writing it I heard a song called Slow Down by Peter Skellern, and the whole subsystem is littered with references to that song. In particular, the slowdown routine couldn't be enabled during debugging, and therefore was disabled during development in general, so there was a standalone terminate-stay-resident utility called "skellern" which stood in for the real thing.
- The onion puzzle. This is the puzzle I'm most proud of. People were still asking how to solve it almost a decade later on Usenet.
- Avalanche. The whole magic opcodes system was going to be generalised in the third game "Avaroid" into an architecture for a virtual machine called "avalanche". I had no idea about virtual machines; I pretty much made up the idea. But the third game never shipped because I went to university.
- Z-machine. I've occasionally thought of doing a Z-machine port, as a plain-text adventure. I've never actually started it, though. I think it would be ineligible for the IFcomp.
Update: I just phoned my parents:
- My brother Andrew knows where the disks are and will find them when he comes home for Christmas vacation
- My brother Mark is one of the copyright holders so we have to clear it with him as well, so there's no knowing what'll happen until he decides.
Well, here is some completely irrelevant information about me. Copy it to your own journal if you like, delete my answers, and substitute your own.
1. What toys did you take to bed with you when you were a kid?
A teddy called David, a squirrel called Mrs Squirrel, and a cat called Joanna. I wish I knew where Mrs Squirrel is now. Here is a picture of me with David.
2. What is your favourite colour?
Orange, then black, then green.
3. What was your first experience of computers?
When I was about five, my parents took me along to a computer course they were attending at Hitchin Technical College, for which I will be forever grateful. A short while later, my headmaster bought a BBC Micro for the entire school, and invited me up to his office. "I've noticed", he said, "that your handwriting is the worst in the school. This computer has a thing in it called a wordprocessor that might help you."
4. When you were a kid, who did you want to win the Boat Race?
Cambridge, honestly! It was because they lost about a dozen times in a row and I always cheer for the underdog.
5. What was the title of your first book?
"The Squirrel Army". I was about seven. It was the first of a series of four. I'm sure my mother still has them.
6. What was your favourite Christmas present ever?
This thing. I spent hours solving all the levels. You had to solve ten addition, subtraction, multiplication, or division problems in four different levels within a certain time limit. I loved it.
7. What clubs did you join as a kid?
The Puffin Club; Mensa; the National Association of Gifted Children; the Vegetarian Society.
8. What was your favourite part of Christmas?
I was asked this by a teacher once, and after some thought I said it was Boxing Day, because you had plenty of time to look at all the things people had given you. She stared at me and said "That's rather boring."
This is it. We know the faces of people who will count in Europe during the 2009-2014 period. And we can count on them to make the EU weigh even less than it did until now.
José Manuel Durão Barroso, president of the European Commission. For 5 years, this ultra-liberal brought in his fanatic views of the free market, leading to unprecedented removals of regulations and legislations that could prevent large corporations to extort money from citizens. He holds a non-negligible responsibility on the (still unsolved) bank crisis of 2007. Yet, citizens voted en masse earlier this year for the EPP all across Europe, leading to his renewal. You get the commission you deserve.
Herman Van Rompuy, president of the European Council. This is no secret that this transparent non-leader was the choice of Sarkozy after Tony Blair turned out to be an unsustainable choice. Yet, none of the 26 other members of the Council dared to raise a single finger against this choice. Sarkozy has completely lost his credit in France, but that doesn’t prevent this council of cowards from trusting him, apparently. It’s not as if there weren’t good candidates, like Jean-Claude Juncker or Vaira Vīķe-Freiberga. But having a competent, Europe-friendly president who actually knows his files and speaks many languages would have cast shadows on those who don’t (see below).
Catherine Ashton, foreign ministry of the EU. If there was any worse possible choice, I don’t know which. This was the only position supposed to be affected to a socialist. And since the Labour party is still member of the PASD, despite their insane liberal economic policy and their full-scale paranoia leading to unprecedented freedom hunting in the UK, the position was given to someone from this party. And among them, they chose a person with a reputation of sloppiness and incompetence, who doesn’t speak correctly a single foreign language. It is probable that, just like Van Rompuy’s going to be Sarkozy’s puppet, she’s going to be the UK Foreign Office’s servant. And we continentals all love the Foreign Office’s policy, which is often in complete opposition to what the rest of Europe feels like.
Jerzy Buzek, president of the European Parliament. You don’t know him? Neither do I. A weak parliament goes with a weak parliament president. This way, the European Council has its hands free for behind-the-curtains arrangements, rather than letting the citizens’ representatives take action.
Martin Schultz, president of the PASD group at the European Parliament. In order to ensure his place as president of the Parliament for the second half of the period, he betrayed his own people, and accepted any rotten compromise the EPP would propose for the key positions. Socialists have never been so weak in Brussels, and the total absence of leadership has something to do with it.
Makes you proud to be European, heh? And of course you already know the real faces of Europe for the next years.

Sarkozy, Merkel, Berlusconi, Brown. The main leaders from Western Europe, with their rotten governments who swore to slay any of the remaining personal freedoms in each of their countries. What a great image for EU in the world. What a great example to set.
But again, you get the leaders you deserve. That’s the whole point of democracy.
I kept silent, but was so, SO in the mood for some sweetness fix and realized that the gas station on the way home would be a good place to get something -- like one of those super hydrogenized Hostess cupcakes or just a trusty Kinder Bueno snack cake. My standards had severely dropped from the wistful imaginings of hot apfel strüdel or Linzer Torte in the restaurant. So I go into the gas station, and wouldn't you know it, all they fucking had was Mozartkugeln, Ferrero Rocher, chocolate seahorses and truffles! Only in Austria would you go into a gas station looking for crappy chocolate and only be able to get high quality schokolade. Goddammit I didn't want to spend so much money! The chocolate's good though.
I'm going to buy a 13 in. macbook pro. However, there are two models: one with a faster processor (2.53 GHz.), a bigger HD (250 GB), and 4 GB RAM; and one with a 2.2 GHz. processor, a smaller HD (160 GB), and 2 GB RAM. I suppose I could simply add in a larger HD (or more RAM) for the slower model at a minimal cost. If I do this, then with everything else (the warranty, some little gadgets), comes out to about $1650. If I pick the faster model, then it comes out to about $1800. So, this is a question about cost. Is the faster processor worth $150? What do you think?
- Location:Mexico, Oaxaca
- Mood:
awake
Also, I went to dinner with the postdocs tonight to Glöckl Bräu, a traditional bräuhaus that only served its own beer. Our waiter was no more than twenty years old, already cute in a sort of inexperienced way, but wearing the restaurant's obligatory snug-fitting, just-above-the-knee grey lederhosen and cream-colored wool knee socks pulled up all the way, rendering him adoooooorable. He kinda look like these guys, but in a blue stripe button down shirt and looking far cuter. I want one as a pet. :-P
Out of that, I ended up with the project of making GLX allow binding a single GL context into multiple threads. This should largely fix the disaster that is GL multithreading. The basic idea is: I have a collection of threads that want to work on a single context because they're sharing all the same objects and want to have some sort of serialization into a GL command stream. If we pass the context around between the threads, unbinding and rebinding, you get this forced command stream flushing that will kill performance. If we make multiple contexts, then at the transition of changed objects between one thread and another you have to flush in the producer and re-bind the object in the consumer. Whether or not that could perform well, we determined that in the gstreamer model we couldn't know in time whether the producer is going to be in a different thread than the consumer: you'd have to flush every time just like passing a single context around.
So here comes a simple hack: Just rip out the piece of the spec that says you can't bind one context into multiple threads. Tell the user that if they do this, locking is up to them. It's not an uncommon position for projects to take, and it will let us do exactly what we want in gstreamer: everyone works in the same context[1], and when you want access to the GL context, just grab the lock for the context and go.
Development trees are at:
http://cgit.freedesktop.org/~anholt/pig
http://cgit.freedesktop.org/~anholt/mes
The testcase gets bad rendering at the moment. So I made the testcase for the non-extended version, and it still didn't render, with either i965 or swrast. Next step is to test my testcase against someone else's GL.
Incidentally, Apple's GL spec allows binding a single context to multiple threads like this. Windows GL doesn't.
[1] OK, so that's not exactly true. I'm assuming that elements negotiate a single context through some handwavy caps magic -- people have said that this is possible. You can still end up with two contexts, though, like with the following pipeline: videotestsrc ! glupload ! glfilterblur ! gldownload ! gamma ! glupload ! glimagesink. The second group of gl elements doesn't know about the first, or have any way to communicate with them. But if each element calls glXMakeCurrent at the start, it'll be approximately free for the one-context case, and just work for the multiple-contexts case.
But kudos to Adam Lambert for not apologizing and for, as he said, "playing devil's advocate." We need more no-apologies gay men.
- Mood:
annoyed
So I went to the pizzeria tonight again, but no Leo. Instead I talked with the Kurdish guy a lot, including about what pizza is like in France and the US and what good pizza is and what people erroneously call pizza in California. The guy really liked this idea that pizza sauce in NJ and NY is cooked for a long time with herbs -- he says he might try that with his own pizzas.
Last night I went to a traditional Austrian place further down the street and ordered some pan of liver and potatoes and bacon in a mushroom sauce. Mmmm. Hearing the waitress there speak, as well as Leo and his friend from the other night, I've realized: Austrian's a really, really different dialect. I mean, I can talk to people all right, but there's just so many words they use -- little filler words -- that I've never heard used before. Words like "jo" instead of "ja" as a sentence filler "das ist jo richtig" as opposed to the meaning as "yes" which is still "ja" (or that pan-German "jein"[English]). I swear there's some "zwo" or "zwa" word that floats around. And people greet each other with "Grüß Gott" (Greet God) or "Servus" (from Latin "at your service"), which also works as a goodbye, as does "babaj". And there's other ones. Pronunciations are more different than I remember, too. I had noticed the diphthong 'ei' is pronounced '/ɛɪ/' here, which is more conservative than the German German /aɪ/. And their 'o' in words like 'morgen' just sounds like they're opening their mouth much wider as they're uttering it.
I don't know why I never noticed it so strongly, but I can only guess that I'm noticing it now because of the trip to Bremen two months ago. Being exposed at length to a completely different German dialect has probably attuned my Deutschohre to that way of speaking, making Austrian sound completely wacky to me now.
Dünyayi kurtaran adam (Turkish Star Wars) [1982]. A Turkish bootleg of Star Wars, which shamelessly steals much of its footage from that movie in order to make a Turkish sci-fi epic.( copyright? what's that? ) 4/10.
Cruising [1980]. An undercover cop (Al Pacino) investigates a serial killer of gay people by entering the seedy underworld of homosex.( pun intended ) 5/10.
My Winnipeg [2007]. Filmmaker Guy Maddin revisits his Canadian hometown in a half-documentary half-fable.( winnipeg is awesome?! ) 9/10.
Nowhere [1997]. Self-described as "Beverly Hills 90210 on acid", the trippy adventures of several Los Angeles teens.( second time around ) 4/10.
Er Moretto - Von Lieben Leben (Er Moretto - Living Off Love) [1985]. A semi-documentary interview with a teenaged Italian boy ("Er Moretto") about his life on the streets of Rome since he ran away from home.( irredeemably exploitative ) 1/10.
In the Loop [2009]. A political satire about the inner workings of the American and British governments.( great satire ) 9/10.
*side note: They released this film here as Winnipeg, mon amour, which has to be an intentional reference to the famous French film Hiroshima, mon amour.
