Google summer of code

From FdIwiki ELP
Jump to: navigation, search

Google Summer of Code, GSoC abreviado, es un programa anual en el que Google paga el salario (5400 dólares para estudiantes en España en 2017) a estudiantes universitarios que programan en proyectos de software libre reales durante los meses de verano (finales de Mayo a finales de Agosto).


Organizaciones

Cualquier organización con un proyecto de Software Libre puede solicitar participar.

Entre las organizaciones participantes en años anteriores se encuentran:

Proyectos

Encontramos proyectos de todo tipo.

Desarrollo web

Estudiantes

Si te gusta programar, puedes pasar tus vacaciones de verano escribiendo código y aprendiendo más sobre el desarrollo de software libre a la vez que ganas dinero. A los estudiantes aceptados la organización les asigna uno o varios mentores.

  • La beca esta abierta para poder aceptar solicitudes: 14 de Marzo - 25 de Marzo (2016).
  • Los requisitos son ser estudiante universitario (se acepta post-grado), ser mayor de 18 años (mayoría de países) y pertenecer a cualquiera de los países en los que se oferta la beca.

Como estudiante puedes enviar una o varias propuestas a la misma o a diferentes organizaciones.


¿Como?

Deberías empezar leyendo manual que hay para estudiantes, dado que contiene mucha información util. Este manual ha sido escrito por mentores de organizaciones que ya han participado en el programa y administradores de Google.

En el manual, se detalla todo lo que hay que hacer para participar, aún así:

Establece un primer contacto

En el manual comparan esta parte con una fiesta en la que quieres conocer a alguien ¿que haces?. Las organizaciones y mentores utilizan IRC, así que la forma de comunicarte con ellos de primera manera será esa, al meterte a cualquier chat puedes presentarte, hacer tus preguntas, preguntar su forma de trabajo... etc.

También puedes contactar con ellos de forma privada si te es mas cómodo pero... ¡No seas tímido! no te sientas intimidado en ningún momento y muestra interés por los proyectos.


Una de las formas de contactar como habéis podido ver es irc, Google Summer of Code usa el canal #gsoc (Freenode) (irc.freenode.net).

Algunos de los clientes que se pueden utilizar son:

  • HexChat IRC client
  • XChat IRC client
  • XChat Gnome IRC client
  • Konversation IRC client
  • Smuxi IRC client
  • Polari IRC client
  • Empathy IM and IRC client
  • Pidgin IM and IRC client
  • Thunderbird Mail client (since version 15.0)

Si no necesitas un cliente (recomendado) y quieres acceder desde el navegador:

  • KiwiIRC web IRC client
  • Mibbit web IRC chat
  • Chatzilla Firefox Add-on


Escoge Organización

Puedes haber establecido contacto en el punto anterior o reservarlo para un poco mas tarde, puedes ser una persona ya puesta en el movimiento del Software Libre o solo saber lo que te han dicho en clase. En el caso de la segunda opción lo más recomendable es que empieces a aprender git y leer guías de como colaborar en GitHub, ni que decir de tener una cuenta ya creada en la página.

Algunas páginas de ayuda que podemos encontrar en esta misma Wiki.


¿con todo esto sigues indeciso? una de las preguntas que puedes formularte hacia ti mismo para saber hacia donde te puedes orientar son las siguientes:

¿Software libre que usas? ¿Que intereses profesionales tienes? ¿Cuales son tus hobbies? ¿Que conocimientos y habilidades posees?

Una vez respondidas estas preguntas de ejemplo, puedes elegir una organización de la lista que publica Google que se corresponda con tus intereses =).


Escoge Proyecto

Muy bien, has conseguido finalmente elegir una organización que te gusta y se adapta a ti, pero... ¿que hago en este instante? bien, te interesará saber que todas las organizaciones que acepta Google para el programa SoC necesitan tener además de mentores una pagina de ideas disponibles (además de ya las conocidas issues/foros/comunidades que tengan y la documentación) en las que relatarán objetivos que desean cumplir con el programa o diferentes tipos de campos de trabajo dentro de la organización a los que te puedes dedicar.

