[ Content | Sidebar ]

micah owings

October 11th, 2007

I had not realized until listening to the radio today that the Diamondbacks’ best hitter is, in fact a pitcher. Only 60 ABs, but still: a .333 average, .683 slugging, 1.032 OPS isn’t shabby at all. The announcers were saying that he’d gone 4-4 twice this season, once with 2 HRs and the other time with 3 doubles.

life-long learners my ass

October 10th, 2007

I got a look at my school district’s new report card. Most of the items are now grouped under the heading “Lifelong Learning Skills”; specifically, the group contains the following entries:

  • Listens in class
  • Follows directions
  • Works independently
  • Works neatly
  • Completes work on time
  • Accept [sic] responsibility
  • Respects classmates
  • Respects authority
  • Uses time wisely
  • Communicates effectively
  • Works collaboratively

A quiz for my gentle readers (or, even better, my snarky readers): which of these items

  1. Support life-long learning?
  2. Actively work against life-long learning?
  3. Are neutral towards life-long learning?
  4. Could be interpreted in ways that either support or hinder life-long learning, but guess which way teachers are going to interpret them?

random links: october 6, 2007

October 6th, 2007

steve yegge is two for two

October 6th, 2007

Following Steve Yegge’s recommendation, we just finished watching Last Exile; it, like Haibane Renmei, is excellent. It took a little longer to get into the story this time, but somehow we slipped from “hmm, pretty interesting, nice mix of computerized and hand-drawn graphics” to “just how many days to we have to wait until the next DVD shows up, and why did we stick a regular movie in our queue instead of restricting ourselves to episodes of this series, anyways?” (The movie was History Boys, which I actually also recommend, just not when you’re in the middle of this series.)

Now that I think about it, both series do have some elements in common. Both set in a future world, where most of the technology feels like a not too distant (100-year old?) European style, but there are interjections of advanced technology controlled by mysterious forces. (More of that in this one than in Haibane.) Transcendence that isn’t particularly well explained, or really explained at all. (More of that in Haibane.) Hmm, maybe they don’t have much in comon after all; a lot more action here, more of an epic scale, more gizmos, somewhat more explanations.

We’ll take a break from his list now: Liesl’s dad gave her a few volumes of Slings & Arrows for her birthday, so that will be our series to spend time with for the time being. But I’m looking forward to getting back to his list: recommendations of that quality are a gift to cherish.

restful music stores

October 1st, 2007

One advantage Amazon’s new mp3 store has over iTunes: if there’s a song I like, I can just link to it. I believe that the iTunes store is addressible via URLs, but it’s not the same: the URL isn’t sitting there at the top of my browser window, and even if it were, I couldn’t count on my readers being able to do anything with it.

Not that Amazon’s store is perfect: I finished that sentence without finding enough songs that I wanted to link to. (Which is pretty pathetic, given its length.) But at least I now have a source for Herbert Grönemeyer’s music in the U.S.! And it could have been worse: a grand total of one of them (Herr Grönemeyer noch mal) is available sans DRM on the iTunes store.

Some of the latter, no doubt, is due to business negotiations that my poor little brain can’t understand, but much of it is due to the fact that Apple, for its own mysterious reasons, apparently doesn’t sell DRM-free versions of independent music. Which, in turn, I’ve been listening to more over the last couple of years because, when I was looking for new music podcasts, I stumbled upon one that only plays independent music, I’m sure at least partly because the major labels don’t give them any other legal options.

Go addressability; go accessibility.

throw everything at the language and see what sticks

September 29th, 2007

I think I’ve mentioned this before, but learning Japanese continues to increase my sympathy towards kids who are learning to read and misread words in ways which seem inconceivable to me. My brain is pretty much incapable of looking at a word in English and not reading it immediately; the same is far from true in Japanese. For example, one of my vocabulary cards has a character written on the front, and the readings shutsu, desu, and deru on the back. (With their meetings.) At least that’s what I thought was written on the back for several days, until I took a closer book, and noticed that the second reading was dasu, not desu. Oops. I mean, it’s not like da and de even look similar, I simply wasn’t paying attention, and my brain isn’t yet wired to read correctly when I’m not paying attention.

I started off studying the language with the help of JapanesePod101 and a textbook (Japanese for Today). Then I added Read Japanese Today, which I continue to think is an excellent way to learn kanji. I’d also been using Kanji & Kana as a reference book, so I got my stroke order right when writing characters for vocabulary cards; over the last few month, however, I found myself browsing through it more often in odd moments.

It’s a book I’ve had around since the last time I tried to learn the language. It contains the government-approved list of 1945 basic kanji, showing how to write each, giving the various readings and meanings, as well as a few compounds in which they appear. And does so in an order based more or less on how important they are. A great book to have around, if you want to immerse yourself in the basic kanji; last decade, I tried to go through the book and memorize the kanji in order.

But I went too far with the book. At one point, I could go through the first 200 characters or so, and write them down in the order given in the book, with the proper stroke order. Which is a very seductive thing to do: it gives you something to practice if you just have some spare time, or are falling asleep at night, or whatever. The problem is that my memorizing of my strokes got ahead of my memorizing of the readings and the meanings, so things got unbalanced.

