Thursday, April 26, 2007

The end of Semester #6

It's the end of my third year, and my paperwork is nearly in place to formally enter Candidacy-- just as soon as I finish two incomplete courses and write a make-up paper for my General Comp exam.

And finish my current load of courses, write two final exams, and do another final project.

And wrap up the 2.5 classes I'm teaching now, create two final exams for them, grade them, and grade a bunch of 10-page final papers. And calculate grades for 60 students.

Then, that's it. Easy.

Then I get to start my dissertation.

And next fall, I'll be teaching at least four classes. Cake.

(I'd like to thank WikiHow for the above photo that adorned the self-help article, "How to get out of a car that's hanging over a cliff". It seemed fitting.)

Sunday, April 22, 2007

TV on PC, PC on TV

Ok, it's nothing new at all-- in fact, other determined geeks have had this sort of thing years ago. But, now it's my turn. After sitting around in my basement for nearly two years, I finally decided to install the TV tuner for my computer. Then, for my birthday, I finally received a DVD burner and a cheapie TV-Out card for the computer. Now, I can watch / record TV on one PC, and even burn it onto DVD's and watch it on the DVD player upstairs.

And so went the weekend, or at least the evenings when the kids were asleep, and I otherwise had better things to do for school. But I'm getting really fried on schoolwork and teaching.

Now it all works, though not on the same computer. My newer desktop is sporting the DVD burner and the TV tuner (and the Bittorrent client), while the old desktop donated to me by my sister and nephew is now running the TV-Out card. I had an old one that I could never quite get working right, and after attempting to install Edubuntu, things really went south.

Edubuntu is really hard to get off your computer, when you try to revert it to Windows 98. Why Win98? It's the license that still goes to that computer.

But at the end of the day, I finally got around to finishing one of my bottom-priority projects-- turning an old PC into a TV media box. And a couple dozen hours or more of my time, which is in really short supply these days. After installing a bunch of drivers, decoders, Media Player, etc, I was a little shocked. Playing one of the Japanese TV dramas I had was really good-- just about DVD quality. It was exactly like watching it on TV, in fact. It's unfortunate that the computer fans are just so loud.

The problem is, I really don't watch TV at all, except for 5 minutes of morning weather reports in the morning, and Lost. But, I'd like to put together a quick reference page of what I want to know in the morning, and turn that into a channel on TV. I'm still interested in user-generated media, and scraping a bunch of web pages and other media to be personalized for users would be interesting.

But then I had another idea. What if you could just scrape some text and turn it into JPEG (or more useful: PNG or GIF) content, text/graphics, for use in one of those digital photo frames? It doesn't have to be interactive, but just passive. Some kind of sync mechanism like the Palm PDA could "build" a JPEG, but it still sounds like a lot more trouble than it'd be worth. Direct video output of the computer screen is pretty lousy so far. The TV just can't handle the resolution, so onscreen text is harder to read, even at 640x400. I think the typical TV can only handle about half that.

Still, for $15 cash and a couple dozen hours of your time, you too can turn an old computer into a really noisy media box!

Saturday, April 21, 2007

Why I'm no longer a programmer

I've discovered a blog: 0xDECAFBAD. Now I know why I stopped programming for a living. :)

Seriously, I'm heading back to my roots: it's the technology, stupid. It's what I do, and all the esoteric debates and hand-waving in the world isn't going to change one thing: if you can't prove it, you don't know if it's real. I'm getting a little fed up with theory piled on top of theories based on bad math, misinterpreted experiments, and secondary reports of direct observation taken out of context.

Software development has its own evils: essentially, if it seems to work, all is right in the world. Until it fails, that is. But there's a box of tools you can open to understand something that's quantifiable and highly repeatable. Everything makes sense if you go down another layer.

Only a complete nerd would get excited by something like XProc, the new proposed XML language for defining how multiple XML documents can be processed and merged into another XML document. The same idea as Yahoo! Pipes, but in an open standard. But I'll put it on my list of technologies which will someday rock. But I picked that up from the 0xDECAFBAD guy, and I'd share his enthusiasm, if not his hairstyle.

Friday, April 20, 2007

How to see a model

It's another Friday night at home, wife out of town, kids fast asleep, and I'm trying to figure out models. If you build a System Dynamics model, the output is a series of variable plots over time-- you can plot one against another to see possible interactions, but that's it. The demos I saw of an Agent-based model, for transportation, lets you look down on a city, SimCity-like, and watch little blips representing cars move around.

Sorry, that just doesn't cut it for me. Just like my impression of GIS being pretty pictures which overloads the user with irrelevant data to present minimal information, these displays don't do it for me either. Watching virtual cars flicker by looks impressive, but the fact is that we're evolved to stare at a campfire and find that interesting, too. Ditto for System Dynamics output and shorelines.

In fact, I suspect that a lot of computer-generated visualization is really just designed to help us zone out, while still feeling strangely productive. If I ask myself what the Blogger home page tells me, my answer would be "blue", part of my suspicions about color choice based on English language alliterations.

So, no blips, no wavy lines, and no maps of the familiar covered in pretty pastel colors to leave your brain churning on the conflict between size, shape, color, and magnitude. What's left?

I need an agent

The sun is shining, and the weather is finally back to normal for Albany. I guess we can all forget about global warming until the next time it snows. :)

