Technobabbles I try to sound like I know what I'm talking about. Don't be fooled.

30Nov/110

Facebook News Apps Open Firehose of Pageviews

This is my fourth (and final) blog post assignment for my Journalism course. It's kind of an op-ed in its own right, though not something I was likely to bother writing about if not for the assignment.

Back in September, at its f8 conference, Facebook announced a new kind of app, with the ability to use "frictionless sharing" — basically a fancy way of saying that users' activity can be shared without users specifically clicking a "Share" button.

The first reaction to this announcement was lukewarm at best. As users began to notice just how much activity was being shared, they complained about both ends of the process. Some users were upset about how much of their activity was being shared (Spotify, in particular, started out by sharing every single track listened to); others felt overwhelmed by the new activity ticker in the upper right corner of their Facebook home pages (which was flooded by Spotify posts in the beginning).

News organizations jumped on board with their own apps for auto-sharing every article read by a Facebook user. Some, like Washington Post Social Reader, live entirely in Facebook, allowing (and encouraging) users to read articles without even leaving Facebook.com. Others, like Yahoo News, share activity from the organization's site via code that pushes activity to Facebook.

The Yahoo News model of frictionless sharing is actually more disturbing, because there's little to no indication to the user that sharing is taking place. Activity on Facebook can be reasonably expected to be shared, but activity on a third-party site seems outside Facebook's influence.

There are other considerations as well, around the meaning of sharing. As Farhad Manjoo wrote in a now-archived Slate article, "You experience a huge number of things every day, but you choose to tell your friends about only a fraction of them, because most of what you do isn’t worth mentioning." Nicki Porter, blogging for CopyPress.com (which provides content development services), made a very relevant point based on that: "If we only share about 10% of what we see online, we’re sharing the best 10%."

Philosophy and user opinion aside, the last two months have seen massive growth in news app usage. Poynter's Jeff Sonderman wrote this morning that news organizations are reaching millions of users through these new auto-sharing apps. In particular, Open Graph statistics released by Facebook yesterday show:

  • Yahoo News: 600% increase in traffic from Facebook; 10 million users connected, who read more articles than the average
  • The Independent: 1 million monthly active connected users; articles from the late 1990s taken viral
  • The Guardian: 4 million users installed their app, more than half of them under age 24; averaging nearly 1 million extra pageviews per day
  • Washington Post: 3.5 million monthly active users of Social Reader app; 83% of readers under age 35

Facebook is helping news organizations with a box at the top of the homepage News Feed that shows a small selection of stories that friends have read recently.

The lesson from all this is that a platform like Facebook, which has over 800 million active users (as self-reported on its statistics page), can be a real boon to news outlets. Traffic equals eyeballs, and more eyeballs can generate more advertising revenue.

What's especially interesting to me is how similar the new sharing (which is officially part of the Open Graph API) seems to Beacon, a "mistake" (said Mark Zuckerberg, founder of Facebook) that launched in late 2007 but was shut down in 2009.

Beacon also shared user activity on third-party sites back to Facebook, at first without permission. The class-action lawsuit Lane v. Facebook, Inc. resulted in Beacon being modified to require user confirmation before any sharing occurred. Open Graph sharing as it is today resembles the original Beacon, sending data to Facebook and publishing activity without any user intervention or even consent.