Because of my bad experience, I stayed away from doing the same thing this time. But then I glanced through the start of the book and realized that I claimed to know most of the characters on the first few pages. So what’s the harm in memorizing the order in the book, and reviewing the strokes in my head?

Thinking about it more, I think that, not only isn’t there harm, there’s virtue in it. If I claim I know a character, even if I’m only interested in reading the language rather than writing it, I have to be able to recognize it completely reliably; given the number of characters that look similar, in practice I can’t claim that unless I could write the character. But vocabulary cards, by their nature, don’t give me practice in writing characters. So I have to find another way to practice writing them; memorizing them in the order in that book is as good a way to practice that as I can think of.

Having said that, I don’t want to forget what happened last time. I think/hope I’m doing a better job of managing my learning; the key here is to not have my memorizing how to write the characters get ahead of my memorizing their readings/meanings. If I do that, I’ll be okay.

The other book I’m reading right now is Japanese the Manga Way. It’s a relatively informal grammar of the language, with examples taken from manga. Which works well: besides being fun, manga gives a natural source of language examples that are closer to regular spoken Japanese than other written examples would be.

Other things I like about the book: for one, I can occasionally figure out what the examples are saying, kanji and all, before reading the explanations. And, for another thing, it presents the grammatical points in a rather different order than other sources that I’m using. (Perhaps because it isn’t constrained by having examples only use material that has been previously introduced.). I like seeing another lens on the language, and one which is perhaps a bit more coherent than others I have access to, one which is less intent on mapping the grammar to concepts in English.

The other thing I’ve been doing is watching (the excellent) Last Exile in Japanese with subtitles; again, nice to occasionally be able to figure out by myself what people are saying. Don’t get me wrong, the vast majority of the time I depend very much on the subtitles, but I’m starting to get the feeling that it might really stick this time.

Or maybe I’ll burn out in another couple of months! Always a possibility…

amazon mp3s

September 25th, 2007

I bought my first mp3s online today; I am very happy to report that I didn’t do it through Apple. I don’t plan to make a habit of it – CDs have served me well for the last 21 years, and I see no reason to stop buying them now – but “And Try” by Ten Days Till is an excellent song, and is unavailable on CD. And is unavailable without DRM from iTunes, and I didn’t feel like signing up for a subscription service just to get it. Amazon, however, has it available without encryption; Amazon now also has a bit more of my money. (Though not very much in the grand scheme of my purchases through them…)

mad at apple

September 25th, 2007

I was quite impressed by Apple’s recent iPod announcements. Most companies, I think, would have been coasting for some time if they had as dominant a product as the iPod. Apple, however, is continuing to push ahead with a constant stream of improvements ranging from the subtle to the groundbreaking. Which is awesome: what I want is for companies to make the best products in the world and then figure out how to make them even better, to continue to open up new possibilities. There were some things that made me wonder – in particular, the way they handled ringtones was so stunningly anti-consumer that I had to assume there was some sort of behind-the-scenes negotiation that caused it to make sense somehow – but all in all I thought it was great.

I started to wonder, though, when I read that their new user interface was quite a bit slower than their old one. I’m all for user interface improvements, but eye candy and UI improvements aren’t the same thing at all, and I’m not nearly as big a fan of Cover Flow as Steve Jobs is. Don’t get me wrong, I’m not against a bit of eye candy, but not at the expense of taking 41 seconds to boot a frigging MP3 player. So maybe I was too rash to assume that they’re doing a constant stream of improvements: maybe this is the sign of the design starting to go off the rails?

And then I learned that Apple apparently is trying to prevent users from syncing their iPods without using iTunes. Which really hit a nerve with me, for reasons I don’t entirely understand. (I don’t have the same emotional reaction to, say, Nintendo trying to prevent me from using their hardware with disks/cartidges that they didn’t press/manufacture.) I think it’s partly a reaction to their going from a somewhat open platform to a closed platform, and partly the narrow concrete effects of their actions. A de-facto monopolistic tie of having 99% of iPod users use iTunes isn’t good enough: they have to make it very clear to us that they’re not seeking to become a monopoly as an accidental outcome of making the best product out there, they’re seeking to become a monopoly because they want power and they want us to know it.

This is where I’m supposed to say that I’ll never buy another iPod again. The truth is, though, that I care enough about having a good interface to listen to music and podcasts that I’m not at all comfortable with saying that. I am, however, actively rooting for them to get their asses handed to them in European courtrooms.

game pictures

September 19th, 2007

Apologies for my recent silence; the cause is a combination of watching movies (well, DVDs, mostly Last Exile) and being pretty busy last weekend. But now I am, for once, caught up with my other odds and ends (i.e. reading blogs) early enough at night to actually be able to write something.

As I mentioned before, Miranda seems to have gotten serious about the idea of us writing a video game. And we actually have been spending some time on it over the last month, mostly at her prodding. So far, I’ve mostly been playing around with programming, while she draws pictures in a notebook. I’d been using rubygame as a programming framework, and I still might stick with it, but it doesn’t have support for sprites at different depths; this is a problem if, say, you want to have a character walk behind a tree. So now I’m thinking I’ll go with gosu: not much documentation yet, but it seems to be able to do what I want, its sample game is extremely short yet fully functional, and when I was poking around its web site, I saw several pages that showed signs of having been edited within the last hour. All good stuff.

