Intelligent Tutors, Robotics and Fun: RISS’18 @ CMU

I’ve (Shiven Mian, B.Tech. Class of 2019) had the privilege of working with the Robotics Institute at Carnegie Mellon University (the world’s largest Robotics facility) for the past 9 months, and spent Summer 2018 (June – August) at CMU’s sprawling campus as a FICCI Research Scholar in the Robotics Institute Summer Scholars (RISS) program (where I was one of 35 undergrads selected around the world). I’m working with Dr. Jack Mostow (Research Professor Emeritus, CMU) on the RoboTutor project (formerly Project LISTEN), which is one of the five $1M Global Finalists in the $15M Global Learning XPRIZE Challenge, funded by Elon Musk. The project is an Android-based Intelligent Tutoring System that enables 7-10 year old children, with no access to schools in remote regions, to learn basic literacy and Math without adult assistance. RoboTutor is currently being beta-tested in Tanzanian villages, and its design as well as the Challenge’s aim could potentially enable millions of deprived children in the future get a basic quality education in their formative years.

If you’d told me 10 months ago I would be writing all this now, I’d have laughed. Seriously. Three months on, the experience still seems surreal today – so this blog would also be a bit long.

I. Applying

Having dabbled with various different fields in the past two and a half years, I really wasn’t sure where to spend my summer experience this year. Though very broadly I had done projects involving Data Science and HCI, I didn’t have one particular area of interest and was mostly versatile. What I did always want though, was that my work should involve (or analyse) interaction with people, and hopefully impact their behavior and lives positively in some way, and I’ve abided by it in most of the work I’ve done during this time. So when I came across RoboTutor and XPRIZE (through a friend on Facebook), I checked if my interests were a match and spoke to a few people in the team, and I realised this is exactly the high-impact social good project I’ve always wanted to be a part of.

Things went uphill quickly from there. I directly emailed Dr. Mostow for applying to RoboTutor, and a couple of interactions later, I started working remotely in Feb 2018, till May. My remote work involved re-designing and developing RoboTutor’s login system for children that utilised faces, streamlining the way we collected logs from the beta test sites, and some server-side work. I also heard about and applied to RISS in the meantime on his suggestion. It’s a fairly standard application – like most others, it requires only an SoP, CV, transcripts and LoRs, along with mentioning what your interests are among the areas RI does research in. Luckily I was one of the 35 selected worldwide in April. To make things sweeter, I also received funding from FICCI for pursuing RISS with RoboTutor. It was pretty flattering for me to be contributing to a project of such massive real-world impact, but being selected in one of the best undergraduate research programs at a place like CMU and being funded for it, however, was well beyond what I had expected. Little did I know that this wasn’t just a research internship – it ended up showing me fields I had never known existed, and impacted my future plans and interests more than anything else I had experienced.

(Cohon University Center, CMU. Glad it wasn’t Winter)

II. Work @ RISS

Since I’d already been working with the team for 4 months, so once I got to CMU in June, I didn’t have much to do to know all the main people in the RoboTutor team, or the massive system architecture RoboTutor had. However, I did work on a different area of RoboTutor for RISS. Me and another fellow RISS scholar, Mononito Goswami, worked on a new analytical tool for aiding RoboTutor’s design improvement process, which we dubbed SPOT. SPOT uses student-interaction data logged by RoboTutor, screen capture videos and AI to automatically detect ‘hot spots’ (major design issues) in the app which are most detrimental to student engagement and learning. The tool then provides designers & developers of RoboTutor with video evidence and causal characteristics of those hot spots – helping them with deriving actionable intelligence to improve RoboTutor accordingly (an example of data-driven iterative design). After getting feedback from Dr. Mostow, the rest of team, and a few other people (especially Ken Koedinger) from CMU and the week-long LearnLab Summer School which we attended, we managed to co-author a working paper on SPOT (for CMU’s Working Papers Journal (WPJ)). We also managed to submit our paper to a top-tier conference. Though this was a great summer outcome, seeing videos of children in our beta sites happily interacting with the things we designed and improved was very satisfying. We knew were contributing to a better learning experience for them, and in future hopefully millions of children. (Update: Accepted to AAAI’19 as a Student Paper 🙂 )