I, for one, stubbornly refuse to install any of those new auto-sharing Facebook apps. (Fortunately, it's pretty easy to bypass the request for permissions that pops up when I click an article featured at the top of my own News Feed.) I agree with Farhad Manjoo and Nicki Porter: Sharing is about choice. If I want to share something, I'll take the three minutes to post it myself.

Filed under: opinion, school No Comments
9Nov/111

Finding Sources for Interviews is Hard

This is my third blog post assignment for my Journalism class. I went for the reflection option this time instead of the news topic option because I had something to say about my experiences with the class in the last two weeks.

As I've worked to find people I can interview for my feature article, I've found that it can be really difficult to actually connect with even one person who can address the topic in question. Many people will simply ignore interview requests.

I'm sure part of the problem is my choice of subject. Not that many people know about Bitcoin, after all. What's more, privacy and anonymity are cornerstones of Bitcoin's design. That makes them part of the user culture…or maybe that just means Bitcoin attracts privacy fanatics.

In any case, I've successfully found only one source, an assistant professor of economics here on campus. I found him through the head of the economics department, and even that wasn't in time for me to include in my first draft anything he said. (He's only on campus on Fridays, and I didn't get his name until the Saturday before the Thursday my draft was due.) I also couldn't take the time to properly write my first draft. It was probably the roughest piece of writing I've ever submitted to a teacher, whether graded or not. (Well, there were those bits of writing I did in elementary school, but I won't count those because I don't count those years as part of my real education.)

On the social media front, I've had a nibble or two, but no real responses. I got a really good referral on Twitter from someone I interact with pretty often, who told me about a Bitcoin fanatic he knows, but this fanatic 1) has a private Twitter stream and 2) ignored my attempts to get in touch. What I said about privacy before definitely applies to this guy.

Actually, a follow-up message to the economics department chair here at Brandeis fell through the cracks when I asked about another source within the department who might be available for interview sooner — in time for my first draft. (I hope it fell through the cracks; the alternative is being ignored, and I don't like being ignored when I'm trying to do an assignment. No, Brandeis' email system doesn't lose messages. Google Apps has higher reliability than that. I use it for my personal domain, so I have some experience there.) I guess that can't be blamed on the Bitcoin culture.

Having failed to find any more sources in the week since turning in my draft, I plan to launch something of a guerilla campaign on Friday. (The rest of Wednesday and all of Thursday will be dedicated to making sure I finish my Java programming assignment by the deadline, and to studying for my Hebrew midterm on Friday morning.) My current campaign hit list includes the economics and computer science departments of several colleges, a few friends of mine who must either know about or know someone who knows about Bitcoin, and a couple of legal firms with which I have connections. This last item is important, as I need to understand the legal environment surrounding Bitcoins competing with the United States Dollar (and with every other nation's currency).

May my campaign result in a deluge of responses. If it doesn't work, I guess I'll be asking my professor for help on or around Tuesday afternoon.

As an aside, Bitcoin is also hard to research. In looking for material online (for not much has been said about it in physical media), I followed many dead links. The system is somewhat unstable, as shown by what happened when the Mt. Gox exchange was compromised (a part of my research); the information resources about it are even more so.

Thanks to my source-finding campaign plans and my need for better research, I foresee that my weekend will be full of work for my journalism class. Well, the part of it that is not taken up by tech week for The Last Night of Ballyhoo, for which I am the sound designer.

Perhaps I should just say that I will be having a busy week(end).

Filed under: musings, opinion, school 1 Comment
17Oct/110

Leaky Websites

This is my second blog post assignment for my Journalism course. As with the first, reposted here because "why not".

The New York Times' "Bits" blog published an article last Tuesday that really opened my eyes. The Center for Internet and Society at Stanford Law School released data on what information is passed between certain popular websites.

Long story short, logging in (or even trying and failing to log in) to a site can pass information about you to third parties. That information can be as innocuous (but still trackable) as a "unique identifier" generated by the site or as specific as your email address, username, and real name.

Somini Sengupta (author of the Bits blog post) says:

Take for instance these findings, released on Tuesday by computer scientists at Stanford University. If you type a wrong password into the Web site of The Wall Street Journal, it turns out that your e-mail address quietly slips out to seven unrelated Web sites. Sign on to NBC and, likewise, seven other companies can capture your e-mail address. Click on an ad on HomeDepot.com and your first name and user ID are instantly revealed to 13 other companies.

I did some digging of my own through the Microsoft­® Excel® spreadsheet available from the Stanford Law School page (direct link to XLSX file) and found some interesting examples of my own.

For example, MSN.com leaks your birth year and birthdate to FBCDN.net (a domain owned by Facebook and used for content distribution). Facebook's CDN can't possibly need that information for anything but tracking. Take another case: Ask.com sends your username to Google Analytics, reCAPTCHA (owned by Google), ScorecardResearch (part of comScore, Inc.), Gigya (a company that "makes websites social"), Quantserve.com (used by Quantcast, an advertising network), IMRWorldwide.com (controlled by Nielsen), and LinkedIn.

Incredibly, The Huffington Post's website sends your username to BlogCDN.com (another CDN), BuzzFeed ("Tracks the Web's Obsessions in Real Time"), AdSonar (owned by Advertising.com; provides targeted text ads), ScorecardResearch, AOL.com (Huffington Post's owner), FBCDN.net, aolcdn.com (AOL's CDN), ATWOLA.com (stands for AOL Time Warner Online Advertising; tracks surfing habits), Facebook.com and Facebook.net, Google Analytics, IMRWorldwide.com, Quantserve.com, and HuffPost.com (used for delivering static content without cookies, ironically); your birthday to BuzzFeed and IMRWorldwide.com; and your birth year to Advertising.com and ATWOLA.com.

The point is, any information given to a website as part of the registration process or entered later while updating a profile allows third parties to do just that: profile you as a person through your behavior across countless sites. All this tracking is thanks to the triviality of circumventing the "same origin policy" of data stored in browser cookies through collaboration between sites.

A standard feature of Web browsers is sending the address of the last page visited (the "referrer") to the page being loaded. In the case of images, scripts, or other resources loaded within a page, the referrer is the page in which they are embedded. If the page displaying advertising has personal information embedded in its URL, that information is passed on to any sites whose assets are embedded in the page. This kind of information leakage can be accidental as well as deliberate. It does not typically function for sites that are encrypted (URLs beginning with https://), as most browsers disable sending referrers for secured connections.

Websites intentionally wanting to share user information might go about doing so another way, and while I had a written explanation of an example process it is sufficient to say that methods for intentionally sharing information and tracking users across domains, even in spite of user privacy choices like clearing cookies, are numerous.

When information is revealed in the URL, it's not necessarily intentional. Back in May, Symantec discovered (The Daily Mail reports) that some applications on Facebook's platform were potentially giving advertisers access to users' accounts due to app URLs including access tokens, the bits of information older Facebook apps used to identify themselves and connect to users' accounts. It was just an oversight.

Filed under: internet No Comments
14Sep/110

Google Books and the Book Industry

I wrote this for my Journalism class at college, but figured I might as well share it here too.

The New York Times ran a story Monday about a new lawsuit filed against HathiTrust, a partnership of universities and research libraries that maintains a digital book collection on its website.

Plaintiffs in the suit include three major authors' groups: the Authors Guild, the Australian Society of Authors, and the Québec Union of Writers. Eight individual authors are also party to the filing, among them Pat Cummings, Roxana Robinson, and T.J. Stiles.

The objections raised in the suit center around the HathiTrust collection itself. "[S]even million copyright-protected books" (according to Paul Aiken, executive director of the Authors Guild, as quoted by the NYT) are available without any consent from the authors. The Authors Guild and its fellow plaintiffs say that the collection violates copyright law.

HathiTrust's collection consists of books digitized by Google, Inc. as part of the Google Books project, which has been steadily scanning books from participating university libraries across the United States.

The Google Books project has been the subject of many lawsuits over the years since work on it was begun in 2002. A few examples will help provide context:

  • 2005: The Authors Guild sues Google for "plain and brazen violation of copyright law" (archived press release from AG via Archive.org)
  • 2009: French court halts Google Books in France: the ruling applies only to books published in France under copyright (Los Angeles Times article)
  • 2010: Several professional photographers' organizations bring a class-action suit regarding the reproduction of copyrighted images within the books scanned by Google (Mashable.com article)

The Authors Guild has been involved with this issue before. This time, the fight has been brought to an organization with a bit less might than Google.

But never mind who sued whom, for what, and when. The issue is really quite simple, and most of the lawsuits against Google Books have had little to no merit.

United States copyright law (the laws under which most Google Books lawsuits have been filed) contains a doctrine known as Fair Use. It was originally intended to protect commentary, critique, and parody of copyrighted works. However, the principles of Fair Use (Cornell University Law School Legal Information Institute):

  1. "the purpose and character of the use" — e.g. for commentary, critique, parody, scholarship, etc.
  2. "the nature of the copyrighted work" — published/unpublished, fact/fiction
  3. "the amount and substantiality of the portion used" — how much of the work was used, and how significant the used portion is to the work as a whole
  4. "the effect of the use upon the potential market" — if the use of that portion will negatively affect demand for or the value of the original work

(Thanks to Stanford University's Copyright & Fair Use information center for helping me refresh my own memory of these concepts.)

The way Google Books works is carefully designed to fit within existing copyright laws. Books in the public domain are fully accessible, with no restrictions. Copyrighted, in-print books allow whatever access the publisher has specified. For in-copyright books that do not have a publisher, Google restricts access to "snippets", which show just a few words surrounding the user's search term.

So: Whenever Google Books shows a significant portion of a book, it has permission from the publisher to do so. Without permission, Google Books displays tiny fractions of the full work in an immensely transformative manner.

Google Books falls well within Fair Use doctrine, at the very least. Displaying card catalog – type information about the book plus at most a sentence or so for each search result (I'll go down the Fair Use list):

  1. Is for scholarly reasons
  2. Uses published works
  3. Displays at most a few percent of the whole book
  4. May actually increase demand for the books featured in the results

(Parts of Lawrence Lessig's 2006 video discussion of Google Book Search came in handy for an overview of how Google Books works.)

So why are publishers and authors suing Google and HathiTrust?

As far as I can tell,[original research?] HathiTrust follows the same rules as Google Books. This makes sense, as the content is from the Google Books program.

HathiTrust's entire archive is intended for academic use. It's unclear why the various plaintiffs in this new lawsuit are suing for the removal of their books from the archive, rather than suing for better access controls. If the concern is that anyone can access the books (which they can), then restricting access to verified researchers would clear up the problem.

It's like big music, film, and television. The music industry figured out that it could simply adapt to the Internet and start offering content over the new medium, giving people an alternative to pirated copies shared through services like Napster, LimeWire, and BitTorrent. Film and television haven't yet figured that out, and I guess the book industry is still working on it too.

7Sep/110

Finally: Google Voice Export Feature Released (sort of)

It took quite a while — more than two years since launching in March 2009—but Google Voice finally supports exporting!

I'd love to think my export format ideas post had something to do with the end product released yesterday, but I seriously doubt it.

Sort of...

Let's just say, Google Takeout isn't behaving very well. The test archive I created yesterday won't download, and I've tried both Google Chrome 13 and Mozilla Firefox 3.6. The feature isn't there yet, but I'm sure Google engineers are working on it.

I'm still happy...as soon as they make it actually work.

10Jun/110

There Is Always a Choice

I recently read a headline in the Minneapolis Star Tribune featuring an unfortunate wolf at the Minnesota Zoo.

The story went that this 8-year-old male Mexican gray wolf — an endangered species — escaped from his1 enclosure through a gap in the fencing of the keeper's area. He proceeded halfway around the grounds before being tracked to the Northern Trail area and shot.

Yes. Shot.

Tranquilizers would not have acted soon enough, Minnesota Zoo officials said, forcing them to destroy the 8-year-old male.

I beg to differ. There was nothing forcing these people to shoot an innocent animal — an intelligent being. Wolves belong to the canine family, and do we not use dogs every day to help track criminals, find explosives, and guide the blind (to name a few)?

We do. Canines are intelligent beings. The fact that they are used in so many different parts of human society prove that. They wouldn't be useful in their jobs without intelligence.

So what "forced" the zoo officials to have the wolf shot? Tranquilizers would have taken 8 – 10 minutes to take effect, and that delay was deemed too long.

Never mind that the wolf hadn't approached anyone.

Ignore the fact that he was probably a very freaked-out wolf, more concerned with getting away from people than with attacking them.

In fact, the paper ran a follow-up story the very next day. They quote a wolf researcher:

"That animal wouldn't have been dangerous, period," countered David Mech, a wolf researcher and vice chairman of the International Wolf Center in Ely, Minn.

Sure, anyone would get a little pissed after being stuck with a tranquilizer dart. But tranquilizers and guns weren't the only choices. Could not keepers go out with nets to catch the wolf? They already evacuated visitors, so there was no immediate danger to anyone who might sue the zoo.

Why didn't the animal "experts" come up with a better solution than a gun? Doesn't the Minnesota Zoo — a considerably large zoological institution — maintain contingency plans for escaped animals? Don't they have equipment for containing said escapees?

I am reminded, in a somewhat macabre firing of synapses, of the "death by misadventure" scenarios of many role-playing games. Choose to enter the wrong cavern, and die; or pick up the wrong item, and die. Go through the wrong hole, and die.

If the story had included any mention of the wolf going after visitors, my views might be different (but then, there are many non-lethal ways of neutralizing a threatening animal). But it didn't. Nobody reported being threatened by the wolf. He was just exploring.

That's all he did: He chose to explore the wrong hole.

Zoo officials got scared, panicked, and had an intelligent being killed.

Nobody forced them to do it. Their own fears of potential litigation pushed them into the easy solution.

Killing is never the only option. There is always a choice.

  1. I will use personal pronouns. Referring to the wolf in question as "it" would put me uncomfortably close to the level of consideration displayed by Zoo officials. []

Filed under: opinion No Comments
7Jun/110

Hello Android: LG Optimus V Review

Use NET10 and need more airtime? Buy my 2475 minutes on Amazon or Craigslist! Alternatively, contact me with an offer

I've been using NET10 as my cellular carrier for nearly two years. I got their most basic phone (the LG 300G) at a Wal-Mart in Colorado Springs, CO, in June 2009 and have been paying $15/month ever since for 150 – 200 minutes (10¢ each, or 5¢ per text message).

I got tired of that phone's slowness and tiny keypad rather quickly, as I tired of NET10's baseline service. I got a number and access to the network, but that was all. They also gave me a number that was prone to receiving calls from collection agencies and spam text messages. (Finding a way to block such junk proved to be impossible, as I detailed in my pseudo-review of NET10 from February 2010.)

Getting a new phone was only a matter of finding the right one. It took a while, but it did happen.

Acquisition

This February, I passed by a Radio Shack store and saw an Android phone with a decent price tag on a poster in the front window. I stopped in for a few minutes to see what it was all about. It was there that I met the LG Optimus V, a $150 Android phone with a minimum $25/month contract-free service plan from Virgin Mobile U.S. (including 300 minutes and unlimited texting & data).

I had to run to a show that evening (the life of a stage manager is never simple), but the seed had been planted.

Over the coming weeks, I kept thinking about that phone. I researched it a bit and found that it was a recent release, only a month out of the gate. I found that Virgin Mobile had put out one other Android phone, the Samsung Intercept, that had a physical keyboard but (as kept coming up in the reviews I read) horrible performance. Nearly every Optimus V review I read was positive. Score!

I even dreamed about having the Optimus V one night. Despite drooling over the iPod Touch, iPad, and so on with all the other geeks of the world, not once did I dream about having any of them. I took that to be a sign. When I saw it on sale at BestBuy.com for $130 a few days later, that clinched it.

But BestBuy.com was sold out of the phone, and so were all the nearby stores. Nobody else had it on sale, so I wasn't about to just go out and find it elsewhere. I waited and hoped that it would be back in stock before the sale ended.

Another few days went by. Then I checked again and, lo, the Optimus V was back in stock! I pounced. All told, the total sale price including tax and shipping was less than the regular product-only cost. I called it a good deal, and began my plans to test it. Best Buy has a pretty good return policy, after all.

I placed my order on a Wednesday, and so didn't get the phone until the following Monday. Those five days were frustrating! But when I did get it, I took pleasure in carrying it to the local library to set it up.

First Impressions

My new phone was shiny, and awesome. Navarr, the awesome dude who hosts this site right now, saw my posts on Facebook and said he'd just gotten an Intercept and that it couldn't play Angry Birds, the immensely popular game. So what was the first app I downloaded? Angry Birds. The Optimus V ran it perfectly.1 Score!

Did I mention that it was a steal at $130? (Current price: $200. Virgin Mobile and/or LGE must have decided they needed a bigger profit margin.) All my comments will use that price for value assessments.

Two Months Later

It still is awesome, and shiny too, but I've taken to carrying a microfiber cloth with me so I can periodically wipe the screen and casing. Both of them do collect significant quantities of finger oils and grime in the course of a day's use (especially if it's a tech set-up day). That's one of the few issues I've had with the device. (The other issue is an incompatibility between the stock Music app and the Last.fm app. It wouldn't be a big deal if Music didn't open automatically, both when I select a media file from the File Expert browser and sometimes when I unplug the headset. I'm working on replacing it completely with Songbird for Android, a mobile version of my favorite desktop media player.) I'm sorry to say, I never started carrying a microfiber cloth for any other purchase. A new phone was just so long in coming, I guess.

As yet I have not activated the service plan. That is on hold until I can offload my old NET10 phone, which has about 1400 minutes (or about $140 worth) of airtime on it. The Optimus V is currently my pocket computer, subsisting on Wi-Fi until I get the data service turned on. It's already been very useful for finding bus routes, thanks to Minneapolis Public Wi-Fi. It will be twenty times as useful once I get rid of my old phone and sign up for Virgin Mobile's service.

Battery

Battery life was reported to be pretty bad, but overall I haven't had any issues with it. Granted, I don't have the cellular radio active (why bother, if I have no service plan yet), but I can get in several hours of Wi-Fi or 10+ hours of reading in ReadItLater2 without having to plug in. I'm hoping the forthcoming software update from Android 2.2 to 2.3 will include even higher efficiency.

Performance

Generally, the phone is very responsive to inputs. It unlocks quickly (using the Draw Pattern option), and seems to only slow down if an application is misbehaving. As mentioned, Angry Birds (both the standard and Rio variants) performs well, and listening to music or watching even standard-definition video clips is stutter-free.

YouTube videos, of course, work well as long as I have a good connection. Streaming audio, such as TuneIn world radio, works also.3 I haven't tested Pandora yet, but I have a feeling that as far as the phone is concerned it will work well. (Some reviews on the Market indicate issues with the app, but that's not the phone's problem.)

On occasion, it would slow down to a crawl and seem to freeze just after connecting to a Wi-Fi network if it hadn't been synced in a while. I now turn off the auto-sync unless I want apps to sync, and that problem has more or less disappeared.

Every so often, I do get the phone to crash. Usually it just hangs, ignoring all button presses until I remove the battery and reboot it. Occasionally it's rebooted itself in the middle of a stuck app uninstall. But those occurrences are pretty rare; I've gone upwards of a week without ever rebooting the system.

Storage

External

I'm still using the 2GB microSD card that came with the phone. Its current contents include 1.09GB of music, every SD-enabled app I have (to free up internal space), one chapter of an OverDrive MP3 audiobook (30 or 40 MB), an EPUB ebook or two (1 – 2 MB each), and several dozen articles downloaded for offline reading in ReadItLater.

I plan to get a larger card in the next few months, as 2GB isn't nearly enough for all the content I want to carry around. I'll price 16GB and 32GB microSD cards and hopefully find a good deal on the latter, the largest the Optimus V supports.

Internal

I have issues with the internal storage memory. It's not that it's bad memory or anything; there just isn't enough of it. The total internal storage available to the user is 178MB, but only about 160MB is usable; past that, the phone will start complaining that it is "Low on [internal] space" and refusing to sync until space is cleared.

Apps to Watch

Some apps are worth noting for their strange or annoying storage habits.

Browser

The Android Browser app appears to store its cache in internal memory, and doesn't provide a setting to change that. If you get a low space warning and have been browsing recently, check the Browser's cache through Settings->Applications->Manage Applications->Browser and clear it if it's more than a few hundred KB. Sometimes it's not so intelligent about throwing away cached items that aren't needed any more.

Facebook / Twitter

Both Facebook4 and Twitter must reside in the phone's memory, and can't be moved to SD. They both consume 2 – 4MB of "Data" storage on top of the 3 – 5MB they use for code, a usage level that pretty much hovers.

Neither can be moved to the SD card. I haven't figured out if they really can't be moved, or if moving is somehow broken because there are (outdated) factory-installed versions in the phone's ROM.

Anything from Google...

Also note that Google's applications (including Maps, Gmail, Reader, and most other offerings) generally can't be moved to the SD card. This means that Maps uses over 10MB of my internal memory, and Gmail another several megabytes.

Goggles can be moved, but it's an exception in Google-land. As a heavy user of Google services, I grudgingly allow space for those apps; but I would very much prefer that they allow themselves to be moved to the SD card.

Ditto to my comments on Facebook & Twitter about moving being possibly broken by outdated factory-installed versions of Google apps in the phone's ROM.

...But Especially Books

Google's Books app has a huge storage appetite. I currently can't use it, because when I allow it to sync and download my books, even with no books stored locally, it uses 8MB of "Data" storage for — as far as I can tell — nothing. The latest update (1.3.4, released in mid-May 2011) improved on the 9+MB use of the previous version, but it's still an issue.

I did report the issue in the forums, but I will be pushing again as I think the app team considers the issue resolved by the update. It's not.

Sorry for ranting. I really enjoyed reading the free books from Google's store until I needed the internal memory consumed by Books for more apps.

Display

In a word, readable. Even in full sunlight, I can crank up the brightness and have a usable phone. The higher brightness settings do suck the battery a bit, but they're handy when I need to check on a bus from a stop during the day.

The only thing I might wish for, display-wise, is an ambient lighting sensor to automatically adjust the brightness in different lighting environments. But that's not something I'd expect to find on a low-end phone.

Text Input

I tried Swype, and disabled it. As far as I can tell, the stock Android 2.2 keyboard is plenty good. Apps that disable its correction features aside5, Android Keyboard's auto-correct, -complete, and -capitalization functions make typing a breeze. It's much easier than a T9-style keypad.

Audio

In general, audio is good. Decent fidelity all around, though not always loud enough.

Oh, and it accepts standard stereo headphones. Don't be put off by the four-conductor earbud set that comes with the phone; typical three-conductor, 3.5" plugs will work just as well for listening (obviously without the button control).

Be aware, though, that if you're trying to plug into an external audio system, the phone's output signal is pretty weak. It's good for driving earbuds and headphones, but you'll have to crank up the gain on (for example) a performance sound system.6

Speaker

The speaker could be louder. It can be hard to hear music playing from it in a noisy setting, such as while walking along a busy street.7 :P

Kidding aside, I usually don't need to crank the volume up all the way. 75% is sufficient for most situations.

One small detail: Sometimes the speaker sounds a bit tinny when playing music, but that could be the quality of my down-converted music8 as much as the speaker.

3.5mm Jack

It's really hard to hear music in earbuds or headphones when a car or truck drives by... :P

Seriously, the output jack emits a good-quality signal. There is one caveat, however.

There seems to be a background hiss whenever I'm using the headphone jack, maybe due to a cheap audio system. (Uh, duh, it's a cheap phone.) It's only annoying in silence or quiet moments in the audio, though.

Otherwise, it's quite satisfactory.

Price Jump

It was unexpected, but not surprising, when I saw the price go up soon after I bought the phone. $150 was a great deal for everything the phone could do, and I'll bet it was selling like hotcakes. Matching the price point of the Samsung Intercept, Virgin Mobile's other Android phone, makes business sense.

At $200, it's a slightly worse deal, but it's still a fully featured Android phone with no contract. (Compare to T-Mobile's $40-with-two-year-contract price for the nearly-identical Optimus T.)

Conclusion

Bottom line: I like the Optimus V. I recommend it to anyone who wants to try out Android without spending $60+ per month. I even recommend it at the $200 price point of today, though don't get it if you don't plan to use it as a phone some day.

Oh, and thanks to Ringtone Maker I now have one awesome alarm clock. That right there is a great reason to get an Android phone. ;-)

Omissions? Mistakes?

Did I miss any facet of the Optimus V that you'd like to know about? Get something completely wrong? Sound off in the comments and I'll update the post accordingly.

  1. OK, so it occasionally gets slow. I haven't come across a single other Android device, especially at this price point, that didn't have an issue here and there. I've even witnessed Angry Birds hanging on a Nook Color. []
  2. ReadItLater is the only paid app on my phone; I got it for 99¢ in April, thanks to a launch sale. Everything else I use at present is free. []
  3. I sometimes like to tune in to Israeli radio stations. []
  4. Oddly enough, the package name is com.facebook.katana. Some unofficial app stole the package ID com.facebook, but I don't know why Facebook didn't just use com.facebook.android... []
  5. I tried several note-taking apps before discovering Catch, a great app that takes photos & audio as well as text, and also syncs notes to the Web. Other options offered no advanced text-entry features, but Catch did. Aside from a few weeks between the 3.0 and 3.0.1 updates when an oversight in the new version disabled the auto-completion features, Catch is a rock-solid app that I recommend for any Android—or iOS [iTunes link] — device. []
  6. This tidbit came from trying to use the phone as a source of work music in the theatre. I initially thought there was something wrong with it, until I remembered that I had a gain control on the board I could crank up. []
  7. Of course, I only know one person who even tries to do this. He complains that the Optimus is horrible at it, but his phone ain't any louder. []
  8. All the music on my phone is 96kbps MP3, converted using fre:ac Portable from originals as high-quality as FLAC and as bad as — yes — 96kbps MP3. []

31Dec/100

Polishing Minneapolis’ Wireless Civic Garden

I've done some playing around with the citywide Wi-Fi here in Minneapolis, and I must say that the range of information accessible through the Civic Garden feature (which allows even non-subscribers access to City-related sites) is impressive.

However, while I understand that the whitelist of "free" domains is limited to noncommercial properties, there are a few exceptions that should be made. Or at least, some resources should be hosted by the City or proxied for Civic Garden users.

Metro Transit's site

Visiting MetroTransit.org when online via the Civic Garden is a little weird. The home page is a lot longer than usual — actually, most pages are longer than usual — due to the absence of JavaScript libraries hosted at ajax.googleapis.com.

Because of the missing code, features that normally hide away in compact accordion stacks or appear when the mouse is moved over them are left in the open. One of them even steals focus when the page has loaded, making the view jump most of the way down the page. It took me a while to figure out why the page was scrolling by itself.

The navigation is broken for all but the top-level sections, because the missing code runs the drop-down menus that allow deeper browsing into the site. On the front page, a series of five images depicting the various Metro Transit services1 that is normally an automatic slideshow with mouse interaction expands to five panes stacked down the page — and the links embedded in them don't work.

On the right side of the page, a clutter of tools appears where there is normally a neat stack of expandable options. One of them is the culprit for the page-scrolling I observed, and it gets annoying after a few pageviews to have to scroll to the top of each new page loaded. (Somewhere in the page's code, a JavaScript snippet that doesn't rely on one of the missing libraries is placing the caret2 in a text input near the bottom of the page, and most browsers automatically scroll to make such a "focused" element visible.

Glancing at the page's source, I notice immediately which files must be the problem. Two <script> tags include the jQuery and jQuery UI libraries from Google's CDN. This practice usually improves speed, since the likelihood of the files already being cached by a visitor's browser is increasing as more and more sites start using these Google-hosted versions of popular JavaScript libraries instead of their own copies — but in this case, it's causing breakage for a subset of users. Google's service is not whitelisted as part of the Civic Garden.

Solutions

Two solutions present themselves, and they are both simple.

Ideally, Metro Transit would pass a request up the chain for ajax.googleapis.com to be whitelisted. Not only would doing so solve the problem for their site, but it would also allow any other Civic Garden website to take advantage of Google-hosted libraries without any further work from either Civic Garden administrators or individual site maintainers.

This first solution also has the potential to save bandwidth usage, since Google sends aggressive caching instructions along with the files hosted on its CDN. More Civic Garden sites using libraries hosted by Google would result in negligible increases in data transfer, because the same files would be downloaded once and then cached for use by any site requesting them. Saving bandwidth on the free Civic Garden would open up more of the pipe for paying subscribers — an outcome with which U.S. Internet would no doubt be pleased.

Alternatively, Metro Transit could add the core jQuery and jQuery UI files to the pre-existing /ClientScript/ directory, which I can see already contains plugins to those libraries, the Cufón library,3 and a font file for Cufón to use, among other things.

This alternate solution is a good fallback if the higher powers in control of the whitelist refuse a request to allow access to ajax.googleapis.com. It only solves the problem for Metro Transit's website, but it would fix the issues discussed above.

A third, much more complicated, option is described below. Obviously, if it were applied to the Metro Transit problem, ajax.googleapis.com would be used where www.google.com is in those examples. While it would also work, it is unnecessarily complicated for the scope of the problem facing Metro Transit's website, and that is why I don't count it as a solution here.

Resolution

Some time ago I contacted Metro Transit using the feedback form on their site to notify them about the breakage and propose (in brief) my solutions. I received a response just a few days ago, with the welcome news that they will be fixing the problem in the next site update by hosting the JavaScript files themselves. Not the ideal solution, but definitely the easier of the two possibilities I could think of.

Way to go, Metro Transit! You've beaten me to the punch. Not that it's hard to do these days, what with my posting frequency and all... ;-)

The City's site

Located at www.ci.minneapolis.mn.us, the Official Website of the City of Minneapolis has a wealth of information on everything from regulations to recycling and more. It allows access to City Council agendas, a list of what can and cannot be left for the recycling program, and countless other unexciting but eminently useful bits of information.

The main problem with the City's site as viewed through the Civic Garden access is that it is impossible to search. Submitting a query through the search box at the top of any page leads the user to a page that says "Search the Minneapolis Web Site" above another (empty) search box. And pretty much ends there.

It's great to see that the City (or at least its Web developers) is embracing modern Web services like Google's Custom Search Engine, but all the resources required to fetch and display results come from www.google.com, a domain blocked when using Civic Garden access.

Not an Easy Problem

Solving this problem is a bit more difficult. Whitelisting www.google.com is out of the question, as that would also allow free access to many of Google's consumer-oriented services including its trademark search engine, calendar, feed reader, and so on.4 Unfortunately there are no easy solutions here. Hosting the JavaScript files doesn't solve the problem because those files in turn load other files whose locations are embedded in the code.

Implementing some sort of proxy would seem to be a solution, but there's still the matter of hard-coded resource locations. Nothing returned by Google would request files via a City-controlled proxy, no matter how sophisticated the proxy.

There's also the matter of load. Obviously any solution involving the use of City hosting services should be restricted to those users who need it — that is, Civic Garden users — to avoid unnecessary load on the servers. But there might not be a way of separating the "needs" from the rest of the crowd in a way that would allow the server to send different pages to those who need them.

Best Idea Forward

Without knowing more about the network architecture, I can come up with only one possible solution.

The flow would go something like this:

  1. User loads search page, and browser requests resources from Google
  2. U.S. Internet network5 receives and recognizes requests destined for www.google.com
  3. Network scans a list of allowed request patterns to www.google.com; such a list allows only the resources needed for Google Custom Search
  4. User's browser receives the needed resources
  5. Google's Custom Search code sends its requests to retrieve results, which are filtered through the same mechanism at the network level and allowed to return data to the user, completing the search

It's a rough description, but generally all that's needed is an extension of the domain-based filtering to enable filtering on request patterns — that is, the contents of the GET line in the request headers.

If the requested hostname matches www.google.com, that request is sent to a second filtering routine that performs pattern analysis (via regular expressions or what-have-you) on the requested path. /jsapi and /coop/cse/* can get through and return those resources to the user; /reader/view/ and /webhp?q=denied can't, and redirect to the subscription login page (the current behavior for all non – Civic Garden sites).

Implementing this solution would require analysis of all the possible requests generated by Google Custom Search, though Google might have available (or be willing to provide) a reference of how Custom Search works. Once put in place the filtering expansion would enable any site in the Civic Garden to use the service and have it work for everyone, without changing anything else. It might also require changes to the network equipment that runs the citywide wireless service, but such upgrades would prove useful in short order as more City services were made available to Civic Garden users thanks to the accessibility of search. (See next section)

Other Applications

While the main problem with the City's site as accessed via the Civic Garden is the lack of search, there are other issues.

Forms, for instance, seem to mostly be hosted on external sites that are not included in the Garden whitelist. Much information is given about the services these forms can be used to obtain (such as snow emergency notifications by telephone or email), but filling out the forms is impossible.

A complete audit of all external resources called by the City's site (and in general, all Civic Garden sites) could provide a list of domain names and resource paths for whitelisting. The above-described filtering system could be extended with the contents of such a list so specific pages from commercial sites used on City properties could be made available, while still blocking effectively all commercial traffic from the Civic Garden.

Enabling access to third-party resources that are currently blocked, despite being included in Civic Garden properties, would provide an even greater return on the investments of time and (possibly) money in the upgrades of network hardware and firmware that would likely be necessary to support such a filtering system.

I emailed the City about this and was notified several days later that my message had been forwarded to their IT department. At that time I hadn't come up with this new filtering idea, so I've contacted them again with a link to this post. Maybe they'll read it, maybe not; but it's been a nice thought experiment.

  1. Which are: Bus, light rail, Northstar commuter train, bicycle accommodations, and Rideshare (car or van pools). []
  2. caret: the blinking line or box often used to enter text on a computer []
  3. Cufón replaces specified text elements with graphics rendered dynamically by the browser to provide more control over typography than the current lowest-common-denominator browser-native technologies. []
  4. I for one would love it if the City had Google services whitelisted so I could check my email and calendar from pretty much anywhere for free, but I can understand the need to block commercial sites on a publicly funded network. []
  5. U.S. Internet is the local ISP that was awarded the contract to build and run the citywide wireless service. []

29Dec/100

So… That’s Surgery, Doc

Wow, has it really been almost seven months since I last published? Blog fail! ;) I figured I should get this post, at least, out the door before 2011. It was mostly written in September, so there might be some things that are no longer true. The vast majority of the text, though, is not publish-date-sensitive. Hopefully more to come, filling in my summer at the very least.

I now know what it's like to go through surgery. Thanks to my former appendix for the lesson.

My family planned a vacation to coincide with my brother's college graduation in August. After the graduation festivities, we set out for the Outer Banks of North Carolina by way of Washington, DC. The Outer Banks are a great place to go to just get away from everything and enjoy the ocean. I spent uncountable hours reading Atlas Shrugged (by Ayn Rand — a very engrossing and relevant book) at the beach, and countless more hours taking photos of the ocean and my five-year-old nephew being his unashamedly cute self.

The Outer Banks were so enjoyable, in fact, that we extended our stay. However, that might not have been the best idea: I felt a little off the day before we were to leave, and I felt really bad the day we planned to leave. I felt so bad that I actually wanted to see a doctor — an extremely rare state of mind for me.

Onset

The day I felt a little off was probably related to the eventual diagnosis, but at the time I (and everyone else) thought it was just heat exhaustion or heat stroke. Earlier that day I spent significant time (at least two hours) constantly in the sun. I eventually decided that I had to get out of the sun, no matter what, and spent the rest of the day feeling really exhausted. It felt really good to get to sleep that night, and I figured I'd feel a lot better in the morning.

Morning brought some relief, but I still felt tired. I had a mild headache, but that happens often enough that I thought nothing of it. I figured I'd push right through the day, but my stomach started aching just before lunch time. Since I'd had a good-sized breakfast (the remains of last night's dinner), I decided to try to take a nap instead. Sleep didn't exactly come readily. By the time Mom came to check on me, I was well past a stomach ache.

I had what felt like very bad constipation, only the usual tricks didn't work. It also kept getting worse. From the pain scale I later saw in my hospital room,1 I judge in hindsight that I was at a 3, moving to a 4 when I decided to go to the hospital. (I try to avoid doctors whenever possible; in general any problems I have resolve themselves given a little time.) I finally just gave up trying to solve the problem on my own. Whatever it was, I needed an expert.

My mother stopped to tell Dad where we were going on the way to the car. All I could think was, "Less talk, more driving." I told her as much when she made it to the car, but I think it was more funny than anything else considering my weak, tortured voice at the time.

At the hospital, I dragged myself in and leaned heavily on the reception desk. My stomach demanded so much attention, I could barely answer the basic diagnostic questions posed by the woman working there, but that probably gave her plenty of information right there. I let Mom fill out the blank form I received; there was no way I was going to sit there and write all that data. All I wanted was to move as little as possible.

Diagnosis

When the hospital staff called me into the triage room, I was at about 6 or 7, pain-wise, and that's what I told the nurse when she asked. A few questions later, I had a room and a hospital gown — the first time I can remember being given a gown in my life.2 I changed and gingerly set myself down to wait for someone to come and see me.

A female doctor (of whose name I can remember only that it started with an M) came to examine me and ask more questions. She hypothesized that I might have strep, given my slightly sore throat, and listed three tests I would receive: strep, blood chemistry, and CT scan. She left and returned after a brief eternity to take the strep test. I don't remember her coming back after that; a nurse came to draw blood.

My mother, who was hanging out for a while to provide moral support, left to take her usual walk on the beach (and because the nurse said I should rest). Sometime after that, there was a shift change. I got a new nurse by the name of Philip, who was very good. He was direct and to the point about everything, no matter what I asked him. Of all the people I met at the hospital, he was one of my favorites.

I also got a different doctor, not that I can remember his name either. All I remember is that I sort of liked him better than the first. It was something about his personality.

Later, a man from the radiology department came by to drop off a bottle of Sprite® with barium solution added and a questionnaire; he instructed me to finish the bottle within an hour and a half and to answer all the questions on the form.

The form was the easy part — I could do that all at once — but there was no way I was going to chug a full bottle of soda all at once. (I can't even chug soda when I'm feeling good; the bubbles make it difficult.) So I sipped. And forced myself to sip again, five minutes later. And again. I had just one sip to go when the radiology man came back for me, and I didn't have to finish it. Too bad; by then it was starting to taste pretty good. ;-)

Actually getting the scan was an interesting process. The machine sounded like a jet engine once it really got going, and the technicians kept making announcements over a speaker in there. I was told to breathe, hold my breath, let it out, breathe, let it out, take a deep breath, hold it, wait for the machine to scan me again, let it out... I didn't understand why the breath control was such a big deal, but I did my best. Apparently all those years of practice in singing and theatre classes weren't enough; I couldn't always hold it long enough. (It didn't help that my soon-to-be-diagnosed condition accelerated my respiration.)

When I got back to my room, I waited a good while for the results. I used the last dregs of battery power in my cell phone3 to recall my mother so she could hear the verdict as it arrived. She came back just in time; the doctor brought the news within a few minutes of her return.

So, I had appendicitis. Not exactly what I expected to happen on vacation. Apparently I was bucking Outer Banks statistics; Philip later told me that it was common for vacationers to catch appendicitis on the first day of a trip, not on (what was supposed to be) the last as I did. But then, I've never been one for conformity. ;-)

The doctor said he thought I'd be taken care of that night, and left to relay my case to the surgeon for a second opinion. Less than an hour later (if I recall correctly), I was meeting with the surgeon and getting the run-down. The anesthesiologist came by to check on allergies and explain how that part of the procedure would work. It took just long enough to call in the crew for the rest of my family to join us at the hospital (though my best friend, with us for the trip, was absent).4 As they were coming from one direction, the two orderlies who took me to OR were coming from the other.

"It"

Dr. Lowe, the surgeon, was a kind, competent-seeming man. From the moment he first entered my room, I had an overwhelming feeling that he knew exactly what to do and how to do it. His confidence-inspiring presence helped alleviate the few qualms I had (by then) about going through surgery.

I had an entourage all the way down the hall to OR. It was actually kind of fun, since I was finally about to have the problem corrected. My family parted ways with us at the big double doors to the OR department after eliciting a promise from the surgeon for pictures (which I have yet to see; my mom said she thought she left them in the waiting room).

On the way to OR2 (the specific room within the OR used for my procedure) I began to notice that the doctors had a really good sense of camaraderie among them, a welcome addition to the auras of competence and warmth projected by nearly everyone I met. Dr. Lowe, the anesthesiologist, and the assistants all knew each other well and kept up a non-stop humor stream as I was wheeled in. I did my best to join the fun in the few minutes before the point where I can no longer remember anything. I can barely remember being told I was about to get very sleepy. My last thoughts were of relaxation and of trust in the skills of the people around me.

Operation Successful

I woke up in a timeless world, feeling like I'd just dozed off for a moment. I was in a bed, but the last place I remember moving was an operating table; I honestly don't know how I ended up on a bed in a shadowy nook of the operating room, but I did. A woman was sitting at a desk, relaying somehow the details of my case to someone else; I will never know to whom she was speaking, but the nurses in the ward where I was later taken are good candidates. I was floating on a cloud of white linen, not really feeling anything except drowsiness — Dr. Lowe's promised numbing medicines were working. Eventually someone came over to greet me, and then I was wheeled to an elevator, floating along to my room for the night.

Mom and Dad showed up with my sleeping nephew, quipping that it looked like I'd have a roommate. I tried to keep up conversation, but I really wanted to just go back to sleep. With my side of the conversation consisting mostly of single words (several of which sounded like "sleepy"), I convinced everyone that I felt fine and just needed to rest. But first, they made me "play" with a breathing apparatus "to help avoid pneumonia"...or something like that. Then everyone left and I drifted off...once a nurse managed to make the IV pump stop beeping about an obstruction every two minutes. (I heard identical beeps from other rooms from time to time, so I knew it wasn't just me.)

About an hour later, I woke up. I had three pressing concerns: a beverage (my mouth felt like plaster), a trip to the bathroom (how much saline did they put through my IV?), and the breathing tube in my nose (which was getting to be quite annoying). I fought with myself for a few minutes, trying to combat my usual reluctance to bother anyone else with my desires, finally remembering that helping me stay comfortable was half of the nurse's job. I pushed the call button, hearing a faint electronic ring echo down the corridor outside my door. All was quickly taken care of (my vitals got checked, besides, "as long as you're awake") and I went back to sleep much more comfortable, after the nurse painstakingly placated my IV pump — again. I noted more discomfort around my incisions than before (the medications were wearing off), but no way was I going to let that keep me awake.

The Next Morning

In the morning, the dawn came up like thunder through my window and hit me across the chest with golden strips of sunlight. I snoozed for an hour or so until someone poked a head in to check on me around 07:30. She told me I had breakfast coming — my first food in nearly 24 hours, not counting that wonderful CT-contrast5-and-Sprite® solution the day before. While I waited, I heard the distant beep of an IV pump; a nurse poked her head in just long enough to say "That's not you, is it?"; I grinned and told her "Nope, sorry." Finally free enough of physical irritants to be bored, I broke down and turned on the television, finding a decent show (Boy Meets World, which I used to watch several times a week, years ago) just in time for my food.

Eating presented a problem. I still had an IV in my right arm, so it wasn't a great idea to eat normally — the IV pump would have kept beeping away. I tried to eat left-handed and use my right hand for things like holding the little margarine cups so I wouldn't set off the beeper, but even that tripped the finicky pump. That same nurse came in; sheepishly I said, "Yeah, this time, it's me." She fixed it and started to leave, but it began beeping again before she could reach the door. Rather than try to have me work around it, she just shut it off and disconnected me. "It's just keeping the line open, anyway. We'll let you eat in peace."6 The line just had to stay usable until my pre-discharge antibiotic at 10:00 (pulled to 09:30). So I had nearly full use of my right arm, but I still had to be pretty left-handed; I didn't want to stress the IV by bending my elbow all the way.

Breakfast took me long enough to eat that I had to find a new channel to watch in the middle of it; a nurse checked on me and, surprised, asked, "You're still eating?" What could I say? It was slow going with that blasted IV in my arm, even if I didn't have to worry about angering the pump unit. She brought over a syringe of saline solution "to keep [my IV] from clotting over", used it, and was gone. I still had half of my breakfast left, but trying to be left-handed was a good challenge.

Eventually I finished the tray (not bad for gourmet hospital food), with still an hour to go until that antibiotic. I found passable shows to watch, mildly amusing but not at all substantive. (I thought of the cable cliché, "500 channels and nothing to watch." It seemed appropriate, even though there were only about 50 channels.) While I was waiting, the anesthesiologist dropped by to check on me. I was glad of that; he'd done such good work the night before, I just had to thank him.

I was pleased when my IV showed up, even if it meant being tethered again; in my book, maintaining a state of forward motion is always a cause for happiness. I even found a good show to watch while the IV ran: National Geographic happened to be playing a very timely Naked Science piece about hurricanes.7

My nurse came to tell me about the discharge procedure and what I shouldn't do/eat while I was recovering. My phone was too dead to place a call and the room phone didn't allow long-distance calls, so I gave her Mom's cell phone number to call for my ride. Mom proceeded to pull her usual act of not answering the phone. (That Mom rarely answers her phone is a big running joke in my family. :P ) In the mean time, I got to get dressed — in my real clothes. The nurse returned to say she'd left a message; I suggested trying Dad, who almost always answers his phone. When she called him, he said they should leave me on the curb. Thanks, Dad, I feel so loved. :P 8

Getting dressed, I started to notice that my body was not quite itself. I felt like an overinflated balloon being shaped into an animal as I bent to pull on my jeans, and every little jostle bothered the gauze-covered spots on my abdomen. Putting on my shoes was an interesting experience. Had anything fallen on the floor, I don't think I would have been able to pick it up at that point; luckily my habit of not dropping things had stayed with me through the ordeal. A few times since the surgery, one nurse or another had discussed this concept of "gas" being left inside my belly, gas that had been used to facilitate the laparoscopic procedure. I wondered, but never got around to asking, why so much of it had been left when it was such an inconvenience. They all said it would take about two days to be absorbed and removed, but that did me no good that first morning.

Everybody showed up for my release. Mom, Dad, Conner, and Marty all came in to see the final outcome. I guess you could say I was unsurprised when a nurse brought over a wheelchair for me; I haven't been to many hospitals, but I've visited enough to know that you always leave on wheels. On the way down I got a veritable torrent of cautions and warnings from the two escorting nurses; one of them threatened to cut me if I even thought about going swimming in the next two weeks (heh :D ) and waved us goodbye. The other saw me to the car and left us with a couple of restaurant recommendations. Too bad I never got to try them; I'll have to remember to try The Food Guys on my next trip to the Outer Banks.

Recovery

The first stop for the day was "breakfast", even though it was almost 11:00 and I'd eaten not long before. I ordered some fruit and eggs, figuring they should be safe. Not bad, but it was almost too much food. (That restaurant, the Ship's Wheel, is another item on the list of things to return to on my next Outer Banks visit. It most definitely did not get a fair chance on account of my state at that time.)

I wanted to go back to the motel and rest after eating, but was taken to the aquarium instead. After that, we went to Fort Raleigh. I didn't really want to do a lot of exploring, but I got into a good conversation with the woman at the gift shop counter and found out about a possible theatre job for next summer. The Lost Colony (a drama about a British colony at Fort Raleigh that disappeared around 1590) has been performed at the Waterside Theatre since 1937 and is apparently a big summer job draw for college students. (Within a week, I emailed the company to inquire about getting involved; as soon as I can get all the materials together, I'll apply and see how it goes.) Dad and I traipsed over to see the theatre while Mom and Conner went to see the earthen fort.

For the first few days I had to limit myself to a slow amble; anything more and I got uncomfortable very quickly. Even so, that first afternoon was probably overkill for me; when we did get back all I wanted to do was lie down and not move. Of course that was the night when Marty invited his best new buddies over for dinner. Figures.

But things quieted down soon enough. Aside from Conner getting carried away and forgetting to avoid my abdomen (...ow...) the evening was all right. Then I got to relax.

The next day, Tuesday, I read. And read. Thank goodness nobody wanted to do much. It was nice to return to the hotel's beach pavilion (which had been my usual hangout for most of the previous week) and get back to reading Atlas Shrugged; I was to write an essay about the book for a contest, due on September 17, and the deadline would not wait for my surgery.

That night we went in search of go-carts. More specifically, Marty and his friends wanted to go go-carting and Conner got into it. So we had to find kiddie or family carts, which of course were unavailable at the track where Marty et al went. I would have loved to drive Conner around again (we'd found go-carts the week before) but I didn't feel up to it. Mom got to act like a speed demon while I tried — and failed, miserably — to take pictures of the carts speeding (at 15 miles per hour) around the night-lit track. (It was after 20:00 and dark, despite the floodlights. Not even CHDK could help me get pictures of fast motion with so little light.)

Conner and Dad were to fly home early Wednesday morning, because Conner had a Kindergarten orientation to attend on Thursday. The nearest airport was 90 miles away in Norfolk, VA; Mom drove them at 03:30. But first, we had a great closing dinner at Owen's, across the street from our motel. Marty, Mom, and I would drive back by way of Fuquay-Varina (a suburb of Raleigh, NC), where we visited an old friend of Mom's.

I got used to sleeping flat on my back for those first few nights. Sleeping on my side was out of the question, let alone rolling onto my stomach. But I got my sleeping position freedom back steadily, and surprised myself by waking up on my right side Wednesday morning.

Back to (Almost) Normal

It took a while to get my abdominal strength back, but I was ready to do crunches by the time I started theatre class 20 days after my surgery.9 I even did everything in dance class, which was quite pleasing. I half expected to have to bow out of some of it to rest my muscles, but that didn't happen. Hooray for the human body's capacity for repairing itself, eh?

On second thought, maybe it was a good thing we delayed our planned departure. If we'd left on schedule, I would have contracted appendicitis on a highway surrounded by corn fields, the nearest hospital possibly a hundred miles away. (Worse yet, our original — and aborted — summer vacation plans were to take us to outback China... Scary thought.)

Every so often I would still get the occasional protest from some part of me that wasn't quite back up to spec, but I'm back to my usual self now. I've been dancing, climbing ladders, hanging lights, and generally getting down to business these past few months, with no complaints from any part of me. (Well, that doesn't include my stomach. Sometimes I get so busy at the theatre that I forget to, you know, make time to eat. :P )

So now I've been through surgery, and recovery. It got annoying at times when I couldn't do certain things, but for the most part it wasn't as bad as I feared. I hope I don't have to do it again, at least for a really long time; but if it is necessary I'll be a lot less anxious in the future.

  1. This copy from Pacific University, OregonUniversal Pain Assessment Tool []
  2. I've never been in to a hospital for something major, so maybe that's why I just stayed in my own clothes on those rare occasions. []
  3. Like an idiot, I forgot my cell phone charger at home when we left on this month-long trip. My phone was only alive at this point because my brother's phone uses the same charger as mine. It had been almost two weeks since I was last able to plug the phone in. []
  4. Marty, who knows me probably better than any of my friends, was not with my father and nephew at their aborted dinner that evening. []
  5. I believe the additive was barium-based. []
  6. Or something to that effect. My memory of some of these exchanges is a bit foggy. []
  7. Timely, because the big concern of the weekend was Tropical Storm Earl and whether he'd force an evacuation by turning into a big bad hurricane. He did. And all tourists were asked to leave the following Thursday, so we did, but not before watching the motel get boarded up. It looked like they had a lot of experience with hurricane preparedness. ;-) []
  8. My dad has probably the driest sense of humor I've ever encountered. Fortunately I'm used to it. ;-) []
  9. I considered quipping to Liz (the principal, who's known me for almost twelve years) that "I'm back again! Well, most of me is." []

Filed under: musings, summer, travel No Comments
6Oct/101

Full Circle: WordPress.com Adopts Windows Live Spaces

Four and a half years ago (give or take a few days), I started blogging on what was then known as MSN Spaces. My first post — just a few sentences about Wi-Fi issues I had with my Pocket PC — went up on March 27, 2006.

Since then I've gone from writing a few dozen words to writing a few hundred words (and occasionally a few thousand) and transitioned to two different platforms. I moved from Spaces to Blogger on October 10, 2006 because Spaces was far too clunky. Blogger served me well until I migrated to WordPress between late October 2009 and mid-January 2010.

I kept a curious eye on Spaces, observing the transition from MSN Spaces to Windows Live Spaces in 2005 – 2006 with amusement; I never understood Microsoft's need to rebrand. Mostly, I was watching for a critical feature: redirection. Leaving Spaces and taking search engine placement along to the new site was impossible in either incarnation, so I had to be content with a prominent link to the new site at the top of the home page.

Spaces never really developed into anything I'd want to go back to using. Apparently it was neglected at Microsoft, because just the other day I saw announcements trumpeted around the blogosphere that Windows Live Spaces and WordPress.com had teamed up. All Spaces should be turned into WordPress.com blogs by Spring 2011.

This is a bittersweet moment for me. Having gotten my blogging start on Spaces, it's a little sad having one of my first Internet homes put on a trailer and hauled cross-country (to use a slightly strange metaphor). But it's also gratifying to see that even if I hadn't gone through the process of migrating to Blogger and then to my self-hosted WordPress site, I would still be using WordPress today (or in the near future).

I jumped on the migration bandwagon and set up a new WordPress.com site with an import of my Spaces content. It looks alright, even if it does lack that shiny Spaces look. :P I don't know yet what I'll do with that site.

But while I try to decide, I'll be thinking also of the days when I used to use Internet Explorer 6 to access My MSN (my homepage at the time) and blog on MSN Spaces, and how far I've come in four and a half years.

As for the next four and a half years... Who knows what changes await me?