Internship at MPI-SWS and a summer to cherish

I spent summer of 2018 (May – August) as an intern in Prof. Krishna P. Gummadi’s research group at MPI-SWS in Saarbrücken, Germany. It was an enthralling and enriching experience to work on cutting-edge and high impact research problems, interacting with some of the best researchers and PhD students in the world, and also making some amazing friends from across the globe. In this blog, I’ll try to recapitulate what was the most happening and enjoyable summer for me thus far.

First off, the question which I have been asked very often since I updated my internship status on LinkedIn and FB: how did you get in? Short answer: PK’s recommendation can take you places. Long Answer: I have been working with Precog for the past 2+ years now. My first project at Precog (and with PK) was a collaboration with Rijurekha Sen (who back then was a postdoctoral researcher at MPI-SWS). Our work got accepted to SIGMETRICS’17 as a poster, and then later to ICTD’17 as a full paper, which I believe buttressed my application greatly. I applied to MPI-SWS around October 2017 through their portal along with PK’s recommendation to my eventual advisor, Krishna P. Gummadi. I got an email from Krishna sometime in late December informing me that I had been selected! And that is my long story short. To sum it up, MPI-SWS has an amazing and very competitive internship program for which you’d be competing against Masters and PhD students from some of the top universities in the world like ETH Zürich, EPFL, GaTech to name a few. In such a case, being an undergrad from India, your best bet is to stand out through your work experience and most importantly, your recommendations.

After a tumultuous semester, summer finally arrived. At Precog we had been reading research papers by Krishna’s group and often considered those papers as seminal works in the field. The thought of working with pioneers of their field was exhilarating. I explored multiple projects during my time at MPI. I started by working on adversarial machine learning, then shifted gears to work on data fairness in automated decision making and then finally settled on dabbling with detecting and mitigating discrimination in targeted advertisements. I won’t make this blog insipid by delving into the nuances of these projects, but, in the process of ruminating on these nuances I gained a lot of insights into both technical and philosophical aspects of research some of which have had an indelible effect on me.

On the technical side, I learnt about various notions of fairness in decision making, learnt a great deal about attacks and defences on machine learning systems (particularly neural networks) and even proposed my own attacks and defences on targeted advertisement systems. In addition, we used to have weekly reading groups where we would take up some interesting concept and deconstruct it to get an intuitive feel of what’s going on. However, the most important skill I gained out of my internship was to understand the importance of asking the right questions. Often times in the past, I had been guilty of over-complicating things and selling my work behind a veil of buffed up jargons. However, it was during my internship I realised that science is about elucidating rather than obscuring. After long thought provoking discussions, meetings which would warp time, my outlook towards research has been broadened.

Here’s a picture with the group at MPI. L-to-R: Till; Junaid; Reza; Prof. Niloy Ganguly, IIT Kgp; Prof. Krishna P. Gummadi; Bilal; Myself; Koustuv (intern, PhD at GaTech); Ashmi (intern, MS CS at TUM)

While it may seem at this point that my internship was only work, it was far from it. Being in Europe bestows you to some of the most picturesque places in the world. Being a football fan, in the midst of a world cup, was an icing on the cake. I got to watch the final in Metz, a small football crazy city in France and watched the 2 french open finals: women’s singles and men’s doubles on court Philippe Chatrier. Of course my journey in Europe would be incomplete without mentioning the amazing (and not so expensive) ice creams! I’ll let the pictures do rest of the talking.

 

Some culinary delights.

 

French Open (above) and Le Petit France, Strasbourg (below)

To sum it up, I would strongly encourage anyone looking for research internships to apply to MPI-SWS. I sincerely thank Krishna for having me at MPI and PK for recommending me.

A Summer at Precog

Prof. PK visited my college, BITS Pilani, Hyderabad Campus in March 2018 and gave a talk. The last slide said that he wanted interns and that was an opportunity I wasn’t going to let go. I applied, and after a task and an interview, I was in. The internship process was really smooth and all issues were dealt with promptly. IIIT Delhi does not let bureaucracy hinder work and progress. I love this fact about IIIT-D. There are many such small conveniences that make a big impact by easing out students’ and researchers’ lives. Everyone’s time is valued here.

The best things about Precog is its people. There were RAs and PhDs who led projects and discussions. Research sometimes can be solitary work and often prone to small setbacks. For someone like me, who was venturing into research work for the first time, the support and help from the RAs and PhDs was very necessary. I’m pretty sure all the interns felt the same. The people at Precog intellectually feed off each others’ brains. The internal mailing lists are a proof for this. I learned new things everyday. Where else will you get paid to learn a lot 🙂 ? I’ve learnt from each and every person during the 2 months I spent in Delhi.

The Team <3

The culture at Precog has been influenced a lot by Randy Pausch. For those who don’t know him, stop reading this right now and read ‘The Last Lecture’ or watch the talk on YouTube. I adored the Randy Pausch memorabilia scattered throughout the lab and PK’s room. We used to have a WhatsUp, a short meeting where everyone told the status of their work, every alternate day. I felt that the WhatsUps were like Scrum standups, except every alternate day. They were helpful since anyone who was stuck could explain his/her problems and ask for help. People also got a general idea of what everyone was working on and they would pass on relevant research papers or articles around. About once or twice every week, PK would ask someone to summarize a research paper. I did that a couple of times and loved doing it. From never reading a research paper to summarizing long papers, I feel I’ve come a long way.

At Precog, we had our share of fun too. We regularly went out to Nehru Place(good food ftw!) in the evenings. PK hosted a party for all interns at Barbecue Nation, and it was great! PK couldn’t be with us then, but he made sure to video call us. Many such small gestures show his love for the team. At the start of the internship, Prof. PK told us “Work hard and have fun too.” The people here made sure we followed that 🙂 . A new habit that I picked up here was playing board games. I was introduced to Catan and Small World. The fact that they still work together after playing Catan just shows how strong their bond is! (Those who’ve played the game understand this 🙂 )

The work at Precog has a direct social impact. Work on many diverse projects goes on simultaneously. Just listening to others talk about their work helped me learn a lot more than I expected. Isn’t it great to learn stuff without putting in a lot of effort. I was lucky to see the speed with which the WhatsApp lynchings problem was attacked. Seeing your solutions affect the world is a really satisfying thing. The Lab windows have research papers authored by Precogers taped for people passing by to read. Looking at the amount of effort the people here put in, I’m sure the window is gonna be full soon.

I’m writing this blog a month after my internship was completed, and this has helped me understand and appreciate the things that I worked on and learned in the summers.

I would recommend undergrads to do a research based internship for the experience. The lessons that I’ve taken back are helping me a lot. One of the most important thing that I’ve learned is that you have to be patient to solve research problems. Getting such an attitude adjustment early on in one’s career is like finding a treasure. Feedback from the RAs and PhD folks helped me a lot with setting expectations. Expect too much and you’ll feel overwhelmed/discouraged. Expect too little, and you’re squandering away your talents. I appreciate the help with finding the thin line in between. I now notice that full time research work is a bit different than working on a project with a professor during the semester. Make sure you like the latter if you are considering a research based career.

During my initial interview with PK, I told him that I wanted to see if a career based in research was the right thing for me. The internship at IIIT D helped me confirm that it indeed was.

I really thank Prof. PK and Prof. Arun for this great opportunity!

A tryst with Precog : My journey of 2 years, an adventure of a lifetime