So, right now, I’m trying to find time to convert my rubygame spike into a gosu spike; assuming it goes well, I think I’ll go with gosu. But what should Miranda do while I’m doing my programming?

She’s drawn lots of neat pictures, and I’m sure she could profitably continue along those lines for quite some time. But, if you’re doing things incrementally, you want something functional crossing all layers as soon as possible; by now, my programming is coming along well enough that I could imagine using a picture of hers, and she has drawings to give me. So the only thing stopping us from putting the two together (other than that I’m switching development frameworks!) is that I don’t know how to get her pictures in the game!

Given that, the next step is clear: rather than puttering around with game libraries, I should face up to my fears and attack that problem head-on. So when Miranda asked me this morning if we could work on the game this evening, I decided we should start on digitizing her pictures. Fortunately, my brother was kind enough to give us an all-in-one printer/scanner/copier/fax doohicky last Christmas; time to break in the scanner functionality. Which we did, giving us an electronic copy of one of her designs.

Next, a graphics editor: at the very least, we need the backgrounds of her images to be transparent instead of white. I’d considered and mostly rejected Pixen earlier, but hadn’t found anything better in the interim, so I decided to give that a try. Somewhere either from Scott McCloud or Penny Arcade I’d gotten the idea that the proper technique is to take a scanned-in drawing, add a transparent layer on top, re-ink and color the drawing on the new layer, and then hide the original drawing. Which took us half an hour or so to figure out, both of us being new to the software and ignorant about the details of the process, but ended up working out just fine. So the result is that two black-and-white pencil drawings have turned into colored PNG files with transparent backgrounds; I should be able to just stick them into the game (maybe doing a bit of resizing first) and see how they look. Which will be very exciting!

Watching her do this has also gotten me more convinced of the merits of graphics tablets: she was happy to ink in the lines with the touchpad, but I’m sure it would have been much easier with a tablet. I’m not going to go out and buy one immediately, but she’s sticking with the project well enough that my worries that she would lose interest in a graphics tablet are quickly diminishing. (She’s also spent a lot of time playing around with SketchUp over the last few months, incidentally.)

A fun way to spend the hour between getting home and starting dinner.

a pox on both their houses

September 9th, 2007

On Thursday evening, I tried to log in from home. My computer got an IP address, but I couldn’t connect to any external web pages.

I fired up a terminal, and did some name lookups; that worked. At least more or less – it gave me an address, but also said something about not getting a response from other name servers. I did some tracerouting to make sure I could reach the host I tried (the server hosting this blog); it seemed to be getting there, so why couldn’t I log into it, or anywhere else?

I looked at the IP address again; it didn’t seem familiar. On a lark, I tried to resolve www.google.com, and got the same IP address. And a reverse DNS lookup on the address claimed that it was assigned to Comcast. I had some other DNS servers around, and tried them; I think (but can’t remember for sure) that they actually gave me a correct address, but a traceroute to that correct address failed.

I rebooted the router and cable modem; no dice. Clearly a Comcast problem; it was late at night, they are doubtless fixing it, I went to bed.

Bad assumption, it turned out: it was a Comcast problem, but it lasted into the next day, and, when I called them, they were blissfully unaware of the situation. It seems that, for no apparent reason, they’d somehow unregistered my cable modem (which I was renting from them!), and the tech I talked to couldn’t reregister it for some reason. Him telling me that it probably wouldn’t take more than 48 hours to fix didn’t exactly lighten my mood.

Next morning, I tried again; it still didn’t work. At least if I went through my router – if I plugged in my computer directly into the modem, it worked fine. So maybe they reregistered my cable modem but screwed up something else? Of course, it’s possible that my router decided to break at exactly the same time as Comcast screwed things up – it hasn’t exactly been a paragon of stability – but it seemed unlikely. Still, I spent a while getting myself very familiar with the router’s administrative interface (its idea of “diagnosis” turns out to be an option to let me either ping or traceroute), and even reset it to its factory settings; no dice.

So I got on the phone to Comcast. They, of course, tried to blame my router. I talked to the first person’s manager; she insisted that Comcast wasn’t even capable of filtering based on MAC addresses. So: maybe it really is a coincidence? Time to get on the phone to Linksys, I guess.

And I did; it was a good thing that I had a copy of Picross at hand to amuse myself during the wait times. During which time, they made me listen to stuff that I found actively insulting. Does anybody really think that telling me that their support is allegedly “award winning” is going to make me feel happy to be on hold? The only mental model in which that makes sense is if they think that people will be happy to be on hold because they’ll be reassured that at least the service at the end is worth waiting for. This might make Martians feel better – I wouldn’t know – but, for us humans, it doesn’t work that way. All they’re doing is showing that they realize that they’re treating their customers like crap by forcing them to wait that long, and are even more clueless than normal about what to do about it.

I eventually got off hold and talked to somebody. Which was a bit of an adventure: even though she had my serial number, she wanted me to also read her a version number, which was nowhere to be found on the bottom of my router. She wanted to know what kinds of computers I was using; after refusing to answer the first time, I let slip that I was using a Mac. Which, it turns out is unsupported; after I pointed out to her that it was their god-damn router that couldn’t communicate to the cable modem, and that I was using their own administrative web interface, she relented and agreed that she could maybe provide support for the web interface.

