Dave Winer, once upon a time the author of a scripting system called Frontier, posted We need: A programmable Twitter client.
Well, interesting idea. Except we already have multiple programmable Twitter solutions.
Twitterrific can call AppleScript on new tweets (and comes with a demo script), and you can use AppleScript to control it, at least as far as posting tweets.
I'm not suggesting that AppleScript is perfect. The core AppleScript language is easy to pick up, but every app you try to control is like learning a new language, and the core language isn't very powerful, so you end up using other apps as helpers. I spend days fighting AppleScript and swearing a lot every time I have to deal with it, and I do this for a living.
But AppleScript is the standard scripting tool on Mac, and it's well-suited to simple cases. If Twitterrific (or another client) had more scripting commands, you wouldn't need anything else.
The more advanced solution is Python-twitter, which provides Twitter API access from Python. Python is easy to learn (Learning Python or Python for Software Design are both fantastic tutorials), and Python-twitter seems to be a pretty complete and easy wrapper around the API.
So this brings me to my real point: Apps with custom scripting interfaces are obsolete. Unix shell scripts, DOS batch files, Lotus 1-2-3, Emacs-lisp, these are all ancient and archaic systems. For Unix scripting, last year I quit using bash after 20+ years because Python's easier to get right (esp. with filenames containing spaces).
Dave wants an "unfollow-with-timeout". Fine, write one. Make a tiny Python script that calls the Twitter API to unfollow someone and adds them to a list with the timestamp. Write a second script that runs daily (add it to cron or launchd; there are GUI clients to edit both) to scan that list, find people past their 24-hour unfollow, refollow them, and remove them from the list. It probably took me longer to write this blog post than it would to write those scripts.
Five YouTube videos, in which a common theme is revealed:
I have a love/hate relationship with Apple & the iTunes Store. Like a battered wife, I can't stay away. I'm sure they can change... But will they? Until then, I put up with it.
I love iPhone dev when it's like coding for the Mac, but better, with a GUI not encumbered by 25 years of legacy NeXTstep/OpenStep/Mac Carbon/Cocoa compatibility. What would the Mac look like if it was designed today? It'd look like an iPhone, apps sleek and directed and perfectly functional.
I hate iPhone dev when APIs are incomplete. The fucking Address Book and Keychain are so appalling I go mad dealing with them. The most basic functionality is missing. Audio is finally caught up, and I need to rewrite the audio stack of Perilar (and put one into Castles!), now that it doesn't suck. But plenty of new stuff I'm doing is entirely broken, and I'll have to fix it when Apple fixes the API.
I hate iTunes Connect more than anything ever. MORE THAN ANYTHING. It is seriously the most painful, awful, slow, malicious piece of malware ever written. I cannot imagine how people thought that passed muster. If Steve Jobs saw iTunes Connect, you'd need buckets and high-pressure hoses to remove the corpses of those responsible from One Infinite Loop.
I hate the Apple approval process. As of last week, they claim it's at 75% approval within 2 weeks; I know several people--SEVERAL--who've been waiting for 3 months or more. My own apps sometimes got bounced back to me a couple times, but were mostly approved in less than 2 weeks... but rarely much less. As we head into the Silly Season, it'll drop even further. Apple can't approve things quickly, and makes terrible mistakes about what's "offensive" and what isn't; Baby-Shaker was okay, but political parodies aren't? That's MADNESS.
The worst part of the approvals is when you have to remove a cool thing, or never even add it, because you know Apple won't allow it. I want to put a couple of programmable toys and an adventure game engine up. I can't, they use interpreters with downloadable code, which is forbidden. It's preemptive censorship, like trying to be an artist in the USSR.
The iTunes Store itself is a disaster area. A giant pile of everything, good and bad, like a sci-fi junkyard. You might find some sweet loot, or you might find radioactive waste. The approval process has done nothing to improve on that, if anything it's made it far worse.
I love the payments: 70% royalty on gross from a publisher is sweet. Really sweet. Typical publisher royalties are 10-20%, often from wholesale or "net" (which is always nothing). I wasn't making enough to live on, but I still get some solid pocket money even with no real advertising or new apps (and those will happen as soon as possible, but doubtful before New Year, with the holiday approval slowdown).
So the end result is I hate the App Store system. But I'm still in it, sort of. I'm VERY disappointed by Apple's handling of all this, but I don't believe it'll get better anytime soon, and I still like making iPhone apps more than anything else.
[The Torment of Tantalus, in Greek mythology]
[Update 2009-11-13: From Christopher Lloyd, the stories of Watson and WebObjects. Apple sometimes beats up indie developers and takes our lunch money. They do what's best for them, sometimes with apologies, but never with mercy.
For me, the most iconic, most-used tool on the Palm Pilot 1000 through the Palm Treo was the To Do app. Since getting the iPhone, I’ve been trying to find a halfway usable replacement. I may have it now.
The Importance of Making Lists
Everything I do is longer and more complicated than I can keep track of with my limited short-term memory and easily (OOH, SHINY! Wait, what?) distracted attention span.
And that’s exactly (and all) the Palm To Do app did. It was as close to perfect yet complete minimalism as a piece of software can get. It was an abacus for keeping track of urgent, soon, later, someday tasks.
Nobody else has ever seemed to get the concept. Mac OS X hides its To Do list inside iCal (and you can only edit them with a shitty pop-up dialog box; BusyCal shows them in an info editor on the side, but it’s still crammed into a calendar app where it doesn’t really fit, not a simple To Do editor.
On the iPhone, the situation was even worse. I could make a calendar entry, which meant my calendar was full of junk to-do items that couldn’t be searched on the iPhone, and were hard to find even on desktop. I could make a Notes entry, but Notes has no organization ability, and still doesn’t sync very well.
It got so bad I went back to pen-and-paper, keeping my TODO list in a Field Notes in my pocket, with a short keyword on the right side. No search, just flipping through paper, but at least it was always with me.
I tried quite a few To Do apps, none of which really worked the way I needed. In particular, they were all flat-category, no way to search by keyword, no priority levels. Few of them synced at all, and those mostly rely on a cloud service (i.e., watch all your data vanish when they go out of business or have a Microsoft/Danger-type meltdown in a year or two) rather than your own computer or MobileMe.
The closest yet is Cultured Code’s Things. It’s still more complex than I really want or need, too much organization and not enough raw data piles, and there are some UI flaws that drive me crazy, but it’s good at what it does, and doesn’t force its anal-retentive GTD roots on me.
The main screen shows several top-level lists: Inbox, Today, Next, Scheduled, Someday, Projects, and Logbook, and a [+] button to add a new item to any list.
Inbox is a normal list containing items. Today is a smart list of items on any other list which have been marked to be done today. Next is a smart list of all items, sorted by overdue, due, today, and then everything else. Scheduled is a smart list of items with a due date, sorted by date. Someday is a normal list of stuff you’re putting off (the icon is a cardboard box…) Logbook is a record of everything you’ve checked off as completed. Projects is a container for multiple lists, used essentially like Palm’s categories.
In each list, the bottom toolbar has buttons to [+] Add items, [★] Star items to be done today (while the icon here is a star, and a star is shown on Today’s smart list, the item’s checkbox just goes yellow, which is unintuitive), or [→] Move items to another list. The top toolbar has an [Edit] button to rearrange or delete. There is no ability to re-sort the items of a list, which is a pretty serious omission if you have more than a dozen items.
In Projects, but NOT anywhere else, you can tap the (>) disclosure button on a list to get a view screen where you can edit the list info, Show (all items in the list) in Today, Move (all items in the list) to another list, or Send (all items in the list) as Email.
In Projects and in all sublists of it, you can hit a [Tags] toolbar button to show all contained items with a single tag, or items with no tags assigned. However, it only finds immediate children, it does not search the contents of sublists. Say I have Notes, Shopping, and Perilar lists in Projects; Shopping and Notes are not tagged, but Perilar is tagged Code. The only thing I can filter at Projects is “Code”. If I go into the Shopping list, I can filter on all the tags I’ve used, like “Movies”.
The closest thing to app-wide tag search is in Next, but the big-bucket-o-stuff isn't always what I want. There is no text search, and items don’t show up in system Spotlight. That’s why I’m currently sticking with very broad category lists in Projects, even though I’d like to have much tighter ones; Things’ pathetic excuse for search just doesn’t support it.
When adding an item, you just get an editable title field, and a Create In button to change the location (default is the list you were currently viewing, usually correct). To set more fields, you have to hit a “Show Details” button, then you can pick tags, enter notes, or enter a due date.
“Show Details”, trivial as it may seem, is almost a deal-breaker. I need all the fields visible on note creation, because I almost always (90%) want to add a tag, and often (50%) some note text or due date (50%). A short title and broad category is not enough context. It’s only one button and an animated form transition, but it takes 3 seconds (I timed it repeatedly with my stopwatch) instead of half a second and not having to remember this annoyance, find the button, and wait. Oh, and it hides the keyboard, so I can either remember to do it after entering the title, or have to tap on the title again, losing more time. Frustration is born of such UI missteps.
To view a note, you tap on its name (but not the checkbox), and get a view screen. Now “Show in Today” and “Move” are list buttons, not bottom toolbar buttons, which is inconsistent and confusing.
When you check off an item, on your next restart of the app it’ll be moved to Logbook. Also at restart, the icon badge gets updated; unfortunately, this is exactly the wrong time, IMO, it should update the badge when exiting, but with the limited time to clean up on iPhone, that may not be practical.
There’s no priority system. You either do stuff today, or later. There are High, Medium, Low priority tags in the default tag set, but they don’t seem to do anything, they don’t make items float higher or lower in the Next smart list, though you can search by tag in the Next list. I find this pretty disappointing. Some tasks are more important than other tasks, and Things has no way to express that.
Syncing requires the desktop Mac app. If the desktop app is running, and the iPhone has wifi enabled, it’ll automatically sync. I found this to work reasonably well, though it once got stuck and wouldn’t see any new items from the phone until I unsynced and resynced.
A trick I use for visually identifying items is to put an
emoji icon in front of list and tag names:
This works great on the iPhone, but at present emoji are not supported on computers, so there I just see an 💻 error box instead of a cute little computer icon. There are proposals to add emoji to Unicode, so perhaps soon this will work on the desktop as well.
The Things iPhone app is $10, and despite the flaws, it’s a reasonable tool until something more like the Palm Pilot’s circa 1997 To Do app comes along. The Mac app is $50, which is extortionate for such a small app that does nothing more than the iPhone does. If you’re ONLY going to sync from iPhone and just want a desktop backup, it’ll keep working after the trial period in read-only mode with a nag screen.
Now I just need to deal with my notepad situation. More on that in a later blog post.
- The post title is a reference to Things to Do in Denver When You’re Dead, which is a song by my favorite dead musician
(iTunes link), and a
grim but entertaining crime movie.
- I’m not as bad as the protagonist of the “Memento Mori” short story by Jonathan Nolan, which the movie Memento was based on, but my inattention has similar results. If you use external memory, you can accomplish a lot anyway.
- Just in case I hadn’t offended “Getting Things Done™” users enough: I think GTD methodology is the equivalent of rearranging deck chairs on the Titanic, or Arnold Judas Rimmer on Red Dwarf spending all semester color-coding his study materials but never studying. It’s the appearance of organization without any real productivity.
Today I picked up a shiny new PSP Go. And I like it.
$249 gets you a tiny device the size of two stacked iPhones, though somewhat lighter. The original PSP-1000 was 6.7"x2.9"x.9", weighed 280g. The Go is 5"x2.7"x.64", weighs 158g; about half the volume and weight, which takes it from a thing I leave at home, to a thing I can tuck in a pocket.
It's small, but not quite so small I can't hold it stably. When playing Wipeout, with the shoulder pads and constant button mashing, it was fine. When the top is slid closed, it shows an analog clock (?!?) or calendar, or the media playing. I suppose if there was a dock, you could stick it on and have a decent clock/radio thing; you could even use Internet radio, which it supports.
There's black and white models, but GameStop only had the sparkly white-and-chrome. I'll probably find a set of skins for it later. Even for the "girly" model, it still looks pretty classy. FAR better industrial design than, say, a Kindle. It remains true that the only three electronics companies with any design sense and aesthetics are Apple, Nintendo, and Sony.
The Go has 16 GB of internal storage, unlike the 32 MB in the PSP-1000, or 64 MB in the current PSP-3000; 250 times the storage space (like everyone now, they seem to use metric storage space numbers, so "16 GB" = "15.25 GiB" in binary terms). For comparison, an iPod touch with 8 GB costs $199, and with 32 GB costs $299, so it seems like fair pricing. With the old system, any claim that it was a "portable media device" was just insulting, since a few MB isn't enough for anything, and even a 2GB memory stick wasn't much. 16 GB, you could fit a small music library and a few movies on.
The screen is 3.8" diagonal, unlike the 4.3" diagonal of the older models, but it's the same 480x272 resolution, and it shows; Go looks considerably brighter and sharper. The speakers are front-facing and louder and sound better than the old models; headphones are still better, but it no longer sounds like tiny, tinny mouse screams.
It comes with some kind of software, but it's for Windows, so I threw it out. On the Mac, I know of three PSP data managers:
and Missing Sync for PSP.
The power/USB cable is full-size USB to proprietary plug, just like an iPhone adaptor. It also comes with a power brick with USB output, but I expect mostly it'll be charged on my computer, not the brick. This is sort of a regression from the USB-to-mini-USB adaptors they'd been using, but not an especially big deal. The Go only has headphone out, but does have bluetooth headphone pairing. [Update 2009-Oct-26:] There is a cable sold separately with video output. However, the idea of playing video off a portable device onto TV never made sense to me—it was part of Sony's UMD media campaign, which was an abject, humiliating failure.
So. The UMD. The "Universal Media Disc". It's gone. No more UMD games on the device, and it looks like they're being phased out for the PSP-3000, too. No more UMD movies, but that was the worst idea ever conceived (a disc nobody else supports! With no full-size player! Only playable on PSP! Uh, no.)
The best part: No more battery-draining, 30- to 60-second UMD game loads. Dungeon Siege: Throne of Agony was a great game for the PSP, except opening the map took 60 seconds with the UMD. An in-memory version should open nigh-instantly. With the UMD running, the PSP-1000 gets about 1-3 hours play, at BEST. Apparently when running games from memory, both PSP-3000 and PSP Go get 3-6 hours, despite the much smaller size (and presumably smaller battery) of the Go.
The OS/menu system is a slightly updated version from what's on the PSP-1000, with support now for "pausing" (hibernating) games, and better media/network tools. I only spent time in the menu to get to games or network, but it's a pleasant console menu, second only to the Wii.
The games. Oh, yeah, remember this is a game machine? Well, you get games for it by downloading them. At present, only from Sony's Playstation store, unless you wait for the next firmware crack and install some homebrew stuff made by Linux dweebs. I'll stick with Sony for a while, see how they do.
The PlayStation Store on the device is… really slick. Better, in many ways, than the iTunes App Store. It's easy to find games I'm interested in, almost too easy, and even the cheaper indie games look good. There's also free themes and wallpapers on the store, and paid themes. Most of the paid themes are kind of shameful: Big-breasted anime chicks. There's a section with ~45 anime boob themes, each $0.99 or $1.99. Kids, can you please stop embarassing us adult gamers?
Most of the titles are $10-$20, sometimes up to $30. Compare that to UMD games at GameStop, which are $15-30 for used, $20-$40 for new. This is likely to be the last Sony product I ever buy at a GameStop. I just don't need them anymore, I get better games cheaper online. Wii, PS3, Xbox 360, and now PSP all have digital downloads. It's just a short step to ONLY having downloaded games, and putting a bullet in GameStop's head. I won't really miss it, it was just the least bad of several buying options.
First PSP Go game was an easy one: Wipeout Pulse, $20, for the latest and best of the best racing game series.
And, get this: Final Fantasy VII, $10. One of the greatest CRPGs of all time, not available on UMD, one of the only reasons I kept my PSX around for 10 years… Now just a cheap download. I need to go blow up Sector 1 Mako Reactor now. I'll see you in a few weeks when I'm done…
The argument over App Store upgrades is still going on, on Twitter and blogs.
And more and more, even normally sane people are latching onto the mantra "IT'S ONLY THREE DOLLARS!", which completely misses the entire point. So much so that it's like watching a blind person chase a squirrel. Funny, but sad and pathetic.
See the monotone "It's $3!" from Jim Dalrymple or Jeff Lamarche, and many others who are being less civil and sane. These are not normally crazy people (well, Jim's a little weird). But they're acting in a profoundly crazy and short-sighted way about this.
None of this is about the money. IT IS NOT ABOUT THE MONEY.
It's about customer service for existing customers, and about keeping existing customers in your app.
The really key point is that most, 90-99%, of Tweetie 1 users are not going to switch to Tweetie 2. They're going to see the app never get new features, and break under them when Twitter changes, and then go to another app that is being updated. Think the sales process through: "Huh, my Tweetie app broke. GUESS I'LL BUY ANOTHER COPY OF TWEETIE." It's ludicrous.
If you give a customer the opportunity to switch, they will. If you burn a customer that way, they're lost for good, and will badmouth you forever. "Bad publicity" only works when it's not about bad quality or bad pricing.
Devs whining "But it's only $3!" are just showing they have zero clue about customer service, and zero clue about what the problem is.
Now, is in-app purchase a perfect solution? No. But Apple's not going to add upgrade pricing anytime soon, if ever.
A short-term discount won't help, because early sales are important, Tweetie 1 users won't know to go get it, and if they did, they'd go buy something else.
Loren Brichter (@atebits), the author of Tweetie, has good intentions: To get paid a reasonable amount for continued improvements to an app for his customers. Apple's App Store policies make that hard to do that. But the specific plan is one of the worst business and customer service ideas I've ever heard in my life.
Update: Patrick Burleson (@pbur) has filed a Radar ticket with Apple for proper upgrade pricing, rdar://7265066 (for those inside Apple), or on OpenRadar. Go hit up Radar and file a dup!
Suppose you have an app on the iTunes App Store, and you want to provide a new version. No, this isn't me. I'm talking about someone else's app.
As I see it, there are three options:
- Free Upgrade. Just update the app in iTunes Connect, and it shows up as an update for all existing customers. New customers get the new version.
Pro: Easy to implement. Generous to existing customers.
Con: No way to get a paid upgrade.
- Entirely New App: Create a new app, and remove the old app from sale.
Pro: Easy to implement. Many new sales at full price. Some existing customers will go buy the new app.
Con: Abandons existing customers, who get NO further updates. Most existing customers won't know there's a new version. Appalling customer service. Most existing customers will simply leave you and buy another app.
- In-App Purchase: Separate the 2.0 features from the 1.0 features, and make them unlockable in the app.
Pro: Allows existing customers to upgrade, just like a desktop app with a paid update. Allows a lower entry price for the base app, which drives sales up. Keeps existing customers locked into your app.
Con: Much harder to implement. Slightly confusing when people buy the new app, and not all possible features are enabled.
I consider Free Upgrade the best option, if you can afford it. This maximizes the happiness of existing customers, and gives both old and new customers the full app.
In-App Purchases are certainly a lot of work, and maybe somewhat risky as a business model, but it's a fair balance between satisfying existing customers and making money on the upgrade. Apple appears to have no problem with unlocking functionality by purchase, and purchases can be re-downloaded if you uninstall and reinstall the app, so this appears to be a functional method.
The Entirely New App idea is appalling. It's the worst possible customer service to existing customers, and gets you few or no paid upgrades from them. They won't know the new version exists, unless you update version 1 with a message "go buy version 2", which Apple will almost certainly reject.
You may get normal new sales, nothing more, but those who know what's going on will remember how you shafted the previous customers, and realize you'll shaft them in the next version. Since you're going to get a low conversion rate from your former customers, there's little or no financial advantage over a Free Upgrade.
There is a sort of fourth option: Release an update to version 1 with ads. Now you can make some money on the existing customers, and sort of push them towards buying the new version without ads. It's annoying, and upsets their expectations of an ad-free app, but it'd work out financially.
While it would be nice if Apple would provide a "Paid Upgrade" option, and allow multiple versions of the same app on the App Store, that seems improbable to "never going to happen". Apple's business model works fine for THEM, and if it makes life hard on developers, they don't seem to care. Given that, it's up to the developer to make choices that make financial sense while NOT screwing over existing customers.
"We are having more tech difficulties than we could ever possibly deserve, once again proving that there is nothing but an indifferent void behind everything humans do. And that truth is evident once you try doing software demonstrations for a living."
The Last Lecture
Mac OS X 10.6 Snow Leopard is out. You can find out everything about it, and then some, in
John Siracusa's epic 23-page review. John's OCD nitpicking reviews are great, and this one's his best; but read his previous ones in "Looking Back" on page 23, too.
But if you're not up for reading War & Peace, here's what I care about:
- Cocoa Finder. The Finder is faster, more reliable, and fixes (most of) the bugs in the old Carbon Finder. There are some minor bugs, but for a 1.0 release of an all-new application, it's amazingly stable and similar to the previous Finder, just better.
Quicktime X shows video far more attractively (no damned brushed metal everywhere), with lower CPU load & heat.
Okay, QTX doesn't play all the legacy formats or have all the editing/export features that Quicktime 7 did; that's why QT7 is available as an optional install. But unless you have a specific need for QT7, don't bother.
Safari is faster and more stable. I always use ClickToFlash, but Flash should crash your browser far less often.
The Services menu is actually useful now. In 10.4, I used ServiceScrubber, but it stopped working on Apple-supplied services at 10.5.
On the Objective-C development side, Snow Leopard is mandatory. I've been writing Mac software the last few weeks, and started trying to do 10.5-compatible. A week of beating my head on that wall convinced me that was stupid. 10.6-only development is vastly improved over 10.5: Clang/LLVM, 64-bit, delegate protocols, blocks, new Xcode 3.2. It's as much better than 10.5 development as that was to 10.4 or Java (which were adequate, but never nice).
Posted on my software blog: The iPhone App Store Blues
Go see District 9. There's a short film intro, Alive in Joberg, which will set some expectations, but the movie is far more impressive.
District 9 is the only really great science fiction I've seen in a decade. Science fiction, real science fiction and not moronic "sci-fi", not fantasy, has been almost completely absent from the theatres, because Hollywood is composed entirely of subhuman morons who know nothing of science. They think shit like Armageddon and Transformers is acceptable, and it is not.
District 9 only got made because Peter Jackson gave Neill Blomkamp $30 million on the strength of "Alive in Joburg", and it was made in South Africa and New Zealand, where Hollywood's poisonous contagion couldn't reach it. If there were any justice, this would sweep the Oscars for Best Picture, Best Director, Best Special Effects, and Best Actor for Sharlto Copley. But there is no justice or competence in Hollywood, and it will instead get nominated for "Best Foreign Film", and probably lose.
So, only great SF in a decade. That got me thinking, and so I collected some data. I went through Wikipedia's List of science fiction films for completeness, and added several not listed there. These is my own personal list of "Real Science Fiction" movies of the last 60 years or so. My list, my tastes, my idea of what's "real SF" and what isn't, my ratings (given as X/10, and ignoring anything less than 8). If you disagree, that's fine, but do so on your own blog.
It's nearly impossible to judge older movies by any modern standard; when I rewatched The Day the Earth Stood Still (1951), I spent most of the film fascinated by the stiff, sterile, alien culture of the 1950s, not the movie itself. Still, there are some older films that are just as "real" SF as modern, so I list them. I don't include many bad (or actively malicious in some cases) adaptations of the works of H.G. Wells, Jules Verne, Robert A. Heinlein, Isaac Asimov, Philip K. Dick, Richard Matheson, etc. I would include Tarkovsky's Solaris and Stalker if only someone would edit them into 90-120-minute films with some pacing. I would love to list The Fountain, but it was maliciously maledited by meth-crazed monkeys, so it's unwatchable. Sequels are almost never any good, SF sequels especially not; the sequels to Mad Max, Alien, & Terminator are trash.
- Metropolis (1927) 9/10
- Creature from the Black Lagoon (1954) 8/10
- Gojira (1954) 9/10 — The Japanese original, NOT the Americanized version.
- 20,000 Leagues Under the Sea (1954) 9/10
- This Island Earth (1955) 8/10
- Forbidden Planet (1956) 10/10
- The Time Machine (1960) 8/10
- Planet of the Vampires (1965) 8/10 — Mario Bava's haunted planet epic
- Planet of the Apes (1968) 8/10
- 2001: A Space Odyssey (1968) 9/10
- Gamera vs. Guiron (1969) 8/10 — The one with the brain-eating alien women
- Colossus: The Forbin Project (1970) 8/10
- A Clockwork Orange (1971) 8/10
- THX 1138 (1971) 9/10
- The Final Programme (1973) 8/10 — Adaptation of Michael Moorcock's "Jerry Cornelius" stories
- Soylent Green (1973) 8/10
- Westworld (1973) 8/10
- Dark Star (1974) 8/10
- A Boy and His Dog (1975) 8/10
- Rollerball (1975) 8/10
- Logan's Run (1976) 8/10
- Close Encounters of the Third Kind (1977) 9/10
- Star Wars (1977) 10/10
- Invasion of the Body Snatchers (1978) 8/10
- Alien (1979) 10/10
- Mad Max (1979) 8/10
- Star Trek: The Motion Picture (1979) 8/10
- Altered States (1980) 8/10
- Empire Strikes Back (1980) 10/10
- Flash Gordon (1980) 8/10
- Escape from New York (1981) 8/10
- Scanners (1981) 8/10
- The Hitch Hikers Guide to the Galaxy (1981) 9/10 — The BBC TV miniseries production
- Blade Runner (1982) 10/10
- E.T. (1982) 8/10
- Star Trek II: The Wrath of Khan (1982) 10/10
- The Thing (1982) 10/10
- TRON (1982) 10/10
- Brainstorm (1983) 8/10
- V (1983) 8/10
- Videodrome (1983) 9/10
- The Adventures of Buckaroo Banzai Across the 8th Dimension (1984) 9/10
- The Last Starfighter (1984) 8/10
- Repo Man (1984) 8/10
- Runaway (1984) 8/10
- The Terminator (1984) 8/10
- Back to the Future (1985) 8/10
- Brazil (1985) 9/10
- Enemy Mine (1985) 8/10
- Lifeforce (1985) 8/10
- Bubblegum Crisis (1987) 8/10
- The Hidden (1987) 8/10
- RoboCop (1987) 8/10
- Akira (1988) 9/10
- Appleseed (1988) 9/10
- They Live (1988) 8/10
- The Abyss (1989) 8/10
- Bill & Ted's Excellent Adventure (1989) 8/10
- The Blood of Heroes (1989) 8/10 — aka Salute to the Jugger
- Moontrap (1989) 8/10 — Cheesy, but interesting as SF *and* for Bruce Campbell & Walter Koenig
- Hardware (1990) 8/10
- The Rocketeer (1991) 9/10
- Until the End of the World (1991) 9/10 — I wish I could get this on DVD
- Split Second (1992) 9/10 — We're gonna need bigger guns.
- The Wicked City (1992) 8/10 — Disturbing live-action Hong Kong adaptation of the 1987 anime
- Demolition Man (1993) 8/10
- Nemesis (1993) 8/10
- Wild Palms (1993) 8/10
- Stargate (1994) 8/10
- Ghost in the Shell (1995) 10/10
- Screamers (1995) 8/10 — One of the few half-decent P.K.Dick adaptations
- Species (1995) 8/10
- Strange Days (1995) 8/10
- Twelve Monkeys (1995) 8/10
- The Arrival (1996) 8/10
- Cube (1997) 9/10
- The Fifth Element (1997) 10/10
- Gattaca (1997) 8/10
- Dark City (1998) 9/10
- Pi (1998) 10/10
- Soldier (1998) 8/10
- eXistenZ (1999) 9/10
- Galaxy Quest (1999) 8/10
- The Thirteenth Floor (1999) 10/10
- Impostor (2000) 8/10 — Short film only, the "extended" film is awful
- Pitch Black (2000) 8/10
- Titan A.E. (2000) 8/10
- Final Fantasy: The Spirits Within (2001) 8/10
- The One (2001) 9/10
- Equilibrium (2002) 9/10
- Returner (2002) 8/10
- Natural City (2003) 9/10
- The Chronicles of Riddick (2004) 8/10
- Sky Captain and the World of Tomorrow (2004) 8/10
- Serenity (2005) 8/10 — I would rate Firefly higher than the movie
- Sunshine (2007) 8/10
- WALL-E (2008) 9/10
- District 9 (2009) 10/10
- Moon (2009) ??? — I haven't seen it yet, hear good things
Look at the per-year distribution of this list:
1950s: 05: *****
1960s: 05: *****
1970s: 16: ****************
1980s: 33: *********************************
1990s: 24: ************************
2000s: 15: ***************
It'd be considerably worse if I removed all the non-Hollywood movies; there'd be a giant spike in the '70s and '80s, not much else. I believe what that curve is mapping is the rise and fall of the U.S. educational system, 10-20 years offset. If Hollywood writers, directors, and producers were educated with more than an inner tube and a banana, they might make real science fiction movies again. Barring that, I say we just wall off Hollywood and let cannibalism run its course.
Sometimes sites use a color scheme you don't like. I can't stand looking at white text on black background; others love it. I like my black text on yellow graph paper theme, but not everyone has 20+ years of staring at engineer's pads. Nobody likes gray text on gray background, except John Gruber.
Faruk Ateş has a shiny new web site, go take a look at it. SO SHINY! So how does he do that?
He wrote a new CSS library, Modernizr,
THIS is the kind of stuff we need more of, if we're going to drag web development out of the dark ages when IE6 and Netscape stagnated.
Google's trying to advertise "Going Google",
using Google Mail and Google Apps for all your business's work. I don't consider this a terribly good idea.
In less Google-focused circles, this is called "Cloud Computing", because network services are typically drawn as a cloud in block diagrams:
I've worked at two places now that "went Google". Sometimes it reduced the IT load. Other times… Google Apps is unresponsive (either too slow to use, or just down) at least once a week. It's always too slow for comfort (I'll get back to that in a moment).
Gmail has rather strict restrictions on sending a lot of messages (whether "I forgot my password" or more spam-like newsletters), and on the content of the messages, which can lead to the account being temporarily or permanently shut down. The hacks to work around that cost more time and effort than getting a proper mail server & sysadmin would have.
Your data & email are entirely at the mercy of someone else, who may shut you down at any time, for any reason they feel like, and may be difficult or impossible to get an explanation out of. If it's your gmail junk email box, that's no big deal. If you're running a company on it, it's a big deal, maybe a company- and career-killing bad decision.
This isn't specific to Google. Google's fine, as cloud computing servers go. There are five problems inherent to storing your information in the cloud:
- If an operation takes 1x time in memory, it'll take 100x longer on a local hard drive, 1000x longer on a local area network, and 10K-1M x longer over the Internet. Saving a file might take milliseconds (0.001 seconds) locally, but can take 1-10 seconds or longer to the cloud. Most Internet connections are not symmetric, which means they upload files MUCH slower than they can download, often 5-10x slower.
- Sending something over the Internet is not all that reliable; it's entirely possible for a connection to just fail. Usually you can just resubmit, but I'm sure everyone has lost web comments or posts when a submit failed. Or worse, when they hit "Back" by accident, or when the browser crashed. That's why I write every blog post in BBEdit, save it locally (actually, I neurotically save after every paragraph), and THEN post it to my blog through a web form.
- Offline Use
- You can't use any of your documents or mail offline if they're in the cloud. If your office or home Internet goes out, you can't do any work, you're completely shut down for the day. Wifi and tethered cell phones can give you some coverage when you're out of office, but they're even less reliable.
- Do you have redundant offsite backups? I do. Any halfway-competent sysadmin will. On one hand, the cloud gives you a permanent offsite backup. But you have no control over it. You are entirely at the mercy of Google. Maybe they'll suspend your account. Maybe you'll delete a file by accident; can you get it back? How far back is it saved? These aren't insurmountable, and Google's databases are safer than most home users non-backed-up data, sitting on a single computer. But for a business these are terrifying risks.
- So Google has all your documents. Your mail. Your contacts. Your business plan. Your financial data in spreadsheets. And they're scanning it. No Google employee should, supposedly, ever see it, but the search engine does… and accidents happen, and people aren't always trustworthy.
So what's the alternative? Get a real mail server & a sysadmin to run it. Store your documents in version control (preferably Perforce or maybe Mercurial; Subversion is awful for non-programmers, and painfully slow). A wiki on a LAN can work, but has the same problem of slow updates, and makes anything except wiki markup a pain to work with.
Go watch this now:
Richard Dawkins' TED talk on militant atheism.
"I believe a true understanding of Darwinism is deeply corrosive to religious faith."
"We atheists are also a-fairy-ists and a-teapot-ists, but we don't bother to say so."
"How did September the 11th change you? Well, here's how it changed me: Let's all stop being so damned respectful."
Rather often, I get upbraided by closeted atheists/agnostics, or Christian apologists, for being too pushy on it. For making too much fun of Christians and other religious loonies. For insisting too strongly that yes, I am an atheist ("without gods"), not some ignorant, tentative, wishy-washy agnostic ("without knowledge").
Here's what I know: I know that there is ZERO evidence for invisible sky fairies. That every trace of evidence we do have about how the Universe works points to impersonal, blind mechanisms iterated for ~14 billion years. That before the Universe started there is (and can be) very little evidence, but none of it points to a puppet-master of improbable complexity. The Universe has none of the marks of a thing which was designed.
The Christians go on about how their fairy tale book says this or that, and that we should have "faith" in its claims. But we know things about the Bible, too: It was written by Bronze Age barbarians, the "New Testament" ca. 70 CE at the earliest, and edited into a book by venal political appointees of the Roman Emperor Constantine in 325 CE to excuse his robbing the Pantheon's coffers and moving the capitol of Rome to Byzantium. The testable historical statements in it are all false, completely unsupported or directly contradicted by contemporary evidence. It's nothing but lies & strife & poison.
So on one hand we have science: A way to make testable hypotheses, collect data, compare, revise hypothesis, repeat, until we get a working theory that explains and predicts the world around us. And there has been as yet no data that requires anyone to hypothesize the existence of an invisible sky fairy, or an immortal invisible "soul". The scientific method leads inevitably to ignoring and deprecating anything that has no evidence.
On the other hand, we have religion: Fairy tales written by uneducated savages, meant to be taken on "faith", by which they mean unreasoning, unthinking acceptance regardless of what the evidence shows, based solely on the claims in that pack of lies, and on how good it feels when you get brainwashed. Theists have no ability to predict or create or do anything based on their superstitions. They can't perform any miracles, and when you demand a demonstration, they say "God won't prove his existence" (except, they allege, 2000 years ago). They're useless, except at taking your money and wasting your time.
The two are fundamentally incompatible. One is about reason, learning what you can from observation. The other is about lies, literally making up comforting stories rather than try observing and thinking.
They do not cover "separate magisteria" as Christian apologists like to claim. We are all talking about the same observable Universe. Pushing the existence of the fairy tale god to before time, outside the Universe, or after death, does not make it any more plausible, does not provide any more evidence for it. Without evidence, ignore it as nonsense and lies.
This isn't even a choice for me. Reason and self-respect demand that I not pretend to believe in something that's obviously false. For many, especially in the U.S. South, it's clearly hard and somewhat dangerous to come out and say you're an atheist. Here in Seattle, I say it casually, and about 10% of the time some rabid theist will react in horror, but the rest of the time nobody cares. When I posted a few quotes from Dawkins on Twitter this morning, immediately a couple people responded with demands that I take their bullshit seriously and pander to their superstitions. I will not. As more of us reveal our lack of credulity, it becomes safer for all of us.
If you're into the social networking, getting together with like-minded people thing, and want some support for coming out atheist, visit Atheist Nexus, or Richard Dawkins blog, or Pharyngula, P.Z. Myers' atheism/science blog with very active (and refreshingly sane) comment threads.
- How anyone can bring themselves to apologize for Christianity's history of terror, torture, and ignorance is beyond me.
- Other religions are just as idiotic as Christianity, but:
- I live in America, where Christianity is more widespread than herpes, but rather less treatable. Other religions are not.
- I can and have examined, discarded, and mocked other religions, including Islam (for some reason, Christians always retort "you wouldn't insult Islam!": Yes, I do). Islam in much of the world behaves as monstrously as pre-20th-Century Christianity, but in the U.S. most Muslims keep quiet, obey the law, and leave me alone, so I don't waste much time on how awful their religion is.
"Continued in their present patterns of fragmented unrelation,
our school curricula will insure a citizenry unable to understand
the cybernated world in which they live."
—Marshall McLuhan, 1964
(if you think McLuhan was wrong, spend 5 minutes reading YouTube comments or any random web forum)
Found in the Best of Creative Computing, Vol. 1 (1976) from Atari Archives (which has not just Atari, but other early computing magazines & books).
It's an eerie little time capsule. Vol. 1 is pre-Apple II, the first real home computer. Computers were relatively primitive tools used in science, business, industry, and experimental education, not ubiquitous shiny toys.
And yet even now, computing is almost totally absent from most education; web/desktop-based CAI (Computer-Assisted Instruction) still hasn't caught up to the PLATO computer system of the '60s-'80s, and is still based on the same repetitive drill or appallingly bad "educational" games that didn't work then, either.
As usual, I have no answers, only pointed questions.
I have a review up of the new HackMaster Basic, in which I savage and praise it alternately.
I recently got an offer for cheap subscription and a request to do advertising with an iPhone-oriented magazine, so I take a look, I'm willing to spend money to make money…
…but it's only distributed quarterly in print (for a yearly subscription) and on Zinio.
Really? In 2009?
Print is, essentially, dead. Old people still read print newspapers and magazines, but anyone young enough (and some old people who still keep up) uses the Web to read news. A printed magazine is going to be at best weeks, and at worst MONTHS out of date by the time it comes out. Back in the '90s, reading on a flickery CRT was unpleasant, but most of us have nice LCDs, or even e-paper.
If there aren't enough eyeballs, you can't make a profit by advertising, and the kind of people who buy print magazines are the least likely to be my customers.
Zinio is even worse. It's a DRM-locked PDF reader. I used to get a few magazines on it… until it decided my computer was no longer valid, and nothing I could do, no email or phone call to their customer abuse line, could ever re-authorize me. They have a web site with a terrible, slow, unbelievably awful Flash reader. It's like someone set out to make reading online so miserable you'd have no choice but to buy print. Normally I attribute these things to incompetence, not malice, but what Zinio does goes far beyond mere incompetence.
I won't read a Zinio mag, and as a potential advertiser, I wouldn't expect any tech-savvy customers to come from it.
Let's take a look at four other publishers:
- iProng has a really sweet free PDF, unlocked, you can read it with Preview.app, and subscribe in iTunes. It's hyperlinked throughout so it can interact with the Web. It's my second-favorite music magazine (after Metal Hammer).
Clearly they make good money from advertising. The ads are a positive, they're one of the reasons I read it, so I can see the cool products being pushed there.
- ATPM: About This Particular Macintosh
- ATPM is a semi-pro volunteer "e-zine", distributed as HTML on the site, or PDF for download. It's not glossy and rich, but it's a good informative newsletter, and the content is as good as any product magazine on a newsstand has ever been.
- Python Magazine
- Python Magazine is a paid (and somewhat expensive) technical journal in PDF or print + PDF; Python developer content only, but it's a lot like the old Dr. Dobb's Journal before DDJ went down the drain. It's well-designed, and well-written. The ads are sadly pretty thin, mostly conferences, which goes along with the price and the small but professional audience.
- Macworld is an old magazine, and not always in a positive way. They persist in publishing print; it has a long history on the newsstand, is general-interest enough to sell large numbers, and at monthly publication isn't TOO out of date by the time someone sees it, though still weeks old. It also has a digital distribution, but it's through fucking Zinio.
Fortunately, they manage to keep the web site up to date, and that's the only contact I have with their magazine. They have a Browse Macworld view on the site, which provides summaries and icons for each link, far more useful than their default web site.
Macworld is probably unique in the Mac market in being able to still get away with that kind of retro behavior, and even there, even with a growing Mac user base… it can't be easy. The market is just too small for anyone else.
For a new publication to be copying the business model of Macworld, except slower and less relevant and more focused, on a fast-moving platform where news can come and go in a day or a week? That's… unrealistic, to be charitable.
The publisher of the magazine gave me some quarterly distribution numbers… they're less than this infrequently-updated, non-professional, ranty, non-advertised little blog gets per month. I expected low numbers, but to see exactly how low was horrific. I almost want to subscribe out of pity.
On my Python page, I've updated my command-line Utility.py framework and added the Filter.py app I use instead of grep, sed, awk, etc.
Utility.py is one of those things that's trivial to make not quite right, but really hard to get the last half-mile, so the framework, tiny as it is, takes away a small headache.
Filter.py solves a big headache. I used to be the zen master of awk, but these days it's hard to remember every little language's syntax, while I use Python daily. So I can do something easy like this:
Filter.py -e "print line.center(80)" somefile
Or something complex like this:
Filter.py -b "self.data.total = 0.0" \
-s "^(-?[0-9.]*)\s+(.*)$" -r "\1" \
-e "self.data.total += float(line)" \
-a "print 'T:', self.data.total, ', AVG:', self.data.total / max(1, self.matched)" \
(An equivalent single-purpose Python script wouldn't be much longer, but would be a pain to write, whereas that long command was trivial to write)
It's all under a BSD license.