I am writing this blog entry after an incredible period of 2 years of work at Precog, which has surely given me a multitude of tangibles to talk about. But, it will be the intangibles that Precog has left me with, which will be the hardest to pen down on a single blog. My time working full-time at Precog has had an overwhelming impact on my life and career. It is undoubtedly the differentiating factor in my life, which has placed me into the Masters program at Carnegie Mellon’s School of Computer Science. It is difficult to describe the feeling I have for my advisor, my fellow lab mates, how each and every one of them have inspired me to become a better version of myself, and how I wish to take all these people with me for my future endeavours. The people I met at Precog ended up becoming the most valuable resource I possess right now.

Two roads diverged in a wood, and I took a leap of faith:

Joining Precog as a Research Associate is one of the toughest decisions I had to make. Coming from NSIT, which largely has a placement oriented atmosphere I just wanted to get a decent job and work in the tech industry for a while; a job which I did land through campus placements. But something did not feel quite right. I had a feeling that my job wouldn’t challenge me enough. I wanted to try something offbeat, which is when I started searching for full-time research opportunities.

Based purely on my instincts (and definitely second-guessing myself all along :P), I decided to refuse my job offer, take a leap of faith and join this research group named Precog as a full-time Research Associate from 14th June, 2016. It was definitely a tough call given how all my friends were about to begin jobs with reputed MNCs, and here I was, making dumb decisions based on gut-feelings. Remarkably, I also wasn’t someone who was dead sure of going for my masters, yet I took the call of venturing out to unchartered territories. However, looking back at that time, it is one decision that I can definitely feel proud of.

Here at Precog we often talk about the remarkable strength of weak ties in life. I would like to iterate how it was some weak ties and cold messages that helped me apply for this RAship. When I look back at the last two years at Precog, it has been definitely been the most fruitful period in my life, and I feel that a big credit for that goes to weak ties in life

Burning the midnight oil, and surprising myself:

From day one, I began working on two projects at the same time, one having a steep learning curve and the other one being classic exploratory research. Both completely new things for me. In the 3 months that ensued my joining at Precog, I realised what working hard actually meant. To the point that it made me question the ‘hard work’ I had put in last 4 years of undergrad. I was learning too many things at the same time, and everything that I learned just left me hungry for more. For the first time in my life, I tasted the satisfaction one feels at hitting brick walls and eventually taking them down.

Most of my initial weeks at Precog saw me working tirelessly all night on one project, and then waking up early to make progress on the other. In these first few months, I truly understood how everything in this world is simple, but not easy. Simple, but not easy. The quality of both the projects ensured that for the first time in my life, I was happy to be burning the midnight oil; the oft sleepless nights that did not end before I hit my eureka moment were thrilling and enjoyable. This doesn’t mean that there weren’t phases of struggle, stress, frustration and anxiety related to work. I had my fair share of each of them. That is probably a part and parcel of every job. Attempting something uphill always entails these things, I believe. But at the same time, there was a constant feeling of content in all the hard work I was putting in, and I knew I would probably end up surprising myself at the end of it.

The first Precog picture I was a part of; Summer 2016

Making inroads:

One of the most exciting things about my experience at Precog has been how rapid my pace of work and expected delivery of projects has been. The idea that I was new and should therefore take things slowly never came up even in my initial days at Precog, which in hindsight has been a huge boon for my profile, as it enabled me to always punch above my weight.

There were specifically two project deadlines that I remember very fondly, because meeting them gave me a great sense of accomplishment at Precog. One of them was a deadline for my development project, just 3 months after my joining, and the other one being a paper submission on the Killfie project in December 2016. Being my first paper submission, it was really exciting to be a part of that group which worked together to pull off a whole paper in a very short duration. My definitions of what can be achieved in X amount of time changed considerably in just a matter of 6 months. And I had begun to realise the value this time spent at Precog will add to my life.

The people I worked with on both these projects have probably set such high standards that it’s going to be incredibly difficult for any other project team to match that. I can happily boast of a very healthy coordination and work ethics in all team projects I have executed at Precog. In both the projects that have defined my time at Precog, there were few recurring themes that is something to take lessons from. Both my teams genuinely believed in the problem we were trying to solve, the impactful nature of the project and had a clear understanding of what we wanted to achieve through our efforts. Both these teams had a very clear and candid channel of communication amongst them which made coordinating all tasks easy. Of course, having PK as an equal part of each team was probably what made this possible. Most importantly, all members in both the teams found immense satisfaction in the work they were doing and understood that at every single point, we need to put our best foot forward.


Whats Ups, BMs and Deep Dives: The building blocks of the Precog life:

Being an RA at Precog did not just give me a chance to work on some really impactful projects that I can proudly call my own, but it gave me a chance to immerse myself in a research environment completely. As an RA, my involvement was never limited to the projects I was working on, but the atmosphere at Precog was such that I was aware of every single project in the lab. The opportunity to think in so many different directions at once, and to indirectly contribute to a host of different ideas in my domain was instrumental in shaping my aspirations for the future.

Weekly scrum sessions (Whats Up), Bi-weekly paper reading sessions (BMs –  short for brainstorming sessions) and detailed project updates (Deep Dives) are the way of life at Precog. These sessions kept us up-to-speed with the work not just other Precogs are doing, but also helped us learn from the problems that other eminent researchers in our domain are exploring. By investing time in brainstorming with other Precogs, I have no doubts that I’ve probably learned as much out of their projects, as I have through my own.

My third day at Precog, saw me taking part in a Brainstorming session with the group. The was probably the first time I actually enjoyed reading a research paper, and definitely the first time I critically discussed a paper in a group. It was the first time reading a paper did not feel like a burden, which eased me into the idea of research.

The first Deep Dive I had, I was thrashed by the group’s questions. I will always distinctly remember that day. I realised that spending time and effort on coding different parts of the project was not enough. My first Deep Dive prompted me to know my work in and out, and well enough to answer all the Why’s and the How’s there could be.

This holistic learning environment made sure that no one at Precog felt alienated from the other things going around in the lab. The Whats Ups, BMs and the Deep Dives ensured that we as Precogs stayed on top of our game, as well as critically examined everyone else’s. Without a doubt, having these as a part of the Precog culture minimized the loopholes we had in our projects and pushed us closer to success in our work.

Working ‘with’ PK, my advisor:

June 27th, 2017

The group of RAs at Precog were visiting this reputed university in Delhi, to conduct a day-long workshop on Machine Learning with their undergraduate students. A part of the conversation that ensued with the college dean is as follows:

Dean (to PK): All these RAs work full time under you? (referring to us)
PK: No, they do not work under me, they work with me.

This one incident is fresh in my memory like the day it happened and speaks volumes about PK’s character.

This blog would be incomplete without giving a glimpse of how incredible a professor PK is. Have you ever played cricket with your professor/advisor? Have you ever had social meet-ups with your profs/advisor till 12am in the night? Have you had the chance to do candid weekly meetings with your professor to just share your honest feelings about everything? I guess not), and that’s why PK is one of the coolest people you’ll get a chance to work with. The work hard and play hard slogan is something that PK (and everyone at Precog for that matter) takes very seriously.

Conversations with PK were always so frank and candid that I ended up feeling a little wiser at the end of each meeting with him. His habit of imploring the group mailing list for inputs on various things always kept the energy high in the group.

PK always has immense faith in all the people that work with him, and that was something I wasn’t too well versed with life in my undergrad. And I can probably pin-point that as the single most important factor behind everything I was able to achieve at Precog.

