I was that kid who actually loved studying and getting good grades. Somehow people naturally assume that if you’re straight A s always, you’re meant for science. Now its not like I was that example who didn’t choose science in her high school. Its true. Science grew on me slowly. I loved simple logical reasoning and I absolutely love mathematics (especially differential calculus :3 ). But there definitely wasn’t any clear direction in my head pertaining to what field in science got me thrilled the most.

So let me tell you what, how and when, stuff started happening.

High School (11th and 12th)

I has enrolled in science stream by now and was preparing for the Joint Entrance Examination (JEE) conducted in India every year. We are given a choice for the 5th subject, and I chose Computer Science. :) This is what I learn in my entire 2 years then.

  1. My choices included Java and C++ and I chose the latter. The book we followed was Computer Science with C++ for Class XI and *Computer Science with C++ for Class XII. This covers all the basics of programming, data structures, file handling and Object Oriented Programming (OOP). It contains an extensive list of examples and exercises.
  2. We learnt MySQL, and DBMS too.
  3. My mini project for grade 11 was a basic hangman game, and for grade 12 was a library management system.

College

I cleared my JEE(AIR 8284) and am enrolled currently in the Indian Institute of Information Technology, Allahabad (IIIT-A). That’s right. India’s number one IT college. But wait! There’s the catch. I was enrolled in Electronics and Communication. This college provides these two branches only with various specializations in each. I was still not sure where I was heading career wise. Most of my peers were dead sure what they wanted to do at that time. Anyway, so I thought what was best for me was to try to at least get a branch upgrade to IT as its course here is pretty exhaustive and well taught. Also, because of my previous experience in coding, I had developed a crude interest in CS by now.

First semester

The first year course in any engineering college stands uniform throughout all the branches. So regardless of being an ECE student, I studied programming and attended all of its related workshops, This is what all I did :-

  1. Our first programming course was “Introduction to Programming”. We were taught the same basics of programming and data structures that I had learned in my high school. Language used was C. Hence this course was cake walk for me. We did have occasional lab tests that were actually pretty challenging. The book I followed was “Programming in Ansi C” by Balaguruswamy.

  2. I had cracked the very first Easter Egg in our college, and I was elated! It required me to inspect the HTML page given by them,and remove a hide() call made to a section of the page. After removing it, an entire portal was made visible and you could register to get your favourite mentors. I had gotten the head of the then Geek Haven :D

  3. I participated in all the coding contests that they used to hold periodically. That helped me improve my performance in a time constraint.

  4. I had attended my first hackathon, IIITA Hacks, where I was alloted a team with the seniors. The atmosphere and experience was mind blowing. I learnt basic PHP there. Our team also bagged the 2nd prize :D

  5. We have a technical student council (Geek Haven) that used to conduct occasional workshops on various divisions of IT. Now since I wasn’t sure/aware of any of this, I attended all of them. The divisions are :-

  • Competitive Coding - They taught us optimizations and algorithms that had minimal time complexities. I practiced on websites like Spoj.com , HackerEarth.com , codebuddy.co.in . Its important to have a foundation for creating algorithms on the go, and hence I still plan to keep practicing questions here.
  • Web Development - They gave us an insight to HTML and CSS. This appealed to me the most. As development can actually be witnessed by the eye here. I learnt HTML and CSS from Coursera .
  • App Development - This required us to know JAVA, and I didn’t. So I didn’t even try to pursue it further. They basically taught Android Studio.
  • Cyber Security - I found this section highly fascinating. Thy dealt with security, cryptography, Capture The Flag (CTF, I loved playing this), hashing, bugs, vulnerabilities in networks and operating systems, and tools for hacking. This was a completely new world for me and I used to love their workshops. I did follow this for quite some time. But then I had to focus on certain other things and hence it had to be dropped. I read about bitcoins, block chains, dark web, the tor browser, and played CTFs here.
  • Tesla - This dealt with the ECE branch and they taught us Ardino. I followed their workshops till 2nd sem. But dropped it later due to decreasing interest.
  • Graphics - Honestly, I was much interested in this ever. :P
  • FOSS - Ahh, I had no idea how this worked till my 2nd sem. Open Source was unheard of for me, and I was using Windows, and had no Github account. So I was actually nowhere with this. But that’s okay, I’ll catch up in the upcoming sems. :D

Second semester

This semester was actually a little light academic wise and so I had time to try out new things.

  1. I continued practicing competitive coding.
  2. Learnt Bootstrap by making web pages using its framework.
  3. Learnt PHP and brushed MySQL. Then used the 2 together to create a blogging application. I obviously used a tutorial to make this. This uses the XAMPP stack. (still didn’t have Linux).
  4. Learnt Git and created a Github account.
  5. Was introduced to Javascript and chrome extensions.

Summer Vacations

Approximately 3 months of holiday and I had plenty of things in mind to try out. This is what I did.

  1. Created some more web pages to get my understanding of HTML and CSS better.
  2. Continued practicing coding.
  3. Learnt python and started coding a little in that. This is when I was introduced to Django but I didn’t touch any of it then.
  4. Realized I don’t wanna work with PHP. :P

Third semester

