Not long ago, I started work on a project that we decided would build on top of an existing application instead of reinventing the wheel ourselves. Its something I’ve done countless times before, and was confident in the decision and the reasoning behind it: re-use existing components, and leverage the power of open source software.
Now that we have launched the site, I still think that overall our reasoning was sound and the decision was correct. However, unlike in the past, I had significant unforeseen difficulties implementing the particular piece of software we decided to build upon.
I’ve come to believe that there are definite stages that software developers go through when learning a new concept or technology, and you can’t claim to know that concept or technology until you have progressed beyond several of those stages.
I wanted a way to make automated backups of Web sites that was easy to implement and maintain, easily understandable, and consistent across my hosts and server application architectures. I have explored a number of alternatives, including some rather large server based approaches, but they all seemed deficient in some way.
So, I ultimately decided to glue together mysqldump and wget with some bash scripts and cron as a lightweight way to make backups that could easily be adapted for my different hosting configurations and different software architectures, now and in the future, while still being more or less consistent. As a bonus, this approach is implemented almost entirely on the machine I use for development, so there is very little that I need to install and configure on the host machine for each site. This post explores this approach; if you have a similar need, you may find it helpful.
This is an approach I took to download iCalendar data from a remote site, then process and display it within Zope with minimum dependencies. I have tried to document not only the specifics of the approach, but what motivated me to do it and what limitations exist.