Una vez bien documentado y viendo las aspiraciones que tiene la Organización en cuestión siente libre de meterte al canal IRC para hacer las preguntas que desees u enviar correos a las personas responsables de las organizaciones en las que estés interesado, es bueno que hagas este proceso cuanto antes para aumentar tus posibilidades de que acepten tu proposición.

Escribe la proposición para el proyecto de la organización

Ya has llegado al último paso, pero es el mas importante.

Escribir una proposición para una organización es la parte más importante para poder entrar al programa ya que es tu "apply" definitivo donde te cogerán para el programa o te tiraran. Por lo ya comentado escribir una correcta proposición es de vital importancia para tu futuro en el programa, no tienes hacer una pobre y poco detallada porque será mas fácil de que no la acepten.

También asegúrate de que vas a tener el tiempo suficiente para participar (trabajo completo), ya que si eres una persona con escasas horas a la semana no te dará tiempo. Asegúrate de que vas a poder tener buen contacto con la organización (chat, email, skype...) durante el periodo de verano.

Escribir un buen apply:

  • Nombre completo e información de contacto

Esta parte debería tener tu nombre completo y la información de contacto como puede ser tu email, tu web, nick IRC, código postal, teléfono... Es bueno también poner un contacto auxiliar (familia, amigos...) para que te puedan contactar en caso de emergencia.

  • Titulo

Un titulo corto, interesante y claro para convencerlos de que lo lean.

  • Sinopsis

Empieza tu proposición con un pequeño resumen, convence al lector de seguir leyendo.

  • Beneficio para la comunidad

Intenta hacer ver que tu caso es muy util para la comunidad y no que solo quieres trabajar en algo en lo que estés interesado tu solo.

  • Plan de trabajo

Incluye un buen plan de trabajo bien desglosado en el que expliques como vas a utilizar tu tiempo, intenta hacerlo bien para destacar sobre otras proposiciones y que crean que tu eres el indicado para la beca.

  • Trabajo relacionado

En el caso de que estés usando código/librerías o alguna clase de herramientas que no sea de tu propio mérito, explícalo (mostrando tu conocimiento) y muestra como tu trabajo es diferente al que ya has mencionado.

  • Información biográfica

Pon tu información personal(parecido a un curriculum), háblales de experiencias personales que hayas tenido, trabajos relacionados, resume tu educación y sobre todo intenta dejar claro cuales son tus aptitudes y conocimientos así como otros proyectos de software libre que hayas participado.

  • Sigue las reglas

Mira lo que pide la organización, por ejemplo hay organizaciones que te piden toda la información en texto plano pero la mayoría tienen ya definido un formado fijo.

Blogs

Algunos estudiantes escriben blogs durante la beca, ya sea por iniciativa propia o a petición de la organización. Puede que te resulte interesante leer alguno de ellos. Por ejemplo:

Organizaciones

Si posees una comunidad ya creada y quieres atraer a nuevos potenciales desarrolladores a tu proyecto o simplemente quieres añadir nuevas funcionalidades a tu proyecto de software libre ya existente, Google te da la opción de poder solicitar también esta beca y formar parte de ser una de las organizaciones que proporcionaran mentores a los estudiantes.

  • La beca esta abierta para poder aceptar solicitudes: 8 de Febrero - 19 de Febrero (2016)


Calendario

Timeline (2016)
Fecha Evento
13 Octubre, 2015 Se anuncia el programa
8 Febrero, 2016 19:00 UTC Las organizaciones que van a participar con mentores pueden echar su aplicación
19 Febrero 19:00 UTC Acaba el periodo de aplicaciones para las organizaciones
20 Febrero - 26 Febrero Administradores de google van a revisar las aplicaciones
29 Febrero 19:00 UTC Se pública la lista de organizaciones aceptadas en la paginad d SoC
29 Febrero - 13 March Los estudiantes pueden empezar a interesarse por proyectos
14 Marzo 19:00 UTC Se abren las solicitudes para los estudiantes
25 Marzo 19:00 UTC Acaba el periodo de aplicaciones para los estudiantes
22 Abril 16:00 UTC Se publica la lista de estudiantes aceptados en la pagina de SoC
Community Bonding Period Los estudiantes hablan con los mentores y empiezan a leer documentación
23 Mayo Los estudiantes empiezan la beca de programar y reciben su primer pago
Periodo de trabajo(code) Los mentores dan feedback a sus estudiantes y les echan una mano además de guiarles
20 Junio 19:00 UTC Los estudiantes y los mentores crean sus evaluaciones de medio plazo
27 Junio 19:00 UTC Google revisa las evaluaciones y empiezan de nuevo los pagos
Periodo de trabajo(code) Los mentores dan feedback a sus estudiantes y les echan una mano además de guiarles
15 Agosto - 23 Augosto 19:00 UTC Recta final, no hay que programar mucho código, orientado a resolver fallos, crear documentación(o mejorarla) y proporcionar su evaluación a los mentores
23 Agosto - 29 Agosto 19:00 UTC Los mentores envían la evaluación final
30 Agosto Google publica los resultados obtenidos en la beca
Finales de Octubre Las organizaciones pueden empezar a desarrollar ideas

