= Google Code-in Ideas 2016 = == Warning == This is the brainstorm page for the [https://developers.google.com/open-source/gci/ Google Code-In] programme for 2016. As such some or many of these may not end up being in our final released list of tasks that end up in Google Code-In. '''If you are a student, DO NOT start working on these ahead of time as they are ALL subject to change.''' == General Information == Google has announced that they are going to hold Google Code-In 2016 as disclosed [https://opensource.googleblog.com/2016/10/announcing-google-code-in-2016-and.html in this blog post]. If you are interested in submitting an idea for a task then you can make one [https://discuss.haiku-os.org/t/ideas-for-gci-2016/ by posting on this topic in our forum]. For students interested in participating in Google Code-In 2016 be sure to read through Google's [https://developers.google.com/open-source/gci/resources/getting-started Getting Started Guide]. == 1. Code: Tasks related to writing or refactoring code == For coding tasks students should make sure to follow [https://www.haiku-os.org/development/coding-guidelines Haiku's coding guidelines]. === 1.1 Code an app for Haiku (including multi-part tasks) === ||Example task||Example Skills||Example link|| ||Code a Password Manager using Haiku's BKeystore||UI design, C++||[https://en.wikipedia.org/wiki/Seahorse_(software) Seahorse], [https://dev.haiku-os.org/ticket/12812 Haiku ticket on subject]|| ||Code a Graphical version control system Frontend||UI design, C++,git,hg,svn||[https://www.sourcetreeapp.com Atlassian Sourcetree], [https://tortoisegit.org TortoiseGit]|| ||Code a simple Photo post-production app (red eye remover)||UI design, C++|| || ||Code an Advanced Download Manager|| ||[http://www.igetter.net/iGetter.html iGetter]|| ||Code a Music Manager that takes advantage of metadata|| ||[https://github.com/HaikuArchives/CherryBlossom CherryBlossom], [http://cgit.haiku-os.org/haiku/tree/src/apps/musiccollection MusicCollection]|| ||Code a Personal Calendar|| ||[https://en.wikipedia.org/wiki/Calendar_(Apple) Apple Calendar]|| ||Code a Graphical Profiler/Tracer|| ||KCachegrind, AMD CodeAnalyst, Stackify|| ||Code a Graphical Crash Reporter|| ||Apple Crash Reporter, Goolge Breakpad (MIT)|| ||Code a graphical interface for Haiku's RemoteDesktop|| ||[https://www.haiku-os.org/node/6007 RemoteDesktop]|| ||Code a ScreenReader for Haiku|| ||[https://dev.haiku-os.org/ticket/12804 Haiku ticket on subject] ||Code a graphical event/syslog viewer|| ||[https://dev.haiku-os.org/ticket/12816 Ticket on subject]|| ||Code a speech recognition app|| ||[https://dev.haiku-os.org/ticket/12819 Ticket on subject]|| ||Code a Haiku notification Center|| ||[https://dev.haiku-os.org/ticket/12809 Ticket on subject]|| ||Code a Currency Converter|| || || ||Code a system Dictionary|| || || ||Code a vector graphics editor (reuse Icon-O-Matic code)|| || || ||Code a CountDown/StopWatch/TimeZoneCheck app|| || || ||Code a Action Automation app|| ||Xnee, Apple Automator, Automise|| ||Code a Video Manager|| || || ||Code a Subtitle Editor|| ||Gnome Subtitles|| ||Code a Hardware compatibility analysis app||C++, Python||[https://github.com/DarkmatterVale/Haiku-Configuration-Repo to be used with this web app] === 1.2 Develop a web app, a plugin or fix a issue related to Haiku's web infrastructure === ||Example task||Example Skills||Example link|| ||Fix a bug in our web app that records hardware compatibility|| ||[https://github.com/DarkmatterVale/Haiku-Configuration-Repo Codebase on Github]|| ||Fix a bug in our documentation translation tool|| ||[https://dev.haiku-os.org/query?status=assigned&status=in-progress&status=new&status=reopened&type=%5E&component=%5EWebsite%2FUser+Documentation+Translator tickets on trac]|| ||Fix a bug in our copy of Pootle|| ||[https://dev.haiku-os.org/query?status=assigned&status=in-progress&status=new&status=reopened&type=%5E&component=%5EWebsite%2Fi18n.haiku-os.org tickets on trac] === 1.3 Refactor, clean up or improve Haiku code === ||Example task||Example Skills||Example link|| ||Fix a issue in Mail|| ||[SoftwareInfo/Applications/EmailClient Wiki page on Mail]|| ||Fix a issue in Beam|| ||[SoftwareInfo/Applications/EmailClient Wiki page on Beam]|| === 1.4 Fix a broken recipe in haikuports === === 1.5 Fix bug listed in Haiku's Trac === == 2.0 Documentation/Training == Tasks related to creating/editing documents and helping others learn more. ||Write an article on how to use unit tests when developing Haiku||English||[https://dev.haiku-os.org/ticket/12249 Ticket on subject]|| == 3.0 Outreach/Research == Tasks related to community management, outreach/marketing, or studying problems and recommending solutions. ||Example task||Example Skills||Example link|| ||Research the current states of the Scooby codebase|| ||[SoftwareInfo/Applications/EmailClient Wiki page on Scooby]|| ||Investigate Trac-Buildbot intergration ||Python, html||[https://dev.haiku-os.org/ticket/11415 Ticket on subject]|| == 4.0 Quality Assurance == Tasks related to testing and ensuring code is of high quality. == 5.0 User Interface == Tasks related to user experience research or user interface design and interactio