At which point, she actually had useful suggestions: go to the Setup tab, go to the sub-tab about managing MAC addresses, and tell the router to clone my mac’s MAC address. Why didn’t I think of that myself? Well, because I didn’t see the sub-tab on the interface! But it was such a good idea that I pulled up the raw source of the web page, figured out what to type in on the address bar to get to that sub-tab. No “clone MAC address” button to be found, but there was a form to enter a MAC address by hand; an “ifconfig en0” later, I had it in hand and was soon happily web surfing.

So Comcast can’t filter on MAC addresses, eh? Looks like bullshit to me. Or maybe not – at this point, I thought of rebooting the cable modem (which I’d done the previous evening but not that morning); after that, I could get online with the router broadcasting its own MAC address. Admittedly, I should have thought of doing that myself – I’ve seen that solve problems before – but Comcast should also have been aware of that failure mode and told me themselves to do that.

How do normal people deal with this? I’m annoyed at Comcast, but their initial phone support wasn’t too bad. But I don’t think that normal people will be obstinate enough to make it through the rest of the solution chain, or be geeky enough to read raw HTML and figure out MAC addresses if that’s what they have to do to get the router to behave. As is, I was very close to buying a new router because of this, when the router wasn’t the problem at all.

So: the scorecard. I’m mad at Comcast for screwing up my access, for not being aware of it, for not being able to fix it quickly, for not diagnosing the second problem, for shedding blame. I’m mad at Linksys for building an unreliable router, for long wait times, for insulting recorded messages, for trying to refuse to support their own product. I’m not thrilled at Scientific Atlanta, because I had to reboot the cable modem; I’m not thrilled with Apple, because it’s entirely possible that the web interface problem was a Safari bug instead of a Linksys bug. (I haven’t looked at the web page in detail.)

Grr. At least it’s over with. The rest of the weekend has been quite pleasant, at least…

two music sequencer toys

September 2nd, 2007

I ran across a couple of video demos of interesting music hardware recently. Both are basically sequencers with unusual user interfaces:

First, Tenori-On. (Found via GayGamer):

And Reactable. (Found via Lost Garden, which throws in some neat ideas of its own.)

I don’t have much to add; I’m curious how they work in practice. Especially Tenori-On: it seems to have a more limited set of choices than Reactable, but the output is also far more interesting to listen to / watch. Is it really that easy to produce good-sounding music from it, or is the video just the result of somebody who knows the device inside and out?

Incidentally, one side effect of my going through tons of others’ posts about videos is that it’s now clear that I prefer embedded videos to being requested to click on a link to get through a video; I’ll switch to embedding videos myself whenever possible, on those few occasions when I want to refer to one.

unexpected benefits of tagging

September 2nd, 2007

As I mentioned before, I’ve started tagging my saved items in Google Reader. I did this partly because of a general worry about the saved items getting out of control, but also because there were three specific categories of saved items that I was afraid were getting buried: items that I wanted to read but didn’t have enough time/focus to read right then, items that I’d commented on and wanted to read others’ comments on later, and items that I wanted to blog about in the future. I had another ten or so categories that I came up with, but I didn’t seriously expect to get through the items in them: their purpose was to make it clear that I had 60 or 80 or whatever videos saved up to watch, that I was clearly accumulating more faster than I was watching them, and I should just delete them now.

The three short-term tags have served their purpose quite well; I’m definitely glad I took up tagging for that reason alone. What was unexpected, however, was an unexpected benefit I’ve gotten from the other categories. (Or at least an unexpected side effect – it’s not clear that my spending more time web surfing should be categorized as a benefit.) Namely: when I was finished reading through my normal feeds and didn’t feel like doing something else, I started going through my saved video items. (Because that was the tag that I was accumulating the most new stuff at the time.) And what I found was that it actually wasn’t hard to go through the videos faster than I was accumulating them.

When I see a blog post with a video, my mind had been thinking “that will put a dent in my blog reading time”. And it is true that watching a video takes longer than reading a normal blog post. But it doesn’t take that much longer: most of the time, I stop watching after 30 seconds or so, and most of the rest of the time it takes less than 5 minutes to watch the whole thing. (And curses to people who embed videos in a way that doesn’t show how long they are.) So it’s not that hard to go through 10 or 15 or 20 of them in half an hour; after doing that a few times, most of the category is cleared out.

It’s not completely cleared out: there are still 23 items, typically ones that will take a while to watch but that, I suspect, are worth it. Of those 23 items, however, a grand total of one of them is newer than my blog post announcing the advent of these queues. So I’m managing to keep the queues quite well under control.

Or at least that queue: if I’m concentrating on clearing out videos, that probably means that other queues are building up? To some extent, that was the case, so next I turned myself to the queue of flash games. Which, fortunately, hasn’t been building up at a fast pace recently – Game | Life hasn’t been writing about flash games very often recently – but there were still a lot that had built up. (Incidentally, if you’re looking for a flash game to play, check out the Game | Life logo!)

Flash games are potentially a worse problem than videos – most of the time, you know how long a video will take, but who knows how long it will take to evaluate a flash game? It turns out, however, that the answer is “not very long”: in most cases, it only takes a minute of play time for me to decide that I have something better to do. So now the queue is down to 15 games, of which only 2 are relatively new entries to the queue. (Most of the stragglers are adventure games.)

