Category: Tech

Android Without Google

In my last couple of posts, I've talked a bit about the drawbacks of iOS and Android, but acknowledged I've found the alternatives lacking. Ultimately, I went back to Android -- but not stock Android.

Android -- at least, the base OS -- is free/open-source software. As such, there are many different variations of Android available.

Replicant is the only Android variation endorsed by the GNU Project; it seeks to provide an Android experience with only free/open software. Unfortunately, it has drawbacks: it has a very limited number of supported devices, the most recent of which is the Samsung Galaxy Tab 3, which was released in 2013. Replicant itself isn't quite that outdated; the latest version is 6.0, based on Android 6.0 Marshmallow (2015). And even though Replicant itself is free, it still requires proprietary firmware in most cases.

I've ultimately settled on LineageOS, an Android distribution descended from the previous CyanogenMod project.

You can install Google Services and Apps (Gapps) on top of LineageOS, but on my latest installation, I opted not to do that. I get most of my Android software from F-Droid, a free software repository.

I do run a few proprietary apps; the Amazon App Store is one source, and there's a program called Yalp Store (you can get it from F-Droid) that lets you download apps from the Google Play Store without installing Gapps -- though keep in mind that does violate Google's terms of service.

Someone also recently recommended microG to me; it's a free re-implementation of Google Services. I haven't tried it out yet, but it looks promising.

All in all, I was surprised by just how easy it ended up being running an Android-based OS without Google's proprietary apps and services. That's easy for values of "easy" that include being comfortable flashing your phone, of course, but so far it's worked out pretty well for me.

I'd sure like to see one of those alternatives get a better foothold, though. More competition is good for everybody, especially if that competition comes from free software.

Android Alternatives

