PyBlosxom status: 01/01/2007

My semester break is drawing short and I didn't get much of what I wanted to get done done. I merged Lance's documentation fixes in, I'm fiddling with a new pyblcmd script, and I'm cleaning up things I started, but never finished.

Ryan is going hog-wild with getting the comments plugin to a better place.

I was thinking of switching the web-site to use MediaWiki and in doing so solve a bunch of issues we have, but I think I'm going to wait on that for a while. In the meantime, I do plan on doing a web-site update and make it look more like some other Python-project web-sites. In the process of doing that, I think I may move it over to be statically rendered.

That's it for this status report--trying to keep it short and sweet while getting across that some things are happening, but it's slow going.

Many thanks to Lance and Ryan and all the other folks who have been putting time and energy into PyBlosxom over the last few months. You guys rock!

Sprint PCS, the final chapter

A couple of weeks ago, I started a family account at Working Assets and switched S over from Verizon and me over from Sprint PCS. The switch-over was a little dicey partially because there were so many numbers involved and I think they had set us up a little wonky. I switched us over one at a time because I figured we'd have issues, so we were sufficiently prepared to have a phone out of service for a few days. I tried calling Sprint PCS to cancel my account and make sure everything was ok, but all the numbers I could find required a valid Sprint PCS number to get through to someone. Regardless, everything's great now, we have two new phones, we're saving about $20 because we have a family plan, and S can call me whenever she wants for free. w00t!

Today I got a bill from Sprint PCS with a $150 termination fee. I tried calling the telephone number on the bill and couldn't get through to anyone because you need a valid Sprint PCS number. I finally called 1-800-SPRINT-1 (their telesales number), got through to someone who was really annoyed because I called the wrong number, but she patched me through to Customer Service. Then I talked to a really patient and wonderful person who's name I don't recall. We worked through the timing of events and it turns out that my 2-year contract started on the next billing cycle and not (as the Sprint PCS representative at the store told me) when I paid for the new phone and switched over. Anyhow, bottom line is that I cancelled a couple of days too early. She put me on hold for 10 minutes or so and then when she came back she happily told me that they waived the cancellation fee after noting that I had been a good customer for 6 years or so.

From this I note the following things:

  • It's good to have copies of the paperwork in front of you so that you can tell them all the specifics: bills, credit card bills, receipts, things you've signed, promotions you took advantage of, .... Sure they have stuff in their system, but I think the line-items in their system are somewhat open to interpretation.

  • It's good to be polite and courteous. The person on the other end of the phone isn't responsible for the mix-up--they're helping you to sort it out within the bounds of the wonky system they're in.

  • It's good to allocate lots of time for working through issues with big companies because it often requires talking to multiple people (keep logs of all chats and who said what), sitting on hold, and explaining the details again and again.

At the end of the day, everything seems fine and I've completed one of the major tasks for "winter break". w00t!

bluesock upgrade almost done....

I decided that one of the things I would do during "winter break" was to upgrade the hardware that bluesock.org sits on. There were a couple of minor issues, but otherwise the upgrade has gone very very smoothly. This time around, I'm writing up a massive "everything about this server" document. I think I may build a template out of it since it's the sort of thing that would be useful for other machines I have. It's much easier to deal with all the machines when I have an accounting of what went into them.

Anyhow, bluesock.org now has twice the oomph. Unfortunately, "upgrade bluesock" took several days to do, but it was only a single item in my todo list of around 25 items. I need to start adding items like "pat yourself on the back" and "take a nap" to my todo list--items that don't take too long to do and aren't as torturous when you look at a list of 25 of them.

Status 12/13/2006

I've finished my third (out of four) semester of grad school on the way to get my Masters in Computer Science. This semester was really tough, partially because I didn't have the experience and knowledge coming into my classes that I needed. Even so, I learned a huge amount of stuff, much of it immediately applicable, and ended up with an A and a B+.

I'm taking a compilers course next semester with Olin Shivers which should be really exciting and I'm going to do a project on DAJ input specification stuff (I still have to work out the project statement).

Between now and next semester, I've got a boatload of stuff to do. I'm going to catch up on PyBlosxom, help Ryan with the contributed plugins (and comments), work with Lance to get the documentation updated, and hopefully release a version of PyBlosxom that is a radical improvement in the maturity of the project code, infrastructure, and process.

It'll be a busy month....

Status 12/07/2006

I had my last class of Semantics in Programming Languages today. We finished up with proving adequacy between the denotational semantics of the Untyped Lambda Calculus (the P-omega semantics from Scott) with the operational semantics. It was pretty wild stuff... Most of it a little over my head but mostly because we zipped through it due to the impending termination of class (class turns out not to be bottom--it does in fact terminate).