My first year results were out and this is what had happened - I got a branch upgrade with the highest marks. Yay B-) . Hence now, I’m an IT student. But this change happened after an entire month after the vacations so I again had plenty of free time. Learnt more stuff xD

  1. Dual booted Linux with Windows ( FINALLY ).
  2. Learnt Javascript and JQuery from Codacademy. This was actually very fun because it enables you to dynamically change your web pages and I wanted to put my skills to test. Hence I made 5 applications (4 games, 1 app) using it on my own. Used JS libraries and plugins to create websites.
  3. Played a little around with the YouTube API. Nothing too deep.
  4. The language taught this sem was JAVA. Hence we learnt OOM and event - driven programming with GUI using AWT , swing, applet in and out.
  5. Participated in Hactoberfest. I got my shirt, wohooo!
  6. Tried learning Node.js. (Failed).
  7. Tried learning Django. (Failed).
  8. Touched upon JSON, meteor, and read and read blogs about GSOC.
  9. Made a project in JAVA, a digital clock.
  10. Started touching upon python for data science. Very very briefly but this seems to be an interesting future prospect :)
  11. Became a core team member in HINT and this actually is one of a kind experience. :O
  12. By this time, I have realized one thing. C++, Java, python, javascript :- I can work in all 3 given a little time. My level of proficiency in each is in this order :- C++ > Java > Javascript > Python. And this can be turned around very easily I know. Anyway, still trying to get through my checklist.

Fourth semester

  1. Finally dived into open source, and I swear I’m going to continue for as long as I can. Contributed in:
    • Teammates- NUS
    • Webcompat- Mozilla
    • ReSpec- W3C under Mozilla. The last one happens to be a beautiful experience, it was my repo for GSOC ‘18. I didn’t get selected unfortunately but I won a lot of Mozilla swag :3. More about it here.
  2. Tried out Jekyll by building self profile (the one you’re reading).
  3. DBMS project in Flask: Virtual Classroom.
  4. HINT was a massive success!
  5. Made coordinator of Blockchain.
  6. And chairperson of web and media, Gymkhana lel.

Summer Vacations

  1. Made numerous python applications (Alarms, web scraping, media downloader, emailer,played with request module, text-speech api).
  2. ML course- Coursera (Andrew NG). I found this a little too theortical, so I left it midway and I purchased a Udemy course. I’ve blogged about it here
  3. Lots of coding and practicing for intern interview.
  4. Made a dapp using ethereum used to buy/sell stuff.
  5. Twitter bot for geekhaven’s twitter account.

Fifth semester

Alright, this semester is FULL of projects! Mini, sem, course, hackathon…. Pheww

  1. Semester project is a combinaton of ML and cyber security. Finding private attributes of OSN users.
  2. Assignment Submission portal for software engineering course.
  3. Stock Analysis in Jess, 1 project in Prolog, various assignments in prolog and python for AI course.
  4. A project in OpenCV, gesture recogition, colour detection for Prototype hackathon. (I’m satisfied about this because I could complete this all by myself :-) )
  5. I got a summer internship in GoJek, and hopefully a winter internship in Flyrobe.
  6. Fun fact about this sem: I got a LOT of rejections from various scholarship programmes. :D
  7. Outreachy made me ineligible because of my term dates.LOLOL
  8. Guess what! I got an interview with Google!

Winter Vacations

  1. Whoaaa! Gave my first ever Google interview.
  2. Went on my Day 1 to Flyrobe for intern. Understood the project, came back to a mail from Google about another interview.
  3. Did competetive coding questions for the interview.
  4. Cleared Microsoft’s coding round, up for the interviews!
  5. Had to leave the Flyrobe internship because of lack of time.
  6. Google results OUT! I’m NOT selected!! :D Here’s my experience.
  7. Got myself into a good team for Smart India Hackathon (SIH). Its the first time I had a team tbh :O
  8. Purchased a Udemy course on Deep Learning.

Sixth Semester

  1. Decided I need to up my pointer, so started studying :3
  2. Semester project is again a combination of ensemble learning and cybersecurity. Implementing intrusion detections.
  3. Wrote about 10 proposals for SIH. Didn’t get selected for SIH.
  4. Microsoft interviews in Delhi, you guys! Went to DTU to give them, got out in the 1st round :/ HORRIBLE HORRIBLE EXPERIENCE
  5. So apparently, some team either got disqualified or didn’t send their confirmation and we got selected for SIH! Mid sems coming up.
  6. Left on the evening midsems got over to Hyderabad for SIH. We WON!!
  7. Started contributing in Outreachy, Fedora.
  8. Got selected for Fedora, Outreachy. FINALLY!
  9. I won full diversity scholarships from The Linux Foundation to visit their conferences in France and California. Will probably just attend in France.
  10. Hopefully will attend Flock to Fedora in Budapest, Hungary.

Summer Vacations

  1. Went to Gojek for intern. Stayed in Bangalore. Super cool experience.
  2. Used to come back from Gojek and work on the Outreachy internship.
  3. Got my PPO at Gojek :D

Seventh Semester

  1. Went for “Flock to Fedora” at Budapest, Hungary and gave TWO talks.
  2. Started applying to universities for a 6-month research intern. Gave loads of interviews.
  3. Got selected in Synaptics for a 6-month intern (only as a backup :P).
  4. Semester project on RNN.
  5. Rejected two Google interviews cuz I don’t feel like working at Google yet :P
  6. Have a 6-month offer from SUTD Singapore in heuristical AI, and Red Hat, Data Science for explainable AI. Waiting for CERN results in December. Let’s see where I go.

Checklist for the future

  1. Get a 10 pointer.
  2. Give GRE.
  3. Practice coding.
  4. Decide on things.