Yesterday I talked a little bit about Ubuntu Touch, a would-be alternative smartphone OS based on GNU/Linux (that is to say, the Linux kernel and GNU userland, as opposed to Android, which is based on the Linux kernel and Google's own userland).

There are other phone OS's out there, too.

Jolla's Sailfish is another GNU/Linux-based OS, based on Nokia's abandoned MeeGo platform. It's the most mature of the lot, but supports a limited number of devices. I haven't tried it because the port for my phone, the Nexus 5, hasn't been updated since 2015. But it appears to have pretty good support for Sony Xperia phones, and it runs Android apps through a compatibility layer, though my understanding is that that compatibility layer is proprietary, drains the battery significantly, and doesn't have full compatibility.

Other than iOS, Android, and, to a lesser extent, Windows Phone, Ubuntu Touch, and Sailfish, there aren't a lot of mobile OS's that are ready for prime-time. KDE's Plasma Mobile is still in early stages; the steps for setting it up on a Nexus 5 indicate that it's strictly for developers right now.

GNOME doesn't have much of a mobile presence at this time, either, though Purism has announced that its upcoming Librem 5 phone will feature a GNOME desktop (with Plasma as an alternative option).

There's also LuneOS, a fork of Palm/HP's webOS (which, like Android, is based on the Linux kernel but not the GNU userland). It's still early days too.

I also just ran across postmarketOS, whose homepage says "The project is at very early stages of development and is not usable for most users yet." (Boldface in original.)

One of the biggest problems facing all these projects is the proliferation of different Android devices, most of which rely on proprietary firmware for hardware support. There is a project in the works that should help with the hardware support issues (though not with the inherent problems of proprietary firmware); it's called Halium, and it should make development much easier for all these projects.

In the meantime, though? You're probably stuck with iOS or Android -- Apple's walled garden or Google's spyware.

There are ways to run Android without Google services or proprietary software. I'll get to that tomorrow.

The Sorry State of Smartphones

It's disappointing that the smartphone market has turned into a choice between two OS's: iOS's walled-garden approach where Apple decides what software you're allowed to run on the phone that you ostensibly own, and Android's spyware panopticon security nightmare.

There are a few alternatives, none of them very good.

A few months ago, I tried switching from Android to Ubuntu Touch. Canonical abandoned Ubuntu Touch a few months back, but it's still under development by a small community-based group called UBports.

Here's what I wrote at the time (originally posted on Brontoforumus, 2017-07-03):


It's a pretty different idiom from Android (no ubiquitous three buttons at the bottom of the screen, though their functionality is there; swipe from the left edge of the screen to get a dock, from the right edge to get a Windows 7-style list of open programs, and the Back button is handled at the app level), but I could get used to it, and the list of available apps seemed sufficient for my day-to-day use.

The only real problem was that the phone didn't work.

I fucked around with the settings for awhile but all I managed to accomplish was to change what it said under "carrier" from "Sprint" to "none".

So I decided to give LineageOS another shot. (Well, technically my first time using it as LineageOS, but I used it plenty when it was Cyanogenmod.) It appears that I've mostly fixed the Sprint issues I had with it before.

But I thought Ubuntu was pretty impressive, and I intend to give it another shot someday. Maybe once they finish updating it to a 16.04 base.


I should probably update my post about getting Sprint to work on LineageOS (then CyanogenMod); I need to update the title and the links, and add the last step that finally got it (mostly) working.

I've managed to do okay without Gapps, too -- but maybe I'll get to that another time.

Net Neutrality Roundup #2

Yesterday I discussed Ajit Pai's plan to dismantle the FCC's net neutrality regulations, his disingenuous justifications for doing so, and the inevitability of lawsuits challenging the change in court. We left off on Tim Wu's observation that Pai is doing this in opposition to the vast majority of public opinion.

The FCC comment period concerning the net neutrality repeal saw 22 million comments; it received a greater response than any other FCC proposal in history.

While Pai has openly acknowledged that he doesn't care about the quantity of pro-Title II comments, he has also, disingenuously, drawn a false equivalence between the number of pro- comments and the number of anti- comments. Jon Brodkin at Ars Technica notes:

Pai [...] released a "Myth vs. Fact" sheet that claims public comments to the FCC don't show significant support for net neutrality. Pai's office called it a "myth" that commenters "overwhelmingly want the FCC to preserve and protect net neutrality," arguing that fraudulent comments far outnumber legitimate ones.

That's true largely because the FCC imposed no real restrictions on comment uploads and took no steps to remove fraudulent comments from the record. But analyses of comments show that about 98 or 99 percent of "unique" comments oppose the net neutrality repeal.

That last link goes to an article by Jeff Kao at Hackernoon titled More than a Million Pro-Repeal Net Neutrality Comments were Likely Faked. Here are a couple lines from the abstract:

My research found at least 1.3 million fake pro-repeal comments, with suspicions about many more. In fact, the sum of fake pro-repeal comments in the proceeding may number in the millions. In this post, I will point out one particularly egregious spambot submission, make the case that there are likely many more pro-repeal spambots yet to be confirmed, and estimate the public position on net neutrality in the “organic” public submissions.

Kao goes on to chart the duplicate versus unique comments:

Chart of trends in FCC comments

Keep-Net Neutrality comments were much more likely to deviate from the form letter, and dominated in the long tail.

From this chart we can see that the pro-repeal comments (there are approximately 8.6 million of them) are much more likely to be exact duplicates (dark red bars) and are submitted in much larger blocks. If even 25% of these pro-repeal comments are found to have been spam, that would still result in more than 2 million faked pro-repeal comments, each with an email address attached. Further verification should be done on the email addresses used to submit these likely spam comments.

On the other hand, comments in favor of net neutrality were more likely to deviate from a form letter (light green, as opposed to dark green bars) and were much more numerous in the long tail. If the type, means of submission, and ‘spamminess’ of comments from both sides were equal, we would expect a roughly even distribution of light and dark, red and green, throughout the bars. This is evidently not the case here.

Kao has gone to more trouble than Pai to try and tell spam comments from legitimate ones. Indeed, New York AG Eric Schneiderman has accused the FCC of stonewalling his investigation into FCC comments using fraudulent names and addresses. And he's not the only one investigating:

Schneiderman is not the first to accuse the FCC of stonewalling investigations into the net neutrality comment system. The FCC's claim that the comment system was temporarily disrupted by DDoS attacks has received lots of attention, but the FCC hasn't provided all the records requested in several Freedom of Information Act (FoIA) requests.

The FCC also told members of Congress that it won't reveal exactly how it plans to prevent future attacks on the public comment system.

A FoIA request from Ars was denied by the FCC due to "an ongoing investigation."

US Senator Ron Wyden (D-Ore.) criticized the FCC for failing to turn over its internal analysis of the DDoS attacks that hit the FCC's public comment system. Senator Brian Schatz (D-Hawaii) and Rep. Frank Pallone (D-N.J.) requested an independent investigation into the DDoS attacks, and the US Government Accountability Office (GAO) has agreed to investigate.

The FCC is also facing a lawsuit alleging that it ignored a FoIA request for data related to bulk comment uploads, which may contain comments falsely attributed to people without their knowledge.

So are there any other ways the FCC's terrible plan is vulnerable to litigation?

Why yes. Yes there are. Because it also prevents states from passing their own net neutrality laws.

And there's legal precedent stating that the FCC can't preempt state laws -- ironically, decided in a case where Tom Wheeler's FCC attempted to prevent states from passing laws against municipal broadband.

These are just some of the avenues of attack Pai has opened himself up to. The question isn't whether there will be lawsuits after the net neutrality repeal; it's how many and how soon.

Net Neutrality Roundup #1

Ajit Pai has announced, expectedly, that he intends to vote to kill the FCC's Title II net neutrality regulations on December 14.

As I've discussed previously, this was a foregone conclusion, but the point was never to change Pai's mind; there are, after all, two whole branches of government besides the one he serves in.

Tim Wu (the man who coined the phrase "Network Neutrality") discusses one of those branches in a recent op/ed in the New York Times called Why the Courts Will Have to Save Net Neutrality.

The problem for Mr. Pai is that government agencies are not free to abruptly reverse longstanding rules on which many have relied without a good reason, such as a change in factual circumstances. A mere change in F.C.C. ideology isn’t enough. As the Supreme Court has said, a federal agency must “examine the relevant data and articulate a satisfactory explanation for its action.” Given that net neutrality rules have been a huge success by most measures, the justification for killing them would have to be very strong.

It isn’t. In fact, it’s very weak. From what we know so far, Mr. Pai’s rationale for eliminating the rules is that cable and phone companies, despite years of healthy profit, need to earn even more money than they already do — that is, that the current rates of return do not yield adequate investment incentives. More specifically, Mr. Pai claims that industry investments have gone down since 2015, the year the Obama administration last strengthened the net neutrality rules.

Setting aside whether industry investments should be the dominant measure of success in internet policy (what about improved access for students? or the emergence of innovations like streaming TV?), Mr. Pai is not examining the facts: Securities and Exchange Commission filings reveal an increase in internet investments since 2015, as the internet advocacy group Free Press has demonstrated.

A popular argument I've seen from anti-Title II trolls on sites like Ars Technica and Techdirt is "Well if we need these rules, how did the Internet do so well before 2015?" (This rhetorical question is usually coupled with sarcastic remarks about former president Barack Obama.)

That question is disingenuous, for a couple of reasons. First, as Wu notes, that's the opposite of how FCC rules get passed and repealed. We already asked and answered the question of why we needed Title II regulations during the public comment period in 2014. The question isn't "Why did we need these rules in 2015?" It's "Why do we no longer need them in 2018?" It's the oldest forum troll trick in the book: "I'm not going to provide supporting evidence for my argument, I'm going to demand that you provide supporting evidence for yours, even though the burden of proof is on me."

The other reason the "How did the Internet ever survive before 2015?" question is disingenuous horseshit is that Pai's not merely rolling back FCC rules to pre-2015 levels, he's rolling them back to pre-2005 levels. Wu's article continues:

But Mr. Pai faces a more serious legal problem. Because he is killing net neutrality outright, not merely weakening it, he will have to explain to a court not just the shift from 2015 but also his reasoning for destroying the basic bans on blocking and throttling, which have been in effect since 2005 and have been relied on extensively by the entire internet ecosystem.

This will be a difficult task. What has changed since 2004 that now makes the blocking or throttling of competitors not a problem? The evidence points strongly in the opposite direction: There is a long history of anticompetitive throttling and blocking — often concealed — that the F.C.C. has had to stop to preserve the health of the internet economy. Examples include AT&T’s efforts to keep Skype off iPhones and the blocking of Google Wallet by Verizon. Services like Skype and Netflix would have met an early death without basic net neutrality protections. Mr. Pai needs to explain why we no longer have to worry about this sort of threat — and “You can trust your cable company” will not suffice.

So let's, just for a moment, play the trolls' game and explain why we need Title II regulations to protect net neutrality.

There's a convenient list of net neutrality violations making the rounds; I don't know where it originated, but I've seen variations on it in a couple of different places: by a poster named JoeDetroit on Techdirt and a poster named Happysin on Ars Technica. Here are both those versions of the list combined and lightly edited:

2005 - Madison River Communications was blocking VOIP services. The FCC put a stop to it.

2005 - Comcast was denying access to P2P services without notifying customers.

2007-2009 - AT&T was having Skype and other VOIPs blocked because they didn't like that there was competition for their cellphones.

2011 - MetroPCS tried to block all streaming except YouTube. They actually sued the FCC over this.

2011-2013 - AT&T, Sprint, and Verizon were blocking access to Google Wallet because it competed with their own wallet apps. This one happened literally months after the trio were busted collaborating with Google to block apps from the Android marketplace.

2012 - Verizon was demanding Google block tethering apps on Android because it let owners avoid their $20 tethering fee. This was despite guaranteeing they wouldn't do that as part of a winning bid on an airwaves auction.

2012 - AT&T tried to block access to FaceTime unless customers paid more money.

2013 - Verizon literally stated that the only thing stopping them from favoring some content providers over other providers were the net neutrality rules in place.

2014 - Netflix & Comcast sign a deal where Netflix will pay Comcast to stop throttling the service. The very next day, streaming problems vanish.

That is, needless to say, not an exhaustive list.

Meanwhile, there's another kind of forum troll, making the rounds like clockwork on every article I've ever seen on this subject: the "What does it matter? Pai's just going to do it anyway; he doesn't care what we think!" troll.

I've already responded to that argument at length (and up at the top of this post -- "two whole branches of government"). Wu reinforces my point:

Moreover, the F.C.C. is acting contrary to public sentiment, which may embolden the judiciary to oppose Mr. Pai. Telecommunications policy does not always attract public attention, but net neutrality does, and polls indicate that 76 percent of Americans support it. The F.C.C., in short, is on the wrong side of the democratic majority.

That's why people left comments on the FCC website. It's why people are writing articles protesting it now, and planning in-person protests for December 7. Lawsuits are inevitable, and clear and constant reminders that Pai threw out the Title II classification against public opinion makes his weak case weaker.

And that's not the only thing. Come back tomorrow for more.

The SFLC Tries to Terminate Conservancy's Trademark

In my last two posts, I've talked about the Linux Foundation's apparent disdain for the GPL (the license that Linux is published under, which allows derivative works but requires them to be published under the same license), and Eben Moglen's apparent souring on legal enforcement of the GPL. I mentioned that the Software Freedom Law Center is seeking to terminate the Software Freedom Conservancy's trademark, and that Bruce Perens believes that this is retaliation by the LF. So let's continue, shall we?

The Linux Foundation now represents corporate interests, not the community. The GPL is designed to protect the community. So there's some friction there right off the bat.

In fact, as I mentioned in the first part, the LF used to have two community representatives on its board, but terminated the position.

Why? Well, it happened right after the Software Freedom Conservancy's Executive Director, Karen Sandler, announced her intention to run for a seat. Looks like the Linux Foundation didn't like that. VMware certainly didn't, since Conservancy is currently funding a GPL enforcement lawsuit against it.

And, as noted in the previous post, Eben Moglen published an article arguing against GPL enforcement. That doesn't seem to have gone over well with the Free Software Foundation; he resigned his position as FSF General Counsel soon after. That's a hell of a thing, after nearly 25 years in the role.

Now, Moglen's SFLC has filed to terminate the Conservancy's trademark, stating that the marks are too similar and could cause confusion. This seems out of the blue; the SFLC started Conservancy, and legally represented it for years; if it were concerned about trademark confusion, it should have expressed those concerns eleven years ago.

Perens went on a bit of a tear about this; he submitted an article to Slashdot titled Software Freedom Law Center Launches Trademark War Against Software Freedom Conservancy, and has commented extensively on two articles at LWN, one quoting Conservancy's post and the other quoting the SFLC's response.

Perens believes the connection is clear: as the Linux Foundation has come to represent corporate members over the Linux community, it has become increasingly critical of the GPL. Eben Moglen and the SFLC, which is funded by the LF, still purport to believe in the GPL, but have become increasingly critical of legal actions enforcing it. The LF includes VMware on its board, and Conservancy is funding a GPL enforcement action against VMware; in light of these facts, it does not appear coincidental that the LF eliminated its community representative positions right after the executive director of Conservancy expressed an interest in running for one, and the Software Freedom Law Center suddenly became concerned that the Software Freedom Conservancy -- an organization which it started -- has a name that's too similar.

So how will this all turn out? I'm not a lawyer, but I think Conservancy is on pretty solid ground here. Of course, if Perens is right, then this isn't really about a trademark at all. And if Perens is right and the Linux Foundation really is out to punish Conservancy, then this action may not be the end of it.

The SFLC and Conservancy: A History

Yesterday, I went over how the Linux Foundation doesn't seem to like the license Linux is published under very much.

Bruce Perens, co-founder of the Open Source Initiative and founder of the Linux Standard Base (which led to the formation of the Linux Foundation), says it's worse than that, and that the Linux Foundation is now undermining GPL enforcement against its member organizations.

This is a complicated story, so strap in. I mean, if this sounds like something you're interested in. If it doesn't, then I don't blame you; come back on Friday, when I'll have about 750 words on April from Teenage Mutant Ninja Turtles.

Still here? Okay.

The Software Freedom Law Center is funded by the Linux Foundation, and provides pro bono legal services and representation to developers of free/open-source software. Its chairman is Eben Moglen, who was pro bono general counsel for the Free Software Foundation from 1994 to 2016. Moglen has done a hell of a lot for free software over the course of the last 25 years.

In 2006, the SFLC launched the Software Freedom Conservancy, an organization that provides free financial and administrative services to free software projects. Today Conservancy represents 48 projects, notably including BusyBox, Git, phpMyAdmin, QEMU, Samba, and Wine. Conservancy is an independent entity and not part of the SFLC, though the SFLC represented Conservancy through 2011.

In 2007, the SFLC and Conservancy began GPL enforcement suits on behalf of BusyBox. BusyBox is a minimal bootable system that's in everything; if you're using a piece of consumer electronics that's more complicated than a microwave oven, there's a good chance it's got BusyBox in it. And a lot of those electronics companies don't bother to follow the GPL and release their source code modifications.

There's been some backlash against GPL enforcement in the years since. BusyBox's maintainer, Rob Landley, later regretted the lawsuits; he deemed them counterproductive, and said they hadn't helped BusyBox or any other project, they'd just convinced companies like Google to avoid the GPL and use permissive licenses instead.

Maybe so. But if nobody ever enforces the GPL, then it's meaningless. A mere suggestion.

Conservancy has continued its GPL enforcement actions. Currently, it's funding Christoph Hellwig's litigation against VMware in Germany. VMware distributes a modified version of the Linux kernel; Hellwig is a kernel contributor and, thus, one of the many copyright holders in the Linux kernel. (While many free/open-source projects require that contributors assign all copyright to a single rightsholder, such as Conservancy or the GNU Project, the Linux kernel does not; every single contributor to the Linux kernel maintains the copyright to the portion of the kernel they contribute, but licenses it under the GPL for anyone else to use.)

Eben Moglen seems to have soured on GPL enforcement. Last year he published an article in the International Free and Open Source Software Law Review titled Whither (Not Wither) Copyleft. His arguments are similar to Landley's: all these GPL enforcement suits are actually bad for the GPL, because they discourage companies from using the GPL at all.

Moglen makes the argument that litigation should be a last resort, and that parties should try to resolve their disputes amicably if at all possible. The thing is, I don't think anybody actually disagrees with that.

When has Conservancy chosen to sue, when there was any other path available? BusyBox v Westinghouse was a default judgement. Westinghouse didn't even bother showing up to court; I don't see how politely-worded E-Mails were going to get it to comply. Conservancy spent three years attempting to negotiate with VMware, to no avail; the lawsuit is a last resort. Whither copyleft? indeed.

Bruce Perens thinks the SFLC's recent trademark action is retaliation for Conservancy's enforcement action against VMware. I'll save the why for my next post. Tune in tomorrow, same Thad-time, same Thad-channel.

The Linux Foundation Hates Copyleft

It's been kinda weird, seeing the Linux Foundation slowly transform into an organization that is fundamentally opposed to the license Linux is published under.

But the Linux Foundation is in the business of turning a profit, and that's meant embracing corporate America -- even Microsoft is now a member. In fact, the board is overwhelmingly made up of corporate representatives now: Facebook, AT&T, Qualcomm, Cisco, VMware (we'll come back to them tomorrow), Intel, HP, Bitnami, Panasonic, Hitachi, Samsung, IBM, Microsoft (Microsoft!), Comcast, Huawei, NEC, Oracle, Fujitsu. There used to be two community representatives on the board, but they eliminated that position (we'll come back to that on Thursday).

Linux is published under the GNU General Public License. The GPL is what GNU/Free Software Foundation founder Richard Stallman calls "copyleft": if a piece of software is licensed under the GPL, then that means anyone else is free to access, modify, and redistribute the source code, provided that if they release a modified version, they publish it under the same license.

Corporations don't much like copyleft or the GPL. They like more permissive licenses, like the MIT License and the BSD Licenses, which allow them to take someone else's code, modify it, and not give their modifications back to the community.

Linus Torvalds, the man who the Linux Foundation is named after, gets this. FOSS Force's Christine Hall recounts his remarks at LinuxCon last year:

“I think that if you actually want to create something bigger, and if you want to create a community around it, the BSD license is not necessarily a great license,” he said.

“I mean, it’s worked fairly well, but you are going to have trouble finding outside developers who feel protected by a big company that says, ‘Hey, here’s this BSD license thing and we’re not making any promises because the copyright allows us to do anything, and allows you to do anything too.’ But as an outside developer, I would not get the warm and fuzzies by that, because I’m like, ‘Oh, this big company is going to take advantage of me,’ while the GPL says, ‘Yes, the company may be big, but nobody’s ever going to take advantage of your code. It will remain free and nobody can take that away from you.’ I think that’s a big deal for community management.

“It wasn’t something I was planning personally when I started, but over the years I’ve become convinced that the BSD license is great for code you don’t care about. I’ll use it myself. If there’s a library routine that I just want to say ‘hey, this is useful to anybody and I’m not going to maintain this,’ I’ll put it under the BSD license.

“Whenever licenses come up, I want to say that this is a personal issue,” he continued, adding a disclaimer most likely meant mainly for the benefit of the BSD folks, some of whom resent Linux’s success, but also to appease big enterprise, which is where the Linux Foundation gets virtually all of it’s funding.

“Some people love the BSD license,” he said. “Some people love proprietary licenses, and do you know what? I understand that. If you want to make a program and you want to feed your kids, it used to make a lot of sense to say that you want to have a proprietary license and sell binaries. I think it makes less sense today, but I really understand the argument. I don’t want to judge, I’m just kind of giving my view on licensing.”

Jim Zemlin, Executive Director of the Linux Foundation, seems to feel a little bit differently. Hall quotes him, in an article titled The Linux Foundation: Not a Friend of Desktop Linux, the GPL, or Openness:

“The most permissive licenses present little risk and few compliance requirements. These licenses include BSD and MIT, and others, that have minimal requirements, all the way to Apache and the Eclipse Public License, which are more elaborate in addressing contributions, patents, and indemnification.

“In the middle of the spectrum are the so-called ‘weak viral licenses’ which require sharing source code to any changes made to the originally licensed code, but not sharing of other source code linked or otherwise bound to the original open source code in question. The most popular and frequently encountered licenses in this category are the Mozilla Public License and the Common Public Attribution License.

“Restrictive Licenses present the most legal risk and complexity for companies that re-distribute or distribute software. These licenses are often termed ‘viral’ because software combined and distributed with this licensed software must be provided in source code format under the terms of those licenses. These requirements present serious risks to the preservation of proprietary software rights. The GNU General Public License is the archetype of this category, and is, in fact, the most widely used open source license in the world.”

Hall adds, "While his points are accurate enough, and reflect what I’ve already written in this article, the terms he uses suggest that the foundation holds the GPL and other copyleft licenses in contempt."

So what's all that got to do with the Software Freedom Law Center filing to have the Software Freedom Conservancy's trademark terminated? Nothing, insist the Linux Foundation and the SFLC. But Bruce Perens -- who founded the Linux Standard Base, one of the organizations that became the Linux Foundation -- thinks it's retaliation for a GPL enforcement lawsuit against VMware.

But that's a story for another post. Or two...

HyperCard

I was looking for something to post about, and then Jeremy Parish posted a mail call for HyperCard comments over on Retronauts.

And I've got a few things to say about HyperCard, because there's a straight line between HyperCard and what I do for a living (and for a hobby) today.

HyperCard was my first development environment. I was 7 or 8 years old and I wanted to make games. Today we've got Kodu and Super Mario Maker. In 1990, we had HyperCard.

HyperCard's interface bore a certain resemblance to PowerPoint, with drawing tools that looked a lot like MacPaint. You could show slides -- or "cards" -- in order, as in PowerPoint, but you could also use buttons to link to cards out of order. So it was a useful language for making Choose Your Own Adventure-style games. "If you want to examine the sound coming from the next room, turn to page 38. If you want to see what's going on outside, turn to page 44." That kind of thing, but with buttons to click.

My game, SEKR's Awesome Adventures, was mostly that sort of thing. (It's pronounced "Seeker", and it was my grandpa's dog's name.) There were a few roundabout ways to get to where you were going, some of which would result in your untimely death. The most complex sequence involved selecting two tools from a list that you'd be allowed to use later on -- and keeping track of your selection required just a bit of actual programming.

