Sitemap
Prapti Sharma

Prapti Sharma

I write at times coz I like.

My Journey in Open Source: From Small Programs to GSoC with OpenWISP 🚀

7 min readJun 1, 2024
Press enter or click to view image in full size

Hii everyone! I’m writing this blog to help 1st and 2nd-year students navigate the world of open source. I started my journey as a part of a technical club, and it gave me a start in my technical journey ahead- only a start though. So, it doesn’t matter if you belong to a club or not; you can still do everything. 😊

I slowly started to learn about GitHub. Initially, I had problems, but eventually, I caught on. By the end of my first year, I started contributing by making streaks on my github, just like we do on LeetCode. Contributing to projects taught me a lot about open source. 💻

I used to watch a lot of videos on open source programs. I’d like to mention that I once attended a speaker session where I was made to sit forcefully. That day, I learned that somebody in our college had cleared GSoC in his initial years, though, not lying, I was very uninterested in the session. 😅But I started knowing about open source from that day, saw hell lot of videos tbh. My YouTube history is filled with such videos.

Then came October; I took part in Hacktoberfest and sailed through, merging 10 PRs instead of 4. Then I took part in several hackathons where I often had the responsibility to speak and handle my team in pitches. Though I never won a single one, but those hackathons shaped me. 💪

I am somebody who keeps doing something or the other, always trying new things, big or small. Grabbing opportunities is an art, guys. 🎨

One video that I watched, which is a complete documentary to give you an idea and motivation too, is by Devansh Dixit. Go search for it on YouTube and watch it right now! 📺

In October, right after Hacktoberfest, I started investing my time into GSoC. I wrote down some organizations in my favorite notebook and kept it close to me on my bed to write down everything I suddenly remembered or planned at midnight. In 10 days, a PR was merged, and it gave a boost to my confidence. I then started looking for more issues, and before writing the proposal, I merged 4 PRs, which were the most done by anybody there as a new contributor for GSoC 24 speficially. 🚀

In January, I was less active with openWISP and started contributing to IWoC (Innogeeks Winter of Code) and won it, merging 54 PRs there, which again boosted my confidence. 🎉 I also became the first AWS Cloud Captain from my college in March. You can join my group using this link . We will be having our first offline event on 21st June.

Coming back, then came a list of projects by OpenWISP on Feb 10th . I was looking for the one where I could learn the most because I knew Django to some extent and didn’t want to go for any frontend project. So, I went for a backend project that had a new tech stack like Elasticsearch and InfluxDB. I first researched it, tried to understand it and then made up my mind to go for that one. I wrote the proposal, but I was already late, not lying — I forgot the date as I was enjoying my vacations at home after exams. 😅

I panicked when I saw the last date was near. I had a good idea of my project, so I started drafting the proposal ASAP. I got it checked by 2 seniors, one from my college and one from a previous year’s OpenWISP contributor.

I sent it to my mentor, and the first feedback was harsh. It made me feel that they would never select me, and I lost hope. I didn’t know that they were just correcting me to help me. I submitted it, mailed it to my mentors, and got a reply that it was acknowledged, and that’s it. Nothing more than that. So, I was very unsure of my selection.

I did my work and the hard work that was needed. The proposal was done, and I had my time to relax for a few days. Then I went on their dev server again and had a chat.

I knew that on 1st May, the results would be announced, and it was a big day for me. Whether I was selected or not, I decided I would continue my journey in GSoC. If I wasn’t selected, I would have been heartbroken, but that’s okay because there are bigger things in life, and I was just in my second year and would try again. This is what I told myself.

Get Prapti Sharma’s stories in your inbox

Join Medium for free to get updates from this writer.

I am somebody who doesn’t keep many expectations; instead, I keep trying because, as they say, expectations kill.

Then came the results at midnight, 12:27 AM on 2nd May. I kept waiting for it the whole day. I told my parents that big news would show up tomorrow; if it was positive, I would tell them, otherwise I wouldn’t because it wouldn’t matter then.

I was sleeping when I got a call from a senior who is a GSoCer too. He said, “Congratulations!” He was checking the results, and yes, I was selected. Then I called my siblings. I didn’t sleep the whole night just to tell my parents at 5 AM because I didn’t want to disturb their sleep at night. When I called them, they didn’t get it much. My father even said, “So this stipend is for all as a group?” and I was like, “What group, Papa? There is no group; it’s an individual thing.” Haha. He kept thinking that I was in a hackathon or something. 😂 Told my good friends too, they were happier than me.

Now with OpenWISP, the journey is on. It’s not smooth though; it’s a rollercoaster of ups and downs. I write daily updates there, sometimes getting a positive response, sometimes negative, but I am learning for sure. Until now, I didn’t know how to roll back a migration, yes, lol. But you will never know everything because you are not reading a book while you learn any tech; you are just following brief docs or watching tutorials, that’s all. Nobody teaches you everything, and GSoC projects are done in big orgs, so you learn a lot as the database is big and very complex.

OpenWISP itself is a very complex org too. Initially, it takes time to understand it well. But if you are interested in Django or computer networks, I can guarantee it is the org for you. Go ahead, find your interest, and if I can be here, you too can. 😊

My Experience with OpenWISP

Now that I have been selected, let me tell you about my experience with OpenWISP . My mentors, Federico and Gagandeep, have been working hard with me to help me understand and learn OpenWISP monitoring.

As a newbie and a second-year undergrad, it’s more of a learning process for me. Working on such a complex and big database is clearly a new thing for me. Leaving academics aside, I have been trying to solve issues on GitHub. 🛠️

During the community bonding period, I worked on an enhancement issue for OpenWISP monitoring. As the name suggests, OpenWISP-monitoring monitors different devices using their IP and MAC addresses. It can monitor a lot of things like Wi-Fi, hotspots, VPNs, routers, etc.

My issue was related to the health status of connected devices. For example, if the device’s internet connection is in a critical condition, the status would show “critical.” If it’s fine, the health status would show “ok.” If the device is deleted or disabled, it should show “unknown,” which it was not showing. So I had to correct that, and it took me a lot of time — more than one could expect from me. My mentors helped me a lot — when I say a lot, I mean it. Finally, it was solved and the PR was merged. 😊

I learned a lot from that particular PR. I wrote a migration file manually for the second time and learned a lot about Django tests and how they work in large databases. I was inexperienced with writing Django tests.

I solved other issues too. The point is, when your PRs merge in such big organizations, it’s a source of happiness and motivation for you. 🎉

Hence, the bonding period was good. Right now, I am working on version support upgradation for InfluxDB 2.0 while keeping the older version too. It includes working with and handling Docker 🐳 and Ansible too. So again, it’s a cool thing. I deliberately chose a backend project so that I could dive deep into Django this time because I always wanted to, after learning that framework. I was determined to choose something that could make me better.

So, this was about my journey till now. I will write another blog when I complete my project or maybe when I am halfway done with it. Until then, keep learning new stuff. Try to disturb your mentor less, hehe. Don’t be like me. Pay more attention and code.

Code your way to success. 💻✨

Thank you! 🙏

--

--