(Part of the RoboTutor Team @ LearnLab. Clockwise: Dr. Mostow, Amogh, me, Corrie, Rebecca, Mononito, Qiwei, Nirmal. Gates-Hillman Centre, CMU)

III. Beyond Tutors

RISS for me wasn’t just a foray into the world of Intelligent Tutoring Systems or Educational Data Mining, it was far more holistic. I am fortunate and privileged to have met some of the brightest peers, and the small cohort size led to us really bonding together as a group. We learned and helped each other in our projects, organised study groups, peer-reviewed each other’s WPJ papers, toured labs, attended RSS’18 (and heard Sergey Levine talk about his work), and even shared lab space (props to Viraj, whose lab space I shared frequently). Being new to many aspects of Robotics, I particularly enjoyed touring my peers’ labs at RI, especially the FRC and the MSL Lab – some of the work being done in the labs was just amazing and futuristic, the kind of stuff I previously saw in those short this-is-the-future videos on YouTube. Lunch talks by RI faculty were hosted every Wednesday as well. Personally, the very first lunch talk (hosted by Red Whittaker) was one of my summer’s highlights because of the impact it left on me (he had spoken about his journey in Robotics and lessons from life), and it was one of the most motivational and insightful talks I had ever heard.

     

(Left: The Search Based Planning Laboratory (SBPL); Right: one of the ballbots at the MSL Lab – the first ballbots ever built)

But the most fun we had as a cohort was in the Robotics workshops. There were three workshops: on ROS (organised by NREC), drones (by DJI) and humanoids (by UBTech). All the workshops were 2-3 days long, and involved full-day tutorials and a one day team competition in the end. It was really exciting to work with the drones and the humanoids, get acquainted with their development environments, and the limited time for the competitions enabled our teams to stay up at nights dabbling with them. It was an amazing experience, and some of us did walk out with some cool stuff to say the least.

(PS: we own them now 🙂 )

RISS also gave us a lot of opportunities to share our work. Apart from the poster session at the end of the program, the lab tours and the WPJ, there were multiple events organised over the summer to share our work with others. I was fortunate to have been one of the panel speakers at the AI4ALL Summer School at CMU, where I interacted and shared my work with RoboTutor with some of the brightest high school STEM students in the US. All in all, seeing the work done in the labs, attending the talks and the workshops, and moreover giving back and sharing what I learned, all massively enhanced my interest in Robotics. It also enhanced my perception that the Robotics Institute (and CMU) is one of the most inclusive research institutes in the world, and more importantly, a place without limits. It truly is.

(AI4ALL Panel Discussion. “How did you get started with AI?”)

IV. The Fun

While it may seem all the various events we had literally every week took up all the time, the 10 weeks at RISS were nothing without the fun. Apart from Pittsburgh (where I was based), I was lucky to get time to explore most of the East Coast – I visited Philadelphia, Washington DC and New York City (which was particularly awesome because I visited on the July 4 week).

 

(Left: Times Square; Right: Fireworks Show over the Hudson River. New York, July 4th 2018)

But the fun I had with the RISS cohort is what I cherish the most. Whether it be the late night parties at each other’s places, checking out different cuisines in Oakland and Shadyside regularly, exploring Downtown, witnessing the Pirates play, going for Arctic Monkeys (!), playing squash or table tennis or ultimate frisbee (and sometimes just FIFA) everyday after work, or simply hanging out near the coffee machines (which are frankly amazing at RI) – we always found a way to stay together as a close group. We all still remain in close touch, and on a personal level, one instance which exemplifies how amazing our bond is (or would turn out to be), was on my birthday when, beyond all my expectations, the entire cohort surprised me with a cake in the middle of one of the talks (and this was barely 2 weeks into RISS). It couldn’t have been any better for me.

     

