I’ve been working on a new extension for Mozilla, and spent the better
part of yesterday afternoon beating my head against a problem (as
usual). When working for a XUL
how the hell do you get the absolute URI for each resource you’re
generating? For the unfamiliar, templates allow you to use RDF to
generate content in your application. Mozilla does this with bookmarks,
mail folders and even mail messages. And every item in the RDF resource
has a unique URI. And the RDF schema’s documentation is, well… nearly
non-existant. At the end of the day yesterday I was completely frustrated.
This morning I had a “brilliant” thought about how I could use other
properties to interpolate the URI. So I implemented that in my
prototype, and it mostly worked. Two hours; not bad. And then I just had
a thought: I wonder what element id the template generates by default?
(I was just wondering if they were unique) So I wrote a test program,
and there it was: the id is the absolute URI . Now, maybe that’s
documented somewhere. Maybe I overlooked it. But it should really be IN
BIG F***IN CAPITAL LETTERS somewhere. Sigh.
Lizzard, you almost beat me. But not this time; not this time.
I’ve been busy with papers and exams for school the past few days, but
am happy that I turned in my final research paper last night. Now it’s
just finals, and then a break. The nice thing about working at a school
as well as attending school is that I actually get a Winter Break. I
Since I’ve been doing a lot of writing for one class and a lot of
programming for others, I’ve been spending quite a bit of time at my
computer. I’m on a perpetual quest for the perfect work music; something
that allows me to block out the world, focus on the work, and become
“inspired.” Now I have a new favorite: The Soundtrack to The
right, as usual.
Phillip Glass does an amazing job of conveying the emotions of the book
and film through music. The Hours is one of my favorite
one of my favorite
and now one of my favorite CDs.
There’s a well-trodden adage comparing programmers to musicians, and
while I have certain doubts about it’s truth, I do find myself more
focused (productive?) and creative while listening to music such as
this. And naturally I want to share what I’m listening to with others.
As an iTunes and Movable
Type devotee, the iTunes Trackback
Script is cool;
it queries iTunes and posts trackbacks with the artist and title of
what’s currently playing. But I want something better. What I really
want is something which queries iTunes, sees what’s playing, gets cover
art from either iTunes or Amazon, and then creates a post for the album
in a particular blog category. I know all the pieces are available to
make this an accessible task; maybe during break. Maybe using
And on the subject of iTunes; wouldn’t it be cool to add Creative
Commons licensing verification? Maybe display the attribute icons in the
“LCD” area? Just an idea at this point; anyone know if iTunes provides
hooks to draw things differently, or display different “tags” there?
OK, mozCC 0.7.0 is out. You can read all about it
perfect, but a step forward.
At work my workstation runs Gentoo
Linux. Gentoo appeals to the control freak in
me: I like being able to build software from scratch with a minimal
amount of hassle. And their tools are a cool use of Python. But due to a
profile glitch in Mozilla
Firebird, I haven’t been
able to use mozCC with my
profile, and have been just too lazy to deal with exporting bookmarks,
etc, etc to get a new one created.
Over the weekend I updated Firebird on that machine to 0.7. Imagine my
suprise this morning when I fired it up and the (CC) toolbar icon was
there! Holy shit! Somehow my profile was magically healed!
But that’s not the best part. Browsing Boing
Boing, I noticed the attribute icons on the
status bar and realized “Hey! They’re licensing their work! Cool!” Now I
know that they have the Creative Commons button at the bottom of the
front page, but I’ve just never scrolled down that far. And I don’t mean
to stroke my own ego (OK, maybe a little), but I suddenly realized just
how convenient mozCC is to me, personally. Which is just a little more
motivation to get off my ass and get the new release put together.
After some great debate and discussion with Mike and Ben, ccRdf 0.3.0 is
now available. Improvments include smarter handling of predicate-object
pairs in the RDF and clarification of the API. You can find more
information here. Enjoy.
While of questionable interest to many of you, I’m still pleased to
announce that the first public release of WordCited has made it out the
door. WordCited is a plugin for Microsoft Word
which allows you to create MLA Works Cited (nay, Bibliography) entries
with a minimum amount of pain. You can find all the pertinent
information at wordcited.com. Yes, it’s written in Visual Basic. I’m not
proud of that. But it is Open Source. If you write academic papers, or
just need to cite your sources, I think WordCited will help you out.
Ok, I love MIT’s OpenCourseware
initiative. I think it’s a cool idea and a great contribution to the
commons (my words, not theirs). But this
post to Phillip
Greenspun’s blog just pisses me off. In the words of Jill Sobule, “why
are all our heros so imperfect?”
For your enjoyment, and apologies to Nina
Question: Why did you choose Microsoft Content Management Server?
Answer: We read a Gartner Group report that said the Microsoft system
was the simplest to use among the commercial vendors and that
open-source toolkits weren’t worth considering.
Question: Who did the coding and development for you?
Answer: Why cheap-ass coders in India, of course. (paraphrased)
I’m very happy to announce that ccLicense.py is now ccRdf. And this is
more than a name change. Previously ccLicense.py existed only to serve
the needs of ccValidator.
While it was initially intended to stand on it’s own, I destroyed that
objective in my haste to get the validator working. After some friendly
prodding from Mike and
Ben, and some good discussions about what the
API should look like, I’ve rewritten the code as it’s own Python module.
And because it handles more than just licenses (works, for one), it’s
First, where to find it. I’ve put up a very simple page for it
here. You can find download and
documentation links there, along with a brief description.
Second, expectations. I hacked the code together this afternoon, so
there may be omissions or bugs. I’ve done some simple testing, but it
hasn’t undergone any extensive testing. At all. I’m planning to port
ccValidator over to it in the very near future, which I believe will
help expose flaws in the design and bugs in the code.
So download, code, enjoy, and as always, feedback, criticism, and bug
reports are welcome. You can e-mail them to
email@example.com if they’re ccRdf specific.
While doing my morning surfing I ran into two very cool items which I
don’t presently have a use for. But I want to.
First, Ryan Wilcox
PyObj-C, the Python-Objective C
bridge for Mac OS X. I’ve seen this mentioned before, but Ryan has a
good post that makes me want to try it out. And I would, if not for some
nagging belief that programs should work. Anywhere. I mean, I love my
Mac. I love developing software on it, and I love the fit and feel of
it. But if I write some software, I’d like to be able to share it with
my unenlightened friends running Windows, and I’d like to be able to use
it at work where I run Linux. I suppose there
are some things that I’d be happy to have as Mac only, I just haven’t
come up with a good one yet. But when I do, PyObj-C, here I come.
Second, an addition to the already excellent Eclipse
Project, the Visual Editor
project brings GUI building to Eclipse.
I don’t do much with Java, and wouldn’t know if at all if not for the
fact that most of my Computer Science courses use it. I guess I’ve
developed a grudging respect for it. It’ll do in a pinch. When Python’s
not available. We’re required to use Borland JBuilder for class.
JBuilder is possibly the worst IDE I’ve used. It definitly doesn’t meet
my expectations for Borland tools, which are based on years of Turbo
Pascal and Delphi use. But it did do Swing GUI’s, so I couldn’t
recommend Eclipse to my professors. With the addition of VEP, though,
Eclipse is now the clear reigning Java IDE in my book (don’t even
mention NetBeans, please). Now if I only had a Java project to use it
on…what am I saying? Wishing for a Java project? I have to go lie down.
So I survived the holidays and am back to work today. Yes, I did take
some time over the weekend to realize just what I’m thankful for. No, I
don’t want to talk about it.
So I’ve spent most of my day today working on a few fronts. First,
trying to integrate help into WordCited. I’ll be damned if I can get it
to work consistently, and I’m kicking myself for agreeing to do Windows development.
Second, I’ve been working (not just today, but for the last week or so)
on squashing some mozCC
bugs. I’ve taken care of a few,
and am preparing to release an upgrade to mozCC. If you’ve had problems
with it, or have suggestions, now is the time to let me
Finally, I’ve been working on refactoring and improving my Python
library for handling Creative
blogged about the need for improvements
and am working to take care of those issues. It’s also going to finally
get it’s own module in CVS in an effort to separate it from the validator.