Working at Precog fundamentally developed in me the belief that brick walls are not the end of the road. I feel that delta change in myself, from someone who used to get jitters looking at hard problems, to someone who believes that given time and effort any problem is solvable. (Remember, simple but not easy?) A huge factor in being able to develop this attitude is PK’s constant motivation to take ownership of our projects. PK has perpetuated this beautiful culture in Precog, wherein if you’re a part of something, then it also means you have the power to take important decisions on that project, which I believe is rare. Coming from an entirely different college environment as compared to IIIT Delhi, it was initially difficult to get adjusted to working with a person who gave me so much freedom to express my ideas. I truly thank him for giving me the opportunity to work with the group.

Bits and pieces of ‘PKs philosophies’ like this will continue to stay with me and inspire me as bigger challenges await in life.

Picture with PK; taken in Jan 2018

The IIIT Delhi influence:

Even though my experience was largely concentrated to being at the Precog lab, being a part of IIIT Delhi was a major advantage. Working at IIIT Delhi helped me not lose touch with the academia and introduced me to countless pioneers. Working here ensured that my learning wasn’t limited to just what happened at Precog, but expanded to what other students and professors at IIIT Delhi were doing. In IIIT Delhi, I had found a second home after my undergrad, and I can feel the difference it has made in my life.

The IIIT Delhi atmosphere was always abuzz with a host of technical events to learn from and participate in. Even though my association was with Precog, I was able to audit the amazing courses at IIIT Delhi, participate and volunteer for the workshops happening in the institute.

The most memorable for me was being able to audit the Designing Human-Centered Systems (DHCS) course. I ended up spending way too much time (happily) in the course activities than I initially thought I would, and at some point you couldn’t differentiate me from an actual IIITD student taking the course. The BBI presentation for the course (plus the countless nights we spend preparing for it), was one of the most enjoyable days I have spent at IIIT Delhi. Building our project with my team was an experience I’d trade for nothing else.

The one with the HOWL project team

I will fondly recall attending poster presentations from random courses in IIIT Delhi, and even judging a few. The thesis defense presentations I attended gave me a deep insight into the kind of problems people are solving. The symposiums and the winter schools I volunteered for made sure I was learning way more than my ‘job’ was supposed to teach me. I am sure that the IIIT Delhi environment had something to do with me sitting here at Carnegie Mellon, and I feel thankful that Precog was housed in IIIT Delhi. Probably it played just as important a part as Precog did. Bottom line being, your advisor, peers and the work ethics are not the only thing that matter, your environment plays a pivotal part too.

Pushing the boundaries of learning: 

Just like the influence of IIIT Delhi allowed me to grow beyond what I was doing at Precog, the connections that PK has built at Precog provided many wonderful learning opportunities to me.

For instance, I was given the opportunity to be a Teaching Assistant for two online courses on NPTEL, something that lies beyond the ‘job description’ of an RA. Working on a development project deployed in the real world allowed me to constantly interact with users and gain a wholesome perspective of product management. I was given the responsibility of leading hands-on workshop sessions at symposiums, winter-schools and summer workshops that Precog conducted. These were things that made me grow in more ways than I expected out of being at RA at Precog, when I joined. All of this was made possible by the incredible connections PK has with the academia and industry.

The most memorable of these events was the summer school organized at IIIT Hyderabad by us. I decided to single out this experience because it was a turning point for me in some manner. I thoroughly enjoyed working with a group of ~70 students, leading workshop sessions on privacy and data science. It also allowed me to interact with grad students at IIIT Hyderabad. The confidence boost I gained after spending that week at IIIT Hyderabad, was something I carried for a long time with me. It was a much needed break, which allowed me to re-adjust my focus in life before the much dreaded period of grad school applications began.

Our team of volunteers at IIIT Hyderabad

Opportunities like this not only made sure I strengthened my hold on what I was learning at Precog, but also helped me gain great confidence in talking about my work. It helped me improve my public speaking abilities. For the first time in my life, it allowed me to share my knowledge with others. Explaining a concept to a room full of undergraduates, and seeing their satisfaction at having learned something new from me was indeed a rewarding experience. It taught me the importance of communicating my point in a concise and effective manner.

These opportunities ensured that life at Precog wasn’t confined within the four walls of the lab for me. My work gave me multiple opportunities to travel, make new connections and gain varied perspectives. I didn’t just add things to my profile for the 2 years I worked at Precog, my way of thinking changed in a lot of intangible ways.

The small world phenomenon:

It is also important for me to highlight just how far the support structure of Precog extends. One of the most inspiring things at Precog is the influence of its alumni who have gone on to study/work at amazing places in the world. The best part is the connect all alums still have with PK and Precog. In the process of their visits to Precog, we were very fortunate to learn about their experiences and information about their institutions/ companies was something worth gold for us. The insights that I gained through these alumni visits not only helped me in my projects at Precogs and my knowledge, but it also had a significant impact on my grad school applications. So much so that while writing my applications, I never felt like a lone warrior, but like I had the support and the knowledge pool of the whole group along with me.

Being a part of Precog truly reinforces the small world philosophy, because Precog alums are everywhere, and you can trust them to have your backs. And I can proudly say that not just for the sake of it, but through my experience here. I have found great support from every single Precog alum I have reached out to, despite the fact that I had never met them (nor did they know about my existence). A simple message saying “I work with Precog/PK” was enough to seek help when you would least expect it. I cannot stress enough on the importance of connections like this in life.  These incidents time and again reiterate the value of the entity Precog has become today. It is a testament to its legacy. It further motivates me in my effort to support my peers and future Precogs no matter where I am in the world.

The Precog fam:

On my second day itself, when I barely knew everyone’s names in the lab, these people dragged me to a social outing. If you talk to people at Precog casually, you’ll be surprised to know that majority of us would account for something like that in their first week with the group. Breaking the ice was never a hurdle with Precogs, everyone was welcome, whenever.

I always found it funny how I stayed at home for the 4 years of undergrad (since college was nearby), and my hostel life began when I started working at Precog. This blog would be incomplete, and wouldn’t do enough justice to life at Precog, without a mention of how supportive the Precog family was during that phase. Long discussions on winter nights over tea, over-analysing everything under the sun, having paranthas at 3am in the IIIT Delhi canteen and playing 6 hour long board games will be dearly missed.

I was blessed to find better project partners then I could ever ask for, and an incredible roommate for my hostel life. I set out to find a roommate, and probably a friend, but I ended up finding a brother in him. And I will forever be thankful to life for him.

All #PrecogSocials we had are fresh in my memory as the day they happened. The fact that my fellow Precogs even end up seeing me off at the airport tells you how special the bond is.

One with (most of) the Precog fam. I loved interacting with every single person in the picture.

I probably cannot stress enough how cool and special every single person in the Precog family is. And I’m not even talking about their work. Surely, I had the chance of working with some of the stalwarts in my domain, which was an incredible learning experience. But these were a bunch of people with whom you could have intense technical discussions going on for hours, as well spend the whole night cracking jokes and making memories of a lifetime. You could expect help at even 3am in the night; asking questions was never looked down upon and such an unwavering support is what made Precog family a distinguishing factor in my life.