I'm back to working out a research methodology for my dissertation, now that I have to specify what I'm going to actually do, on paper, to be buried into some file cabinet, and then retrieved at the least desirable moment. It looks like I'm going into Agent-based Modeling, since it seems to do what I want it to do: simulate a large aggregation of individuals' decisionmaking, and the interactions between people, as they impact transit. The downside: nobody's really done it here yet. I'll be the first dissertation (at least in the immediate geographic area) to try this. And none of the faculty around here seem to have much experience in it either. On one hand, that might make it easier: no experts to knock holes in my design during my defense. On the other hand, that might make it a lot harder: no experts to knock holes in my design while developing the project.

Looks like an interesting road ahead... kind of like the fortune cookie curse: "may you live in interesting times." Which seems like the case.

Sunday, April 15, 2007

GraphServer

It's a map engine. It's an itinerary planner. It's Open Source. It's GraphServer, an interesting-looking project for dishing out transit information.

Looks like I have something to look into over the summer. The project requires Linux, Postgre SQL, and Ruby, and is written in C.


Unfortunately, it needs a more distinct name. While attempting to research the project, I'm running across lots of other projects of the same name.

Anyone know more about this project, where it came from, and who's using it?

Saturday, April 14, 2007

Plotting the Perfect Nerdfecta


With the kids at my sister's house for the weekend, and my wife playing tennis, I find myself at Panera bread taking a break from making slides for my MIS class. I'm thinking about Microformats, text messaging, and stuff like WikiHow, the "how-to manual that anyone can write". It could easily be parodied, and at times, it does a good job of that itself. I caught myself from going into another speech to my wife about how "web development is dead, long live the web" after hearing some blurb on the radio. Life is too short for anyone to have to listen to that rant twice...

So heck, what better place to get that out of my system than via my blog that nobody reads.

I'm still trying to figure out another Nerdfecta I've isolated: Microformats, Wiki, and the various incarnations of Text Messaging. Here's my idea: post to a wiki via text messaging. Your wiki will be somehow smart enough to microformat your text message (and save it in the right place). Then, send requests to your wiki and get a response by text messaging.

It's just abstract enough an idea (read: pseudo-intellectual bs) to land some Web2.0 venture capital with more pension funds than brains. I'm not going to do that yet. But If I did it...
  1. Churn through a whole bunch of public wikis with a thesaurus generator.
  2. Construct a time series out of the diff logs (the "page history") for each page.
  3. Develop a probability model regarding the life cycle of common phrases. Do they get moved around in the wiki?
  4. Generate a crude common ontology for all wikis in study.
  5. Find common term relationships that relate to microformats I care about, and where they'd typically belong.
  6. Build a parsing engine that can place a text message into the correct page, based on term and page relationships.
  7. If it's a query: Return the microformatted text placed therein. If it's a text message, assume that only the tagged text is of interest. (Text messages might even be bidirectional: content loaded into the wiki as well as return content. Work on that idea a little.)
  8. Hire IP lawyers and pursue a patent.