I have a bit more to do on a project for my Advanced Software Development class and I think I'm going to write up a case-study for using DAJ to build a unit tester with test cases described by a DSL. DAJ has all the pieces to make this very easy to design, build, maintain, and modify.

I'm going to be doing a research project related to DAJ next semester which I'm excited about. But... that's a month away at least. For now I'm going to prioritize and cruise through my backlog of stuff I've been sitting on. Like finishing up the work I was doing on PyBlosxom over the summer.

Deleting tickets in Trac

I'm having problems with spam in my Trac instance which keeps track of my PyBlosxom plugins. It's ... irritating. Anyhow, now that classes are almost over, I decided to poke around and figure out how to delete them rather than mark them as "invalid". Turns out it's really easy:

$ trac-admin [project-dir] ticket remove [ticket-number]

Apache not serving static files correctly?

I innocently did an apt-get dist-upgrade today and suddenly Apache wouldn't serve any static files, but anything generated by CGI scripts worked super! Apache would send the headers for static files complete with a Content-Length correctly but wouldn't send any data in the HTTP response (even for an HTTP 200).

I spent hours trying to figure out what was going on under the assumption that I did a bad upgrade. I skimmed documentation, made sure my conf files were ok, did dozens of Google searches and then finally gave up and walked away for a couple of hours.

Long story short I finally hit gold with the right mantra of search terms and bumped into the EnableSendFile diretive. I added:

EnableSendFile Off

to my Apache conf file and it works fine now.

I mention it in case someone else does a dist-upgrade with Debian testing on or around November 15th, 2006 and discovers themselves in the same boat.

Status 10/18/2006

It's been a few weeks since my last blog entry. My classes are really hard. This semester I'm taking Semantics in Programming Languages (covering operational and denotational semantics and a bunch of other stuff) and Advanced Software Development (covering structure-shy adaptive programming, AspectJ, DemeterJ, DAJ, DJ, and various techniques) and it's been a wild semester so far.

I've put everything else I normally do on hold until the end of the semester when I get some downtime.

Interestingly, I wrote a very similar blog entry last year.

problems upgrading tetex-bin

I went to update bluesock today and had wicked problems when it tried to upgrade tetex-bin to version 3.0-18. Every time it'd try to configure tetex-bin, it'd fail with this:

Setting up tetex-bin (3.0-18) ...
Running fmtutil-sys. This may take some time... Error: `etex -ini
-jobname=jadetex -progname=jadetex &latex jadetex.ini' failed
Error: `pdfetex -ini  -jobname=pdfjadetex -progname=pdfjadetex &p
dflatex pdfjadetex.ini' failed

and lots of other output.

After futzing with things for a while I finally started skimming the Debian BTS and discovered bug 334613. Towards the bottom, Frank says that he can reproduce the bug by having jadetex installed before upgrading.

So I did an apt-get remove jadetex then an apt-get upgrade and tetex-bin installed fine as did everything else. Then I re-installed jadetex and docbook-utils and my system is happy again.

Figured I'd mention it in case anyone else had the same problem.

Update:

Update: I have multiple systems: one desktop (running Ubuntu Dapper), one laptop (running Ubuntu Edgy), and one server that I lease from ServerBeach (running Debian Sid). The jadetex problem I had was on the server running Debian Sid. I have no idea if the same problem occurs on my Ubuntu boxen. Figured I'd add that additional detail.

Ubuntu Edgy Eft thoughts (2)

I've been running Edgy Eft for a week or so now. In that time, I have successfully performed the following feats that surprised me:

  • docked and undocked my laptop without shutting it down and restarting (something that Windows XP would bluescreen on); the battery applet pops up, the screen dims, the laptop <i>knows</i> when it has been docked and undocked

  • undocked my laptop, plugged in an HP 1510 PSC printer (USB connection), added a new printer, and printed out my estimated tax forms (which I need to fill out pronto)

  • switched between docked and ethernet to undocked and wireless (for some reason I consistently had problems with my wireless connection)

Minor point: I've only had Windows XP and Ubuntu Edgy Eft Knot 2 (with lots of updates so far) on my laptop, so I can only compare between them.

The reason I bring this up is that I'm really excited because this is really fantastic. The total amount of time I've spent installing, fixing configuration files, reading through forums and researching problems, etc. is at most an hour. I spent some time trying to figure out a minor problem I had with installation, but that's it; everything has worked in a way that has been hassle-free.

I'd like to thank the Debian folks, the Ubuntu folks, and all the other thousands of folks who've worked to make this a reality.