(Clockwise: AM, one of those random dinners, me with aforementioned cake, Pirates vs Mets at PNC Park)

V. Final week

All good things must unfortunately come to an end, and though I lived the best 10 weeks of my life, time just flew by. The last few days of RISS were both exciting and poignant. The poster presentation sessions went pretty well, where CMU was kind enough to get prominent researchers from both RI and outside of CMU to see our work, and since it was during a time most incoming Graduate Students were moving in, the poster session had an amazing crowd and I made a lot of connections.

(Me, Mononito, Dr. Mostow – RISS Poster Session, Newell-Simon Hall)

The final day had the RISS closing ceremony, which was pretty much a celebration of the summer – our time to say our goodbyes to our advisors and the RISS organisers. The day ended with all of us in the cohort having an amazing farewell party overnight.

 

(Left: receiving my RISS graduation certificate from Dr. John Dolan and Ms. Rachel Burcin, RISS Program Organisers. Right: me with Dr. Mostow)

VI. Acknowledgements

There are few experiences in my career that I could call ‘life-changing’ (it’s also sometimes loosely used), but RISS is comfortably one of them – not just because of the work, the mentorship and the peers, but because it solidified my interests in the fields I liked, exposed me to others I had never imagined existed and helped me be more versatile. I came in as a novice to the field of Robotics and Intelligent Tutors, having never been in a Summer Research Program (or even to the US!). I left more proficient in these fields but more importantly with endless connections, a bag full of memories (and a full SD card), and some invaluable life lessons. I consider myself very lucky and fortunate to have lived this experience.

I’m truly grateful to Dr. Mostow for believing in me through these 9 months, enabling me to live what I lived this Summer at RI and contribute to such an amazing project, but most importantly for the life lessons and anecdotes he shared with me so that I improve as a human and work to my fullest. Whatever happens next for me in my career, these are lessons I will always keep with me. I’m grateful to Mononito for being an amazing colleague, without whose work our summer would never have been as good. I’m also really grateful to Dr.  PK and Dr. Vinayak Naik for recommending me for my RISS application, Indira for helping me on it, and FICCI for sponsoring my stay. And finally, I’m extremely thankful to Precog for providing me an unparalleled environment and exposure to get involved in research at IIITD to begin with and motivating me to aim higher – I couldn’t have been part of a better group here.

(RISS Cohort 2018, Closing Ceremony – University Center, CMU)

Lastly, here’s my 2¢ if you like: Try to work on socially relevant projects if possible, it’s extremely satisfying. Be open to other fields especially during undergrad, you never know when you’ll find something interesting. And more importantly, apply to CMU and RISS. However highly you think of this place, your expectations will be exceeded.

(PS: As always, for any doubts / advice / other help you may require or just a chat, you’re most welcome to contact me through emailLinkedin or Telegram. I’d love to talk!)

class undergradAtPrecog(IIITD):

def  __init(self)__:

How I got to know about Precog is quite dramatic (call it fate? hahaha). It had been a really long day (Intro to Engineering Design project demo, IIRC) and I was walking past GB Pant towards the metro station. To give a rough idea about how far back I’m talking about: Phase II construction of the college was yet to begin, attendance was never recorded in any lecture, and Ubers were allowed to enter college premises.

As I was walking, absolutely dreading the hour long ride back home, a car stopped by and offered me a ride till the metro station. And I begin an extremely foolish (and lazy) kid, got into the car without giving it a second thought. However, the rest of the story doesn’t pan out like a Bollywood kidnapping thriller. To the contrary, I met two of the most fantastic people I know, Megha and Rohan! It was during this ride down to Hauz Khas metro (yep, they saved a lot of the metro anguish that day), that I got to know about Precog, PK, and most importantly that I don’t need to have taken any advanced courses in order to join Precog (many professors ask you to take their course before joining in).

