jlm-blog
~jlm

4-Aug-2014

Faces are hard

Filed under: web — jlm @ 22:10

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.
(more…)

16-Nov-2013

… and also the wrong things with the wrong people

Filed under: web — jlm @ 18:21

G+ advertises user control over sharing on post complaining of G+ unauthorized oversharing

<SOURCE>

 
"That's what we call Irony!"

5-May-2012

RSS death, the Javascript trap, and SaaS

Filed under: web — jlm @ 12:34

I read this recent post by Vambenepe on the campaign to kill RSS, and it bothered me. RSS/Atom is what makes a dynamically updating web usable, and here it as an open, decentralized protocol was being replaced by closed SaaS offerings under central control. For a reason I wasn’t sure of, it reminded me of Stallman’s anti-SaaS essay “The JavaScript Trap” from some time ago. That essay didn’t sit right with me: Because your software comes from a webserver on demand, instead of being pre-installed locally, doesn’t make it or what it does any more or less free, and Stallman’s solution of blocking javascript not tagged as being under a free-software license is impractical. And indeed, in the years since, we’ve seen plenty of open source javascript code written and published, coexisting alongside a vibrant ecosystem of proprietary javascript code, just like we have with client application software.

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).

In short, if you want to use Google’s word processor, you have to use Google for its data store. You can’t say “I love Google Docs’ UI, but I prefer to use Amazon for data storage.” SaaS leverages control or preference of one aspect (the code) into use of another aspect (the data). Why should the SaaS provider have custody of your files? You can store your data with any number of hosts, and the “cloud” lets you access that data from any client machine. But not if you want to access a webapp. Then it’s only if your data is hosted with the SaaS provider. And that’s the real Javascript trap.


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.

7-Mar-2010

Prisoners’ dilemma and web advertising

Filed under: web — jlm @ 19:20

I use AdBlock Plus; I installed it after certain weight loss ads featuring ugly 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.

16-Feb-2010

Dire time for webcomics?

Filed under: web — jlm @ 13:06

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.

14-Mar-2009

e-Government fail

Filed under: politics, web — jlm @ 23:26

[XML parsing error from www.whitehouse.gov]

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.

14-Nov-2005

Restarting firefox after a crash

Filed under: linux, web — jlm @ 15:11

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.

9-Sep-2005

What is that thing, anyway?

Filed under: web — jlm @ 17:19

So, the firefox logo makes sense.

[firefox logo]

A fox, with a firey look. Cool logo.

But what’s that thing behind the fox? Well, with the Deer Park logo, we get a better look.

[deerpark logo]

But if you look closely, you see that the shapes on the FF globe don’t match those on the DP globe. And they don’t look like the continents I know. Maybe it’s just an ordinary circle with abstract shapes? But it’s shaded like a globe. Is it one of those funky extrasolar planets? (They’re planning a Galaxy Wide Web!)

I think I preferred the fox. I also liked the old Red Star mozilla logo, not so much the dino head or the big “m”. And don’t get me started on the ship steering wheel or the big “N”. Even the old NCSA Mosaic logo was better than those.

[mozilla red star][mozilla dinosaur head][mozilla "m"][ship rudder wheel][Netscape Navigator big "N"][NCSA Mosaic logo]

Why does every iteration of the product need a new logo? Doesn’t seem like the best way to build brand awareness. Compare:

[Microsoft Internet Explorer logo]

New Firefox

Filed under: web — jlm @ 14:27

Firefox 1.5 beta 1 (“Deer Park”) has just been released.

This was good timing for me, as I’d just updated GTK+ from 2.4.14 to 2.8.3 in order to get GnomeMeeting working, and that had broken Firefox 1.0PR, so I was back to using the old Mozilla 1.7 I had lying around.

Download pre-built versions at http://www.mozilla.org/projects/firefox/ or build it yourself from the source at http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/1.5b1/source/

This will unpack into a directory named “mozilla”, so be careful about clobbering other mozilla builds if you have them. Build directions are at http://www.mozilla.org/build/

The “Starting the Build” directions didn’t work for me, instead I had to do what it has under the box: cd $objdir; ../configure; make

Oh, and the tarball it makes from make -C $objdir/browser/installer is tagged “1.4” still, but that’s minor enough. Now I just need for the extentions and “themes” (skins) to be updated.

24-Aug-2005

suphp and WordPress

Filed under: linux, web — jlm @ 13:14

Okay, so I now have WordPress working with suphp, which allows for the use of Unix user accounts in php scripts. Steps:

  • I made a dedicated jlmphp account, so php won’t have access to my main account.
  • The hosting server (ofb.net) runs Debian, so I installed suphp with
    apt-get install libapache-mod-suphp
  • In the Apache config, I put the lines:

    LoadModule suphp_module /usr/lib/apache/1.3/mod_suphp.so
    suPHP_Engine on

    and

    <VirtualHost *>
    ServerName php.mandelson.org
    DocumentRoot /home/jlmphp/www/data/
    </VirtualHost>

    The first set turns suphp on, the second set makes a virtual host “php.mandelson.org” with its own www directiory in jlmphp’s homedir.

  • Made a CNAME aliasing php.mandelson.org to mandelson.org, so that when you look up php.mandelson.org you get this server.
  • Changed the blog address to be http://php.mandelson.org/wordpress/
  • In the .htaccess file for jlmphp, put

    AddHandler x-httpd-php .php

    (which tells Apache to use suphp for .php files in this directory), and put in redirects from the old blog address to the new.

  • Made wp-config.php user-readable-only and change the passwords. (Which is the whole point!)

Powered by WordPress