Yearbook: A home to countless memories

Atishya jain
Devclub IITD
Published in
4 min readJul 1, 2018

Life moves so fast that you gonna document that 📟. Similar was the situation with our seniors here at IIT, who had a convocation ceremony ready within a few days. Those were the last few days left with them to cherish their long 4 or 5 years stay with friends 💑. That was the time when our seniors approached our society and asked for a solution to capture all the memories as a memento of their life spent at college.

Now, we all have a strong relationships with our seniors here at IIT as they are the ones who always stand for us in difficult situations. We never even think for a second to give them a call even in odd hours. How could we downside their request although the deadline was too near. Convocation day had almost arrived and we had to build a solution before anyone leaves the campus, so that everyone gets enough time to imbibe their feelings into it. We too wanted to present our seniors with a gift that reminds them of our presence. So, we decided to give it a try and quickly formed a team responsible for this task.

We decided to build a yearbook which will be a compilation of all the thoughts and memories that one has for another. Now, each step required a thinking to make them as desired for our seniors. Consequently, like every design process we followed a cycle of 3 steps 👴:

  1. Learn: We sat with some seniors to ask them their requirement and possibilities in a yearbook. We decided on with 2 main features. One being a poll for various positions like Most Handsome 👱, Most sleepy 😴, etc. and the other being comments passed from one friend to another. Now, we realised that students are more attached to other students of their own department and not other departments. Hence, we decided to publish the yearbooks department wise and not batch wise. Batch wise would make the yearbook too bulky to generate as well as maintain. But to cater need of friends from inter-departments, we allowed comments from other department students too but polls were kept intra-department. So, we had to create a portal where all these features would be available with ease and then generate an yearbook at the end. A simple possibility could have been filling everyone’s responses through a google sheet 😛, but that could not serve our purpose. The reason being, not everyone is comfortable with every comment that he/she gets to be shown publicly in the yearbook whereas some comments may simply not be appropriate. To get this transparency we had to create a simple and intuitive portal. Thus, are task was defined.
  2. Develop and Test: We decided on to have Django as a framework for our portal as it allows fast development and provides high scalability to the project. As we were building it, we had to make it robust to attacks from unknown users enabling secure authorisation and verification at each step. We decided to identify each individual through their kerberos ID’s which were unique as they were provided to them through IIT. We also had to authorise them using kerberos ID’s but as we were not allowed to store anyone’s kerberos passwords, we used IIT’s inbuilt API for user authentication and verification through kerberos ID’s. The same API is used with any application deployed withing IIT’s network. We worked on our toes to finalise this portal and it’s technical details regarding model structures can be viewed in our README.
  3. Launch: Now, came the deployment phase of the project. With deployment comes the real testing of a product. We created various scripts to extract student’s data from IIT servers and create accounts for only the one’s who should have access to the portal i.e our seniors. We had done testing at various levels but we didn’t know what may happen with a huge database and server load because we hadn’t performed any tests on the portal with a huge database of 800 students and their records. Something of similar nature happened. Our portal grew to be irresponsive and began to hang 😱. We now had to work on our search-find algorithms and also transport the minimum data sufficient to serve the purpose. Still for security purposes, verification of data had to be performed both on server and user levels. Again with help of our senior and more experienced members of our club, we were able to deploy a stable working application before the deadline which was ready to use by everyone. Now, this 3 step cycle will once again go the next year, when we would be releasing the better version of this portal to make it more easy to use product.

We were very happy as were the seniors to receive the news of yearbook portal. For some seniors, it came as a surprise and they too were very happy 😄.

Conclusion: We finally came up with a carefully designed product which can be used by anyone after modifying it a little as per their needs. User can fill up his/her entries and accordingly manage the received entries to display or not in the yearbook according to one’s own opinion. Finally, we add all the pics uploaded by users to make a collage and append it in the yearbook. We encourage everyone to have a look at our repository and help us make it better by raising issues at the repository.

Cheers !!. If you have anything to say do drop us a mail at contact@devclub.in. We would love to hear from you.

Thanks Team DevClub

--

--