Who is The Real Virus ? Humans Vs Corona

He is going from country to country ,unstoppable, killing thousands without any mercy , crushing economies and leaving millions either dead or hungry , you feel that this hidden enemy is full of rage…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




A Complete Guide for GSoC

After facing so many questions and providing answers to so many open source enthusiasts about Google Summer of Code, shortly said GSoC, I decided to write a blog answering almost all the questions that a guy considers while he/she is planning for GSoC.

So, if you are a lad who is wondering about getting into GSoC, hang on tight, because this blog will be a long one. This blog contains experiences of members of Mobile Development Group, also know as MDG, and their opinions related to each question that is present in this blog. I can totally assure you that this blog will be helpful for your future journey.

So let’s start with some basics:

GSoC is a non-competitive(after getting selected, of course 😏) program for students to get some experience in open source development. It is an initiative by Google that helps organizations connect with students and get them started with their open-source projects. It is a great platform to explore new areas, maybe discover a new career path!

GSoC is not an internship and should not be looked at as a way to earn money. It is definitely not something you should pursue half-heartedly or just for the sake of it, because the world depends on open-source software more than one might think!

Before discussing any further, let’s know about perks that GSoC offers so that you can get more motivation during your preparation.

It’s never been easy to learn to program. But despite several ways to learn how to code, trust me 😅, the best way to improve your skills and abilities is by contributing to open-source projects. For those who do not have any idea about open-source, at the simplest level, open-source is merely a writing code that other people can freely use, modify, and enhance.

For someone with no open-source experience, one of the best ways to get started is GSoC, irrespective of if you are a GSoC aspirant. First and foremost, you should select a programing language of your choice. Once you choose a programming language, explore for a project that matches along with your interests and passion. GitHub is the most popular platform for open source collaboration; therefore, you will probably use it while exploring the world of Open Source. First, you need to create an account on GitHub and read the guide that helps you get started.

There are many organizations where people work together on their favorite piece of technology in their free time, and some of them as a daily job! I think the GSoC archives are one of the best-curated lists of excellent open-source organizations. The most straightforward path would be to see all the organizations and choose one purely based on what kind of end product excites you. Forget about the tech stack for the moment. Once you’ve selected an organization, try diving a little deeper into it. Most organizations have some instructions on getting started. Follow those instructions. For detailed knowledge about how something works, you can always find resources from a simple web search. Read up on the necessary concepts. You’re good to go. Try fixing a simple bug or implement a simple feature. These first few steps are the most challenging and require nothing more than a firm resolve and persistence.

Developers strictly stick to the general rules and coding practices of their organizations. Therefore, while contributing to an Open Source project, one learns about what a “clean code” is, and how to write quickly readable and maintainable code 😲. The main reasons why a developer opts for contributing to an Open Source project are to get recognition, to improve their programming skills, and to become a part of this vast community.

You require almost no skills for GSoC, just a lot of enthusiasm and dedication to reach your goal. Every project requires very different skills, and often, these are things you learn when you start working on a project rather than learn beforehand. Look out for projects that interest you first. Some organizations are very supportive and might entertain candidates with missing skills and help them gain expertise along with GSoC, and some organizations have a strict no spoon-feeding policy. Take “appleseed” for example, and they require their candidates to have a basic knowledge of what they’ll be working on and can work independently during GSoC. Still, their community is very supportive and ready to clear doubts.

Apart from all this, I will recommend you to have some basic knowledge about a version control system; git is the most popular one. Having experience with git will decrease the friction and learning about the programming language, and the technology stack of your dream project will do wonders for you.

There is no straightforward or correct answer to this question, but let’s discuss some key areas where you should take charge.

Start as early as possible! The earlier you start working on your proposal, the higher are the chances of getting your proposal selected.