The flash games queue was actually rather disappointing: I enjoyed watching many of my saved videos, but I didn’t enjoy playing almost any of the saved games. I would like to think that there are good flash games out there that I’m missing, games that are equal in quality (if not duration or production values) to good commercial games, but I’m just not seeing it: there is currently only one flash game author whom I particularly like. (I should blog more about his games one of these days.)

So: two long queues attempted, two successes. Next, I turned to the category “many-links”, of blog posts referring to lots of other pages. The same story as before: yes, it takes longer to read such a post as a normal blog post. (To be specific, if such a post has N links, it takes about N times as long!) But it’s not an unmanageable amount of time, or anything: I’m still going through this category, so I have 43 items saved, but none of them are new, and I see no reason why I shouldn’t be able to get this category down to 0 items without too much work.

This is the one place where I’m using multiple tags. Say that, for example, I think the second link in one of these posts is worth blogging about. When that happens, I’ll replace the “many-links” tag by the “blog” tag. But that’s not good enough – it might take a month for me to have enough bloggable items saved up to make a post, and by then I’ll have forgotten which one I wanted to blog about. I could add a more specific tag, but that will screw up tag completion and such. What I’ve decided to do is to tag the post with both “blog” and a number (e.g. “blog, 2”), where that number is the number of the link that I want to blog about.

I still have a ways to go (I currently have a total of 194 tagged items, while ideally I’d reach a steady state of under 10), but the contours seem clear by now: once I break things into categories, the saved items start dwindling. I’m actually curious if the categories themselves matter: would I have the same effect if the tags I used were just the days of the week? Not entirely clear: maybe I learn something about how to efficiently process video posts by focusing on them for a little while, but maybe not. It may well be the case that some of the tags will prove resistant to this process: in particular, I’m worried about the “long” tag. I doubt it, though: my bet is that I’ll be down to 50 items in another couple of months, and will be down to 10 items in half a year.

Incidentally, Google has fixed one of the UI flaws that I whined about before: they now do tag completion based on the start of the tag, instead of completing from the middle of the tag. But they still insist on defaulting to showing me unread tagged items, which continues to make no sense to me.

lean math departments?

August 29th, 2007

Jordan asked:

Could there be, even in principle, a lean math department? What would it be?

Which is a great question, to which I started a rambling response; I figure I might as well turn it into a rambling blog post instead.

Where do I even start thinking about that? What does a math department do? Produce theorems, teach students, I guess. Two pretty different goals; can we find waste in either of them?

What sort of waste do we look for? Situations where we aren’t processing but could be? Hard to say – in both of those scenarios, there’s a fair amount of down time, when students are doing something other than overtly learning math, when researchers are doing something over than overtly producing theorems. But you can’t always tell when learning and thinking are happening; I’m not sure if that will lead us anywhere useful. Though there are situations where you would be able to discover more results more quickly if you could talk to the right person at the right time; maybe we could analyze why that doesn’t happen and come up with something.

On the teaching side, can we see push systems that we can consider turning into pull systems? I bet there’s something to that, if we dig enough. Math departments generate courses, syllabuses, degree requirements the way they see fit, and then force students to take them (or not, as the case may be); I don’t see that as really being driven by the students’ desires for results, in general. (Other than in the most banal way, as in a pre-med wanting the result of admission to med school, which can be helped by having passed a course for which a calculus course is a formal requirement.) Admittedly, it’s not like Toyota will make whatever car I can imagine, but I still think there’s something to the idea that we need more pull in education.

So I guess I’d start with that: what are the outcomes that students want? Are we meeting them? If not, do a five whys analysis to try to uncover root causes, and see where that leads us. One basic thing to ask about: if a student is taking a course, and doesn’t get a good grade in the course, what’s going on there? Does the student have goals that aren’t a good fit for the course? (If so, why is the student in the course, and what can we learn from that?) Or are the student’s goals a good fit for the course, but the student didn’t meet those goals? (If so, how can we, especially the professor but also the student, improve the situation to increase the chance of meeting the goals?) Or were the student’s goals met, but the professor gave the student a bad grade anyways? (Just what is the purpose that the grade is serving? What need of students are we trying to meet by giving them grades? Are we sure that grades are the best way to do that?)

Also, I’m fairly sure that schools do a good deal more batching than is necessary. Maybe work on single-student flow: break down the groupings of courses, semesters, … Or is a semester the takt time? Seems kind of long for that, though.

I guess the upshot of this rambling response is: yes, there could in principle be a lean math department. The basic shift, I think, would involve in starting from the point of view of the students’ desired outcomes (if we want to make teaching leaner) and from the point of view of theorems (if we want to make research leaner). (A theorem is a funny sort of customer; I suspect that there’s something I’m missing there, but I can’t quite figure out a better customer to take the place of a theorem.) Are the students acquiring knowledge/skills/whatever as quickly and thoroughly as possible? If not, ask five whys each time we can identify a place where we aren’t. Are we producing theorems as quickly and profoundly as possible? If not, ask five whys.

Also, I’m fairly sure that schools could use a healthy dose of “respect for the individual”. In particular, I find them schockingly disrespectful of students, and adjunct faculty also have a lot to complain about.

Anybody else have any suggestions? I think there must be some people who have used lean ideas in education; I’ll see if I can dig up anything. For research, I guess lean product development would be the obvious parallel; I wonder if some of the ideas there (e.g. set-based design) would help research proceed more smoothly?

