2008Q2 Grant Proposal - Solidifying and Extending the Blog Normalize project
Name: David Moreno
- Title: Solidifying and Extending the Blog Normalize project
Consolidating the base core and concepts of the Blog Normalize
project, as well as building ten new two-way modules for it.
Solidifying and Extending the Blog Normalize project
Consolidating the base core and concepts of the Blog Normalize project, as well as building ten new two-way modules for it.
Benefits to the Perl Community:
The Blog Normalize project (http://search.cpan.org/~damog/Blog-Normalize-0.0rc2/lib/Blog/Normalize.pm
) benefits both the Perl community and the blog community in general by allowing users import and export content from blogs and CMSs. This would make outsiders take a look at Perl to make their migrators from one system to another.
Blog::Normalize plugin modules with import/export capabilities of posts/comments/categories (where they apply) fully functional and ready to roll for WordPress, MovableType, Tumblr, TextMotion, Joomla, Blogger, LiveJournal and the Jaws Project (eight blogging systems).
- Write one article about the Blog Normalize project for Perlbuzz.com.
- Consolidating concepts for the Blog Normalize project (better documentation and ideas discussed with other people).
Blog Normalize attempts to integrate a solution for people to migrate to and from different blogging systems. It's most of the time, a pain in the ass to write convertors from one blog to another. The normalization of this process is just a matter of maintainability and getting the jigsaw pieces together. Blog::Normalize attempts to normalize data between different sources and makes it easy to export and import, being a traditional blogging system dealing with a database schema or a totally Web-based system, a flat-file based system, etc. Each of the modules are done to provide the same functionality, so content could get through one system to another, to another, to another, transparently.
Some work has been already done on Blog::Normalize but a lot is missing yet. More emphatic concepts and definitions are still to be decided and a real base class to allow plugins to be subclasses properly still has to be done on the saner way. This project would
make this happen and additionally, would deliver eight different networks for popular bloggins systems. A simplified proof of concept has been started on the Blog::Normalize pod available on CPAN.
It will take me six weeks. The first two weeks will be done to redefine the mother class and concepts for generalization and normalization. Then, for the next four weeks, I will be working on delivering two networks per week. After delivering work each week, I'll be publishing my progress as releases on CPAN and asking people to QA and test on my blog posts. I can start working on this as soon as I get the grant approved. In anyway, I will be working on this, if the grant is not approved, for a longer period, just when I get free time.
My name is David Moreno Garza, I'm currently living in New York City, but my hometown is Mexico City. I'm 23. I have a strong Debian GNU/Linux background and I've been involved in a number of free software projects previously. I'm currently employed to do heavy backend Perl services and mantainance. I'm author of a couple of CPAN modules and a lot more for private developments mainly focused for Web. Because of this, I like the normalization of data so people can use tools more easily. Because of this and my own needs, I started formalizing and developing the Blog::Normalize idea.
I don't know, but is it possible that various blogging systems provide an api for importing posts? Either through Perl/PHP/whatever or via some kind of html interface?
I could imagine that for some systems there is more to be done for a new post than simply adding a single row to a database table. By doing that directly you might end up inserting data which doesn't make sense for the application or have missing parts.
I would have similar questions for exporting posts. How about categories? Multiple authors?
Perhaps instead of a Perl application what would be better is the definition of some kind of blog exchange format (maybe in xml, maybe an extension of RSS/Atom?) and a campaign to convince blog software authors to support it?
I agree with mlawren. Going into this project with only an ad-hoc plan for an interchange format is a recipe for failure. The import/export plugins are not the most important part. Instead, having a well-defined, well-researched intermediate format is the only way this project will be anything but a one- or two-off, IMHO.
It seems that this project would have only a minor impact on the community at large.
I studied both comments by
2.. Chris Dolan
and most appropriate is by Chris Dolan.
so that is why i could not write my own words.
I agree with mlawren