You can take a look at previous accepted GSoC proposals, get in touch with former GSoCers, and ask them to share their proposals. That should give you a decent idea of what’s expected in a good proposal. Make sure to be clear and concise in explaining what’s in your mind regarding the project. Try using images and flow charts where necessary. Use a good template (not too decorative, but sober and straightforward) instead of typing in a simple word document. Discuss your education, work, and previous open-source contributions. List your skills that are relevant to the project along with the evidence of your work in that field. Describe your idea in as much detail as possible, along with a complete timeline. List your previous work (if any) in the organization you are targetting. Give the reasons why are you a perfect candidate for that project.

Always get your draft verified by someone you know and has a decent grasp over English. Your mentors might be from English speaking countries or people who do not have English as their first language. You shouldn’t take the risk of using grammatically incorrect language here as your sentence might mean something different altogether. Use simple language. Don’t try to make your proposal flashy by using complicated words, and try not to be repetitive 🤨.

Finally, submit the draft and ask for suggestions from your mentor. Make sure to discuss your project with your mentor. Change your proposal according to the opinions of your mentor.

Now we had enough talk, read through the experiences of the fantastic people involved in making this blog and me.

👋Howdy Guys! I’m Ayush, a developer @MDG and @Checker Framework. Currently, Android uses its annotations that are similar to some in the Checker Framework. Examples include the @NonNull, @IntRange, @IntDef, and others annotations. The goal of my GSoC project was to create Android Resource and Thread type checkers using the Checker Framework. Then, do a case study to show the utility (or not) of pluggable type-checking, by comparison with how Android Studio currently checks the annotations.

My proposal was selected, and I started reading the manual and understanding the humongous codebase of the Checker Framework. It took me nearly one-third of the GSoC period to get some idea about how type-systems and Checker Framework works I did get stuck in between, but my mentors were really helpful, and I was able to fulfill all my tasks successfully.

One key takeaway for prospective students - if you can’t figure out an answer to your doubts after a while of digging, ask your questions, understand that coming from a user’s point of view, your perspective is valuable. However, also keep in mind that if you can’t express your questions clearly, it’s useless, so learn how to write an excellent report to help the mentors help you.

So my overall experience was terrific, and I have learned many new things. I will recommend 😁 all of you to at least try once for GSoC in your college life.

Hey! I’m Karthik, and I did my GSoC with TensorFlow. My complete GSoC story is a long one, and I could rant on about it for an hour. So, I’ll try to keep it short and focus only on the critical points of my experience (mainly pre-GSoC. You’ll find the rest on my blog, which I’ll link below). Here goes…

I came to know about GSoC in my first year of college. I wanted to attempt after my first year itself. I began looking for organizations and found one that caught my eye, Blender. It was an org working on a piece of software by the same name that was used for 3D rendering, modeling, and VFX. I soon found out that I needed a lot more knowledge about the field before I could get started. I decided to learn more about it and attempt a year later. I started learning and in the next year tried contributing to appleseed, an org that worked on something similar, but I found it easier to get started there. Although I had made my presence felt there, after some time, I hit some snags and couldn’t continue contributing.

GSoC applications begin sometime in April or May if I remember correctly, but people start working with their org of choice right from December. I was clueless about what I would do. So I went with something conventional and started working on an Android app for openfoodfacts. But I wasn’t motivated enough, so I dropped the idea of GSoC altogether. I wasn’t able to select an org even after the official org list was released in February. One day a senior pointed me towards a Data Visualization library project under TensorFlow, an org I had neglected altogether thinking that it would have only ML related projects. I checked out TensorFlow’s public mailing lists and couldn’t find any candidate who had expressed interest working on the DataViz project. I, on the other hand, had worked on a similar library as a project in college. So I presented my thoughts about it on the mailing list and got replies and suggestions from the community on how things should be implemented. I won’t go into details, but I had to learn Swift (a language I hadn’t used before) and started working on a prototype. I kept the community aware of updates on my prototype throughout. As soon as the applications opened, I made a draft proposal and got it polished with the help of my mentor and colleagues at college.