Unfortunately, I wasn’t able to apply straight away (mostly since I was spending any time I got those days writing code for FLINT). However, I did realise that there is a lot more to computer science than Byld and Foobar (which I was completely obsessed with during that period). So as soon as I wrapped up my GSoC project, I shot PK an email asking whether they’re taking any students.

My application process was very straightforward. After sending in my CV and SoP, I was called directly for a brief chat with The (now Dr.) Dewan and Anu. Both of them have mentored and assisted me for extended periods with my projects, and I’ve learnt much more than just how to write research abstracts from them (including PTK’s art of cracking the best puns ever, and Anu’s art of subtle and effective sarcasm). Of course, I did destroy multiple servers in the process, but it was always forgiven within a week with restored access 🙂 After the first round, PTK and Anu recommended me to PK, who took the final screening.

All in all, it was a really smooth and professional process, much more to the point than the majority of the job interviews I’ve been taking recently. What still surprises me, is the fact that I’ve never come across another lab member who wasn’t given a task during the interview process. Guess it became mandatory after I clogged up a couple of servers hahaha?

My initial time at the lab seemed to be somewhat jinxed I’d say. The first two projects I worked on between Jan 2016 and April 2016 got scrapped in succession due to some technical issues. Both involved some analytics on data curated by an external agency. At this point it felt like a “local minima”, and I started wondering whether I was doing something wrong. When I meekly pointed it out, thankfully PK intervened and explained how it was not at all an issue on my end, and I should be expressing my thoughts more frequently rather than overthinking. That’s one thing I’ve always kept in mind, and tried to improve upon. Yes, folks, communication is the key.!

The summer of sixteen nights

During Summer ’16, PK gave me the opportunity to go spend some time at IIIT Hyderabad. They were hosting IASNLP over two weeks (16 nights :P) and had invited some people from Precog. He explained that we would like to do some work with code switched social network text, and gave me a free hand to Indira, Mallika and I to work on whatever we like.

IASNLP proved to be an extremely important stepping stone for me, as it was my first introduction to computational linguistics and machine learning (something I am working on till date!) Upon returning, we finalised our target to be a set of low level tools (LIDF, POS tagger, NER, Sentiment) for English – Hindi code switched text. Although I didn’t realise it back then, the problem was not as trivial as I thought. In fact, I ended up working on it for almost a complete year (taking it up as my BTech Project eventually), and finally published it at ACL this year (link and link).

 

Lab members and interns, summer 0f 2016. Missing a lot of people here

Why Precog?

Being a part of Precog is much larger than just completing your thesis/ project. When you’re a member of Precog, you’re a member of Precog. Weekly group updates keep you up to date with what’s going around in the lab. Regular paper reading sessions keep you updated with the cutting edge in areas other people are working in (I’d admit I wasn’t able to take full advantage of this, something I deeply regret). If I had to cherry-pick five top reasons I’m gonna miss being here

  • I got access to whatever resources I required to work. Anshuman, Divam and I constantly used to fight over GPU servers. PK noticed and ordered a separate one for each project 😀
  • Members are extremely helpful. If you ever need to get a code or paper draft review, all you need to do is shoot an email on the mailing list. And it is not just work. There were countless times I’ve pestered Anu/PTK/Srishti/NS and even PK to review my SoP for various applications!
  • There’s no need to be diplomatic. When it comes to work, people expect you to speak freely what’s on your mind. Even if it hurts sentiments.
  • Just like the IIITD culture, there is no concept of senior / junior / “call me sir/ma’am” amongst members. I think we inherit this really well from our college. Anu kept a special jar where you had to put in 10 bucks every time you called her ma’am :’)
  • We don’t just work together, we party together too, and a lot! Apart from regular PK treats at Barbeque Nation and sometimes even his apartment (how many of you can boast of having had dinner in the faculty residence :P), often we head out to GK after a tiring week (PTK always seemed to be fixated with The Beer Cafe for some reason).

You never walk alone. Winter 2017 semester, I took a break from college. On the eve of Precog’s birthday, members called me up via Skype for the celebrations 😀

