← Get Involved/development You do not have permission to edit this page, for the following reason: The action you have requested is limited to users in one of the groups: Users, Administrators, trusted, KDEDevelopers. You can view and copy the source of this page. __NOTOC__ == Becoming a KDE Developer == [[Image:development.png|Development|left]]By joining the ranks of KDE developers, you will get to implement new features and defeat daunting bugs, all while collaborating to make coherent and stable releases. Developers collaborate in teams based on what area they are working in, such as [http://edu.kde.org/ Education], [http://pim.kde.org/ Productivity], or [http://games.kde.org/ Games]. Frank Osterfeld advises "start small and scratch your own itch, at least that's what kept me motivated in the beginning." As a result of a [http://dot.kde.org/2012/02/05/kde-development-%E2%80%93-beginners-guide/ Sprint] held in October 2011 we now have a [http://flossmanuals.net/kde-guide/ Beginner's Guide to KDE Development] available to ease the new contributors way into KDE development. == Communicating with the team == There are many ways to get in touch with KDE developers, and developers for a specific project:<br /> Start at [irc://irc.kde.org/kde-devel <nowiki>#kde-devel</nowiki>] on irc.freenode.net, or [http://kde.org/support/#irc learn more about IRC].<br /> The central mailinglist for development is the [https://mail.kde.org/mailman/listinfo/kde-devel kde-devel mailing list], [http://kde.org/support/#mailinglists learn about mailing lists]. However each team has its own messaging channels, both on IRC and on the mailinglists, you can find a list [http://www.kde.org/mailinglists/ here]. == Getting and building the code == In most cases, you will want to download, compile and install KDE trunk (our development tree) to start developing. Read the [http://techbase.kde.org/Getting_Started/Build/Unstable_Version unstable building guide]. If you get stuck or get errors, that's OK. You might not need to compile the whole set of applications, but getting started is a good step. == Platform and Documentation == KDE is written in C++ and uses the Qt framework. If you've never used Qt before, that's not a problem. Before you get started, you'll want to brush up on C++/Qt and our coding guidelines: * [http://www.parashift.com/c++-faq-lite/ C++ FAQ lite] - at some point, you'll have a question that is answered here. * [http://original.jamesthornton.com/eckel/TICPP-2nd-ed-Vol-one/Frames.html Thinking in C++ (volume 1)], [http://original.jamesthornton.com/eckel/TICPP-2nd-ed-Vol-two/Frames.html Thinking in C++ (volume 2)] - an online book that goes into some of the technical details of C++ * [http://www.beginning-kdevelop-programming.co.uk/ Beginning KDevelop Programming] - a great guide from start to finish * [http://doc.trolltech.com/4.7/all-examples.html Qt Examples] - If you're doing any serious coding in KDE you will need to understand Qt. These examples explain what's up but it will take a couple hours. You can do that later. * [http://techbase.kde.org/Development/Tutorials Basic KDE development tutorials] * [http://techbase.kde.org/Development KDE coding HOWTO's] - good coding documentation for beginners * [http://techbase.kde.org/Contribute/Send_Patches Patches HOWTO] - until you earn an account in SVN, your contributions will be made as patches * [http://techbase.kde.org/Schedules The KDE Development Plans] - This is the bigger picture for the development efforts of the KDE project, everyone should understand these before going forward * [http://en.flossmanuals.net/kde-guide/ The definite KDE dev book] - a comprehensive guide for KDE developers to be. == Tasks == Now you have the code on your computer and maybe got some of it to compile. Here are some tasks for you to get started. You can get your first contribution committed into the project within 1 hour! * [http://techbase.kde.org/Contribute/Bugsquad/Howto The Bugs Howto] - explains how to use and triage bugs. Why's it useful? It makes bug hunting and fixing easier for developers, so more bugs get fixed. Why choose bug triage instead of ...? It doesn't take much time to look over a bug, so it comes in nice small chunks. What skills do I need to do it? Not much, just a bit of patience and sometimes some perseverance. (quote from [http://accentgrave.blogspot.com/2006/03/ive-got-little-bit-of-free-time-so.html Phil's Triage Guide]) * [http://www.englishbreakfastnetwork.org/ English Breakfast Network] - provides a list of functions that need to be documented. Try one of these for practice with svn and doxygen. * [http://wiki.koffice.org/index.php?title=Junior_Jobs KOffice Junior Jobs] - simple programming jobs for KOffice * [https://bugs.kde.org/buglist.cgi?keywords=junior-jobs&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&cmdtype=doit Junior Jobs on bugzilla] - a place where people mark jobs that might be easy for beginners to fix * [https://bugs.kde.org/ KDE Bugzilla] - keeps track of all the bugs in KDE, you will want to bash them all == Mentor program == Getting started in a big project can be hard. Here are some people that are willing to help you learn the ropes and get you on board: * Trever Fischer (<span class="mailme"> tdfischer at fedoraproject dot org </span>)<br /> Developer on the Phonon project * Eike Hein (<span class="mailme">hein at kde dot org</span>)<br /> application developer; Konversation maintainer * Albert Astals Cid (<span class="mailme">aacid at kde dot org</span>)<br /> available to hand out junior tasks * Peter Simonsson (<span class="mailme">peter dot simonsson at gmail dot com</span>)<br /> application developer; KOffice devel/Kivio maintainer * Will Entriken (<span class="mailme">kde dot org at phor dot net</span>)<br /> Google Summer of Code KDE developer * Anne-Marie Mahfouf (<span class="mailme">annemarie dot mahfouf at free dot fr</span>)<br /> KDE-Edu development, KDE4 development, and tutorial writing * Jeremy Whiting (<span class="mailme">jpwhiting at kde dot org</span>)<br /> Developer * Teo Mrnjavac (<span class="mailme">teo at kde dot org</span>)<br /> Developer, Amarok * Your name here!<br /> Volunteer to be a mentor -> <span class="mailme">kde dot org at phor dot net</span> <!-- BUMP YOURSELF WHENEVER YOU WANT! --> If you are a student you might be interested in the Google Summer of Code program. KDE has been a mentoring organization for many years, we have a separate wiki page with information on participating in [[GSoC|Google Summer of Code with KDE]]. Templates used on this page: Template:Box (view source) Template:Info (view source) Template:Input (view source) Template:Note (view source) Template:Warning (view source) Return to Get Involved/development. Retrieved from "https://community.kde.org/Get_Involved/development"