After getting selected, all participants get the first two weeks as a community bonding period where you aren’t required to work. But I started working on my project and got almost half of it done before the first evaluation (there are a total of three evaluations to clear GSoC). Apart from a few common hurdles, the rest of the program went smoothly as I had worked on the prototype before GSoC and had got a solid foundation established by the end of the first evaluation.

The best part of my experience was getting in touch with TensorFlow developers at Google Brain! They are really knowledgeable people. I was also able to get a reference from my mentors and TensorFlow’s product manager. All of this was amazing, but the highlight of GSoC was post-GSoC when the participant with the Swift for TensorFlow team was asked to give a presentation about their projects in Swift for TensorFlow’s weekly Open Design meeting. Chris Lattner, the founder of LLVM, the one who created Swift and works at Google Brain now, was present during the meeting. He praised my project at the end of my presentation and also asked about what other thought of including my library in a default package for ML!

So my overall experience was great fun and stress-free. I had a blast!

If you’re seriously considering contributing to TensorFlow, you should definitely go ahead. It feels gratifying. I still try to continue working on my project whenever possible and am even mentoring for the same in Google Code-In! You needn’t do anything much different for TensorFlow from what’s written in this blog. Choose a project you like, contribute beforehand if possible, or make a prototype. Communicate with the community and make a concise, well-thought-out proposal. That’s all from my side! Good luck!

Hola guys! I’m Saurabh, a developer at @MDG and @CGAL. My GSoC project was with the computational geometry algorithms library, where I worked primarily on improving the Arrangements-2D package demo while adding new features.

For the most part, I had been a mobile developer before I began working for this project. This meant that I had almost no experience in the programming paradigm used, and had nearly no idea how to implement the project itself.

I contacted the mentor in early February, and he was really helpful. He helped me set up the project and the build environment on my machine, which took around two weeks, during which I learned a bit about generic programming, and how to use it in the project.

My mentor had a book written on the package I was working with, and I read it for a couple of weeks and asked him lots of questions. Some about the hows and some about why something was implemented the way it was. The learning period was really awesome for me.

Once my project had been accepted, I worked for a couple of hours every week (since I was also interning at @Bolo), but I managed to complete the tasks that were planned. The project was successful, and I had a lot of fun extracting the power of C++.

Hi everyone, I’m Suyash, a student developer at Aimcode. As far as my journey of GSoC with Aimacode is concerned, it was indeed challenging. The topics I’d covered throughout my GSoC period were the topics I’d never studied before. Hence, it was really exhaustive at times, but yeah, I got to learn a lot throughout the summers. It was like, every day, I was exploring something new, it may be a new algorithm or a new library, and this was the part I loved the most out of my GSoC experience. The AIMA project is indeed a great project to work on, and the community has got great mentors. I had some great discussions with my mentor, and he guided a lot throughout this project. I hope that this project appears again in the GSoC next year as it literally has a vast opportunity to learn a variety of exciting concepts in the field of Artificial Intelligence.

Here are the links to my GSoC project and code:

Finally, we reach the end of this blog 🥳🥳, and I would like to appreciate Karthik, Saurabh, Vishwas, Kaustubh, and Suyash to make this blog a full-fledged study. We all wish you BEST OF LUCK for your marvelous GSoC journey ahead!! 😎😎

Add a comment

Related posts:

A simple quickstart with Docker and ROS in Ubuntu

Docker represents a valid and easy solution to configure, deploy and run an application, creating an isolated environment called a container. Docker automatically takes care of networking, in order…

CALVOCAST EP019

Esta semana os traemos, en mierdas varias: nuestros problemas con los AirPods Pro y cómo los solucionó Apple; además, hablamos de por qué Lucas ha vuelto a comprar un Galaxy S21 Ultra; de lo que nos…

Free Platform to Run the Monetized Blog

Today many people run the blog in social media or in other platforms and make money. So, more people start to think about to open their blog. Blogging is flexible and creative work. But it doesn’t…