The PhD students with Precog are (aptly) called the ‘Pillars’ of Precogs. I consider myself extremely lucky to have had significant overlap with the pillars, during my time here. It is impossible to quantify the kind of impact the pillars have had on my knowledge and my decision-making process. I’ve lost count of the number of times the pillars covered up the screw ups caused by me. I’ve lost count of the number of times I was in distress and just one conversation with one of the pillars made life so easy. I’ve lost count of the number of times I discussed my career goals with them, and felt I was on the path to making smarter choices. Like I said, I wasn’t someone who was sure about going for my masters from day 1, and the pillars played a pivotal role in helping me define my career goals. I have gained a unique perspective in life through conversations with each one of them. Without them, I surely wouldn’t be sitting here recounting memories so fondly. Without them, I probably wouldn’t be sitting here. It was so hard to say goodbye to each and every one of them.

But the best part about working at Precog is that you can still very much feel the influence of the pillars who’ve left. You can still reach out to them for anything in life. They will still be my fallbacks. When the going gets tough during my Masters journey, I am sure these people would be the ones I reach out to, and I know for a fact that everything would be fine after just one call with them.

 

Picture with the pillars (missing Niharika ma’am)
A picture with the outgoing Precog cohort; One of the last Precog pictures I was part of

I applied to Precog simply expecting to learn about and do research, but I got so much more in return. I ended up getting my hands dirty with research, development, TAship, managing workshops, leading lab sessions, organising #PrecogSocials, taking technical interviews, traveling to cool places and so much more. Things have a way of exceeding your expectations at Precog, provided you’re willing to work aggressively towards your goals. And that is something probably every member can attest to. A thought I’d like to leave with the future, as well as the current Precogs – the more you give to Precog (in terms of the time and the effort), the more it’ll give you back. Without a doubt.

My ultimate advice to you would be to venture out and seek opportunities outside your comfort zone. Seek out the right kind of people in life, they matter much more than the work you’re doing. Appreciate the good connections you have made in life. Take a leap of faith sometimes even when you’re not sure of things, and it might just pay off provided you’re willing to put your heart and soul into it.

-Divyansh

My GSoC experience with VLC (macOS Interface Redesign)

Earlier this summer I got selected in Google Summer of Code to work with VideoLAN on the Project VLC macOS Interface Redesign. It has been a blessing to get a chance to work on one of the highest impact open source projects. I had a phenomenal experience. Let’s have a look at my contributions 🙂

You can have a look at my GSoC Project Page and Proposal

Feel free to jump right to the code

Our Team

Left to Right: Vibhoothi, Daksh(Me), Jean-Baptiste, Felix, David

Workflow

Let’s start by looking at our workflow at VLC. VLC has a GitHub Repository which is read-only.  We use our mailing list to send Patches. We also have a GitLab instance at https://code.videolan.org/.

For my GSoC project, my mentors created a clone of upstream at the beginning of our coding period. It helped to keep things organized and eased the process of reviewing. You can find the repository we worked on during the summer at https://code.videolan.org/GSoC2018/macOS/vlc

We have an Issues Page on GitLab. We used this to divide the whole work into subcategories. Further, I have made different branches and various commits.

Face-To-Face with the team

I was lucky to be able to meet with my Mentors along with Jean-Baptiste for a couple of days. VideoLAN was very kind to sponsor me to come and meet our mentors in Europe. I would like to thank them from the bottom of my heart.

During our meeting, we discussed various design aspects of several Media Players and how do we envision the new VLC design to be. We also clearly divided the parts that were to be done by each one of us (Me and Vibhoothi). This helped kickstart the work and proved to be extremely useful and increased the productivity exponentially 😀

My Work Goals

  1. Add a feature enhancement to Go-to-time popup (more details): Ready to be merged
  2. Draggable Panel instead of ControlBar in windowed video  window To bring the draggable-control-panel (currently only in Fullscreen more) inside the normal Video playing windows and test with multiple Video Windows (more details): Done and tested
  3. Title Bar Autohiding (more details): Almost done
  4. Make the draggable-control-panel as a View instead of a separate window. For now, just test with a plain view and see how it performs with an underlying video being played (more details): Done

It shows promising performance, hence in future – To extend it and have the actual panel as a View instead of Window.

Work in-depth along with code

1. Go/Jump to Time popup (branch: is9-goToTime)

It is a pop-up which helps you to jump to any particular time. To access it, you can do any of the following:

  • Press +J
  • Go to Playback -> Jump to Time
  • Double Click on Time-Elapsed or Time-Remaining (in the ControlBar)

Visual Difference

Features

  • Now you can add time in the hh:mm:ss format
  • Allows you to write bigger numbers, example: You can write 80 in seconds, and it will automatically convert that to 00:01:20
  • You can switch between fields with tab
  • You can use the stepper to change the fields

Related Code

How it is inside IB(Interface Builder), Xcode

A sneak peek at constraints

AutoLayout is a bit tricky at times. David taught me how to set the constraints in a way, that even when the language of the text changes, it still looks the way it should. It also takes care of languages that are written from right to left

2. Draggable Panel instead of ControlBar in windowed video  window (Issue 1)

  • Removed the fixed ControlBar and replaced it with a movable draggable panel. Just like the fullscreen controller
  • On resizing or moving the window, the draggable panel re-centers along with the window. There is a bit of a delay+drag as the panel is a window and not a view
  • The draggablePanel is constrained in the bounds of the window.

3. Title Bar Autohiding (Issue 3)

Window’s title bar (and its close / minimize / maximize icons) automatically appears if the mouse is moved over the window, and disappear again if the mouse pointer hides or leaves the window.

Implementation of Issue 1 and 3 (branch: PanelInMultipleVout)

4. Draggable Panel as a View

The draggablePanel was earlier a window. Having the draggablePanel as a window was creating a problem. When the video window was moved, in order to keep it at its place we had to programmatically move the panel in the same way. But a drag and a delay was coming in that.

So we decided to make it as a view instead of a window. After testing, it seems to have solved the problem 😀

  • It remains at its position even when the window is moved
  • Added the panel as a custom NSView

  • Created two new Classes `VLCDraggablePanelView` and `VLCDraggablePanelController` to handle the operations of the Panel
  • Connected all the components with the related class files

TO-DO

Currently, the buttons are non-functional. Discussion on how the classes and their instances need to be done, after which it can be implemented.

Things I learnt

  • How to work on a huge code base
  • Objective C
  • Xcode
  • Interface Builder
  • AutoLayout
  • Cocoa Framework
  • Git
    • There were numerous small and big things I learnt in Git and how to version code. Here are a few tips that you can make use of 🙂

git diff –color-words

To see the changes in words instead of sentences

git checkout commitHash

To temporarily switch to a branch at that particular commit, helps in testing

git stash and git stash apply

To undo/redo the uncommitted changes

git diff HEAD~2

To see the changes done since HEAD~2 (two commit before HEAD). Refer to this post for more options

git branch and git checkout branch-name

To list and change to a particular branch

Useful Links

Ideas, Projects, Methodology, Results, Blogs, and Videos. Privacy and Security in Online Social Media.

I taught CSE648: Privacy and Security in Online Social Media in Fall 2017 semester. We had 108 students taking the course for credits, and 5 Teaching Assistants. We also had 2 Research Associates helping with the course. There were in total 22 projects developed as part of the course. It was wonderful to see the projects spanning all popular networks, Facebook, Twitter, Reddit, Tinder, Foursquare, YouTube and many networks that are designed for specific purposes like Twitch, SoundCloud, GoodReads. The intention for this blog is to capture all the projects related details and share it widely for larger audience. Thanks to all the wonderful work by students in the class.

