Archive for the ‘Start’ Category

The making of Memento

Monday, February 11th, 2008

What is Memento
Memento is an online knowledge portal to facilitate students and scholars research needs.  It aims to help students discover scholarly articles, store, sort, and organize them in different ways, share them with friends and advisers and finally help them write their proposals, thesis, etc. Currently students have to deal with plethora of software such as EndNote to manage their articles, Word to write and share their proposals, Google Scholar to search for articles, etc. Memento aims to integrate these different tools and go beyond that - develop a community knowledge space where each can provide their own experience about an article.

How “Memento” started?
Memento as a project started in Fall 2005. It all started with my fascination for web technologies and semantic web. Till 2004, dynamic/database-driven webpages were a big mystery for me. I was always fascinated thinking how these webpages can change their content and integrate information from many other websites. Finally, on one fine day, Dhiraj, my roommate then, showed me the path to enlightenment. He showed me the basic workings of MySQL/PHP. As at that time I was also staring my Phd, I thought of developing a website to search, store and share scholarly articles. I had two motivations for developing Memento. First, I wanted to get a first hand experience of developing dynamic webpages. Second, I wanted my literature survey accessible from anywhere anytime. Hence, I ventured into this project.

Why the website is named as “Memento”?
Just before I started working on this project, I saw a movie named “Memento“. In the movie, the main character is suffering from memory loss. He can’t remember past events. I felt the same way about my literature survey. I was bad in remembering author names, articles, journal names, year, and other details. Hence, I named my website as “Memento” - a website that helps with my forgetfulness :(

How “Memento” evolved ?:
Current version of Memento is the third version of its evolution. The first version was developed to address my own needs and thus was developed with a single user in mind. Soon, I realized that Memento can be helpful to many other and its really value is in capturing the community knowledge. So to handle multiple users, I developed another version of Memento. As I was learning and developing at the same time, I wasn’t aware of many excellent frameworks to help you optimize your PHP code. I wrote all the code to handle database queries and almost created my own web development framework. As the project expanded, I realized that I need a more robust framework to deal with models, views, and controllers. Finally, I started shoping for frameworks to handle web development. I tried several frameworks - drupal, ruby on rails, Qcodo, etc., - and finally settled for CakePHP. Current version of Memento is based on CakePHP and uses JQuery to handle ajax and other animations.