I spent some time over the weekend building a rough tool with django to
host my code projects. It is only at http://www.doughellmann.com,
though that domain may not be available in your DNS cache, yet. I’m
happy with the schema for the results, but will probably tweak the
colors and layout for a while.
I have been using an Automator workflow inspired by an article by
Andy Ihnatko to download the latest image from the Astronomy
Picture of the Day site and set it as my desktop background. It also
adds a copy to my screen saver images folder. Some of the pictures are
pretty, and some are inspiring.
Check it out, if you are interested.
We have been using proctor successfully for several years now at work,
and it makes automating our nightly tests very easy. The build is
automatic, the software is installed automatically, and then proctor
runs the test suite. All 3000+ tests take several hours to run, mostly
because they aren’t all strictly “unit” tests.
I am looking for a tool to build out a site to host my code projects.
None of these projects are large enough to warrant anything like the
features provided by SourceForge. I don’t think my requirements are very
strict, but I haven’t been able to find anything to do what I want (sort
of a sourceforge-lite):
- I must be able to host the projects under a domain I control myself.
One domain for all projects is preferable since I don’t want to have
to edit my apache config every time I think of a new project.
- I do not care to expose my svn repository to the world, since it
contains plenty of stuff besides the projects that I do want to
release. Releasing source as tarballs or apps as disk images is good
enough for me.
- Each project needs a home page with a summary and links to releases
and release notes.
- Adding new releases should be easy. I will upload the release file
via ftp or scp, but I want to be able to add the reference to the
release file without editing a bunch of HTML each time.
- A blog is a nice-to-have, but I already have this blog, so it isn’t a
- I don’t need an issue tracker, forum or mailing list manager. I may
maintain an email address for support of all of the projects, or I
might use a google group.
I thought about Zope for a few minutes, but just don’t want to go
back in that direction. I used to use Zope quite a bit. I haven’t in a
long while, and the zen has left me, I’m afraid. Somehow the relational
model is more persistent in my grey matter. Plus, I’m still not over my
plone upgrade fiasco from a few years ago, which is why I don’t have
much of a site up anymore. I finally gave up trying to make the site
work, pulled the content out to preserve it, and just threw up a
redirect to the photo gallery.
I looked at drupal. It has some nice features, but I don’t like the
default appearance and I’m not that interested in learning another
templating language so I can improve it. WordPress has most of the
features I want, though I would have to edit release pages myself.
Again, though, they have a whole template language that seems like more
than I want to deal with for extensions. Maybe if I was already
PHP-enabled these would seem like stronger contenders.
I was hoping to find something built using django (or at least
parts I could assemble myself), since I am already trying to extend my
skills in that direction. It looks like the django-way to do most
everything is to build your own, though, so I suppose that is what I’ll
end up doing. I should be able to lean heavily on the admin UI for most
of my editing, so I would just need templates for presenting the
results. That’s not too bad.
Wow, VirtueDesktops has come a long way since the last time I used
it. I’ve made the switch from the older Desktop Manager, and aside from
not having the desktop pager available in the menu bar I am having no
trouble adjusting. Moving windows between desktops works as advertised.
I love using Desktop Manager for Mac OS X because it lets me
separate my tools into separate workspaces. I have a separate desktop
for communication (email and IM), local development (editors and
terminals), remote development (vnc), and miscelaneous (temporary
windows or apps like iTunes). With a simple keystroke I can rotate
between the different desktops, even using dual monitors.
Unfortunately, it looks like the recent update to OS X broke the
ability to move a window between desktops. I can still minimize, change
desktops, and then expand the window. But moving the window without
switching desktops doesn’t seem to work. Oh, well, I didn’t use that
feature much anyway.
The last release of Desktop Manager was in 2005. Maybe it is time to
take another look at Virtue Desktops.
We have an Exchange-like mail server at work, but it doesn’t support
iCal subscriptions. Since I use a Mac, and don’t have any interest in
Outlook, that makes calendar access a pain.
After some poking around, I discovered that the server stores the
calendar information in IMAP folders, with each event in a separate ICS
file attached to a fake message. So I put together a small script read
the IMAP messages and merge the ICS files into a single output file. By
writing the output file to a folder on the web server, it is easy to set
up a subscription in iCal.
The result only works one way, of course, though it should be possible
to push fake messages into the IMAP server. I have not tried that,
because I just use the server’s web interface for adding new events to
The script depends on the icalendar package from codespeak.net, and
the Python standard library packages for IMAP and email parsing.
I have posted the script to my server: mailbox2ics.