Poster presentation was attended by at least 100 people. Below is the customary picture of the entire class with all Students, Teaching Assistants, and Evaluators from the poster presentation and for more pictures, please see here. Below is the list of all 22 projects (arranged in the alphabetical order of project name) with the following details: Project name | Students involved | Project description | Video | Picture taken from the poster presentation. All blogs, videos were developed by the students, we (instructor, TAs) do not take any responsibility for the content produced (both quality and the details).

  1. Buyout | Mayank, Pulkit, Divay, Sahil, Kunal Sharma | Blog | Video
  2. Enhancing Privacy on FB | Ujjwal Kanodia, Prashant Saini, Prankul Singh, Himanshu Negi | Blog | Video
  3. FixBook | Gargi Gupta, Varnit Jain, Aayushi Malik, Ishbir Walia, Pahal Krishnia | Blog | Video
  4.  FriendFarmer | Gurek Singh, Hemant Rattey, Atul Mathur, Kartik Mathur | Blog | Video
  5.  Identifying Facebook profiles from Tinder profiles | Karan Grover, Ritvik Agarwal, Shrey Bagroy, Simran saxena, Shambhavi Singh, Shubham Chauhan | Blog | Video
  6.  Identifying fake reviews on goodreads | Prateek Kumar Yadav, Ojasvi Aggarwal, Prerna Kalla | Blog | Video
  7.  iFROOSN | Sahil Babbar, Akash Kumar Gautam, Mayank Kumar, Shyam Agrawal | Blog | Video
  8.  LetsTinder | Darvesh Punia, Hirak Chandravanshi, Aditya Diundi, Nandika, Vasu Chand | Blog | Video
  9.  PC : Privacy Control | Himanshu Pahadia, Nitin Kumar, Utsav Dave, Bhrigu Gupta, Mohammad Sameer Malik, Shivam Rustogi | Blog | Video
  10.  Prediction and Analysis on Foursquare | Azhar Tak, Sumeet Bhardwaj, Aman Varma, Nickey Kumar, Sanidhya Daeeyya | Blog | Video
  11.  Preventing Inference Attacks on OSN | Anand Kumar, Akash Gautam, Vedaint , Gaurav Yadav | Blog | Video
  12.  Preventing Molestation using Twitter | Ronak Kumar, Harsh, Ritaban Basu, Mohd Saquib, Mayur Vilas Shingote | Blog | Video
  13.  Project YouTube | Abhishek Baliyan, Rahul Manchanda, Utkarsh Singh, Vikas Godara, Vivek Negi | Blog | Video
  14.  Racism on reddit | Ashutosh, Abhishek, Shreya, Aarushi, Shivani | Blog | Video
  15.  RainCheck for SoundCloud | Akshat Sharda, Anisha Sejwal, Arushi Kumar, Ishita Verma, Prachi Singh, Rishi Mohan | Blog | Video
  16.  Safe Than Sorry | Shiven Mian, Madhav Varma, Parikshit Diwan, Mridul Gupta | Blog | Video
  17.  Social Bot Detection in Twitch | Mayank Bhoria, Tushita Rathore, Akhil Goel, Sarthika Dhawan, Shreyash Arya | Blog | Video
  18. Social Policing: Analyzing Real World Policing on Social Media | Aravinda Kumaran, Sanchit Sinha, Subramanyam Dantu, Suril Mehta, Mohit Agarwal, Tanmay Goyal | Blog | Video
  19.  SteemEarn | Nitin Yadav, Umesh Umesh, Rishabh Khatri, Ashutosh Kumar | Blog | Video 1 | Video 2
  20.  The Blue Whale Challenge: A Social Analysis | Shaan Chopra, Abhinav Khattar, Karan Dabas, Kshitij Gupta | Blog | Video
  21.  TweetyLeaks | Pranav Nambiar, Prashant, Sourav, Tanishq, Vanshit, Siddharth | Blog | Video
  22.  Youtube video Clickbait Detection | Nikhil M Prasanna, Anshul Anil Gaur, Ojasvi Singh Randhawa, Aditya Dwivedi, Avadh Yadav, Nishant Yadav | Blog | Video

All blog entries can be seen here and videos are part of the YouTube channel

Thanks to the students who gave feedback for the course, I received 4.1 or more on 5 for all parameters of evaluation. Parameters of evaluation were, Course Outcomes, Course Organization, Course Administration and Instruction, and Post conditions.

Stay tuned for updates from the edition that I am teaching this Fall 2018 at IIITH!

The Chronicles of Precog: The Deep Dives, the Socials and the Mailing Lists

How the journey began:

My journey with PK started long before I was actually a part of Precog. In the sixth Semester of my B.Tech. (I am a Dual Degree Student), I enrolled for the Designing Human Centered Systems (DHCS) course which was taught by PK. This was one course which is said to be different from all the courses you’ll ever take at IIITD, and so it was. Owing to the way the course is planned, it is a different experience in itself where you pick a problem and work on it all semester long. You build systems which have the capability to solve problems of the real world. As fate had it, later on, I got a chance to be a Teaching Assistant for this course as well. During the sixth semester, I got to know more about PK, his ideologies, his way of teaching, and undoubtedly, he is one of the best professors I’ve had the chance to learn from. I ended up taking all of the courses offered by him during my time at IIITD.

Poster Session for the DHCS Course

I had always heard about the research group called Precog that was supervised by him. It was during DHCS that I gained a better insight into it and was able to see it functioning closely (although as an outsider). PK also talked about some of the work being done by the group in the lectures. I found the work to be exciting as almost all of the projects had a real-world impact, and I was amazed by it. Another thing that caught my eye was the culture at Precog and how people were always there for each other, and they shared a family-like bond. This was something I secretly wished to experience first-hand. During my B.Tech. days, I was always knee-deep in projects, one after another, and never got a chance to be a part of Precog. In my 7th semester, I took yet another course taught by PK called Foundations of Computer Security (FCS). By this time, I was enrolled in the dual degree program but wasn’t sure what my thesis was going to be about. I was still exploring which domain I was interested in. PK made sure to have some guest lectures in all of his courses. For these, he invited domain experts, people from the industry as well as academia. As a part of one such guest lecture, two of his Ph.D. students, Prateek Dewan and Anupama Aggarwal, joined us. Both of them talked about the work they were involved in and it really intrigued me. This was when it hit me, this was what I wanted to do. It was a sort of ‘eureka’ moment for me. I wanted to work in the domain of Privacy and Security, and this is where I wanted to spend my next year. That was when I talked to PK about the prospect of doing the thesis with him. Things clicked, and boom, I was a part of Precog. Never had I ever thought that I’d get to experience what all followed in the next one year. I was happy with the work I did and made so many amazing friends along the way who will, no doubt, stay with me my entire lifetime.

The first week at Precog:

I started my journey as a Master’s student once I was done with my B.Tech. requirements and, thus, began my journey with Precog in August 2017. The first week of the semester, I was added to the Precog core mailing list, and it’s not an understatement when I say I was overwhelmed by the number of emails I got within the first few hours. Emails asking for KK slots, WU, BM, DD slot Doodles, weekly planners, etc. I was alien to all the terms and had no clue what I was supposed to do. At that time, I did not know many people in the lab and was a bit hesitant to ask for help. I was anxious about missing any deadline in my very first week with Precog. I walked up to the lab, met Kushagra Bhargava. He was also a part of my interview panel, so I had talked to him a couple of times. Kushagra was very helpful and walked me through all the alien terms which are now deeply embedded in my blood. I must highlight that he has some awesome server password setting skills xD.

