Since 2008, I ran the Scot­tos­phere on a rel­a­tively obscure plat­form called Pyblosxom, hosted on a dusty FreeBSD machine at the far end of a slow DSL con­nec­tion. This arrange­ment worked out sur­pris­ingly well.

Begin­ning about a year and a half ago, some frus­trat­ing extended out­ages led me to believe that it was time to move the whole oper­a­tion to a server “in the cloud.” (For­give my egre­gious use of a buzz­word.) This I did, but before I could go live with it, I had to con­front a whole bunch of bugs caused by some arcane incom­pat­i­bil­i­ties between the lat­est ver­sions of Pyblosxom, some newer Python libraries, and the heav­ily cus­tomized plu­g­ins on which the Scot­tos­phere relied. Among other prob­lems, com­ments didn’t work at all. I hacked on it for longer than nec­es­sary to con­vince myself that it was time to take a dif­fer­ent approach!

I wanted to move every­thing to a new plat­form that was feature-rich and well sup­ported (so I wouldn’t have to write every new fea­ture myself!) but capa­ble of being fully cus­tomized. This left me with only a few choices. Word­Press was the obvi­ous stand­out, but it has a lot of neg­a­tives: it’s huge, rel­a­tively slow, and writ­ten in PHP. The default tem­plates and func­tion calls pro­duce a hor­ri­ble mess of HTML that’s nearly unread­able by humans. But it turns out you can cor­rect most of WordPress’s sins with a cleverly-designed theme, which I set out to do.

But first, I had to bring in my old data. One of the won­der­ful design fea­tures of Pyblosxom which I will miss is its abil­ity to store posts in any sort of markup you desire (HTML, Mark­down, Tex­tile, etc.) and refor­mat them on-the-fly in any out­put “fla­vor” you can design (HTML, XML, etc.). I designed a spe­cial “fla­vor” for Pyblosxom to spit out the entire site—entries, com­ments, and all—as a WXR file, an XML for­mat used by Word­Press. After pro­cess­ing with a bunch of cus­tom Python scripts to cor­rect obso­lete markup, fix bro­ken links, and move old images over to the new server, I was in busi­ness. Nearly.

Writ­ing a Word­Press theme from scratch was a lit­tle intim­i­dat­ing. I had no desire to write a bunch of PHP or learn the inter­nal work­ings of the soft­ware, but it was the only way to meet my many design objec­tives. Here is a list of fea­tures that I think are important:

  • Posts are located at exactly the same URLs as they were before. Link rot both­ers me, so it was impor­tant not to cre­ate a new scheme.
  • Respon­sive design. I read Ethan Marcotte’s fan­tas­tic book, Respon­sive Web Design, and real­ized that the era of pixel-based fixed-width lay­outs is over. Nearly every ele­ment on this site, includ­ing the images, is now agnos­tic about the size of your screen. Try resiz­ing your browser or view­ing the site on a smart-o-phone and you’ll see what I mean. Imple­ment­ing respon­sive design harder than it seems, par­tic­u­larly with image cap­tions and embed­ded videos.
  • New fonts and graphic design. It’s dif­fer­ent, but I con­fess I’m not much of a designer. What do you think?
  • Bet­ter typog­ra­phy. Auto­matic hyphen­ation of words helps keep the right mar­gin look­ing nice on these long posts.
  • Micro­for­mat sup­port. The addi­tion of some machine-readable tags to the HTML makes it pos­si­ble for search engines to bet­ter make sense of this site.
  • Ten­ta­tive HTML5 forms sup­port. I designed this site to be more or less XHTML 1.0 com­pli­ant, but one of the bet­ter fea­tures of HTML5 is browser-based val­i­da­tion of form fields. For the com­ment form, I turn this on with a lit­tle (oh no!) JavaScript. A pleas­ant side-effect on mobile devices is that a more appro­pri­ate vir­tual key­board is dis­played for each of the fields.
  • Word­Press post for­mat sup­port. I wanted a bet­ter way to show off pho­tos and set them apart from the more text-based con­tent. You prob­a­bly won’t notice if you read this site pri­mar­ily through a feed, but I think it’s cool. Watch for it!

April 29, 2012 April 29, 2012 meta by Scott 8 Comments

This site runs on Pyblosxom, a weird but inter­est­ing weblog sys­tem writ­ten in Python. Pyblosxom has the dual ben­e­fits of being very light­weight and extremely cus­tomiz­able. Instead of using a SQL data­base, it stores entries and com­ments in a filesys­tem tree, which is very con­ve­nient for peo­ple who pre­fer a com­mand line to a Web inter­face (me). When I selected it in early 2008, it was still being actively devel­oped. It also gave me a good excuse to learn Python, which I have done with mod­est success.

