swf is dead, a closed-source project shut down by its owner (Adobe) a few years ago.
Kazerad, best known as the artist-author of the web comic Prequel Adventure, wrote a touching eulogy for it on twitter here.
This kind of thing is how humans break computers in that world. Here in reality, it’s how computers break us humans.
From early on in styling this blog, I’ve had the sidebar on the top right, with the main blog content flowing against it, then after it ends lower in the page, below it. (You won’t notice this if your browser is very wide, as I cap the width of the main body at 50 em, but if you shrink it some you’ll see this.) Frankly, I’m surprised this is so unusual in blog and related webpage themes, which generally keep the space beneath sidebars empty, just wasting that space. (At least, when it’s not filled with ads.) This is super easy to do: in the page’s layout, have the sidebar’s markup come before the main body and give it the CSS style rule
There’s only one thing I consider a problem with this technique. In text console browsers (lynx, links, elinks, etc.), it shows the sidebar before the main content because the sidebar is in the markup earlier, which is way less friendly than if it appeared after. If I move it after the body, then it shows up better on the console, but now it’s at the bottom of the page in the graphical browsers used by all sane people, which is no good. I’ve had a soft spot for the console browsers from almost my first encounter with the web, long before I started this blog. The reasons for that is another story, but there’s no way I’m going to sacrifice the view in graphical browsers for improving the console browser experience, so I’ve kept the sidebar earlier in the markup than the main content all 15 years I’ve run this blog. And all that time I’ve felt tiny, insignificant tinges of regret for not offering a better experience for the extremely rare visitor from a console browser.
Well, it turns out it is so not a pain it’s almost funny. I’m familiar with giving elements “names” with the
document.getElementById("TheName"). And moving an element from where it is in the original markup to inside another element is just
NewEnclosingElement.appendChild(ElementBeingMoved). Putting those together, I simply:
- Replaced the
<?php get_sidebar(); ?>in the theme’s
- Gave that element a
float: rightCSS rule
- Added this to the theme’s
(WordPress names the
<div> that encloses the sidebar “menu”. I picked the name “sidebar” for the
<div> which “menu” gets moved into.)
And … that’s it. The blog now looks like I want it to in both lynx and firefox. I probably shouldn’t have waited 15 years to look into this!
So, there’s this webcomic Prequel Adventure set in the Elder Scrolls: Oblivion universe. It’s an excellent comic, with a compelling plot and great humor. (It also is paced extremely slow, with a real-time:in-universe-time ratio that handily exceeds even that of Freefall.) The panels are drawn simply, supporting the story’s elements and the comic’s jokes, and clearly indicating that the focus is on telling a good story in a funny manner, and not on having beautiful art (another similarity with Freefall). But despite the comic’s simple drawing style, there’s one bit which Kazerad absolutely nails: Facial expressions. I mean, look at the final panel from this page.
But it finally gelled: The problem with SaaS is that it welds the data to the code.
Let me explain using “traditional” software applications as an example. You have documents you edit in Microsoft Word. These documents are
.doc files which are on your disk drive and you can do anything to them that you can do with any other file: Copy it, delete it, encrypt it, archive it to tape, attach it to an email, etc. All outside of Word. If Microsoft does something to annoy you, you can even edit the documents in WordPerfect or AbiWord or OpenOffice or anything else which understands the
.doc file format, which there are plenty of because file formats aren’t protectable as intellectual property.
Contrast this with the SaaS situation: You can’t give a WebDAV address to Google Docs for a document you want to edit in that webapp, and have it open and save to that file. You can’t manipulate your Docs files at all, except through the webapp. The only way you can (eg) attach it to an email is to be using Google’s email webapp, and hope that Google’s programmers have provided integration between them (at time of writing, they haven’t).
Update: Seems Steve Wozniak has some concerns along these lines, about you not controlling data you upload to a cloud store.
Update 2: Now Wired is sounding this alarm, with the focus on data security.
I use AdBlock Plus; I installed it after certain weight loss ads featuring ugly caricatured jiggling fat bellies started appearing all over the web, making browsing disgusting. Many people find that web ads make their browsing experience unpleasant in various ways, so adoption of AdBlock Plus and other blockers have been increasing significantly recently. This in turn has web publishers worried, because they see all these visitors showing up on their sites with the ad blockers, so they’re not getting the ad revenue they planned on, and that means more red ink on their balance sheets. (See this current Ars Technia article.) But when I turn ABP off, the web becomes intolerably hostile: Sites are slower, and when they do load they’re full of flashing ads and I get ad copy playing over my speakers and popping up over the text I came to the page to read. So now visitors are fed up, they block all that crap, and publishers can’t make their ad money, they shut down, visitors have no where to go, and everybody loses.
What happened? It was supposed to be visitors get “free” content because the publishers are ad supported, and this worked for a while. But this relies on the implicit social compact that visitors don’t block ads, which has as its unstated counterpart that publishers don’t make their ads so intrusive that visitors get annoyed by them. So I think we have a situation similar to a prisoners’ dilemma: visitors can defect by blocking ads, improving their own browsing experience but denying publishers their ad revenue; publishers can defect by showing intrusive ads, bringing in more revenue but destroying the visitors’ browsing experience. (It’s not quite a PD, because the payoffs are the same when the visitors defect regardless of whether the publishers do.) It seems to me that the publishers defected first, coveting the additional money from the worse ads, and we’re now seeing a tit-for-tat from the visitors, fueled by annoyance at the publishers’ defection.
And my experiment of turning ABP off shows that the publishers are still defecting, and defecting “harder” than before. Whatever your position on the morality of browsing with ads blocked, I think we’re going to see more visitors turning to blocking as long as intrusive ads are ubiquitous in web publishing. If the publishers go back to simple ads, which don’t move and flash and pop-over and piss users off, then publishers won’t see new internet users installing ad blockers, and us existing ad block users will be more inclined to turn our blockers off. But we’re going to continue defecting as long as the publishers are.
The Ars Technia article is titled “Why Ad Blocking is devastating to the sites you love”, but from the other side it could be called “Why intrusive advertising is destroying your users’ tolerance for your business model”. The publishers defected long before the visitors did, and turned a deaf ear to user complaints, and so I’m unsympathetic to cries from them that we’re now defecting too. Publishers have been pissing in the pool for years, and now they’re surprised users are putting on full-body wet-suits? Blame us ad-blockers all you like, but until you look in the mirror and make the web tolerable to surf without an ad blocker, the situation won’t get better for either of us.
This recession has been bad news all around, with many businesses shuddering their stores and swathes of jobs lost. I’ve noticed several webcomics I’ve been following for a long time have recently shut down too. Bruno the Bandit announced its effective cessation mid-story. Angband: Tales from the Pit had an ending storyline for its wrap up. User Friendly has gone into repeats. Homestar Runner has quietly stopped updating. There’s a constant rise and fall in this “industry”, low entrance costs means competition is heavy, but I’m sad to see long-time players bow out in succession.
There’s some small growing pains on the welcome road to a more online government.
It’s not quite as amusing as when I get this kind of thing from Failblog, though.
After a crash, do you get messages saying firefox is already running and to shut down your old instance before starting up a new one? You need to delete the invisible “.parentlock” file in ~/.mozilla/firefox/$profile. It might also help to kill any gconfd processes and remove any files named ior anywhere under ~/.gconf (find them with find ~/.gconf -name ior).
Why can’t these apps store some kind of host-process identifier in their lockfiles, so they can detect staleness? (See eg. screen, which easily distinguishes local-live, local-dead, and remote.) gconfd is especially annoying, because it doesn’t report the errors except to the syslog, so the user just gets the mysterious symptom of their configuration settings disappearing.