How to make the most of the group:

A couple of weeks into the semester, I was very much familiar with the ways of Precog and the work ethics, having had attended the Orientation, a couple of What’s Up (WU), Brain Storm (BM), and Knock-Knock (KK) sessions. All of these sessions have an importance of their own. I feel, it is these sessions that make Precog, Precog and help bind everyone together (apart from the outings, celebrations, socials, icecreams…the list is endless :P). The What’s Up session is the regular all-group weekly meetup where everyone gives an update on their work. This way, we all know what the other person is up to, and it even helped me maintain a regular approach when it came to work. What’s Up sessions were an excellent medium of knowledge transfer as well, as the whole group is present to give feedback and help you out if you get stuck somewhere. Many a time, I’ve been stuck at places, and when I mentioned them in the WU session, people came forward with solutions, be it suggesting a new library, using a new tool or trying a different approach to test the accuracy of my work. So, my advice to anyone who is joining Precog or in Precog would be to attend these sessions in a regular way. They’ll only benefit you in the long run and help make your Precog experience even more Precogy :P. Deep Dive (DD) sessions were again really insightful, no matter whether you were attending or presenting. These took place once in two months. While being in the audience you’d get a good knowledge of how others are approaching things, and this might give you an idea of how you can incorporate some of this in your own work! And if you’re the one presenting, it’ll be a huge confidence booster as you’ll get used to giving technical presentations and also get validation for the work that you’re doing. I found the DD sessions really fulfilling. They make sure that you’re treading in the right direction. Also, whenever anyone has a paper submission, talk or presentation, it’s incredible to see how the entire group pitches in, right from intense paper critiques to feedback on practice talks. It’s lovely to see how involved everyone is and how much, we, at Precog here, care for one another.

The one with almost all of them

A tale of two cool advisors:

My thesis work was in collaboration with Dr. Alpana Dubey from Accenture Research Lab, Bangalore. I would say I was lucky enough to get two of the coolest advisors ever. I was always looking up to the weekly collaboration calls where I would get feedback on the progress made and get a direction on where to head next. Such regularity never made me realise how and when I got so close to eventually writing and successfully defending my thesis. The entire journey was just so smooth (along with pulling some all-nighters at times :P) that I can’t believe that it happened so quickly. In a matter of 9 months, I had successfully defended my thesis. I’m thankful for all the inputs from both of my advisors who made this entire path – right from choosing the project, to framing a problem statement, and defending it – so fulfilling and enriching for me. Not only did I hone my research and technical skills but I also became more organised and confident in the process. I would also like to mention Gurpriya, who has been my constant pillar of support, right from ensuring that both of us were awake in time for the call (both of us had the same co-advisors) as it used to take place at 10:00 am in the morning, to helping me with the thesis document, and the talk for the defense. Indira is yet another person, who has guided me all along. She became my go-to person and I earned another lifelong friend.

Tryst with Google:

The amount of support I got from PK and other people at Precog was unparalleled. Last year, around July, I was declared as one of the recipients of the Google Women Techmakers Scholarship (previously known as The Anita Borg Scholarship).  Because of the scholarship, I got the chance to travel for many events, starting from the Scholarship Retreat in Seoul, South Korea, to attending India’s first ever Google Developer’s Days, to attending meet-ups at Google’s Gurgaon and Bangalore offices. In all, the trips combined took three weeks, and I was unable to give full attention to my thesis work during these events. But PK and Dr. Alpana were always so supportive and understanding. They always encouraged participation in such events and programmes. But I ensured, that after all the missed hours of work, I put in extra effort to catch up. Eventually, I had become much more productive and got even better at juggling many things at once. Time management is the key, and I’d say Precog and PK made me better at it.

WTM Scholarship Retreat at Google, Seoul

#LovingMyTALife:

In the Spring  2018 semester, I was one of the Teaching  Assistants for the DHCS course, and this was yet another fantastic experience for me where I learnt a lot.  It was amazing to see the impact that I was able to make by aiding students in the process of learning. Guiding some teams from the ideation stage to them making news on the TV and the newspaper was very fulfilling for me. Again, PK’s way of dealing with students taught me a lot. He gives students enough space to be responsible adults rather than telling them what to do. This way, he brings out the best in his students. We get to realise the undiscovered potential that lies within us.

BBI Exhibition for the DHCS Course

“Work hard, play harder” is one of PK’s favourite policies, and we, at Precog, abide very seriously by it. We leave no stone unturned to celebrate the smallest of achievements. The amount of cakes, chocolates and sweets I had in the past one year is way more than the past ten years combined. Celebrations along with other outings and socials give more bonding time. I remember the time when PK took all of us down to the lawn to play cricket. Because of such interactions, everyone bonds at different levels apart from work. Such bonding is essential in a close-knit group like Precog, where many people are involved in one project and having good bonds definitely boosts the efficiency.

Celebration after defending my thesis

I would like to thank each and every person who has been a part of my journey with Precog. It just wouldn’t have been the same without each one of you.

In all, Precog is a bundle full of a lifetime of experiences. All these experiences combined made me grow so much as a person. Now that I reflect back, I cherish everything so dearly. My advice to everyone out there, try one of PK’s courses for sure and join Precog sooner than I did, it’ll be worth it.

#PrecogGiri for life

-Simran Saxena

Another amazing edition of CSE 501: Designing Human Centered Systems

Teaching DHCS has always been fun and exciting! As always, I had a lot of stories to tell students on the first day of class, about the past editions of the course, with descriptions of the projects, video recordings of past students, and Facebook pictures of BBIs! In total, we had 108 students take the course, with 20 projects, and 6 Teaching Assistants. We had wonderful guest lectures by Karan Gupta from Dropbox (IIITD Alum, MS in Design from Univ. of Washington), Apoorv Narang from Instawork (IIITD Alum, MS in HCI from Carnegie Mellon University), Prof. Timothy Moyers (faculty at IIITD), and Harshita Arora, an unschooler! All these guest lectures added great flavor to the topics that we covered in the class. Broad topics that we covered were:

  •  Design process overview
  • Contextual Inquiry
  • Task analysis
  • Sketching and prototyping
  • Human factors & Mental models
  • Low-Fidelity prototyping
  • Visual design
  • Usability engineering
  • Usability evaluation: think aloud, observing users, testing and modeling users, expert evaluations
  • Information visualization
  • HCI and mobility
  • HCI and security
  • User modeling, personalization
  • Interface modalities: color, sound, etc.
  • Cool characteristics of a good HCI designer, user experience engineer
  • Recent trends and happenings in HCI
  • Whirlwind tour of different research groups, academic conferences, and organizations in the space of HCI

We had, on average, 1 activity per class. Some pictures from the activities in the class. In addition to activities, we also have Critique, i.e. we spend about 30 min in class after the formal project reviews, where students showcase their projects to all their classmates. Every group showcase their project artefacts on a table for other students in class to come and see them. Below is a pic from Critique, more pics from both activities and Critique.

