GSoC Overview

From apertus wiki
Jump to: navigation, search


1 apertus° Introduction

apertus° is a community designing the architecture surrounding a number of free software and open hardware projects aimed at professional level digital imaging and film making related disciplines.

AXIOM Beta Main Page: https://wiki.apertus.org/index.php/AXIOM_Beta (contains links to reading on the camera and its PCB structure)

Website: https://www.apertus.org/

If you'd like to explore the AXIOM camera's background and how the project got started see AXIOM Project Background

2 Google Summer of Code Introduction

Spend your summer break writing code and learning about open source development while earning a stipend! Accepted students work with a mentor and become a part of the open source community. Many become lifetime open source developers!


Google Summer of Code is open to university students, age 18 and older in most countries. Watch this video to learn why you should apply:


2017 Students _
2018 Students Wrap-up
2019 Students Wrap-up
2020 Students Wrap-up

Application tip for students: It's considered good practice to establish contact with and work alongside organisations and mentors way ahead of your application. Doing so will greatly increase your chances of being accepted.

GSoC listing: https://summerofcode.withgoogle.com/organizations/6367280998383616/

Firstly, please read the Google Summer of Code Student Manual. It contains a lot of helpful information about the program and about participating as a student in Google Summer of Code: http://write.flossmanuals.net/gsocstudentguide/what-is-google-summer-of-code/

Secondly, please read the Google Summer of Code FAQ. It details specifics about deadlines and how things typically run: https://developers.google.com/open-source/gsoc/faq

... The previous linked page also details the timeline of events which can be accessed here - https://developers.google.com/open-source/gsoc/timeline

The related apetus° projects can be found on the wiki at: https://wiki.apertus.org/index.php/GSoC_Projects

3 Projects / Languages / Idea Page

Proposing your own idea to us will tickle our interest much more than helping us with existing tasks.

Our idea page revolves around the following projects (not all of those have mentors each year):

  • We're building a RAW video footage processing environment called OpenCine - Programming Language: C++. The software itself should be buildable on all platforms but primary focus is on Linux (Ubuntu and derivatives like LinuxMint distributions) - changes aren't tested on Windows straight away. OpenCine.Build Instructions. There is a sub-project called ProcessingTest, which is used for prototyping and testing algorithms, there you can find some de-Bayering tests. We also have custom de-Bayering algorithms selected for GSoC, which can be found in apertus° Lab.
  • We developed hardware with FPGAs for doing real-time video processing (idea page "FPGA" column) - Programming Language: HDL (VHDL or Verilog).
  • Our cameras run embedded Linux and there are some Kernel related development tasks - Programming Language: C.
  • Other tasks are related to creating a camera virtualisation in QEMU, webinterfaces for camera control, controlling lenses, drawing histograms/waveform/vectorscopes from the cameras live view data or automating the camera internal darkframe calibration. Programming Languages for tools are C/C++, for scripting are Python and Bash and for webbased applications: Javascript, PHP and C/C++. Each task on the idea page contains more details about the desired environment and programming language.


GsoC Idea Page: https://lab.apertus.org/tag/google_summer_of_code_2020/

4 Application Instructions

  • Please provide a brief CV.
  • In your application please include answers to the following questions:
    • What interests you most about the apertus° AXIOM project?
    • As mentors and project coordinators, how can we get the best out of you?
    • Is there anything that you’ll be studying or working on whilst working alongside us?
    • Are there any techniques and tools which you use to keep yourself organized?
  • Once you’ve selected a project assignment from the ideas page, please include a well-defined, weekly schedule with clear milestones and deliverables around it. Alternatively, if you want to propose your own idea then please include outline, goals, and a well-defined weekly schedule with clear milestones and deliverables.
  • Please complete a matching mandatory qualification task on the idea page (also linked to with every idea/task on the idea page) when you apply. When applying with your own idea please check with the mentors/org admins beforehand to see which qualification task would be a good match. Applications without completed qualification task will not be considered.


GsoC Idea Page: https://lab.apertus.org/tag/google_summer_of_code_2020/


Students need to show their coding skills as part of their application, each task has an associated coding challenge that needs to be handed in together with the actual application that's being considered for GSoC. The tasks are challenging but give applicants a good chance to experience what the GSoC program will be like:



Read this GSoC Coding Challenge Best Practice Guideline if you want to learn more what we are looking for in Coding Challenge Submissions.


To get in touch with any mentor check the Mentor Contact List


5 Misc

Tim Videos has a very good guide for GSoC students - must read: https://code.timvideos.us/summer-of-code/

Our Social accounts

You can also see accepted projects on GSoC Projects.

We have a dedicated GSoC mailing list which you can subscribe to here.

If you have any questions most of our live chat takes place in IRC. Alternatively you can email us through: https://www.apertus.org/contact

Students get AXIOM Beta Remote Access to test and evaluate their code directly on a real AXIOM Beta hardware at our office.