Per­for­mance and reli­a­bil­ity prob­lems with my cur­rent server have led me to want to move this site to a faster vir­tual server “in the cloud.” Nat­u­rally, I would install the lat­est ver­sion of Pyblosxom on said machine, right? Well… For a few months I’ve been test­ing pyblosxom 1.5rc2, the fruit of two years of spo­radic devel­op­ment by the 3 other peo­ple who actu­ally use this soft­ware. Because some back-end redesign neces­si­tated many changes to my Scot­tos­phere mod­i­fi­ca­tions, it took a while to get it con­fig­ured again. And indeed, my non-public stag­ing server is now about 100 times faster than the cur­rent site. But, to my great frus­tra­tion, I still can’t get com­ments to work prop­erly with Ajax. It has become a huge waste of time to debug, and I’m ready to throw in the towel. I really don’t want to start over, but I won­der: should I just give up and switch to Wordpress?

November 16, 2010 November 16, 2010 meta by Scott 1 Comment

I am pleased to announce the “soft launch” of my new photo gallery site: http://photos.scottosphere.org/.

Some excit­ing work is under­way behind the scenes and I will be announc­ing the addi­tion of more gal­leries as they become avail­able. There are many improve­ments over my old, home­brew sys­tem: more speed, a bet­ter inter­face, and higher res­o­lu­tion top the list. Many of my old photo gal­leries (2002–2009) will be re-appearing under this new site, enhanced with search­able cap­tions and key­words and, in many cases, improved quality.

Thanks for your ear­lier sug­ges­tions on how to do this. As always, I wel­come your feedback.

August 11, 2010 August 11, 2010 meta by Scott 4 Comments

After an extended absence, the Scot­tos­phere is up and run­ning at a new domain: scottosphere.org.

My orig­i­nal domain was hijacked last month by a spam­mer in Dominica. Godaddy, my orig­i­nal reg­is­trar, was moti­vated to not con­tact me about my pend­ing expi­ra­tion: by auc­tion­ing expir­ing domain names at a markup to spam­mers, Godaddy makes an extra profit. And by tak­ing over pop­u­lar sites, spam­mers get a brief burst of search engine expo­sure and traf­fic. The Inter­net is no longer a friendly place.

Please update your links to point to my new site! Thanks.

March 13, 2010 March 13, 2010 meta by Scott 3 Comments

  1. Drink­ing alone—the new going out?
  2. My Stim­u­lus Package
  3. Cook­ing with Scott: Six 1200-calorie meals under $6

February 17, 2009 February 17, 2009 meta by Scott 3 Comments

I used to take a cer­tain mea­sure of pride in keep­ing no archives of my old posts. There is some­thing appeal­ing about using the Web as a sound­ing board for thoughts that even­tu­ally fade away, but more fre­quently I find myself wish­ing I could refer back to old material.

Well, it was no small feat, but I’ve done it. Using a mish­mash of home­made soft­ware I was able to recover every dated entry from the old hand-edited Web page going back to 2001. Fol­low the links at the bot­tom of this page to yearly sum­maries. You can browse entire months or view indi­vid­ual entries directly.

July 19, 2008 July 19, 2008 meta by Scott 5 Comments

Despite my well-documented and some­times poignant dis­like of weblogs, weblog­ging, the blo­gos­phere, and espe­cially the word “blog,” I have decided to ven­ture into the land of “Web 2.0” with this… well, what­ever you want to call it. I’ll call it the Scottosphere.

I hope that this medium will allow me to post more fre­quently than the old hand-edited web page, and that the “com­ments” fea­ture will fos­ter dis­cus­sion when the sub­ject war­rants it. Entries will have per­ma­nent links. In addi­tion, a feed is avail­able for syndication.

I also took this oppor­tu­nity to school myself on the sur­pris­ing num­ber of changes to Web stan­dards that have been made since the release of my favorite browser, Netscape 4.0. This site strives to com­ply with the lat­est good prac­tice for XHTML and CSS while pre­serv­ing the min­i­mal­ist look of the orig­i­nal web-page-o’-fun. Syn­di­ca­tion is avail­able as an Atom 1.0 feed, since that is the for­mat endorsed by the IETF. RSS is also avail­able on request.

June 27, 2008 June 27, 2008 meta by Scott 6 Comments