Summer of Nix

The Summer of Nix - code and learn together

A two month train and work project from August 2nd to October 15th 2021. This program is great for anyone who wants to rapidly increase their Nix skills while doing useful work.

What is this?

The Summer of Nix is a two month train & work project that will take place between August 2nd to October 15th 2021. It is made for anyone who wants to rapidly increase their Nix skills while doing useful work for the Nix and the wider FOSS community - all of this together in a remote team and getting paid a nice stipend. After the program, there will be opportunities for continued work as paid freelance contractor with the NixOS foundation.

Who is organizing this, and why?

The program is funded via the European Comission's Next Generation Internet Initiative and organized by members of the core Nix development team, the NixOS foundation, the NLnet foundation and Tweag. The wider goal is to establish Nix as one of the principal platforms for free and open source software. Concretely, this means packaging many free and open programs, and improving the general packaging situation in Nix. The program's is set up to train up to 30 participants to become at ease in the Nix ecosystem and to deliver as many packages as possible from a list of strategic projects.

For whom is this interesting?

This program is great for students, professionals or passionates who can spend the time over summer to rapidly increase their Nix skills while doing useful, paid work. What we need from you is commitment, motivation for two months of full time work and basic Nix knowledge. You should know what a nix shell is, the basics of nixpkgs and the language as explained, for example, in the nix pills tutorial. Of course, also a reasonably fast computer and internet connection is required although we might be able to provide some cloud infrastructure.

Experienced Nix packagers are also welcome to participate in a mentoring role that involves reviewing, helping out with questions, direct individual mentoring, and also hands-on packaging. Mentoring is a flexible part time role, approximately equivalent to 1 day of work per week. If you are interesting in spreading Nix knowledge and also enjoy light-weight team organization, this role is for you!

Time Zones

The program is open to applicants from all time zones and countries. Although many members of the organization committee are based in Europe, training sessions and workshops will be adjusted as good as possible to work for the majority of participants and flexible arrangements will be found for others.

Compensation

The compensation for participants is fixed to a base rate of 2750 Euro in all member states of the European Union and associated countries like Norway, the UK and Switzerland. Elsewhere, this base rate is adjusted with a factor taking into account purchasing power parity similar to the GSoC program. The precise stipend amounts will be communicated individually to succesful applicants.

Mentors will be paid aligned to standard contracts with the NixOS foundation and details will be communicated individually.

How to apply?

As participant, check if you meet the requirements outlined above, which is mostly having a basic understanding of Nix, time in August and September and motivation to work with us. If this is the case, simply write a mail to summer@nixos.org with subject "Summer of Nix Application" and the following content:

  • Who are you? (5 reasonably long sentences)
  • Why are you interested in this program? (5 reasonably long sentences)
  • What are you able to do with in Nix? (3 bullet points)
  • What would you like to learn? (3 bullet points)
  • The program requires you to work 8 weeks between August 2nd to October 15th 2021. When are you available?
  • What time slots (with time zone!) are you comfortable with for work and for occasional 1/2 day workshops?
  • Do you have any other specific requirements regarding this program? (open)
  • CV (doesn't have to be long and can be attached or just a link to a website with equivalent information)

An organizer will contact you soon (within 7 days) after that to conduct a short 15-30 minute interview. We will select a first group of participants on May 15th and a second on July 1st. Please understand that the number of participants is limited.

As mentor, please write us at summer@nixos.org with subject "Summer of Nix Mentor", a short informal paragraph that explains your involvement in the ecosystem, your interest in this program and how you would like to contribute.

If you have further questions, please look at the FAQ section or write any questions below in the comments.

FAQ

  • Is a GitHub account required? - Yes
  • I am interested to participate but want to take vacation can I still join? - Yes, you are expected to work 8 of the 10 weeks that this program runs. Please write us your availability in the application.
  • I am a student. Can I use this program as internship? - There is no universal answer to this since internship programs differ from country to country and even university to university. We are open to internships but please contact us so that we can figure out together whether it is possible or not.
  • I'm not a student. Can I also apply? - Yes. We welcome any motivated individuals who want to learn state-of-the-art Nix, and have the time and ability to participate. Do make sure that you can take the 2 months full time learning and working with Nix. 
  • I don't know anything about Nix. Can I apply? - We expect at least basic experience with Nix, which would hopefully allow us to move you up to an advanced level during the course of the summer program. So if Nix is all new to you and you find this kind of program interesting - deep dive into learning Nix straightaway, and make sure you are ready.
  • I cannot program, do I need to? - Yes, fundamental programming skills are definitely required but profound knowledge is not.​​​​​​ The software we are packaging could be written in various programming languages and so, during the program, you might need to figure out how to deal superficially with those language ecosystems that it uses and also sometimes with those of the dependencies. Luckily, there are tens of thousands of packages already in nixpkgs to learn from.
  • Which packages are we going to package? - We will package a number of cutting edge free and open source applications in the field of privacy and trust enhancing technologies, as well as tools aimed at search, discovery and discoverability. These range from tools to develop open hardware chips to fediverse applications, but all of them have one thing in common: they are actively developed libre community projects, funded through the NGI Zero programme.
  • Who is going to mentor? - Established community members will be available for questions and mentoring for less experienced participants and structure the program besides the organizers of this program.
  • I could mentor. Are you looking for more mentors? - Yes, please write us an email.
  • What is expected to be delivered at the end of the Summer of Code? - We aim to deliver, all together, about three Nix packages per participant (including mentors). This is our global output as a team! There is no fixed required amount of packages per participants. Some important high value packages are a lot more difficult to package than others and this will be taken into account. The goal is to achieve this goal together as a team and maybe even more. What counts as well for us is participants with improved Nix knowledge and improvements to the general Nix packaging situation in the form of tutorials or other documentation.
  • I find this program really interesting but can't participate because of the way it is structured. What should I do? - Please reach out to summer@nixos.org and write us what is holding you back. This is the first time this program runs and feedback is important to us.
  • Where can I get more information? - Please send us a mail to summer@nixos.org.