Datos

Estudiantes

Posición Universidad País NEA
1 University of Moratuwa Sri Lanka 164
2 Polytechnic University of Bucharest Romania 75
3 National University of Singapore Singapore 58
3 Technische Universität Wien Austria 58
3 Universidade Estadual de Campinas Brazil 58
4 University of Toronto Canadá 57
5 Indian Institute of Technology India 51
6 Gdańsk University of Technology Poland 49
7 Graduate University of Chinese Academy of Sciences China 48
8 International Institute of Information Technology, Hyderabad India 42
8 Wroclaw University of Technology Poland 42
9 University of Illinois at Urbana-Champaign Estados Unidos 41
10 Indian Institute of Technology (BHU) Varanasi India 38
11 Birla Institute of Technology and Science India 26


Lista de Organizaciones (2015)

Estas son algunas de las organizaciones que participaron:


  • 52°North Initiative for Geospatial Open Source Software GmbH
geo, geospatial, java, gis, spatiotemporal, geoprocessing, traffic, environment, R, R-project, earth observation, geoprocessing, spatial data, geostatistics, sensor web, search, mobile, eventing...
  • Africa Soil Information Service
afsis, soil, gis, agriculture, machine learning
  • Apache Software Foundation
c, java, python, c++, perl, opensource, apache, erlang, hadoop, big data
  • ASCEND
numerical, mathematics, simulation, C, C++, python, GTK, linux, windows, mac, GUI, science, scientific software, parallel, programming language, education, engineering, math, scientific computing
  • BeagleBoard.org
javascript, html, robotics, android, chromium, chromeos, electronics
  • BEAM Community
erlang, elixir, erlang vm, actors, ejabberd, disco, xmpp, distributed, mongoose im
  • Bika Open Source LIMS Collective
python, plone, LIMS, LIS, laboratory management
  • Biomedical Informatics, Emory University
biomedical, healthcare, clinical, imaging, informatics, machine learning, cloud, nosql, spatial databases, visualization, big data, data mining, web services, hadoop, spark, javascript, java...
  • Boost C++ Libraries
c++, boost, peer-reviewed, portable, C++11, C++14, C++0x, C++0y
  • Boston University / XIA
Networking, future Internet, crowdsourcing, Future Internet Architecture, FIA, XIA, research, Linux, kernel, C, Ruby, Open vSwitch, OVS, containers, LXC
  • BRL-CAD
computer graphics, scientific computing, engineering analysis, visualization, CAD, CSG, SMP, signal processing, 3d, engine, 3d modeling, benchmark, raytracing, image processing, graphics...
  • Buildbot
python, twisted, continuous-integration, ci, releng, testing, angularjs, web, mq
  • BuildmLearn
mLearning, Qt, C++, Git, Android, Windows Phone, iPhone
  • CCExtractor development
subtitles, closed captions, video, language, c, mpeg, h264, teletext, ffmpeg, linux, multithreading, network, accessibility, low level, ccextractor
  • CentOS Project
Linux, Python, yum, oVirt, OpenStack, OpenShift, Gluster, Ceph, Docker, container, Atomic
  • Ceph Storage
ceph, storage, software defined
  • CERN SFT
  • Cesium Community
geospatial, mapping, graphics, JavaScript, HTML5, CSS, WebGL, GitHub
  • CiviCRM
crm, ngo, fundraising, events management, membership management, social network, datamining
  • Clojure