I mostly built SEKR through the simple point-and-click frontend, but HyperCard also came with its own programming language, HyperTalk. I used HyperTalk to track what weapons/tools the user selected, and the endgame would adjust accordingly: you're in a pit; did you bring the grappling hook? It's pitch-black; did you bring the night-vision goggles? Store a variable and test a conditional; this is absolutely as simple as programming gets. It was a pretty good place to start.

And that's more or less how the Web works: fundamentally, it's a set of pages, and users navigate between them using hyperlinks. For more complicated stuff than just moving between pages, your browser has built-in support for a scripting language.

The similarities aren't coincidental. The HyperCard Wikipedia entry says:

Through its influence on Robert Cailliau (who assisted in developing Tim Berners-Lee's first Web browser), HyperCard influenced the development of the Web in late 1990. Javascript was inspired by Hypertalk.

HyperCard is where I started programming. And while I never did make a career of game development, I'm still programming, and there's a more-than-passing resemblance between developing for HyperCard and developing for the Web.

My grandmother's been cleaning old stuff out of her house, and a few weeks ago she gave me a bunch of old 3.5" floppies. SEKR's Awesome Adventures is probably in there somewhere -- the original graphical HyperCard version, the text-only remake I put together in QBasic a few years later, and maybe even the unfinished Turbo Pascal port with PC speaker music (which played fine on the 286 I wrote it on but way too fast on a 486; you had to turn off Turbo to slow it down. Remember Turbo buttons?).

I really should buy a USB floppy drive and see if I can get any data off those disks.

My Old Car

In 2006, I bought a used 2002 Chevy, for $4000.

It was a reliable damn car, and lasted longer than any of us expected. But about a year ago, the AC compressor went out. I decided it would make more sense to get a new car than fix the old one, so a few months ago, that's what I did.

I planned on giving the Chevy to my dad, who needs a car. But when we went in to transfer the title, we found out I couldn't. Turns out that, some years back, he sold his van to a coworker without getting the title transferred over. The coworker abandoned the van (whatever "abandoned" means; as we'll see below, in the eyes of the law "abandoned" can just mean "parked on the curb too long"), and now Dad's stuck with a $500 fine before he's allowed to register another car.