To say Precog has played an instrumental role in shaping who I am today would be a massive understatement. I’ve spent more than half my undergrad life associated this lab, its members and its wonderful wonderful machines (JARVIS, FRIDAY and DEXTER). I have failed to produce results multiple times, missed multiple paper deadlines and annoyed a lot of members. However each time, I’ve learnt something really important, which allowed me to succeed in the end. And oh boy, when I finally got a paper accept (two in a row in fact, ACL SRW and SocialNLP @ ACL!), it was a beautiful closure.

PK and I after my (almost) convocation in August this year

What I’m grateful and indebted for, is the fact that I was allowed to make mistakes and learn from them. An essential piece of PK “gyan” (knowledge, for the non-Hindi speakers) which I’ve valued increasingly over the years, is that “working hard is good, working smart is better”. Choosing your battles is as equally important as working hard to win your battles. To succeed, I think it’s essential to surround yourself with people that believe in you. My journey with Precog was certainly not easy, it had its fair share of ups and down. However, it comprised of everything that was required for me to get out of my comfort zone and succeed.

Has the battle for General Elections 2019 shifted online?

Social Media, today, is playing a very important role in the politics of almost every nation. In India, there has been a boom in social media political campaigns, which was more marked in the 2014 General Elections.  All major political parties used social media to promote their manifestos and interact in the public domain in a one-to-one manner. They analysed different views of the people, and worked on them. The Home Minister, in a seminar after the 2014 general elections, also said that “Through social media, the government is outlining its plan, its vision”. After assuming power, the NDA government has been using Twitter, Facebook and blogs to outline its plans, vision, showcase the progress, and other updates.

One of the major reason for this was to involve and cater to the interest of the youth of the country, that are active on most social media websites. Owing to this, political parties have invested huge amounts of funds into social media campaigning, hence also increasing their reach.

Formerly our work for the 2014 General Elections involved heavy analysis of Twitter data. The work was supplemented by developing a portal that captured the intricacies of the political campaign leading up to the election as a mirror of the social media.

In order to kick off the next sprint of analysis for the upcoming general elections of 2019, we decided to revisit the data gathered in 2014. We had over 21 million posts by roughly a million handles collected in the last sprint of analysis that ran in 2014. An inspection of the handles lead us to find that currently only 31.64% of the handles are still active (defining activity as the handle having posted at least one tweet in the year 2018). Thereafter, the deleted and suspended handles constitute upto 15.65% and 19.81% of the total users respectively.

We are building a  portal to analyze the 2019 data and help see through the data that is getting generated on social media. Stay tuned as we unravel further analysis for the forthcoming election cycle. Below are some images from the portal landing page. We hope to do more analysis of the data that we are collecting from 2019 Elections.

If you have any questions for us to answer, please drop an email at pk[at]iiitd[dot]ac[dot]in we will be happy to answer it for you and credit the same for you.

#GeneralElections2019

 

A Summer to Remember

I spent my summer 2018 at Carnegie Mellon University (CMU) as a Robotics Institute Summer Scholar (RISS). It is one of the most sought-after internship programs out there, partly as it is hosted by CMU and partly as it allows you to immerse yourself into research in the field of Computer Science. I had spent my past two years at Precog working under PK on several developmental and research projects. I was hesitant at first while applying for the program as I was not sure if my experience was enough to have a decent shot at selection. As the application deadline approached I thought to at least give it a try and was able to submit it just in time. The next few months were filled with eager anticipation for the result and it was on 14th March that I received an interview call from my to-be mentor at CMU. After my interview, I was informed regarding the confirmation of my selection in the program at the end of March after two long months.

The summer began with the orientation of ~35 scholars from around the world. I was working in Intelligent Coordination and Logistics Lab (ICLL) led by Dr. Stephen Smith along with Dr. Isaac Isukapati. I worked on two projects during my time there. The first project was regarding developing a traffic simulation which incorporates a bus dwell time model built using Bayesian hierarchical inference. The second project involved testing and developing an IOS app which would help visually impaired people to cross the intersections using minimal gestures. Both of the projects had SURTRAC at the heart of the problem statement. SURTRAC is a system developed by ICLL to make intersections smarter by seeing the oncoming traffic using the DSRC technology to change the phases of traffic lights. I worked on these projects with Aidan – another member of the cohort and one of the best colleague you could ask for.