lean dentist

August 29th, 2007

I just listened to a great LeanBlog podcast episode on Dr. Sami Bahri, The World’s First Lean Dentist. Really amazing; this guy was unhappy with how his dental practice was going (e.g. very bad on-time performance, very long wait times), did some reading, and thought this lean stuff would help. Despite the fact, of course, that the vast majority of the lean literature is about manufacturing, which doesn’t have a whole lot to do with dentistry.

And he seems to have done a brilliant job of adapting lean concepts to his situation. He (and his employees) recast the concept of single piece flow as single patient flow, with a remarkably small amount of waste of the patients’ time. They’re shown into a chair within seconds of arriving, treatment begins almost immediately, the practice somehow manages to keep enough flexibility that they can do all the treatment necessary for a given patient in one shot instead of having to schedule further followup appointments for problems that are, say, identified during treatment.

It sounds like he’s got “respect for the individual” down pat, too: all the staff is involved in experimenting and improving, they do tons of crosstraining so people don’t get pigeonholed, and staff turnover is extremely low. And, of course, he hasn’t laid anybody off as a result of the increased efficiency: my favorite example was one of his employees who managed to transform verifying patients’ insurance from a full-time job into a job that takes three and a half hours a month. She was bored for a little while while they were figuring out how to best deploy her skills, after she’d basically transformed her own job out of existence through improved efficiency, but now she’s happily working in other areas of the practice.

Really fascinating.

random links: august 26, 2007

August 26th, 2007

phoenix wright 2

August 26th, 2007

Phoenix Wright Ace Attorney: Justice for All is the second game in the Phoenix Wright series. It’s very similar to its predecessor, which is a good thing: its predecessor was excellent. So go and read my review of the first one, and come back.

They tweaked the game mechanics slightly. For one thing, they added a “psyche-lock” mechanism, where you have to drag secrets out of people during the investigation phase. This increases the texture of the investigation phase, and makes it feel at times a little more like the trial phase. All in all, a good thing: it decreases the importance of hunting and pecking through the environments in the investigation phase, and I was rarely stumped by the psyche locks. When you first discover them, you’re never able to unlock them, and when you get the information that lets you unlock a given lock, it’s pretty obvious what to do with it.

The other addition is that you can now present characters instead of just pieces of evidence when talking to people, either during investigations or during trials. So, for example, when you’re claiming during a trial that somebody else has committed a given act, you can now select that character to present. Again, a fine thing: it gives you more to do, and, in those situations where you’re really stuck and having to do an exhaustive search, it’s usually at least pretty clear whether you’re supposed to present evidence or a character. So the exhaustive searches haven’t gotten any worse.

So both additions are pleasant enough. Having said that, neither is a significant advance, and if they keep on adding new gameplay tweaks like this, I imagine the game will get a bit busy by the third or four installment.

And they kept the difficulty at a good level: during most cases, there were one or two frustrating moments, but I never had to ask Liesl or gamefaqs for help during this one. And yes, Liesl finished this game, too: in fact, she started and finished it before me, because I was still playing Etrian Odyssey at the beginning of the vacation where we started playing this game. Still no second save spot, grr, so we had to take turns.

Having said that, it was starting to get a bit stale. Four cases this time; the second one injected some non-uninteresting pieces of plot development, but no great shakes. And, by the third case, the game was starting to feel like a rehash: this game swapped out the prosecutor from the first game with an excessively cardboard new prosecutor, your new sidekick was nice enough but nothing to make me sit up and take notice, and the occasional typos in the translation didn’t help matters, either. So I was having serious doubts about the future of the series.

The fourth case, though, was stunning. The initial investigation wasn’t very exciting: you got to say hello to some friends from the first game, one plot twist that was maybe kind of fun but maybe signs of grasping at straws. But then the trial started, and Edgeworth reappears as the prosecutor. And all of a sudden the emotional and moral complexity of the game got quite a bit deeper. (Of course, some of that may just be a reaction to the shallowness of Etrian Odyssey…) I spent yesterday morning finishing off that case, and now I am completely hooked on the series again.

Again, a sign of the health of gaming these days: rather than just seeing the same genres remade over and over again with better (and more expensive) graphics, we’re seeing games in a wide variety of genres (new or exhumed) pop up, games that make up for their low production costs with distinctive art, wit, and well-done niche gameplay. Keeps me happy.

that’s creepy

August 26th, 2007

I just accepted an invitation from a coworker on LinkedIn; when I did so, it presented me with a list of “People You May Know”.

The creepy thing was that I do in fact know about half of them, but I can’t figure out how LinkedIn knows that. If it could go through my address book or e-mail, it could find those names, but I would hope that my web browser wouldn’t have access to my .bbdb file or my Gnus save folder, and even if it did it wouldn’t know what to do with them. (At least the former.) Many of the names are familiar from Yahoo groups; do they have some deal with Yahoo where they share that information? Is there some other mechanism that I’m missing? They could try crawling from my web pages, but I don’t see how they’d find most of those names that way, either. Or they could just search the web in general for e-mails where one of us replies to the other? Very odd.

etrian odyssey

August 24th, 2007