So the Chevy's been sitting out on the curb for the past few months, while I've been waiting for Dad to get his paperwork sorted. During these months, I didn't take the car out regularly to keep its battery charged -- I knew I should have, but it was a-hundred-and-fuck-you degrees out, and if I wanted to drive a car with no AC in that weather, I wouldn't have bought a new car.

So, my own damn fault; by the time I tried to take the car out again, the battery was dead.

The design of the street I live on makes it difficult to line two cars up for a jump. I've got a little device called a Power Station PSX that's got jumper cables and an air compressor built into it, but its battery was no longer holding a charge. I had already E-Mailed the Power Station company to ask if the battery was replaceable, but I'd received no response.

At any rate, on Thursday the 19th, I got home to find a bright orange sticker on my Chevy declaring that it had been confirmed as abandoned and I had 120 hours to move it or it would be towed.

I don't know if the police officer who left the tag was just a busybody -- it's pretty obvious to a casual observer that nobody's driven this car in awhile; it's got cobwebs and leaves and shit under it --, or if one of my neighbors complained about my car to the police. In the latter case, jeez, neighbor, I wish you'd just come and rung my bell and talked to me about it. I know the thing's an eyesore, and I didn't mean for it to be there this long, but is it really going to be any less of an eyesore in my driveway? If you'd asked me to just clean up the leaves and the cobwebs, I'd have done it.