The idea is still in beta, so the list needs refinement. Hey, you never know...

Friday, April 13, 2007

Fun with texting

Up relatively early in the morning to get some work done before work today. Shortly after which, the kids got up and turned on Thomas the Tank Engine--reducing the likelihood of getting anything done that requires thinking. So what better to do than update the blog?

I saw this little blurb yesterday- about some web 2.0 service named Twitter. And, since there's no documentation, someone went ahead and made an wiki. Some of this is nothing new: "Direct Message Bots" are just automated response services. Just send a text message to the service for the weather, get a response back. There have been Instant Message bots on AOL since the late 90's, and Microsoft (briefly) released an API to create your own bots in '99 or '00.

But another service, Textmarks, does that too. You can make your own web-scraping service by identifying a web page you want to scrape from (presumably a data driven site you want to scrape fresh data from), text y0ur keyword to the service, and the service scrapes the page and sends you back the result. I set up a text service as a test: send the message CDTA12East (or CDTA12West) to the number 41411. It scrapes a web page at SUNY Albany that has "next bus" departures that are easy to find. And that's it: perhaps the first "next bus" text service for Albany, NY. Turns out there are already a bunch of these set up for San Francisco, where this service is located.

But Twitter's other function is something more like microblogging: users create a "feed" and text the service about what they're doing at the moment. Like eating pizza. And others can subscribe to the feed and even get text notifications on their own phones that in fact the feed owner is eating pizza at the moment.

I don't know what to make of this. I mentioned it to my wife, who responded: "That's really sad." Her point: these people need more friends. True, it seems like an increasing number of people (especially in Japan) who are trading live social contacts with virtual connections, via their web-enabled cell phones.

The difference between "strong ties" versus "weak ties" in communication theory? A bunch of "weak ties" don't necessarily add up to a single "strong tie". Somehow on the Internet, we're more trusting. We have no idea that the feed source would lie about the location of the #12 bus or whether or not he is really eating a pizza. Maybe the fact is just to mundane to bother fabricating.

But with two services I've stumbled on recently that do the same kind of thing, it looks like another convergence of mobile and social computing to pay attention to. Stay tuned.

Tuesday, April 10, 2007

... and now it's over.

Now a bit past midnight, and I'm still wired from the coffee I drank this afternoon. Now I know I've caught up a bit on sleep over the weekend, and the birthday is finally over.

My wife has been asking me again about what I want for my birthday. Still nothing comes to mind- I've got my family, my house, and not many regrets. But it's not likely I'll suddenly get a couple 0f weeks of extra time between now and Wednesday, so that's off the list. But I made a list of a few computer parts and ordered them, so I'll just consider that my birthday present and call it a day.

Spring Break has been entirely eaten up by my teaching backlog, between grading and planning out the remainder of the semester. I managed to cross off two items out of ten for the weekly to-do list. Two big items, but only two. Some of these items are going to spill into the summer, when I launch immediately from schoolwork into full time summer work, with the remainder of tasks to be hacked out in evenings and weekends. I strongly doubt I'm going to reach candidacy by the end of the semester, but hopefully soon afterwards before all the necessary faculty scatter over the summer and leave that business for the Fall term.

And now it's time to get some sleep and start fresh in the morning when I'll have a more clear head to work on the remainder of these tasks.

Monday, April 09, 2007

They say it's your birthday...

Today's my last thirtysomething birthday. I got to sleep until 9 am (instead of the usual 6 am), and was greated by my wife and kids with a homemade card from my daughter and son. They bought me a wallet out of their own piggy banks (and some contributions from my wife as well.) But, I stressed that they don't spend too much on my present. I really don't need (or want) anything this year-- except time, maybe. And a couple of signatures so I can go on to Candidacy.

My sister is taking the kids next weekend. That's present enough. :)

And I'm taking a break from working on my Stats midterm, though today's been more about breaks than actual work. I have a take-home midterm due in a couple of days that I haven't really looked at yet. And a lecture to plan, and some group project proposals to log into my gradebook.

