I took part in GSoC in 2007, it change my whole life. Coming from Eastern Europe and with very little English it exposed me to experienced engineers from Silicon Valley that I would never think to contact. That lead to an internship at NASA a year after, and those references lead to a Ph.D. from Ivy League and a career in AI. That short acceptance letter turned to my life upside down and I can't be more grateful that Google is still doing it for another generation of engineers.
Snap! 2007 was my year too, and yes, it really sparked everything for me.
Very new to the community, my accepted GSoC project was adding some features to an XMPP library. I discovered recently that this library is in use by the Zoom desktop client.
Now, 15 years later, I'm the Executive Director of the XMPP Standards Foundation and our organization is still participating in Google Summer of Code. It's great to have new people in the community, especially the ones for who GSoC is that same spark it was for me and many others, and the ones who stick around long after GSoC ends.
GSoC 2007 was also the year they gave us Karl Fogel's Producing Open-source Software book (he managed to sign every copy!). This amazing instruction manual, combined with the GSoC experience, gave me the confidence to launch my own open-source projects (such as the XMPP server software that powers things such as Jitsi Meet).
I'm really glad that the GSoC programme continues, and hope it will deliver the same kind of impact for new generations of developers and open-source projects.
I was a Summer of Code student back in 2009, and it defined my career in software engineering, and completely changed the way I looked at building real world software.
Not directly, but being a GSoC student led to some interesting international travel and freelancing opportunities. I met many senior engineers who'd spent decades more than me (at that point) and was able to sit in on their discussions and meetings. I wasn't even directly involved or responsible for anything, I was still a student... but just by osmosis, it shaped so many of my thoughts and opinions.
GSoC basically changed my entire career. I'm glad that Google keeps this running, especially given that they got rid of other cool competitions like Codejam. Hopefully, they can continue finding the budget for these extremely valuable contributions to open-source.
I was a student in a no-name college with no real chance of landing an internship at the big tech companies, given my cv had neither the prestige of a good college name nor many impressive projects.
GSoC basically allowed me to jump into an open-source project (no credentials needed), prove that I'm skilled enough to contribute and gain meaningful experience solving real world problems. This then snowballed into larger career opportunities later down the line.
i'm not employed by google, nor have i ever been. GSoC is google paying people to work on open-source stuff, with little direct relation to their profits.
GSoC is awesome and I'm happy to see it's still running.
The experience I got as a student in 2012 was invaluable for my career in tech ~ more so since I did not formally study CS. It introduced me to so much: a lot of the programming itself, collaborating with fellow developers.
I spent one year preparing for it, and man seeing my proposal accepted was one of the best feelings I have ever experienced (much better than when I graduated, even). A close second is knowing that I actually was helping people with my code (I still keep the emails where people sent me questions about the library API I was developing).
I hope this year's (and future) batches of students get to experience the same (if not more) highs :).
I don't use it myself. But it's good to see an open source solution in the DJ ecosystem. More and more DJ software go the monthly subscription route.
Oh BTW, if someone is bored: I think this library needs some RUST dev help: https://github.com/Holzhaus/rekordcrate/pull/71
In theory, this library would allow open source project to write "Pioneer rekordbox usb keys"
Pioneer hardware are used in a lot of clubs around the world and effectively need music files exported by Rekordbox. Would be cool to have 3rd party apps do this.
Out of curiosity, is that because you don't DJ, so have no use for the software; or, because you do DJ but use something else? :)
Either way, I concur with your Mixxx assessment!
While I haven't mixed or mixxxed for a while (too long?), I have used Mixxx for all my DJing (with a Vestax controller) over the years in a variety of environments from house parties to the playa to camp outs to a community hall to a local bar (perhaps the pinnacle of my DJing "career" as the dance floor included an A-List actor who I didn't even notice because I was just happy that I'd managed to get dance floor so crowded :D ).
It was a reliable & useful tool and even at that time offered features that other "free" versions of closed/proprietary DJ software specifically excluded such as set recording.
At one point I was exploring running Mixxx on a Raspberry Pi 3 with a dedicated small screen in an attempt to move past the "DJ Staring at Laptop" look but while I did get it (barely) running on that platform it really required more RAM & processor power. (My understanding is that people have by now successfully gotten it running on RPi 4 in that sort of configuration.)
Mixxx has the potential to be an interesting FLOSS project case study, I think, because they have unusually thorough & well-presented documentation (https://manual.mixxx.org/2.3/en/); they compete with multiple extremely popular "free" versions of commercial/proprietary software in the non-trivial audio software niche; they have what I consider one of the best (if not the best) custom UI styles in FLOSS which is functional, visually distinct & stylish (e.g. <https://manual.mixxx.org/2.3/en/_images/mixer-section.png>); and, have enough community participation to manage at least yearly releases of various sizes.
So, yes, Mixxx is a great project & surely one that is more exciting to work on for GSoC than... I dunno, some database system that isn't used by super-cool DJs to entertain hundreds of people around the world. :D
Used Rekordbox and now I use traktor. I only quickly tried it 2 years ago with a DDJ-400 and somehow the mapping was not working correctly. I did not want to fiddle with it at that time. Buy maybe I will give it a go again at some point.
This comes up in the mentors list like clockwork. A tiny patch here or there won't hurt your chances of getting your proposal looked at. In fact, some projects required extensive participation before accepting students, though I think that has settled down in recent years now that the requirement went from "student" to "New in Open Source contributions"
Can I still take part in Summer of Code even though I have graduated college? When I graduated in December 2020 I did a bit of Help Desk work and then moved on to be a Systems Analyst, but I have been thinking pretty heavily on switching over to being a software engineer. Having this on my resume would absolutely help my prospects
It will be the forth year I will be mentoring projects \o/. If someone is interested in contributing to KDE, we have a list of ideas here: https://community.kde.org/GSoC/2023/Ideas
Glad to see this is still going. I was sad to see CodeJam being shut down recently. We need more programs like GSoC and CJ as they encourage students to take a part of something great and contribute to the open source community.
My GSoC year was 2010 and it was definitely an amazing experience -- not just getting to meet and work alongside amazing community, but also to sharpen my software engineering skills, improve communication and have fun along the way.
If you're a student, please find something interesting you'd like to work on and apply! Find where the folks hang out and reach out to them! They'll be happy to help you get started! Back in the day we used irc.freenode.net as our communication hub for pretty much all OSS talk, but I am sure there are Slack or Discord servers now available for most projects.
> the primary condition is that you are new to FOSS and are not an active contributo
Why? People who are interested and caring enough to start without getting paid, and who have shown they are more likely to succeed, are the ones who are excluded? That's toxic to FOSS culture.
I really wanted to do GSoC last year. However, I am in the Southern Hemisphere, and in contrast to the long Northern Hemisphere summer holiday, during this time we have a short winter holiday of only a few weeks. This year I still want to do it, but I have the same problem — April to August is simply not a workable time period for me.
Thus: does anyone know if there are similar initiatives to connect students with mentors, but with more flexible timing?
(Or, y’know, I guess I could just contact the people listed on the GSoC page informally… but it would be nice if there were something more organised!)
Word of advice from somebody who lived in Europe during GSoC and also did not had 3 months free: Still do it if you are young. It's invaluable and sometimes even more important for a career in tech than the degree you get at the end of your study (for me it was the case). Would not be were I am without GSoC 2011.
one of the more recent changes is that the program is more flexible. it's no longer only 3 months full-time, but there is also the option to work on projects that are only half-size, and i believe they can be done in the same full time frame. look at the gsoc site for the specific rules and look for projects that might fit. talk to mentors and see how you can fit your time for a project like that.
Some advices for a first timer? I'm considering sending a proposal to strace but I'm reading some part of the source code, (git-blaming around) but I don't think I understand it enough to modify it ...
When have you ever seen a complex, in-production software system and immediately thought “yeah I get this!”?
If you’re anything like me, you’ll have this feeling on every new project and new job you start for a while. I’m in my late thirties and am finally starting to realize that “hey, I have this feeling a lot and it’s always wrong.”
Push through it. Write the proposal. I think the proposal-writing process is the very best aspect of GSoC since it forces you into something that you really don’t tend to do in traditional learning like universities. It forces you to think a bit like a product person even and explain benefits and tradeoffs, backing up your beliefs.
(a) As others have mentioned, it's entirely normal to initially feel like one doesn't understand a new code-base of non-trivial size enough to modify it. One of the skills that participating in a programme like GSoC can provide is learning the tools & strategies that you can use to assist in growing your understanding of new code bases.[1]
(b) From an outside perspective, the fact you're aware of the existence of `strace`, have an interest in contributing to the project & have already poked around in the source code in an attempt to understand it are big positive indicators & differentiate you.
(c) That you're using a tool like `git blame` to assist in your exploration indicates that you've already learned some of the tools/strategies you can use which is also a positive. (As an aside, today I learned about the tool `git-dive` which is intended to be a more powerful form of `git blame`, you might be interested in checking it out: <https://github.com/gitext-rs/git-dive>)
(d) Also, with regard to `strace` specifically, you might gain some insight from this recent video: "strace feels like magic — let's fix that (with Rust)" <https://www.youtube.com/watch?v=engduNoI6DE>. While the video uses Rust for the implementation it also provides a general overview of how `strace` works. (This might be a useful intro to Rust syntax, if you're not currently familiar: <https://fasterthanli.me/articles/a-half-hour-to-learn-rust> (BTW, it is also extremely normal to not understand everything/anything about Rust code on first sight. :) ))
(e) Personally, in the past I've found it extremely easy to talk myself out of submitting proposals for opportunities such as this but my current perspective is: if I have doubts about whether or not I'm experienced/qualified enough to submit a proposal then I'm definitely not qualified to evaluate whether I should submit a proposal--so I definitely should submit a proposal to give those who are qualified the opportunity to evaluate it. (After all, if you don't currently maintain the `strace` project you have no idea what their experience has taught them is important in order for people to successfully contribute.)
Hope some of that is useful.
[0] re: "advices" -- in this context, "advice" is the preferred word[2]. I mention this as written communication is important & based on your previous HN comments this seems to be a pattern of incorrect pluralization rather than a typo. Note: I do not have perfect grammar. :)
[1] Also, I would encourage you to take notes of what you don't understand or issues you ran into when you start exploring a project. You can then document these hurdles/barriers to new contributors for the project so that maintainers are (at least) aware of them. This is one situation where your relative inexperience with a project is in itself valuable because your perspective is one maintainers no longer have. (And such hurdles are important to identify for projects that are actively looking to attract & nurture new contributors.)
I participated in Google Summer of Code last year and had an amazing experience. I was able to work on an awesome project (ML for replacing heuristics in LLVM), met a ton of amazing people that I otherwise wouldn't have come across, and gained a ton of SE experience, all while getting paid for it (something that might not have been an option outside of GSoC for someone fresh out of high school).
I now have an internship lined up for the summer due to the connections that I made and am working in a pretty exciting area of research. GSoC might have completely changed what I'll be doing in the future and definitely was an amazing opportunity. I'm signed up as a mentor this year, so hopefully I can help provide some of that experience to someone else.
GSOC brings up so many emotions in me. 2 years of rejection at the proposal stage made my heart shrivel and weep as much as any ex-lover. The yearly ritual of going through the orgs and projects felt like ruffling through presents under a Christmas tree. My first acceptance in 2015 gave me joy, fame, glory among peers and immeasurable confidence. If only real world jobs could be as joyful.
Unrelated, but the navigation on this site is very confusing. How have we moved from standard top heads with links to a mystery meat navigation button in the top left that hides everything, with the header vertically oriented. So weird.
This looks awesome, wish I had a mentorship program like this while learning. I feel like I would still gain a lot of value from this but it seems like a full time commitment which I can't do alongside work
I'm currently a cs masters student and write my thesis this summer (dont have a project yet). I wonder if I will be able to find a project in GSoC and write a thesis with a mentor ?
the focus of GSOC is code, so your thesis would have to be very code heavy for that to work. do you have a topic yet? if not, look at what organizations/projects fit your field of study/interest, and talk to your supervisors if you could write a thesis around one of those.
then (if accepted) you work on the code for GSOC and write your thesis for your school.
Thanks this helps. Yes I want to combine software development with some sort of machine learning. I think this applies to almost every analytical field. In GSoC Orgs like learning software for kids are interesting. But I have to dive deeper into the projects offered..
Is it socially acceptable to post comments in code review as a non-participant? There are some really cool projects listed for the org that I worked for last year.
if your comments are a positive contribution they may be welcome. in code review it depends on what your role there is or was. if it involves parts that you have contributed to (and thus have experience with) then it should be fine.
the org that I worked for last year
one of the goals of GSOC is to motivate you to continue to contribute after your GSOC project completes. so you should certainly be welcome to get involved. many GSOC participants also volunteer as mentors later.
The rules are quite clear and linked on the page but if you can't be bothered:
> GSoC Contributors.
> Eligibility.
> Requirements. To participate in the Program, a GSoC Contributor must:
be eighteen (18) years of age or older upon registration for the Program;
for the duration of the Program, be eligible to work in the country in which they reside;
not be an Organization Administrator or Mentor in the Program; and
be a student or a beginner to open source software development.
u have to start from earlier with jumping in between likely not gonna get, open there dev chat already 50 people for 4 position 8 will be mentor. They not gonna prefer outsider, from december stick around a lot then have best proposal likely gonna get.
I wonder how long it will last, especially considering that Google has killed its algorithm puzzle contests and replaced them with AI contests.
I imagine Google, like many tech companies, still depends on many Open Source projects and appreciates cheap labor, so it may be worth it to keep GSoC running for a while.
I loved summer of code and participated every year. Then one year they changed the system and all of a sudden it was no longer possible to submit in any language.
Like everything else by Google they had become boring. The best part of summer of code was always the interesting solutions in all kinds of languages.
I usually used Common Lisp for these problems, and even though I believe it's supported, it's just not fun anymore.