And yeah, I've been meaning to get that battery charged anyway, but a hard 5-day deadline is a little tight. I mean, it's nice to have a weekend in there, but even if I can find a battery with Amazon two-day shipping at this point, it's Thursday night and that means I won't be getting it until Sunday.

I wondered if I could just reverse the thing back a car-length. What's the legal standard for moving your car? So I called the Tempe Police Department, and talked to an officer who politely and repeatedly failed to answer that question. "How far do I need to move it?" -- "You need to move it." -- "Yes, but what is the legal standard for moving it? If I move it one car length, will it still be considered abandoned? If I move it a couple of houses over, will it still be considered abandoned?" -- "Sir, you just need to move your car within 120 hours." And so on.

Ultimately, I decided the only safe course of action would be to move the Chevy to the driveway and keep my new car on the curb. This doesn't really seem like it solves any kind of a problem. I pointed this out, in exasperation: "If I just switch them so that the old car is in the driveway and the car I drive to work is on the curb, I don't see how that's helping anybody."

"Because," she said, "then the car isn't there during the time you're at work." And I remembered, ah yes, never ask a police officer how a law makes sense, and disengaged from the conversation. It reminded me of the Douglas Adams story about the time he was pulled over to the center lane in the middle of a curve, and when he protested to the policeman that this was unsafe, the policeman responded that it was safe because he was there at the request of a policeman.