With Dr. Stephen Smith and Aidan during the poster session
With Dr. Stephen, Dr. Isaac, and Aidan during the closing ceremony

RISS was an enriching and a holistic experience. I met with some wonderful people during the time and made some lasting friendships. This program not only focuses on encouraging students to heavily engage in research but also allows you to build yourself in an all-round manner. During the summer I got the opportunity to attend the RSS conference at CMU. It was at this conference that I got to interact with world-class researchers and even attended a talk by Dr. Sergey Levine.  We as a cohort also had the opportunity to visit the office of the mayor and interact with a councilperson regarding our internship. This platform provides several opportunities like the UBTech and DJI workshops where we worked with drones and a humanoid robot, which to my surprise were given to us at the end to take back home. It felt like I was learning something new in every second that I spent there. Initially, I used to think of research in a more technical way with a narrow-minded focus on results rather than what the results we’re trying to convey but after regular philosophical discussions with my mentor, I got to know that it is much more than that.

Humanoid robot One with everyone!
During one of our late night walks! L-to-R: Mononito, Akari, Kyuto, Aidan
At the mayor’s office. L-to-R: Dr. John Dolan (Program Director), Me, Mononito :), Nick, Ziqi, Ms.                             Rachel Burcin (Program Co-program Director), Hameed, Yike

I owe most of my success to Precog which has been an intrinsic part of my career for the past two years. They are a bunch of people who genuinely care for you and are willing to help if you face any issues regardless of its triviality. They are highly welcoming for new students and make them feel like a part of a family. The weekly group discussions allowed me to ensure regular progress and brainstorm ideas to fix any issues that I would face in my project. I highly recommend everyone to be a part of Precog and experience the warmth of this family.

A life that most Indian students couldn’t even imagine!

Disclaimer: This blog is about an experience of a lifetime in two years. So, bear with me if I am too detailed in the write-up 🙂

It was my final year of undergraduate studies when I used to Chair the ACM Student Chapter of my college. My team was looking to invite an academician for a talk and thus, was scrolling down a list of Worldwide ACM Distinguished Speakers. That’s when I first heard of a IIITD Professor who works on Social Networks. But no one knew that inviting him was going to change the next two.. pardon the next “n” years of my life! I have always dreamt and strived to become world’s one of the most impactful speakers more than anything else. Watching and listening to PK’s one-hour ACM talk on “Privacy and Security in Online Social Media” was surely a teaser of what I always desire to achieve. That single-hour talk wasn’t only about the magic he creates as a speaker; rather, it was also my first step towards one of the very few research groups in India which believe in Computing for Social Good.

Day 0: Mini shocks complementary with newbie package

High Voltage: After clearing the rigorous selection process of the group, involving a challenging task and tricky interviews, there I was, on my first day, entering the lab.

Okay, wait…
A research group. Check  ✅
Apparently, some of the smartest minds working. Check  ✅

What do you expect when you enter their workplace? A set of some very serious people, sticking their faces to the computer screens and minding their own jobs? Not really. As I walked towards the lab, I could hear 5-6 people shouting on the top of their voices, and as I entered, I found that the number is ~20 in a 16*12 sq. ft. room “politely” arguing over a methodology followed in a research paper. We cutely call this regular practice of ours as “Brainstorming Sessions”. Overwhelmed with the energy fields in that small magnetic field space (our lab), I was sure that this was the right place for me.

Old lab – Place from where it all started. Clicked the left one on my last day! The right one was clicked on one of the infinitely many occasions we celebrate 🙂