Birthday or not, the work piles up. I almost went to Bomber's Burritos for my free birthday burrito, but after one look inside, I changed my mind. I feel just a little too old for that today. I opted for Tandori Grill's Indian Buffet binge. The oft-considered diet can wait a few more days.

Is this an end of another era? I ran across this little announcement while checking my email today, regarding the cancellation of Visual Foxpro after Microsoft bought the product some 14 years ago. At least it'll be released to Open Source, and we can finally see how much real interest there is in the product. After all, there should have been an open source xBase language years ago.

Foxpro is the first language I developed in for pay, some 12 years ago just after getting out of Grad school in the middle of newly-elected Governor Pataki's civil service massacre. No more Public Management Internship program after graduation, or jobs for that matter. So I had to move to Jersey to chase programming jobs there, mostly in Foxpro. And so when the next 9 years...

It wasn't my only language, but was where I spent the the majority of my time for a few years before heading increasingly into XML, Web, SQL Server, Sybase and Java development before just bailing out completely and going back to school in Albany.

But, I'm going to be a professor now. And an open source Foxpro suddenly seems interesting in ways that the Microsoft strain hadn't in a while. Like the Linux version is a given, right off the bat.

That's for another day. I get a birthday evening at least...

Tuesday, April 03, 2007

Edubuntu

It's constructive procrastination. I'll be receiving my honorary PhD in that long before I ever receive a real one. With spring break at hand (for me, not the kids), I've restarted my Linux-media-center-on-the-basement-PC project. Now, it's taken the form of the educational version of the Linux distribution, Ubuntu-- the so-called Edubuntu.

We were chatting this morning about how bored my daughter is in school, even though it's the top Magnet school in Albany. Namely, she's tops in spelling and math, and still has time to space out and doodle on the back of her pages. My wife suggested Kumon, which I get in theory but have some doubts about. Basically, it's mail-order homework, which is returned, graded, and new worksheets are distributed based on feedback from the prior assignments. It's self-directed study at elementary levels of math and language.

On the other hand, I'd like to see if the Edubuntu project is worthwhile for the kids. Both have some computer skills, though the included software seems like an odd mix of programs across all age groups. Still, some rote learning works for basic learning-- language and early arithmetic, for starters. And the big surprise-- there's Japanese language training programs that ship on Edubuntu, out of the box.

The remining taks is getting the TV-Out port from the video card to actually output to the tv. When that's accomplished, it'll be tested a bit more on the basement tv before heading to the living room. I'm also going to test it as a media player for kid stuff-- their DVD's, music, etc...

Yea, and all those papers I owe aren't exactly writing themselves while I'm working on this...! But it's one of the projects I've been thinking about for almost 2 years.

Monday, April 02, 2007

Mr. Potatohead finds the remote

The kids staged this scene... Mr. Potatohead finds the remote, as photographed by my camera phone....

(I think it's time to buy a better camera. This looks like it was beamed to NASA from deep space.)

Sunday, April 01, 2007

phone-to-barcode-to-web


Today's New York Times had this story about a "new" technology: a 2-d barcode that you photograph with your cell phone camera. Yea, I saw it in Tokyo more than a year ago. Way to go, NYT! Still, nothing like good ol' geek fun.

It's the kind of low-tech-meets-high-tech solution that works. The transit applications are pretty obvious. The barcode immediately points your phone browser to a web page with the info you want.

Once upon a time, when I first moved to New Jersey, a job lead I had at a Big Six consulting firm fell through. I ended up getting a job at some multinational with a division in paper products and "everyday labels," even including deli counter labels and tear-offs. ("Number 9? Number 9?") My job? Lots and lots of data mapping ("pushing strings around") to ultimately have barcode stickers printed out in Chicago and Hong Kong. Yes, stickers. Lots of big name customers wanted stickers, tags, and box labels with barcodes put on them, and paid for the service. But that was it, printing barcodes...

But, it'd be easy to have your local print shop make the same thing for marking up town with your own labels pointing to your own website. FWIW...