I’ve talked about Etrian Odyssey before. It’s a dungeon crawler, which isn’t my favorite genre, but it also has the gimmick that, as you play, you have to draw the map of the dungeon on the bottom screen of your DS with your stylus. And I love (and miss) drawing maps while playing games, so I figured I had to pick it up and give it a try.

And the mapping was a lot of fun! No big surprise there, and I’m sure there are lots of people who would give it a try and wonder how anybody could possibly consider doing that sort of basic mapping to be entertaining; those people are not me.

What was more of a surprise was that I enjoyed the dungeon crawling as well. The difficulty progression was well done, the levels were acceptably varied, there were some at least somewhat interesting choices to be made in the character classes that you use and how you level them up. Each time you level up you get to either unlock a new skill – a spell or a new attack or something – or improve an existing skill. (Which may, in turn, make more new skills available for unlocking.) So you have a good amount of choice in how you develop your characters, instead of being forced along a single path by the choice of character classes.

Often, when playing games like this, I actually get frustrated at the number of choices, because I want to explore them all; here, though, I was okay with only focusing on four of the classes, and with exploring one way of developing each of those. (Except for Alchemists: I had two of them, which I initially leveled up along different lines.) And, actually, I enjoyed the dungeon wandering enough to keep a second party around, representing the classes that weren’t in my primary party.

As to difficulty: the monsters normally get gradually harder but not in any threatening way. There’s a big boss at the end of every fifth level that’s quite a bit harder as well. And occasionally there’s a tough boss elsewhere, most notably at the start of level three. Which worked out well: I was rarely bored during my normal progression through the game, I was rarely frustrated when I got to the tough bosses, and on those few tough bosses that I couldn’t beat on the first couple of tries (levels 3 and 12 – hmm, I guess the really toughest bosses aren’t on the multiple of five levels, are they?), I didn’t have to do too much wandering around and leveling up (combined with intelligent upgrade selection) to get to beat them.

So all was fine and dandy through the first ten or fifteen levels. At that point, though, problems developed. For one thing, two character classes aren’t unlocked at the start, leaving hope for interesting new opportunities going forward. The first one, Ronin, was okay; after suitable leveling up, I swapped out my previous fighter type for one, and was happy enough with that choice. But I didn’t feel that I got anything great from the new class, either: I’m fairly sure I would have been just as happy with my previous class.

The second new class, though, was an active disappointment. As mentioned above, I’d been with a party of two Alchemists, the stock magic user type. (The rest of my party was a Landsknecht (= generic fighter), later to be swapped with a Ronin; a Medic; and a Dark Hunter, a rather fun fighter type who also has paralyzing whip attacks that are extremely useful against boss monsters.) The last class to unlock is a Hexer; I’d been hoping that would be an interesting twist on an Alchemist, allowing me to vary my party a little more. In fact, though, a Hexer wasn’t very much like an Alchemist; the result was that I kept my party the same (I like my elemental spells!), and was unhappy.

Also, at about this time, the plot took a turn for the worse. All along, the plot was, to put it gently, threadbare. Which is okay: that’s really not what this sort of game is about. At around level 15 or level 16, though, they introduce what seems to be an interesting turn of events. I expected here that I’d be able to choose between a good way of proceeding and an evil way of proceeding. Which has been done a zillion times recently, so it’s no great shakes, but would at least have been a sign that they were taking some small amount of care of the plot.

In fact, however, there was only one way to proceed, and that one way involved proceeding in a banally evil fashion. This left me with a bad taste in my mouth for two reasons. One is that it drove home the lack of quality in the plot. And the other is that I don’t particularly enjoy slaughtering people, even random cardboard enemies, just to proceed through a game, if I’ve been given active reason to believe that they have more right to be in that part of the game world than I do.

And then I reached level 20. The level started off as an interesting twist: there were no random encounters, but instead the level was full of mini-bosses. Which I couldn’t all kill, so I assumed the level was about mapping it out properly and picking my way through them to find a stairs somewhere. Eventually I had the whole level mapped, though, with no stairs; on to theory B, that the boss in the center was special, and once I beat him I would find some stairs.

And indeed the boss in the center was different from the other monsters in several ways, but beating him didn’t turn up anything. After a bit of scratching my head, I looked on gamefaqs: it turns out that you have to beat all of the mini bosses plus the central boss in the level without dying.

Which, for me, crossed the line from a pleasantly tough challenge to actively disrespectful. I could have done it after a bit more leveling up, I’m fairly sure. But each attempt would have involved an hour or two of battles, with no guarantee at the end that I’d succeed, and with monsters respawning if I left in the middle to save. I probably would have soldiered through it if I’d had a more favorable impression of the game by then, but my two recent disappointments had already left me with a bad taste in my mouth; at that point, the game had spent too much of my goodwill towards it to leave me willing to invest further potentially unproductive hours to make it past that barrier.

So I stopped. Lest I end this on a depressing note, however, I want to emphasize that this was a quite pleasant game through the first 15 levels or so. I’m glad I played it, and it did a lovely job of helping me through the summer game doldrums.