Unexpecting the unexpected: Now, my concern was whether I was good enough for the place. Just when I was introduced to the group and was so pumped up to rock the hell out of any project I’d be assigned, the following happened to be my first official project conversation with a senior:

“Have you worked on _____ technology?”,
“No”,
“No problem. Take your time. Learn it by tonight? We’ll start working tomorrow.”
“Ok, WHUTT?!” (That’s how my reflex worked xD )

To all those who believe in “settling in”, “taking some time in your new job”, it’s an illusion at Precog. Theoretically, you have time to settle in, but in reality, YOU DON’T. This constant time-crunch, in retrospect, always forced me to keep pushing my limits. In pursuit of matching the pace of the people around, I developed a habit to keep accelerating. That’s what Precog is – people chasing their own better version every single moment.

“Go beyond not just to meet expectations”

Next day. An hour-long meeting. The first project assigned to me and I became a victim of information overflow. There were technologies being used which I only read about in blogs of successful start-ups. The project was already on an unbelievable scale. Astonishment, excitement, and nervousness struck together when you realise that the job is not just to do some amazing stuff, but to top the brilliant piece of work achieved by three generations of Precogs.

Pulling off all-nighters to get the code talking to me, to build something that I will always be proud of, to meet close deadlines and nailing it – all this was honestly beyond my anticipation and simply unachievable without the people I worked with. The best part of Precog is that it continually increases your appetite for challenges and simultaneously, has enough resources to feed what it grows. So, when things had started settling in, the obvious happened. I wanted to have more on my plate.

That’s when I began working on a research submission for The Follower Count Fallacy project. Everything was different in this endeavour. More than being different, it was unexplored for me. Meanwhile, in an ongoing email conversation with PK, he sent me a slightly coded reply saying–

I couldn’t decode it until I delved into what was not my comfort zone – Research. I did know how to build things – how to “implement” a thought and bring it into reality, but research was a completely different ballgame. The effort was not just about finding solutions; it was more about taking a step back and asking the right questions. Apart from PK, I was fortunate to have a mentor who was supportive enough to walk me through in this endeavour. As much as she is a perfectionist, she helped me in my struggles, and failures, despite the time-crunch we used to have. It was her mentorship only which eventually enabled me decode PK’s message, i.e., when you work just to meet expectations, you set your boundaries and limit yourself from hitting higher. After all the failures, believe me, that the success tasted much better!

Amidst the process of exploring/struggling/failing/succeeding, you don’t realise when you actually become a Precog than being just a part of it. Late-night group brainstorming on somebody’s problem statement and debugging a program with teamwork had become a routine. It was now time to take up a third challenge apart from the two projects with me already. This was one for the team. I was given the responsibility to manage the humongous server infrastructure of Precog. Combine the infrastructure of some renowned universities, and we can beat them with ours. I clearly wasn’t skilled in handling this, but I was sure ready for this. Managing the resources for numerous students working on uncountable projects, along with several external collaborations – my plate was so full. I was struggling badly, and yet I was enjoying it!

Learning was surely at an exponential high during these two years. The challenges here didn’t only make me a better developer, researcher, or a better team player. It eventually made me a better thinker and a fighter!

After one of the deadlines successfully ended. Couldn’t be any happier during my RA-ship!

Two years, Seven cities, Sixteen places!

My decision of refusing two industry job offers to join a research group, which was a massive leap of faith, conveys the intensity of impact that PK creates on stage. Sharing stage with the man, who has spoken at places like Harvard and Stanford, was a dream. But, dreams do come true! It all began when PK had to deliver a technical session at a place. Everything was going smooth, we were done with three-fourths of the session when PK paused for a break and asked me whether I’d like to speak and deliver the remaining part. Omg! moment and in no time, I agreed to deliver my first ever professional tech session.

Since then, I got chances to present our work and deliver tech sessions with (and sometimes, without) PK at numerous occasions. I traveled to seven cities and interacted with people across the country. This enriching experience is special not only for the places I visited, or the sessions that I delivered; it is more about the impact we were able to create amongst the people we’d never known. Nothing of this was possible if I had not been a person that PK-Precog helped me become!

