2014-02-09 03:56:00 +00:00
|
|
|
Google Summer of Code - 2014
|
2013-03-20 05:29:26 +00:00
|
|
|
============================
|
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
Kivy is hoping to participate in Google Summer of Code 2014.
|
|
|
|
This page showcases some ideas for gsoc projects and corresponding
|
|
|
|
guidelines to get students familiar with contributing towards the
|
|
|
|
kivy framework.
|
|
|
|
|
|
|
|
Requirements
|
|
|
|
------------
|
|
|
|
It is assumed that the incoming student be familiar with some basic
|
|
|
|
skills as highleted here::
|
|
|
|
|
|
|
|
* Intermediate level familiarity with python
|
|
|
|
* Student should be fairly comfortable with git and github
|
|
|
|
(Kivy and it's sister projects are all managed on github)
|
|
|
|
* Comfortable with Event Driven programming.
|
|
|
|
* Preset development environment for kivy or the appropriate
|
|
|
|
sister project you are going to work on. For example to be
|
|
|
|
able to work on pyobjus/pyjnius/plyer you would need access
|
|
|
|
to a ios device, mac with xcode and a developer license,
|
|
|
|
android device respectively.
|
|
|
|
|
|
|
|
Additional desired skills may be listed with specific projects.
|
|
|
|
|
|
|
|
Familiarize yourself with the contributing guide http://kivy.org/docs/contribute.html
|
|
|
|
We can help you get up to speed, however students demonstrating ability
|
|
|
|
in advance would be given preference.
|
2013-03-20 05:29:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
Projects ideas
|
|
|
|
--------------
|
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
THIS SECTION IS WIP. The mentors list is not yet final.
|
|
|
|
|
2013-03-20 05:29:26 +00:00
|
|
|
Kivy
|
|
|
|
~~~~
|
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
* Embedded Support:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Gabriel Pettier, Mathieu Virbel
|
|
|
|
- Requirements: Access to specific embedded hardware.
|
|
|
|
- Task level: Intermediate/Advnced
|
|
|
|
- Desired Skills: Familiarity with programming on the specific embedded hardware.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
Add full support for major embedded platforms like Beagle
|
2014-02-11 21:56:52 +00:00
|
|
|
Board and Raspberry Pi. Kivy already has partial support for RPi. It would be
|
|
|
|
great to get full support for other major embedded platforms.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
* Inspector:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Alexander Taylor, Akshay Arora
|
|
|
|
- Task level: Intermediate
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
Redo or improve the inspector module. Python has awesome
|
2014-02-11 13:26:43 +00:00
|
|
|
introspection possibilities. Let's work together to have an awesome inspector
|
2014-02-11 21:56:52 +00:00
|
|
|
that would allow the user to debug anything from their application.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
* Graphics Pipeline Enhancements:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Jacob Kovac, Mathieu Virbel
|
|
|
|
- Task level: Intermediate/Advnced
|
|
|
|
- Desired Skills: Familiarity with OpenGL, desire to learnsolve difficult
|
|
|
|
concepts/puzzles.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
We have a lot of ideas around the graphics
|
2014-02-11 21:56:52 +00:00
|
|
|
pipeline, like merging instructions or VBOs to reduce GL calls, helpers to
|
|
|
|
create shaders dynamically according to the current vertex format, and
|
|
|
|
improving 3D support.
|
2014-02-11 13:26:43 +00:00
|
|
|
|
2013-03-20 05:29:26 +00:00
|
|
|
|
|
|
|
Mobile
|
|
|
|
~~~~~~
|
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
* Plyer:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Gabriel Pettier, Akshay Arora, Alexander Taylor.
|
|
|
|
- Requirements: Access to linux, windows, Mac OsX, ios device, android device.
|
|
|
|
- Task level: Intermediate/Advnced.
|
|
|
|
- Desired Skills: Familiarity with Pyjnius, PyObjus.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
The idea is to provide a stable API to the user for accessing features
|
2014-02-11 21:56:52 +00:00
|
|
|
of your desktop or mobile device, such as Accelerometer, GPS, SMS, Contact,
|
|
|
|
and more. Under the hood, you'll use PyJNIus, PyOBJus, and Cython, to do what
|
|
|
|
needs to be done. This probably would also include improving PyObjus and
|
|
|
|
PyJnius to handle interfaces that they can't right now.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
* SL4A Facades:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Gabriel Pettier, Alexander Taylor, Akshay Arora, Mathieu virbel
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
Porting facades from Scripting Language for Android to Plyer
|
2014-02-11 21:56:52 +00:00
|
|
|
for easy integration and compatability.
|
2014-02-11 13:26:43 +00:00
|
|
|
|
2013-03-20 05:29:26 +00:00
|
|
|
|
|
|
|
Toolchain
|
|
|
|
~~~~~~~~~
|
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
* Toolchain for iOS:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Thomas Hansen, Mathieu Virbel
|
|
|
|
- Reuirements: Access to ios, android device along with a developer licence.
|
|
|
|
- Task level: Intermediate/Advnced
|
|
|
|
- Desired Skills: Familiarity with xcode, objc.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
An iOS interface based on the idea of Python for Android,
|
2014-02-11 21:56:52 +00:00
|
|
|
in order to replace kivy-ios. Cross-platform compilation skills are heavily
|
2013-03-20 05:29:26 +00:00
|
|
|
required.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
* Buildozer:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Gabriel Pettier, Akshay Arora, Alexander Taylor
|
|
|
|
- Requirements: Acces to linux, Windows, OsX, ios, android.
|
|
|
|
- Task level: Intermediate
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
Needs support for generating RPM, DEB, DMG, and EXE files. This,
|
2014-02-11 21:56:52 +00:00
|
|
|
however, might not be enough in itself for a GSoC project. It would have to
|
|
|
|
be joined together with some other work.
|
2013-03-20 05:29:26 +00:00
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
* SDL2 Backends:
|
2014-02-13 04:55:17 +00:00
|
|
|
- Mentors: Akshay Arora, Jacob Kovac, Mthieu Virbel
|
|
|
|
- Requirements: Acces to linux, Windows, OsX, ios, android.
|
|
|
|
- Task level: Intermediate/Advnced
|
2013-03-20 05:29:26 +00:00
|
|
|
|
2014-02-13 04:32:56 +00:00
|
|
|
SDL2 providers for Kivy, including porting the mobile
|
|
|
|
toolchains to SDL2. Part of the work is already done, so please contact the
|
|
|
|
devs for further details.
|
2013-03-20 05:29:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
2014-02-11 21:56:52 +00:00
|
|
|
Anything Else ?
|
2013-03-20 05:29:26 +00:00
|
|
|
~~~~~~~~~~~~~~~
|
|
|
|
|
2014-02-11 21:56:52 +00:00
|
|
|
* Let your imagination run wild, and show what Kivy is capable of!
|
2013-03-20 05:29:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
How to be a good student
|
|
|
|
------------------------
|
|
|
|
|
|
|
|
If you want to participate as a student and want to maximize your chances of
|
2014-02-11 21:56:52 +00:00
|
|
|
being accepted, start talking to us today and try fixing some smaller problems
|
2013-03-20 05:29:26 +00:00
|
|
|
to get used to our workflow. If we know you can work well with us, that'd be a
|
|
|
|
big plus.
|
|
|
|
|
|
|
|
Here's a checklist:
|
|
|
|
|
|
|
|
* Make sure to read through the website and at least skim the documentation.
|
|
|
|
* Look at the source code.
|
|
|
|
* Read our contribution guidelines.
|
2014-02-11 21:56:52 +00:00
|
|
|
* Pick an idea that you think is interesting from the ideas list or come up
|
|
|
|
with your own idea.
|
2013-03-20 05:29:26 +00:00
|
|
|
* Do some research **yourself**. GSoC is not about us teaching you something
|
|
|
|
and you getting paid for that. It is about you trying to achieve agreed upon
|
|
|
|
goals by yourself with our support. The main driving force in this should be,
|
2014-02-11 21:56:52 +00:00
|
|
|
obviously, yourself. Many students pop up and ask what they should do. Well,
|
2013-03-20 05:29:26 +00:00
|
|
|
we don't know because we know neither your interests nor your skills. Show us
|
2014-02-11 21:56:52 +00:00
|
|
|
you're serious about it and take the initiative.
|
2013-03-20 05:29:26 +00:00
|
|
|
* Write a draft proposal about what you want to do. Include what you understand
|
2014-02-11 21:56:52 +00:00
|
|
|
the current state is (very roughly), what you would like to improve, how,
|
2013-03-20 05:29:26 +00:00
|
|
|
etc.
|
|
|
|
* Discuss that proposal with us in a timely manner. Get feedback.
|
|
|
|
* Be patient! Especially on IRC. We will try to get to you if we're available.
|
|
|
|
If not, send an email and just wait. Most questions are already answered in
|
|
|
|
the docs or somewhere else and can be found with some research. If your
|
|
|
|
questions don't reflect that you've actually thought through what you're
|
|
|
|
asking, it might not be well received.
|
2014-02-13 04:32:56 +00:00
|
|
|
|
|
|
|
[1]:http://en.wikipedia.org/wiki/Event-driven_programming
|