This edition we had some really interesting projects! Below is the list of all projects from the course (arranged in alphabetical order), with the respective blog entry written by students, a video showcasing the project, and fliers / promotional materials used by students. The reason for making all these public is to get future students or others interested in the course / projects to make use of the content. I sincerely thank all students who agreed to share the content.

  1. Alumnect | Blog | Video | Flier and Promotional materials
  2. Brú | Blog | Video | Flier and Promotional materials
  3. busKARO | Blog | Video | Flier and Promotional materials
  4. CookMate | Blog | Video | Flier and Promotional materials
  5. EventsCart | Blog | Flier and Promotional materials
  6. FITOR | Blog | Video | Flier and Promotional materials
  7. GamesUp | Blog | Video | Flier and Promotional materials
  8. GentleReminders | Blog | Video | Flier and Promotional materials
  9. GrupTack | Blog | Video | Flier and Promotional materials
  10. IIIT Express | Blog | Video | Flier and Promotional materials
  11. IIITD Mess App | Blog | Video | Flier and Promotional materials
  12. Interacto | Blog | Video | Flier and Promotional materials
  13. MayMayMe | Blog | Video | Flier and Promotional materials
  14. noWhinge | Blog | Video | Flier and Promotional materials
  15. Reche | Blog | Video | Flier and Promotional materials
  16. Rove | Blog | Video | Flier and Promotional materials
  17. Sportify | Blog | Video | Flier and Promotional materials
  18. TechTinder | Blog | Video | Flier and Promotional materials
  19. Trappic | Blog | Video | Flier and Promotional materials
  20. TechTinder | Blog | Video | Flier and Promotional materials

It is super fun to see students like, enjoy, and learn from the course. I received 4.2 or more on 5 for all parameters of evaluation for the course. Parameters of evaluation were, Course Outcomes, Course Organization, Course Administration and Instruction. HUGE thanks to every student for your involvement and creative project work! This would not have been possible without the help of TAs (Simran, Sahar, Prerna, Twishi, Ojasvi, Khushboo). Special thanks to all project evaluators (Sneha, Aman, Nishtha, Rishabh, Nitendra, Ankita, Sachin, Mayank, Indira, Shubham, Divyansh, Kushagra, Niharika) and admin support (Pooja, ShEetu, Arun, Anshi, Ashutosh, Prachi, Priti)! Below is the traditional picture of the course! 100+ pics from the final poster presentation. 

Signing off #CSE501 #Spring2018

My enriching journey with Precog

It all started with a weekend I was free and saw a small opportunity to do something different. I saw a post on facebook for a hackathon organized by Precog. The challenge was to build a sentiment classifier in Hindi. We quickly googled the exact problem and found some solutions which could be implemented easily. Later we realized that everyone else is doing the exact same thing. That was the moment we realized, we need to do something different and out of the box to win. Before that, we used to stay in our comfort zone and rely on external sources for answers. That hackathon was the beginning when I got into machine learning. I am pretty much convinced my life would have been really different if I didn’t take part. After several hours of hacking, we put together a small working prototype and ended up winning the hackathon. During the hackathon, we got a gist of the people and the culture of Precog. Because of that, I ended up doing a summer internship and staying there till my end of my undergrads. Precog is the most selective research group in our college, which was all the more reason for me to be super thrilled to get in.

The internship was an amazing experience for me. It was the first time I started working as part of a team. I learned a lot of cool stuff from my peers. The thing that fascinated me the most was the freedom and trust of others. We used to have open discussions of ideas, where no idea was considered bad. At Precog everyone helps each other; whether it was reviewing a draft, debugging code or getting new ideas. I was with Indira and Kushagra working on solving NLP problems on Indian OSM data. I still recall the long discussions we used to have together. This was the first time I ever had access to massive compute resources. Precog has more servers than any other research group at IIITD, which was pretty cool to know (and still is)!. That enabled me to play with massively large data. I was also involved with Sonal in an image retrieval project. The research was published at SocInfo.  We used to have Whatsup sessions where we all would share our updates with the whole group. To the best of my knowledge, Precog is the only group which does that. We all used to learn a lot about new things from that session.

Precog Interns: Summer of 2016

Fascinated by the work at Precog, I decided to continue working with them after the internship as well. I started working on analyzing sensitive content with indira. We had several discussions with other teams on how to make our project better. Our system finally ended up getting deployed. The feeling of our research work helping others was quite satisfying. Together, we used to brainstorm ideas for several other projects. My experience with Precog changed my perspective. It is a fact that most of the research around the world goes unused, but this is not the case with Precog. The outings, cake cutting events and the dinners at PK’s residence bonded us together as a family.

I always used to be a “how” person, who focuses on the solutions rather than the problems. With Precog, I realized the importance of “what”. Figuring out the ‘what to do’ is much more crucial. We can easily find solutions once we understand the problem. The culture at Precog encourages us to believe in ourselves. My presentation skills improved drastically, thanks to the ‘Deep Dive’ sessions. Due to the absence of any kind of spoon feeding, we all became better at finding solutions. Rather than learning a particular skill, we mastered the skill of acquiring skills. Every Precog alum is extremely successful, and now I know why.

A group photo of our family!

As a machine learning geek, I believe we all are like reinforcement learning agents: trying to maximize our reward (for us fun and learning). For an agent to get an optimal reward, good feedback on its actions is really important. The complete group as a whole provides excellent feedback which results in us improving, being more adept to achieve our dreams and have fun on the way as well!

Looking back, I realize how these small events had such a huge impact in my life. From troubling others by crashing the servers to publishing papers, I realize what all I would have missed by not joining Precog. In my last semester, I interned at Microsoft Research doing research on unsupervised learning on video data.  If you have a desire to do something out of the box, I highly recommend you to should join Precog.

Sojourn of an introvert at PreCog

“The Whole is Greater than the Sum of its Parts”

This was just another saying for me until the day I joined Precog. It all began when my friends convinced me into taking part in OSM-Palooza, a hackathon organized by PreCog in Spring 2016. The task was to perform sentiment analysis on Twitter code-mixed data. The experience was fun: learning basics of machine learning, text analysis, APIs, web scraping, automation, and what not. Finally, after working for several hours, our team made a submission that ended up winning the first prize!

While munching on pizza slices with the prize money, I started thinking about this experience, and how much I loved it. After a bit of research on what PreCog does and the people in it, my friend Divam and I decided to ask PK for a spot in the research group via a summer internship. After the friendliest interview with Prateek and Anupama, we were in. The summer started off with a lot of learning, reading research papers, watching video lectures, and exploring huge datasets. Frequent visits to Precog’s lab made me realize how it was different from other research labs.

One of several sessions of Precog; every single time walking out of the room with added knowledge :’)

Whatever research labs I had entered/visited as a college student, generally had students working in dead silence, consumed in their work and not looking anywhere around. Precog was much more lively. There is a fridge with chocolates that don’t usually last, bean bags for lazing around and the most amazing people to discuss your ideas with in a chillaxed surrounding. It has positive vibes coming out it. After working for that summer and submitting our work to ASONAM, an international conference (which ended up being published!), I made the decision to continue working with this awesome group of people.

As time passed by, I learned new things that I might have never stumbled across, shared with and by the lab members. Every email that would pop up in Precog’s mailing list would be brain food: I’d open the link and try to read everything in it. Doing this for quite some time helped me discover my passion for machine learning. It is this habit of reading these emails in depth that helped me start a project in machine learning in collaboration with IBM!

While PhDs from the lab and undergrads worked on my draft, submitting research work to a conference, I was reminded of the awesome group that I am a part of.

Apart from boosting my hunger for knowledge and helping me grow in my field and as a person in general, I owe whatever success I have to Precog. Being an introvert, I wasn’t too comfortable part of being such a close-knit research group. However, with encouraging mentors like PK, Prateek, and Anupama, I started opening up. From having a potluck lunch at PK’s residence to extempore plans to order ice-cream for lunch, I have come a long way in getting rid of my shyness.