But I’m also confident that I stopped at the right time. For one thing, there were a few other games that I wanted to give a try in the second half of the summer. And, right now, all hell is about to break loose: as far as I can tell, if I want to spend all of the next nine months playing video games that are better than this one, I will be able to do so. Metroid drops next week, the DS Zelda and Zack and Wiki in October, Mario in November, Professor Layton (for single-player fun) and Smash Brothers (for multi-player fun; Miranda has recently discovered the Gamecube version and quite enjoys it) in December. And hopefully by the time I’m done with those I’ll be confident enough about the quality of Xbox 360’s that I’ll be able to buy one of those, at which point Bioshock, Eternal Odyssey, Rock Band, and Mass Effect will keep me quite busy. The rest of this year looks like it will be the best four months of games that I can remember; maybe I should just burn my vacation time and hole up in front of the TV for a few weeks…

post length

August 20th, 2007

Maybe I’d have more free time if I were capable of writing blog posts that are less than three pages long?

game development

August 20th, 2007

For the last several months, Miranda has been repeatedly talking about ideas that she has for a computer game. I idly encouraged her without thinking too much about it; recently, however, she’s been actually filling up notebooks with designs for the game, so it looked like time to start getting serious.

She doesn’t show any particular interest in actual game programming, so we’ve decided that I’ll do the programming while she’ll do the art and game design. Which raises two technical questions:

  • What’s the best environment for programming in?
  • What’s the best way for her to generate sprites?

Both of which seem like pretty obvious questions, which you’d think would be easily answered; not so, it turns out. (Thought I’m still quite open to the possibility that I’m dense or clueless.)

For the first, there are various C++ libraries and Java libraries out there. But I don’t particularly feel like starting a new side project in either of those languages right now: if there were some dominant library in either language that everybody agreed was wonderful, than great, but otherwise I’d rather try something else. I’ve heard a few mentions of pygame; I may actually end up using that.

The frustrating thing is that there is, actually, one obvious language to use: Flash. There are zillions of existence proofs that it’s both a suitable language for novice game developers and a platform that can be used to develop quite professional games. I’d certainly rather use an open source platform, but there’s something to be said for the democratic effect of a language that allows you to easily publish your game and make it accessible to billions of people.

The problem is that it costs seven hundred freaking dollars. This is rather more than I’m used to paying for software. (I was going to say about seven hundred dollars more, but I’m happy to spend fifty bucks on a video game.) If it were fifty bucks, I’d feel guilty about it’s non-freeness, but I’d buy it. If it were a hundred, I’d think about it but do more research. But seven hundred dollars? Well, maybe, if Miranda and I are still into this in a couple of years, but no way I’m spending that right now.

I have to think that Adobe is missing some sort of market segmentation opportunity here. There are many people for whom the value of the product is (much more than) seven hundred dollars. And then there are people like me for whom the value is rather less than that. The marginal cost of the product to them is low; if they could find a way to produce, say, an introductory version that I’d be happy with, it would be, to some extent, free money for them. And once I got hooked, they could get me to upgrade to a better version.

Eventually, I stumbled across rubygame. Which looked pretty primitive but possibly functional enough to be worth a try. So I downloaded it yesterday; the C extentions compiled with no hassle, and the demo “game” they provided, while not much of a game, ran just fine.

So I had a lot of fun the last two evenings combining that with the aptly named “Miraculously Flexible Game Prototyping Tiles” from Lost Garden. Yesterday, I assembled some tiles into an environment; today, I added a character that can move around the environment. Extremely bare bones, but it all works fine, and I can see how I should be able to develop it into a game that expresses many of Miranda’s goals.

I’m still not sure if I’ll stick with rubygame, but I’m sure that much of what I’m learning will transfer to other environments. And it really is neat to see pictures pop up on screen.

So now I have to replace those pictures with sprites that Miranda has designed! One advantage of having somebody else’s tiles to start with is that they give me some design parameters: so I need to generate tiles that are 100 pixels wide, 170 pixels high, a certain proportion of which is boundaries. (I’m also willing to consider entire room backgrounds that she might draw, but never mind that for now.)

How should she generate the tiles, though? For now, I’m telling her to draw things on paper. My brother gave us a combo printer/scanner/copier last year; we haven’t used the scanner yet, but we should be able to scan in images using that. Then we’ll need to shrink them to an appropriate size, and touch them up.

But what are the best tools for that? Everybody talks about GIMP, but I’m not at all convinced that it would be a good fit: it’s complicated enough that Miranda gets scared by it (and, actually, I find it to be more than a bit much), and all its its complication is pretty much irrelevant for us. Honestly, I just want a simple drawing program that can generate PNGs and that makes it easy to get pixel-level control when necessary; that’s about it. There are probably features that we’ll want in the future (e.g. the ability to handle layers), but that’s the core that I want it to be focused on.

And I’m having a hard time finding the right solution. (Admittedly, I’ve only put in a couple of hours of search, so I could be missing something.) Googling turns up lots of possible choices, but nothing that everybody says “this is great”. Pixen looked good, but it crashed a few times when I tried it.

And, actually, maybe I shouldn’t be focusing on editing pixels – maybe I should be looking for vector-based solutions instead? This is all new to me…

For that matter, maybe I shouldn’t be focusing on software at all. The last couple of years have certainly taught me something about the importance of input devices; maybe I should buy Miranda a graphics tablet? I’d been assuming those were too expensive to contemplate, but actually the low-end Wacom models don’t look that bad, and they come with some software that might do the trick. Hmm, that’s a real possibility; I’m not going to buy one now, but if she sticks with the game project for a while, maybe I will get her one.