Yes. Yes of course everybody is better off because, during work hours, there's not a car in that spot. In case there's, like, a block party in the middle of a weekday and there's no other place to park. How silly of me.

So I went back to trying to figure out whether I could change the battery in my Power Station, or, if I couldn't, whether I could replace the whole thing -- and, either way, whether I could do it by Tuesday afternoon.

A replacement Power Station would run $150 -- and wouldn't be there in time.

So I searched some more for answers on whether I could replace that battery. And I found a YouTube video demonstrating how to do exactly that.

The official battery, the brand and model that came with the Power Station, was expensive and I couldn't find it with Prime shipping. But, for the first and only time in human history, a YouTube comment proved helpful: commenter Maverick Alchemist noted that, based on the voltage, wattage, and physical dimensions of the battery, an item listed as ExpertPower EXP12180 12 Volt 18 Ah Rechargeable Battery with Nuts and Bolts should do the job. And whaddaya know: two-day shipping.

I kept busy Friday night and Saturday; I made sure to get my chores out of the way -- yard cleaned, dishes washed, laundry done, bills paid, groceries purchased -- before Sunday, to make sure I'd have plenty of time to take care of the car -- change the Power Station battery and jump it, at minimum, and then, if something broke down along the way (battery didn't arrive on time, battery didn't work, jump didn't work...), time to get somebody to help me push the damn thing into the driveway in case my wife and I couldn't manage it by ourselves.

I managed to finish all my other chores up in time to take Saturday night off and go to the Alamo Drafthouse to see the Mads. I'll have a post about that along soon.

So Sunday rolled around. I took the Power Station out front, grabbed my tools, and set to taking it apart to change the battery. The process was tedious -- a hell of a lot of screws, and a couple of inconveniently-placed nuts -- but straightforward. The new battery arrived, the new battery worked, I buttoned it back up. The new battery didn't have a full charge, so I went ahead and plugged it in for a few hours, just to be sure.

And so finally, Sunday evening, around sundown, I went out, popped the hood, wired it up, and turned the Power Station on.

I turned the key.

It started.

First try. It really couldn't have possibly gone any better. Like I said: this old girl is reliable.

So I drove around the neighborhood for about half an hour, to make sure I got a good charge. It was a nice drive, too, with the windows down; we're still seeing some pretty warm days here (I think that day got up to the high 90's), but the evenings are pretty much perfect.

I'll try and take it out once a week or so from here on in, so I won't have to do that again.