From Natural’s ice cream in the fridge to hot pizza after data annotation sessions, from group sessions and constructive feedback to heart-to-heart talks, from the coolest PHDs in the lab to the coolest mentor and advisor I could have asked for, the memories I’ve made as part of PreCog are something I shall always cherish and carry with me 😀

The Precog Amplification

The summer break after graduation is when one realizes that IIIT has changed their life forever. It’s too soon to say whether it’s for the good or bad, but “sitting idle”, “not learning”, or “not chasing something new” become the biggest worries of life. Fear not, the bouts of peaceful wondering (and guilt-free procrastination) catch up soon, but for me it was the former set of feelings that saw me hunting for something to do in the summer.

I got a glimpse of what working at Precog would be like during PK’s DHCS course that I took in my final semester. It was meant to be a light course that undergraduate students crave for in their final lap, rightfully devoting the residual time appeasing their friends before the great dispersion. Ironically enough, it turned out to be anything but light, though still served the purpose of letting me have a great time with my friends. BBI (Building Better Interfaces), the conclusive project showcase, was almost like a start-up convention on steroids with students going to unfathomable lengths – pitching their projects and getting validation on their design process from practically everyone on campus. It’s difficult to forget a course such as this where you have witnessed banner wars, basketball challenges, beer pong and simply students going all-out on their projects. The enthusiasm was contagious and getting involved with Precog over the summer definitely seemed like an option to consider. Despite the fact that the domain of social {computing, networks, systems} was completely alien to me, I was incredibly lucky to make it through as a summer RA (maybe I just rode along on our cool DHCS course project, Fettle).

Building Better Interfaces 2016
Building Better Interfaces 2016

The following month, I started at Precog on a development project alongside a bunch of enthusiastic interns. During the first few weeks, as I familiarized myself with the domain of social media analytics, I found myself get attracted towards a particular thread. Given the rapid rate at which media content is growing on social media (~2000 images per second!), it was a question that often found its way into discussions  – how can we summarize this enormous dataset of social media images and make it more succinct and browsable? Having a background in Vision and an inclination towards research I found a certain affinity towards this problem and I shared my intent to work on this idea with Sonal, another RA at Precog who had just wrapped up one of her own projects (and happened to be looking for a new problem to work on. What luck, right?).

People@Precog Summer 2016
People@Precog Summer 2016

sometimes having the right answer is less important than seeing behind someone’s eyes why the question had to be asked – source

As both of us delved into conducting a high-level literature survey, we found that even though image data set summarization is a well-researched problem, in the context of social media data it is almost unexplored. I was all in for pitching the idea to PK right that moment, but Sonal, the more seasoned Precoger, advised against it and proposed for preparing a more polished case for the problem, one that would more eloquently bring out some exciting use cases. This was the first time I got introduced to the concept of making people excited about your research  and it starts with your PI itself. The first question PK would ask is “how do I sell this?”, which would encapsulate the other fundamental questions, “who are we helping?”, “do they need our help” and “how can we help?” (in that order). As brutal and business oriented the line of questioning would seem, I could appreciate the intent behind it. It was not meant as a discouragement of open ideas but instead as a first-round validation of how well the involved people are able to make a case that the idea is worth pursuing. This constant reinforcement that the job of a researcher entails being an effective communicator and convincing an audience that the problem is worth solving was something very unique to PK. Once we had this part out of the way over the many sync-up sessions, the ecosystem was made extremely conducive towards carrying out the required research work. Instead of narrating the experience any further, I’d rather break the rest of it down into more consumable nuggets –

  1. The secret to all material success is self-discipline and grit – Be it your grades, getting an internship, an admit, building a project, coding a hack, or writing a research paper. If you can’t invest the required time and effort, it is wrong to expect a meaningful outcome. Yeah, you may get lucky once in awhile, but as Deadpool says “luck isn’t a superpower”. The 80 hour highly-organized work weeks at Precog, make sure that there is minimal dependence on luck. Keeping up with the expected commitment, Sonal and I continued working on our submission even after our RAship was over and saw it getting accepted to ACM Multimedia (you can read about how we approached our summarization problem and created #VisualHashtags here). This was one of the most rewarding experiences and only Sonal will remember burning all our stipend on Starbucks coffee, feeling guilty about constantly overloading their free wifi.
  2. As for non-material success, it is empathy and gratitude – Academia is a very competitive domain and one where no matter how much you accomplish, self-doubt comes in plenty. Peer-review doesn’t stay limited to academic manuscripts and becomes a part of everyday life. It becomes important to support your colleagues in their effort because with so much competence around it is often that one starts getting really hard on themselves. Precog is one place where you would always find someone or the other to celebrate something as small as a midnight bugfix with. You would have to be seriously off the grid if you haven’t seen PK leading from the front, encouraging and taking special pride in bragging about his students and their work.
  3. Diplomacy isn’t really a treasured asset in a research lab – The lab is devoid of any echo chambers because there are just so many strong voices. The senior most PhDs and fresh interns alike, everyone enjoys open channels of communication and get to navigate their journey at the lab. It was this environment that allowed me to switch projects with little friction and pursue a new idea during the middle of my tenure. It would be safe to say that with everyone here being absolutely blunt about their work and also with their feedback, I have started to adore conference peer reviewers (just kidding). The many reviews and rebuttals from Prateek, Niharika, Srishti, and Anupama greatly strengthened our ACMMM submission. (On a side note, I do think I owe an apology to Anupama for not being so server savvy at the time!)
  4. Collaboration is equally important as individual brilliance – Working in the domain of Collaborative Cognition, I can vouch for the fact that collective intelligence trumps individual effort in more ways than just performance (Spoiler Alert: Avengers: Infinity War is an exception). An expert in one domain need not be an expert in another, and that is how it should be. At Precog I learned that it’s a big fallacy that one skill is better than the other. It may be more valued than the rest in a given context, but then it’s a matter of finding a match. What matters is being a master of that skill. The knowledge sharing that happens when different people, each with their own niche, work together leads to diverse perspectives and hence, exciting prospects. Such collaboration is common to most projects at Precog; even including our work on #VisualHashtags, where we had AVS and PK, two experts in their respective fields, collectively advising us on our research problem.
  5. If something doesn’t make you anxious, is it really worth doing? – It is evident that people at Precog go places. Besides the qualification and merit gained at the lab, this success rate is because of the step-outside-the-comfort-zone attitude inculcated by PK. The bottom line is – a bunch of rejection emails in your inbox is much better than having only million dollar cheques from the Prince of Nigeria. Last year, I took the leap and applied for a few graduate programs in my area of interest – and to my delight received an admit to the Masters of Science in Robotics Program at CMU. As I start on this new endeavor this fall, PK being an alumnus at the same university makes it even more special – I am sure his mentorship and my association with Precog will continue in some form or the other.
People@Precog Farewell 2018
People@Precog Farewell 2018

Though my stint at the lab has been shorter than most, my blog entry and learning has been not. So, TL;DR: Precog is definitely a place to spend time at if you are remotely interested in rising from being mere nodes in a social system to being its philosophers and problem solvers. The line of research is highly interdisciplinary (Machine Learning, Natural Language Processing, Data Mining, HCI, Social Computing, Privacy and Security) and if you look around the projects here, you are bound to find something of your interest. It has everything to offer, from savvy GPUs to savvier researchers, and from cool projects to cooler friends. If you are ready to put in the hours, it’s an investment you won’t regret.