-
Notifications
You must be signed in to change notification settings - Fork 209
GSoC All Final Reports
Payal Chaudhary 2016
Amrutha Sangeeth 2016
Shwetambara Srivastava 2014
Ana Balica 2014
Chitra Khatwani 2014
Systers Portal is a platform for Systers and its sub-groups to share information. What the members needed now was a way to organize meetups on a global level. Systers used Meetup Everywhere for this purpose, until it was discontinued in December 2014. A GSoC project was started last year to create a meetup app within the portal. This year's project focused on completing the app.
- Completed the meetup app to a stage where it can be successfully used by the community.
- Completed all proposed features within the deadline.
- Meeting the deadlines every week was sometimes difficult. Some things like permissions were not mentioned in the timeline I had proposed, and they ended up taking more time than expected.
- I had limited internet access for the most part of the GSoC period. This meant that I could only refer the downloaded Django documentation for most of the problems I faced. This helped me learn and understand a lot more about the framework.
- Learned how to use git conveniently and effectively.
- Learned more about the Django framework. I had not worked with permissions and notifications in Django before, and I learned a lot in the process of implementing these.
- It was an enriching experience, both in terms of technical knowledge and in interacting with other members of the community, especially my mentors.
Systers has many volunteers that offer their skills, time and commitment to accomplish their vision- Women in Computing. The community has implemented a Volunteer Management System to manage their volunteer contact information, track hours and events they worked, and provide reporting functionality at the least.
Django 1.3 introduced class-based views and also added a range of generic class-based views. From then, function-based views have been marked as deprecated. Most of the function-based views in the Systers VMS portal violates DRY. Class-based generic views helps to streamline common use cases, saving development time and effort.
- Migration of all applications in VMS from FBV to CBV
- Cope up with the timeline which broke in between
- Correcting test case failures for each application
- Working with wonderful mentors
- Understanding Python-Django deeply
- Working in a great community
Being an organization that motivates women into computing, Systers- Anita Borg Institute was a great exposure for learning. The community always encourages new ideas and suggestions from everyone.
My journey with Systers was an awesome experience. Though I couldn't do to their expectation level, I enjoyed the work with them. I started contributing to Systers by small bug fixes and enhancements. I had a good bond with the community. Since I was familiar with Python-Django framework, it was easy for me to understand the code base. Understanding the code, I proposed the migration of Volunteer Management System(VMS) from function based views to class based views.
The work was divided into modules - migration of each app. We were two girls working on VMS. Myself concentrated on migration while the other girl was on testing. We had weekly meeting with the mentors and weekly report submission. All the completed task and roadblocks are discussed in the meeting. The meetings were so systematic and the discussions were fruitful. In between, I had a break in timeline due to unexpected change of locations. There was a long lag in the timeline because of improper planning. I had to leave some enhancements undone due to time constraints. The complete migration of VMS is completed by deadline with the constant support of mentors. I owe them a lot for the continuous support.
I see that women, who are into technical field is few, and Systers provide a great platform for women in computing.
The community has always been so active with instant replies on Slack channel and showed keen interest in solving issues. So when I thought of doing a GSoC project with Systers, it just felt right.
Having worked in Python-Django projects, I found it easy to understand the VMS code. Small bug fixes I did in VMS, helped me to work in VMS more easily. I will definitely continue working with the community and contribute my maximum for the betterment of VMS.
More than technical stuff, my experience with the community is my learning. Talking to mentors, fighting with the timeline, writing blog posts, evaluations, goodies etc. It helped a lot to improve myself.
The frequent roadblock I came across is test case failures. I had a troublesome time solving the issues. All together it was a nice time working with the team.
The user interface can be made better using attractive themes and templates. It should be little more user friendly such that a new user should be able to navigate easily without any confusions.
- My failures are my lessons. As I said I had a bad time following the timeline due to some unexpected things happened. Plan your time effectively such that no unexpected changes affect the flow of your work.
- Use mailing list effectively
- Talk to your mentors regularly. They can help you a lot in many ways.
- Document your things in parallel with your work
- Update the weekly reports without fail
Just a single word about them - Awesome Thank you Tapasweni Pathak and Nida Shar for your constant support and encouragement.
Coming to the final week of GSoC 2014 has been preceded with tremendously wonderful time well spent in coding for Systers. I have been absolutely thrilled throughout to be involved with the objectives and working of the organization and have worked sincerely to learn and contribute making the best of my time and efforts in doing so.
This being said, I'd like to also mention that like almost everything else, I had had my share of ups and downs during this summer of code. Sometimes things got inevitably prolonged or I had to stall for the lack of personal ability to learn new things any faster than that. Since my project of automated testing focused primarily on the Portal project, so it had an additional element of delay.
Over the period of Google Summer of Code 2014 I worked on the project of developing Testing Automation for Systers web application, building reusable and automated scripts for regression testing. I have been able to make test suites for the User Interface testing of the Portal and also Database connection tests.
The biggest challenge can be attributed to the part of keeping yourself to the proposed schedule. I learnt that the dynamics of software development should have margin for unforeseen obstacles or issues and flexibility while making time line as well as being disciplined about following the schedule works a long way to keep things from getting messed and difficult.
Apart from the technical accomplishments, I have acquired a lot more for my overall growth as a developer. Working for an open source organization has been a new and tremendously fulfilling experience. I had the opportunity to meet and work with several contributors and Systers along the way.
I have been absolutely thrilled throughout to be involved with the objectives and working of the organization and have worked sincerely to learn and contribute, thus making the best of my time and efforts in doing so.
I have checked in all the work for the Testing Automation in it github repository
The repository contains the Tests for the Portal specific UI features. I have tried to make it as generic so that I could be used for other web applications as well with minimal changes to the common code in the folder. Database tests have also been pushed, which will also be a part of my future work on automated testing. The Documentations can also be seen as Read-me on the repository and as a PDF file in Repository.
More details can be looked up on my wiki page
The following post is a wrap-up for the part of Systers Portal project developed within GSoC 2014, presented from the perspective of a student.
- Delivering something useful for the community (or soon to be delivered);
- Setting up travis-ci (Continuous Integration Service);
- Deploying Portal demo on heroku.
- Working with a team from 4 different timezones;
- Implementing row-level permissions in Django;
- Dealing with lack of code reviews for a period of time.
- A network of people involved in Systers community;
- More experience in working with latest version of Django;
- Communication skills.
The overall experience was pleasant. Systers is a warm community, where students receive a lot of help and support to get things done.
Github repo
Demo
Wiki
Personal
Google Summer of Code 2014 with Systers was an awesome journey. It was a great learning experience for a newbie like me. A brief overview of whole summer is as follows
Before applying for GSoC-2014, I had no experience with django framework. But during the course of gsoc program with the continuous guidance of Lynn, Ana (my teammate), Rose, I developed an application in Django, which pretty much serves its purpose.
During the summer I have gained collaboration skills while working with other students, mentors, and the community. Everyone has different perspective and approach to problems, and working in a team provides exposure to different ideas for the same problem. Me and Ana collaborated with each other , also she helped me at times when I was stuck.
We have accomplished every feature that was required in Systers Portal. Some features still have some bugs , we could not fix them within gsoc timeline , but yeah we will fix those soon.
Learning django from scratch , well I completely enjoyed learning it and I must say its a very powerful framework, It provides a lot of functionalities that one may need at times.
Newbie to open source , before gsoc 2014 I did not have any experience contributing to open source , while working on systers portal learnt how to contribute to open source projects , learnt about git , code review and a lot more things.
Implementing dynamic pages using django-cms was a challenge , It took pretty good time for me to get that done, Managing permissions was also a big task , since in portal we have different levels of access, solved this after discussions with Ana and came up with a good idea for permissions.
Before Gsoc 2014 I had no idea of django , but now I can say that my level in django is moderate.
Now I am pretty much comfortable in expressing my ideas in front of others. I have got collaboration skills while working with Ana, Lynn, Rose , which would always help in future. Working on systers portal taught me to work in a team with different people in different time-zones.
Ana Balica - She is one the most awesome persons I have met in my life. I learned a lot while working with her on systers portal, Since I was new to django and open source, she helped me in getting familiar with these quickly. We used to communicate daily to get things done quickly.
that I could achieve what I promised in the beginning of program. By working on Syster Portal project I became part of Systers Community , and I would always like to contribute to this community. Systers Keeper(Rose) needed this portal asap and I am happy that she can use the portal now.
In one word my overall experience was awesome. It was my first open source development experience. Working with Systers Community was a great experience. Learned a lot while working with Ana , Rose, Lynn. It was a great learning opportunity for me. Rose was a great help from the beginning of the program , I would like to thanks Rose for believing in me and giving me this opportunity and I am happy that I could achieve what I promised. I had with me the support of my fellow teammate Ana, mentors , they were a great help in achieving the goal. This was a great summer, its sad that it has come to an end now . I enjoyed and learned a lot during gsoc program and I wish to participate in gsoc next year also .
Documentation
- Project Requirements
- Setup and Install
- User Interface Design
- Development
- Database Design
- Initial Docs
- Main Concepts
- Future Ideas
Outreachy Interns
GSoC Students