Clojure, Lisp, Functional Programming, ClojureScript
  • CloudCV
Computer Vision, Machine Learning, Distributed Computing, Python, Matlab, Javascript, Django, Node.js
  • Copyleft Games
C, Python, Games
  • coreboot
firmware, BIOS, embedded, bootloader, x86, arm, mips
  • DBpedia & DBpedia Spotlight
Java, Scala, Python, Wikipedia, Wikidata, Natural Language Processing, Machine Learning, Knowledge Extraction, Entity Linking, Word Sense Disambiguation, Semantic Web, Linked Data
  • Debian Project
os, linux, distributions, web, qa, quality_assurance, shell_scripting, web_development, python, bsd, php, distribution, bash, c, operating_system, database, science, debian, c++, sh, security..
  • Department of Biomedical Informatics, Stony Brook University
Biomedial Informatics, medial imaging, bioinformatics, public health informatics, MapReduce
  • Django Software Foundation
django, python
  • Drupal
PHP, OO PHP, CMS, Database, Drupal 8, Symfony, Web Development, Web Programming, Web Application, Web Framework, SQL, Object Oriented Programming, web
  • Encyclopedia of Life
encyclopedia, life, biodiversity, biology, taxonomy, devops, ruby, nlp, golang
  • FFmpeg
multimedia, video, audio, movie, mp4, mp3, transcoding, streaming, libavcodec, libavfilter, ffplay, ffmpeg, ffserver, libavutil, c, asm, x86, filter, decode, encode, subtitle
  • FOSSASIA
python, qt, Javascript, js, HTML, web, android, iOS, web apps, C, C++, mobile, pattern, garment, CAD, social change, humanitarian software, linux, localization
  • Foundation for Learning Equality
learning, education, international development, ICT4D, social justice, edtech
  • FreeBSD
virtualization, hypervisor, os, operating system, bsd, web, compilers, qa, perl, ruby, drivers, shell_scripting, shell scripting, server, embedded, mips, arm, sparc, sparc64, i386, amd, amd64...
  • Ganeti
Ganeti, Haskell, Python, Xen, Kvm, Virtualization, Cloud, Cluster
  • GCC - GNU Compiler Collection
gcc, compiler, c, c++, toolchain, glibc, binutils, gdb
  • Git
vcs, c, git
  • GitHub
coffeescript, javascript, c, c++, shell, python, linux, win32, ruby, git, unix, mac
  • Global Alliance for Genomics & Health
genomics, health, big data, medicine, APIs, visualization, file formats
  • GNOME
application, banshee, boxes, c, clutter, desktop, easytag, game, glib, gnome, gnome-shell, gnu, gobject, gtk, gtk+, gtg, gstreamer, desktop, evolution, javascript, latex, linux, mail, music, python...
  • GNSS-SDR
software radio, GNSS, GPS, Galileo, navigation
  • GNU Mailman
email, mailing-lists, python
  • GNU Project
gnu, gpl, free software, classpath, dmd, gettext, gnucap, gnunet, gnustep, guix, libredwg, kawa, octave, xaos, zile, hurd, wget
  • Google Kubernetes
kubernetes, docker, google, containers
  • Google Open Source Programs Office
research, google, open source programs office
  • haskell.org
non-strict, lazy, functional, programming language
  • HPCC Systems®
ECL, Python, Java, Parallel Processing, Big Data, C++, Distributed File System, Scalable, Data Warehousing, High Performance Queries, ETL Processing, Git, JIRA, Machine Learning, Visualisations, NLP, High...  
  • Institute for Artificial Intelligence
AI, Robots
  • Interactive Spaces
interactivity, sensors, framework, synchronization, ROS, Java, cross-platform
  • International GeoGebra Institute
math, education, mathematics, Java, JavaScript, GWT, iOS, Android, canvas, html5, geometry, algebra, 3D
  • International Neuroinformatics Coordinating Facility
brain, neuroscience, Python, C++, Java, Javscript, JQuery, SQL, MySQL, NoSQL, XML, SOAP, REST, Git, GitHub, HTML5, PHP, Django, RDF, R, WebGL, CUDA, Travis, Heroku, Ansible, WebRTC, BitTorrent


Véase también


Referencias