Metakgp:Governance/Election March 2017/SOP Naresh R
I am Naresh (13CS30024), dual degree student in Computer Science and Engineering currently in my fourth year. I have tried to justify and highlight some of the key aspects that I consider crucial for a future maintainer from MetaKGP.
Contributions to MetaKGP
I have been active on MetaKGP’s discussion forums for about a year now, and have recently started actively participating and contributing as well.
- A fix to improve Naarad, that removes a deprecated dependency and plugged in to make use of Facebook's Graph API directly. I am currently in talks with existing members regarding a proposal for several significant changes to its existing model.
- As a part of InterIIT-Tech’s ‘Dashboard’ problem statement, I am also working on adding course reviews to Wiki, fixing the broken search function on mfqp, building a web-interface for gyft and making kgp_cab_centrale a reality.
In an attempt to save the reader from an unattractive huge wall of text, I have divided this SOP into 3 sections - ‘Introduction’, ‘past experience’ and ‘plans as a maintainer’, where I have tried to concisely, but also exhaustively answer some questions one might expect a future maintainer at MetaKGP to answer now. I have subdivided the individual sections into abstract ideas, as well as solutions to specific goals that I intend to tackle. All specific goals are marked with a timeline, with a few goals marked as "Minimum Achievable Goal" (or "<MAG>" in short) that I will seek to complete as a bare-minimum during my term as a maintainer. Feel free to skip sections that might be irrelevant.
I have previously taken up several administrative roles, with significant contributions summarized below:
TLS (3 years)
- Joined in my second year, and still active as a senior editor. Was one of the only five 3rd years who were in charge of all activities at TLS during 2015-2016.
- Was directly involved in management of finances, interactions with Gymkhana for sanctioning of funds and permissions for 2 of the flagship events at TLS - Kavya Sandhya and Kavyanjali and for production & distribution of Alankaar (annual magazine distributed to the graduating batch on Convocation day) during my tenure (2015-2016).
- Was solely responsible for all interactions with the Spring Fest team for allocation & setup of TLS' stall at the arena, judge selection and reception, management of the team and resources for all events associated with TLS at Spring Fest, 2016.
- Personal mentor for several members from the junior batches to help them with their works and issues within and outside TLS.
- Headed the selection panel for English team for the 2015 and 2016 sessions.
CodeClub (2 years)
- Active for the entirety of my first and second years at KGP, I was directly involved with all major activities taken up by CodeClub.
- Was solely responsible for bringing in sponsorship in the form of cash / goodies from 7 distinct sponsors for Bitwise, the annual CSE departmental fest, 2014 and 2015 included.
- With absolutely no help from any of my peers, conducted an introductory seminar for the CSE '15 batch at LBS hall, and introduced them to CodeClub.
- During my second year, headed meetings with the then first year members and coordinated with them for the conduction of fortnightly CodeNite competitions and orchestration of events at Bitwise.
Google Students club (1 year)
- Conducted workshops on the polymer project and Android design with Gaurav Jain (Google Student Ambassador, 2014) and Avijit Ghosh (now part of KOSS)
- Was responsible for creating the blog posts to be sent to Google at the end of each event.
OpenSoft captain, LBS (current)
- For the first time, currently communicating and collaborating with 23 members from a technical point of view for OpenSoft '17.
I have worked as a backend intern at ezDI, Ahmedabad last summer, and will be joining Intuit, Bangalore as an intern this summer. I have also worked with the Autonomous Underwater Vehicle group for a year, where I was a part of the software team. Most of my work there was focused on the image processing aspects of the bot.
My major takeaways from my past experiences include
- Elimination of all fear of public speaking, having taken part in dramatics / hosted events as a speaker at Kalidas auditorium, Vikramshila, SF arena and various events with TLS in smaller gatherings around the campus.
- Familiarity with the workflow for most activities across KGP.
- Built a good rapport with students from all years, involved in a wide range of activities across the campus.
Plans as a maintainer
I strongly believe MetaKGP is very different from most student groups in campus in the way that MetaKGP does not have a hierarchy in terms of how the members collaborate on some work, and there is no unjust distribution of responsibilities between them. All members are treated equal, in terms of their opinions, their ideas and their work. I’ll consider it high priority to keep it this way, and make it my duty to make sure any decisions are taken with the consensus of the group as a whole. In accordance with the true spirit of Free and Open Source that MetaKGP as a community believes in, all decisions and participation will be transparent, and can at any point be brought up for questioning by someone with an opposing view that eventually can everyone agrees upon.
<MAG, 4 months>: The heavily skewed sex ratio in MetaKGP makes it a very hostile environment for women who might be interested in joining, but feel intimidated by the same. This is a very important problem to tackle. Despite having been in similar situations in other societies, I cannot propose a magical solution to improve this situation. The best we could do now is try! A recent discussion on Slack initiated by one of the female members brought to light a women’s perspective on the issue, and some possible measures were suggested, as summarised here. In very short terms, the key idea would be to experiment with different women-focused events that could introduce them to 'programming-for-leisure' and to MetaKGP’s vision, and hopefully attract initial women participants to MetaKGP. Once done, their feedback cab be taken and iteratively reworked upon to reach out to more women in KGP.
<every month>: The Wiki is going to grow bigger with time, and moderating all the content can never be a one-(wo)man task. So, I’d like to establish one layer of ‘interested volunteers’ who could help with moderating all the content there. This group will be dynamic and can change every month. Incentives you ask? Treats!
In terms of participation, there are several aspects to look into. As of now, described in a crude manner, MetaKGP is mostly a community of ‘programmers’ building projects that help the community at large in KGP with different facets of their life here. My vision of MetaKGP is to maintain this sanctity, but at the same time, evolve into something that helps introduce the people in KGP to the joys of programming, problem solving and collaborating.
<MAG, first month of autumn semester>: The single greatest way to increase the visibility of a ‘society’ in KGP would be to get a proper introductory seminar in the beginning of every academic year. So, I shall definitely be pushing for one of these early August, so it becomes easy to get the attention of first years in KGP. TSG is currently involved in allotting slots to societies for this purpose during the period and hence I shall attempt to get in touch with the newly elected GSec handling this by mid-July. Getting people to this event can be greatly boosted by a one-time wing-publi in their halls of residence, and doesn't need more than 3 hours of work.
<MAG, every 2 months>: I strongly believe hackathons are a great way to collaborate and get projects off to a great start, thanks to the format and the promise of a deadline. MetaKGP has already started on it’s path to achieving this with ‘Hack day’ and various other meetups and as a first step I shall strive to ‘formalize’ this, so as to make it regular instead of haphazard events. This can be achieved with the help of a subset of the existing community, aka the volunteers. This would be a dynamic group that can help the maintainer(s) with organizing and conducting these events. Well ahead of the start of every event, there shall also be a request for 'interested mentors' who might be interested in helping the students and/or sharing their learning and knowledge, technical or otherwise, with the participants before and during the hackathon. A short talk on a topic / framework of choice by a mentor a few hours / days before the hackathon and suggesting students to optionally pick up their new gained knowledge through the talk for the hackathon will help with greater participation from the inexperienced programmers. The involvement of mentors also motivates more students to take part, as they could gain the experience of working alongside these mentors.
<no timeline>: As an addition to the previous point, I will be attempting to get MLH (or a similar organisation) that supports student-conducted hackathons across the globe to sponsor atleast one event each year. I wrote a not-so-impressive rant last year on a Facebook comment on the KGP logical group regarding Hackathon culture in KGP. But for some reason, the original post was deleted by the admin. Here’s a copy, in case you’d like to have a look. The reason I keep this as a separate point is the fact that this might easily fail, since MLH has only now begun sponsoring hackathons in Asia.
<MAG, 1 year>: Greater visibility of the Wiki, and the push for more users and content is something I'd consider highly essential, and the key idea for getting more contributors for the Wiki would be to convert MetaKGP into a verb within KGP. While this sounds highly ambitious, a quick-fire way for this would be to get quirky stickers that can be stuck around campus. (Probably bad) examples: Unable to find Ashim's centeen's number? MetaKGP! Need guidance preparing for GRE? MetaKGP! Confused about subject registrations? MetaKGP! Need to learn more about KGP? MetaKGP!!! Stickers are a relatively cheap investment to make and can be stuck at different canteens and hotspots around the campus. Mid-way between posters or nothing, this might just work.
This should be the easier amongst all the responsibilities. I’ve done numerous projects in my 4 years here, and have gained enough technical knowledge to atleast understand the technicalities involved with a lot of the existing MetaKGP projects, and in a position to either directly or indirectly help a member when in dilemma or is facing any issue. While there are a lot of ideas for improvements and changes to current projects, those are ones I can carry on even without having to be a maintainer and have thus kept them away from this SOP. Managing deployment of the Wiki and other projects and utilisation of the server is already well established, and is managed by several members within the organisation and needs no change as it is.
<MAG, once every year>: "Brainstorm KGP!" (for the lack of a better name) would be an online push for great ideas and moonshots that the general public (and members of MetaKGP) can add to a Wiki page, that they'd like to see MetaKGP work on. This could generate a very interesting influx of ideas from the diverse public that could be different from the demographic of existing members.
<1 year>: One grand plan I have is to create an API for all things KGP. While most of the current projects are done end-to-end, I’d like to separate it out in such a way that there is a central API created by MetaKGP that startups and students can utilise in their projects. There are a lot of loose ends on this idea that have to be discussed before carrying on. This is a moonshot. I will be pushing for this discussion regardless of whether or not I’m a maintainer.
<1 year>: I also plan to complete some of the existing (but in progress / abandoned) projects started by started by past members, with the help of the MetaKGP community. I have personally begun work on the ‘YouTube cache’ project proposed by Sanyam Aggarwal, and have discussed the same with a few seniors and friends and hope to get it up soon. While not objectively gauged, I believe KGP's bandwidth is currently throttled by YouTube traffic, and solving this problem can greatly reduce network load, and in-turn increase internet speeds. The major problem with this? This goes directly against YouTube's TOC that states "no rights or licenses are granted to reproduce or distribute audiovisual content or make audiovisual content available in any manner other than through the use of the YouTube API Services in accordance with the Agreement". Hence, bound to fail for this reason. I will be pushing for this discussion as well regardless of whether or not I’m a maintainer.
As a personal task, I’ll seek to review, improve and add Wiki content as and when I can, and ensure the quality of the Wiki is ever sublime. I can also take responsibility, with the help of other members as well, for managing the Facebook page and other PR work that is usually done on a regular basis.
Apart from this, getting to know other members personally is always fun and refreshing! So regular meetups to discuss personal interests, books, poems, songs, and just about everything under the sky is A MUST. Bakar, treats and more bakar!
Why not me?
I am currently in my 4th year, and in the event that I'm forced to sit for placements (read as 'No Pre-Placement Offer), I might be caught up with my preparations during the Autumn 2017 semester and could slow down on my activities as a maintainer.
If you want to build a ship, don’t drum up the men to gather wood, divide the work and give orders. Instead, teach them to yearn for the vast and endless sea.
— Antoine de Saint-Exupéry
Get in touch!
Personal site (Last updated: October 27, 2016): http://ghostwriternr.me/
Blog: A Silhouette's Squire
Facebook: Naresh Ramesh
- The idea of conducting talks before the hackathons was incorporated into the SOP after suggestions from Rishabh Madan and Siddharth Kannan during a meetup.
- One important point that I had missed as an oversight during my initial draft of the SOP is the push for getting a professor as a mentor for MetaKGP. This has been covered in proposals by most other contestants, and is something I'd be in strong support for, irrespective of whether or not I'm a maintainer.
About YouTube TOC:
Indian Copyright Act 1957 Section 52 (1) (c) says (See https://en.wikisource.org/wiki/Indian_Copyright_Law#CHAPTER_XI_:_INFRINGEMENT_OF_COPYRIGHT);
- 52 Certain acts not to be infringement of copyright.
- (1) The following acts shall not constitute an infringement of copyright, namely:—
- (c) Transient or incidental storage of a work or performance for the purpose of providing electronic links, access or integration, where such links, access or integration has not been expressly prohibited by the right holder, unless the person responsible is aware or has reasonable grounds for believing that such storage is of an infringing copy:
- Provided that if the person responsible for the storage of the copy has received a written complaint from the owner of copyright in the work, complaining that such transient or incidental storage is an infringement, such person responsible for the storage shall refrain from facilitating such access for a period of twenty-one days or till he receives an order from the competent court refraining from facilitating access and in case no such order is received before the expiry of such period of twenty-one days, he may continue to provide the facility of such access;
- (1) The following acts shall not constitute an infringement of copyright, namely:—
Providing a cache is considered transient storage and YouTube has not explicitly prohibited it and hence arguably is not illegal. If YouTube comes to you complaining about your cacher, stop offering it, period. In intellectual property law, for every act you will find a section in the law which says it is illegal and a section which will say it is not. So don't preemptively assume that something you are doing is illegal.
On a side note, providing exception for transient storage is important because otherwise network providers will be regularly sued for copyright infringement. Another thing you can do is claim that you are only providing the cache software and it the people using the caching software who are doing an illegal act not you. It is like being sued for selling a knife which is used to commit a murder. It doesn't mean that you have no liability but that is determined by complicated rules of secondary liability which I won't go into. Anyway the point is that you can argue that what you are doing is legal, and it is legal unless the courts says otherwise.
BTW obligatory, I am not a lawyer and this is not a legal advice.
Comment on Law
I don't think we should worry about legality here. In most cases like these, Youtube, Google, etc simply stop giving API/data access to Extensions, OAuth sign-ins and other content just for violating terms of service. Violating terms of service in itself isn't illegal. So we shouldn't be worried about Youtube suing us, they cannot counter the Fair Use doctrine but we may violate the law by bypassing technical barrier.
I appreciate that you have explicitly written about upholding transparency in metakgp.
Fixing metakgp's gender ratio I appreciate your intentions and your attempts to characterize the problem and providing a summary of the discussion on including more women in metakgp.
Establishing one-layer of interested volunteers: The proposal isn't well articulated, how will you establish this layer, exactly what will be its role. Because of its vague nature it is also hard to judge the failure of success of this after end of your term. I also don't understand <every month> tag in this proposal. Though if it is done "right" it can be helpful. Here are my SCAMP score for this proposal.
Calibrated: 1 Doesn't discuss possibility of failure
Magic: 2 Its okay
increasing visibility by intro seminar
Increasing visibility is definitely important and conducting an intro seminar looks like a good way to do it.
Calibrated: 1 your talking about talking to GSec's and all but we might not get a slot, so we need to find an alternative. Another failure mode is lack of publicity about the even itself. If no one knows about the event no one comes to it, think about how you will handle that.
Magic: 3 I like it.
I really like this idea, as you said stickers are cheap and can be very effective. Rather than doing this sometime in next year you should do this as soon as your term start. We can order stickers online with websites like http://www.inkprint.in/stickers-labels , I'm sure we'll be able to find shops which can print stickers locally.
Measurable: 2 or 4 depending on what the proposal is, if the proposal is to make "MetaKGP into a verb", then I highly doubt we can measure it, but if the proposal is print and put stickers in various places on campus, then that can be measured very easily.
Coherence: 3.5 (refer to the comment in measurable)
Calibrated: 2.5 There isn't much which can fail here
Magic: 3.5 I really like it.
(Siddharth, @icyflame on Slack):
Overall, I like this SOP, I will only put forth my thoughts on some of the proposals:
1. heavily skewed sex ratio : I liked your approach to this on Slack and here as well. I also believe that "events that could introduce them to 'programming-for-leisure'" are very important. (Not just for women, but for _everyone_)
The only way to solve this problem, is to take some initiative and see the results for that. And then work from there.
2. Seminar in Autumn for first years: again, I like this idea. Your approach to it is good, and we will probably take it up, no matter if you are elected as the maintainer or not. I believe that your previous experience as TLS governor and your contacts in TSG will be very helpful for this process. So, you might be a good point man for this proposal.
3. hackathons: I have several misgivings about hackathons. The Hack days were great, but a key feature that was missing in them were the short talks given by members on something that they are working on right now, or something that they learned and would like to share with other people (could be papers, a problem with your computer you solved, Ops issue, books if people are so inclined, etc). 20 minutes or so would be enough, and this would be a great way to get people to start speaking about what they are doing and also learn a lot about a variety of projects. TL; DR: Hackathons can be great when done right. But they really skew the audience against attending the next one if the one they attended sucked.
4. Metakgp as a verb: Might want to keep in mind that Google as a verb is more popular, so maybe we could try telling people Google for PFC Phone number Metakgp That google search's first result was the Metakgp Wiki page for PFC and the third entry was Yellow pages on Metakgp. (I don't use Google as my primary search engine) This brings up slightly better search results than PFC Phone number IIT Kharagpur, which has it's third page as the PFC page on the wiki.
5. Revival of existing projects: Hmm, very exciting! Something to keep in mind: the technical cost of getting started with such projects is quite high, so I hope that you can take out the time to do it.
You should also mention in the SOP that you will have your placements in December and your involvement might be less if you feel so. Of course, if you don't feel so you should say that. I am speaking from past experience with CS seniors in their placement semester.