Skip to main content

Beginner's Guide to KDE Development

 Google Summer of Code Doc Camp Sprint October, 2011

    The Doc Camp was held at the Google HQ in Mountain View, California ; it consisted of 2 major components - an unconference and 3-5 short form Book Sprints to produce 'Quick Start' guides for specific GSoC projects. The unconference explored topics proposed by the participants. Many topics on free documentation of free software were proposed for discussion during the event. Each Quick Start Sprint brought together 5-8 individuals to produce a book on a specific GSoC project. The Quick Start books were launched at the opening party for the GSoC Mentors summit immediately following the event.

    Four free software projects (KDE, OpenStreetMap, OpenMRS, and Sahana Eden) had each sent three to five contributors to write books about the projects this week. The KDE team consisted of four members , namely Karan , Rohan , Valorie and yours truly. A book in a week was an amazing achievement, whether for a free software projects or a publisher. In fact, the first day and last day of the sprint were unconferences, so there were only three days for actual writing.

   The books are never really finished at the end of the sprint, even though they go up for viewing and for sale immediately. This doesn't detract from the value of the material produced. It just means they need to be followed up by either successive sprints or updating and adding at regular intervals. Books that come from sprints are also quite short. I think a typical length is 125 pages, growing over time as follow-up sprints are held. The length also depends of course on the number of people working on the sprint which was four in our case. So we got in to the process of creating a mix of fresh writing and copying material from the official KDE docs. The latter required some editing and polish to blend in with the book. Our team's focus on developer documentation spared us the open-ended discussions over scope that the other teams had to undergo. But at key points during the writing, we still were forced to examine passages that appeared too hurried and unsubstantiated. At each point we had to determine what the hidden topics were, and then whether to remove all references to them or to expand them into new chapters of their own .

     The KDE book is fairly standard developer documentation, albeit a beginner's guide with lots of practical advice about working in the KDE environment with the community. Our book, Beginning KDE Development, was created with the GSoC students in mind, to help them get up and running KDE trunk, if necessary, as quickly as possible. Along with the technical helps, we've also discussed the KDE community, where to get help, and how to communicate -- all in one short book. I hope you will visit, create an account, and help us make it better!

The Team:
Karan Pratap Singh    email:                  irc-nick: kpsfoo
Rohan Garg               email:                   irc-nick: shadeslayer
Valorie Zimmerman   email:        irc-nick: valorie
Supreet Pal Singh       email:                      irc-nick: supreet

Popular posts from this blog

Charting API for Financial Markets - JavaScript (SVG)

A brief about the released version of this API is available here.

As a part of the last semester of my graduation program (Bachelor of Engineering in Information Technology), I have been interning with a start-up, namely uTrade Solutions.  uTrade™ Solutions is a financial trading technology company with various products including multi-asset trading platform, algorithms and analytics. Instead of walking through my experience of working in a start-up, I would directly move to a short discussion about my project. 

uTrade Solutions is working to develop a financial analytics portal and every financial analytics portal employs the use of advanced charting. To draw and display different types of charts on the web, there are two main options which are widely used and acknowledged. Namely, Adobe Flash and Scalable Vector Graphics (SVG) . 
Using Adobe Flash has two main disadvantages: It requires the installation of an additional plugin to run content on the browser.It is not compatible with a…

FusionCharts Automated Testing Tool

While working at FusionCharts, every release we were faced with a daunting task of black box testing. Daunting mainly because of the breadth and the depth of the product. This post talks only about black box testing. FusionCharts Product as a whole contains about roughly 90 charts and each chart can be visually tweaked with a set of about 300 chart options/attributes. Ignoring any further permutation and combination, we have right there around 90*300 test cases. Apart from chart options, api testing which consisted of events and methods was needed. Clearly automation was required, as our manual testing would cover only a very small sample set that too based on smart assumptions.

With this problem at hand, I broke it down as follows:
Headless Browser
- Visual Regression
- API TestingUser Browser
- Visual Regression
- API Testing We liked to call it the FusionCharts Automated Testing Suite.

Headless testing would be based of a headless browser and integrated in to our nightly builds. It was…

Nouveau - The Open Source driver for Nvidia cards

The following is derivative of extended conversations and tutoring by Martin Peres ( irc_nick : mupuf ).

This article is an introductory discussion of nvidia gpus with respect to nouveau. Nouveau is the open-source driver which runs the Nvidia cards on your linux pc. A schematic breakdown of the nvidia architecture can be understood through this figure.

The first important repository is the envytools (, this contains the most valuable set of tools and documentation you ll find for/on nvidia cards.

To have a look at how the X Window System ( X11 -  current major version ) GUI framework works, let's say all the rendering is done by sending commands to the x-server. Applications connect to the x-server through a socket which allocates a context for their windows and issues commands like draw a line etc. For 2D rendering, the x-server has the EXA interface. The EXA can be accelerated by graphics drivers and the acceleration is done by DDX module…