The Precog Orientation: Skills utilised sometimes at home too 🙂

PK an advisor, a friend and a role-model

At most academic places across the world including ones in India, there’s always this unsaid generational, professional and emotional gap between a professor and his students. You don’t particularly expect to go for a Biryani feast for dinner with a Prof, or play bowling and cricket with the whole group, or rock the dance floor together. Now, you get a hint of how unconventionally cool my advisor is.

The group’s energy is just a derivative of the amount of energy that he brings in. This energy is tremendous, contagious and honestly, was scary initially because I’d never worked with a personality as dynamic as his. He is a person who leads by example and whose actions inspire people to become as sincere in life as he is. The most amazing thing is that he has time for everyone and everything! From being actively involved in each of the innumerable projects that Precog is working on, to delivering university lectures, and then, traveling to places across the globe to deliver talks and sessions, to also take out time for going out, playing and enjoying with the group, he has this extraordinary time management skills.

Indeed, there are several research groups in India, but the differentiating factor that makes Precog incredible is the liberty you get in making decisions. This freedom in making choices develops a sense of ownership in you towards everything you pursue and allows you to be more open to experimentation and learning. All attributed to the PK-effect which flows in the group.

Words will always be less to quantify the influence he’s had on my mindset, career, and life in general. I will miss the infinite times of *knock-knock* at his office for discussing every small and big, good and bad moments in my professional as well as personal life. Just as he plays a pivotal role in impacting the lives of so many students around him, I hope I’ll be able to continue what I started in Precog and keep making a positive impact on people’s lives in my way.

A Big Fat Loving Family Precog

At Precog, it is so fascinating to experience the incredible pace at which strangers become friends, and friends become family! We take the slogan, “Work hard, party harder” so seriously that good and bad experiences were only an excuse for celebration. These people make every success look grander and every failure smaller.

I will definitely cherish the late night productive and unproductive discussions we had, the many #PrecogSocials we enjoyed, the pranks we planned on each other, the weird dance moves we discovered together, the jokes that made us roll on floor laughing, the board game conspiracies, the fight for free pizzas and the list would go on.

No matter how much work these people have, they’d be ready to solve your problem without looking at the clock. To your kind attention, I’m not just talking about a few people in the lab; we are in fact so huge a family that you’ll find at least one of us in every big place across the globe. And irrespective of the fact whether we know each other personally or not, a “Precog connection” is more than enough for one to go out of their ways to help the other. This fantastic connect with people is the foundation of Precog. And nothing would have existed without the cohesives of the group – The Pillars of Precog!

Pillars are they, as Precog stands on their shoulders – the Ph.D. students! There’s no way I could’ve achieved the delta within me without their support. The equation that I share with each of them is simply inexplicable and I feel nostalgic every second when I think of each of them. No matter what wrong or right is happening in my life, even if I have no idea what was happening in my life (which was the case mostly), they’d know me better and guide me in the right direction. Each big and small conversation with them made me wiser, and more charged up. Their presence has such tremendous influence on us, on the group that I think I have unknowingly acquired some notable traits of all five of them.

Okay, now imagine the energy level with these people in the 16*12 sq.ft. lab space I was talking about. Did you sense that? :’)

At last, I’d say that it is absolutely fine sometimes to take a calculated leap of faith because it is only then when you truly understand the impact of choices that you make in life. Consequently, you tend to experiment more wisely and collect richer experiences. Joining Precog was one such huge leap of faith that I took, and it turned out to be one of the most amazing times of my life.

Loads of love to everyone who played a role in making my journey so special!

PS: A huge shout out to my two elite Counterstrike (CS) team members. CS is of course only an excuse to mention the two brothers I found in this endeavour. It’s very rare in life, to find people whose frequencies match perfectly with yours. In life, we don’t ask for cover as we got each other’s backs already! To both of them – * Check bhijwa dena zara *

* Signing off for now *
– Kushagra Bhargava

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!