KDE Games meetings

We had a two-hour meeting last Friday, and another 90-minute one earlier today. The results are nicely summarized at:


There you can see we have some blockers, but mostly we are in relatively good shape for the next betas, and for KDE 4.0. There was some concern expressed about KNetwalk and KBackgammon, though. We need to make sure KNetwalk is actively maintained for KDE 4.x, and KBackgammon still needs to catch up with the rest of the module. Let us see how the documented issues evolve in the next couple of weeks: if it comes to it we considered moving these and other games to playground before the first RC release.

I will now list some of the concerns and todo items raised in the meetings, things that we need to address in order to make the 4.0 release a success:

Documentation. Authors need to start looking more carefully at the handbooks, to make things easier for translators and the doc people in general. There is a lot of work to be done on this area, most games still have the old 3.x series handbooks, with outdated info.

Websites. We need to find volunteers to work on our games.kde.org and related sites during the 4.x life cycle, and we need to define a date to phase out the current 3.x series content, and start upgrading it to 4.x. Unfortunately, this is an area where no volunteers appeared so far.

KNewStuff2. We need to setup a server area, and test this while we still have time. Preferably integrated with the edu people, as they will also need the same infrastructure.

Sounds. We are seeing some sound issues with Phonon (Xine backend.) KTuberling sounds are cut short, or do not play at all. The edu people mentioned similar problems in some of their applications, like Blinken. We need more feedback from users on this: is sound working for you in KTuberling?

Card sets. Currently we install too many (20). Ideally we would like to cut the number to something like 10, half SVG, and half PNG. Another reason for this is the need to research copyright information for some of the older cardsets and make them easily available.

One suggestion is to maybe assemble a coding sprint at the end of October, or beginning of November, and maybe with e.V. help. The idea is to get together on a weekend and iron out the last blockers in a team effort, including artists and coders. But this has some problems, as our team is (thankfully!) spread around the globe. Maybe a virtual sprint? We will see how it goes, depending on how fast we can make all the fields on the status table green 🙂

Comments and suggestions are welcome.

And to end with a nice screenshot (always good for marketing and attracting comments), see the new Imperial Jade tileset for KMahjongg and KShisen, courtesy of Eugene Trousnev:

New tilesets for KMahjongg and KShisen

Today I want to show you two new tilesets that were just committed to SVN and will be available in KDE 4.0, to be used in both KMahjongg and KShisen.  The first is the Alphabet tileset, by Raquel Ravanini, who also did the Default tileset:

Alphabet tileset

    As you can see this also comes with a matching background, and with new (simpler) game layouts containing fewer tiles. This will make the game more approachable to children, and also to people who want to match quickly and have trouble with the chinese symbols in the standard tilesets.
    The second is the Traditional tileset, designed by Shamus (James L. Hammon), based on traditional mahjongg tiles as commonly available in the US. I show it here using the same layout as above, so you can see how different the same game can look:

Traditional theme

    And here it is with the Cross layout:

    Of course, the Classic and Default tilesets are still there (you can find screenshots at my old blog here). The tileset format is pretty much final right now, so now is the time for authors that want to update their older KDE3 designs to SVG, and also for new creations.
Hope you like the designs, thanks to both Raquel and James for their contributions!

Updates, and KMines

I have not blogged since aKademy, and so much has happened in this last month… Starting with aKademy itself, where the KDE Games team had very successful and productive meetings. Our panel was well received by the audience, and the BoF was great. But most of all I enjoyed the social aspects of the event, from the Chinese dinner in the first evening with Johann, to the barbecue at Loch Lomond, where I had the chance to climb a small hill and find Kevin and Inge there. We talked for a while, and as they left to explore different hills, I stayed there with a nice view of the rainy landscape, and had a nice meditation. Best Scottish experience for me, and something to remember for years to come.
    But enough of aKademy. Those of you who are following the commit digest will notice that I have a new project (KBlocks), currently at playground/games. This is a game I started at the aKademy hacking sessions, and I will blog about it later this week. This post, however, is about the good and old KMines.
    I did some initial port of KMines to KDE4 back in February, with some code re-factoring and implementation of SVG rendering and themes. However, the game remained kind of stalled during the past 3 months, with some ideas flying around over IRC, as I did not have enough motivation to do the final cleanup, which was looking like it could be a more or less complete rewrite of the main game widget , using QGraphicsView.
    And one nice evening I was at IRC, and Dmitry Suzdalev (dimsuz) logged in. He was apparently not satisfied with the katomic, kreversi and klines work :). I asked him if we would consider helping me with KMines, and gladly he accepted it immediately 🙂 Well, at the same time I agreed to help him on some remaining issues in KReversi, which required some Inkscape fiddling and code shuffling.
After this meeting, in just one week he already had the partial rewrite working. In 3 weeks everything is basically ready, and the game is looking and playing better than ever. See it:

    I jumped in and completed the classic theme in SVG, so people looking for the familiar KMines KDE3 look could still play with it:

    Of course, theme selection is present in our KGameThemeSelector dialog, where you can see that support for KNewStuff2 is hooked :

    And here as well you can see a work in progress version of the new “Gardens of Danger” theme by Eugene, hopefully one of the many others that will appear for Kmines in KDE 4:

    This is all in SVN, and will be part of the beta 1 release. Please be sure to try it, and send feedback to the games team!
Of course, after all this work I offered KMines maintainership to Dmitry. But he felt that we are doing a good job together, so we will be co-maintainers, at least for now. Woohooo! I love the team work we are being able to achieve in this module.
    In a few days I will post about KBlocks, and I hope you will like it. Fingers crossed.

In Glasgow

This year I decided to arrive one day earlier, to have some more time to rest from the long flight from Brazil. If you are still packing, remember to bring an umbrella 🙂 I also met Felipe Zimmerle by accident at the airport in Amsterdam,  and learned that he will give a talk just before our KDEGaming panel this Saturday. See you guys soon!

Jumping into the discussion

Sometimes people question why developers working in the kdegames module are “wasting” or “spending” time with silly games, as this time could be used “better” for other critical areas of KDE. While this seems a logical assumption, it appears to be flawed. Volunteers in a project like KDE work on what they want, so if these developers were not working on kde games the end result would simply be “no games”, with no difference whatsoever for the other kde modules.
I think the same applies here to the developers working on the Win and Mac versions, doesn’t it? They are working on something to scratch their itches, and respecting of course the license of the KDE project. So why this topic causes a lot of discussion, like the recent one going on in planet? Well, I know no one asked, but here is my take on this issue anyway. I will probably regret posting this in one week 🙂

To me it boils down to the attempt (sometimes unconscious) to “control” or “direct” other people’ s lives. Sorry for the quotes, but English is not my native language, so I know these are approximations of the idea I am trying to convey. Let me try to make this more clear.
Behind the discussion of this topic is the sometimes unconscious idea that people “should” switch to a free OS sometime down the road. If you examine the whole issue from the perspective of JUST KDE SOFTWARE you will see that expanding to other platforms looks like an obvious gain if it brings one single developer to the project. If you however examine the issue from the perspective of “trying to sway people away from MS and into a free software OS” then the issues are really more muddy, and I can not see clearly how expanding to the “hostile” OS will achieve this goal automatically without some clear planning of the process. It might help, it might not. Apple is betting their house on a similar strategy, porting some of the apps to Windows, while keeping the jewels on their OS. It would be interesting to see how it plays out for them.

So, to me, it is a question of making the intentions of the questioner more clear. If the goal is to spread adoption of KDE software, then it seems logical that any work in porting to other platforms is a step in the right direction. The only pitfall I can see is the possibility of “dumbing down” some of KDE key infrastructure in order to accommodate restrictions in this platform, which should not happen imo. This is a real danger, not something hypothetical, but I believe the core group of KDE developers is taking steps to prevent this from happening.

If however the goal is to make all of the world switch to free software OS then we are talking about a whole different issue. But as I see it, this should not be a goal of the KDE project (see * at the end.) Mind you that this is not because I disagree with it as an end result, but I think something like this (the switch) comes naturally after people are exposed to free software culture in its more “pure” form (to me at least), without strings or attachments, or hidden plans. Start by enjoying good quality free software one application at a time, and the rest will happen to the people that are prepared or willing to take this path.

There is a thin line here. It is a choice between
A) offering a gift to people freely so they can hopefully understand its value and adopt it if needed, and
B) secretly wanting in some corner of your mind to dominate the whole world by all means necessary, which tends to make portions of the free software community very  similar to MS in attitude. Different paths to world domination, but same end result 🙂

A triple disclaimer with sugar on top here: I am not judging Aarons’s and Christian’s opinions here, nor am I trying to put them on just one of the camps described above! Read this as an attempt to help with the discussion, which I find very interesting and needed for the future of the project!.

*There is this page. Maybe the goal of the KDE project had always included a switch to monopoly-free computing environment. The current work on porting seems contrary to the goals of the project as described on that page, doesn’t it? Should we update the page, or attempt to understand how the porting effort could really contribute to the goals stated here?

Freedom and parades

This is a slightly different blog entry. I live in São Paulo, Brazil, so quite used to large crowds. The metropolitan area houses around 11 million people. Yesterday the city hosted the largest parade in the world for celebration of sexual diversity. Amazingly, it gathered anywhere from 3 to 3.5 million people.
English articles about it can be found at this and this links, and photos  are available as well.
What does this have to do with free software? It is interesting to notice the absolute majority of people on the parade were not really part of the gay community. Most were families with children. The focus of the event was to celebrate the rights of people to exercise their freedom, to run their lives in the way that suits them most. And to most people here the right to exercise their freedom sexually is very important. Carnival anyone?
Contrast this with the recent visit of the Pope to Brazil, where crowds of millions were expected, but attendance was very low, and only about 30% of the expected audience was seen in most public events. This Pope’s message is basically about control and restriction, and it has not resonated at all here, even with the overwhelming catholic majority of the country, and massive media attention to the visit.
As I look at these events and others in the recent history of the country, I begin to see a pattern. Brazilians are apparently very found of freedom of expression. Yet in this country this usually manifests in a pattern of relative tolerance to others, which helps explain why the country has not been involved in any significant military conflict  in the continent since 1880.
I am sure the above can also be observed in the pattern of adoption of free software in Brazil Some people seem to believe that adoption of free software in developing countries is mostly dictated by monetary conditions (the “free” as in beer aspect.) But I disagree with this, at least in essence. Every free software advocate you run into in Brazil is always touting the freedom aspect first, and the monetary reward as a by product. People here are also very confortable with mixed solutions, where free software and proprietary components are used in the same solution (the tolerance aspect I mentioned before, perhaps?) Another interesting parallel between the recent parade and free software adoption is the gradual involvement of the government as partial sponsor of both movements. Some people seem to believe that adoption of free software (or celebration of diversity!) is dictated by government policies, but I can tell you that this is not how it works down here. Both movements started with smaller portions of the population at first, and then gained momentum. The government only joined the party at a much later stage, when it became apparent that freedom of expression is a desire of the population.
Just some random rambling while I wait for kdelibs to build, and prepare to re-tackle some work on KMines and KMahjongg 🙂

KMines update

I spent some time working on KMines this past week, mainly cleaning up the code a little bit, merging classes, and making it ready for inclusion of themes. There is still a lot of work to do (background, borders…) and some refactoring still pending, but the theme selector is now working, as you can see here.

In the future this will enable artists to customize the look of the game completely. Mark Taff has contributed an oxygen-inspired theme to be used as the new default for KDE4. If you are addicted to the old graphics do not worry:  I also drew a SVG version of the classic look, and it is also available with the game.
Now who wants to create a less-violent theme for the game?


FISL is underway. I did my presentation about “Developing games for KDE 4” around noon. Thankfully it was not scheduled for one of the big rooms (they are gigantic!) But I estimate that we had around 300 people or more, a good attendance, with the room completely filled. I had some trouble managing time at the end and had to skip a few examples, but the feedback was very positive. Helio Castro sat on the first row, which was great, as he could rescue me in one or two occasions! Thanks Helio 🙂 A couple of people asked about the content. If you want to check it out, the slides and support material (sample code, sample art and programs) is online here. It is in Portuguese.

I was then free to roam around the conference a bit. Lots of interesting things happening. Keith Packard’s presentation about the state of X.org was very interesting, it is nice to see the advances being made in X and the explicit support (or explicit lack of support!) given by hardware developers. Some like Intel have moved to actually sponsoring 5 developers and developing their official drivers in the X.org repository, while others like ATI and NVidia are still not cooperating with free software development. It is interesting to see what will happen in the future, and if moves like these will have an impact on the quality of drivers and market share.  But at least I know which graphics chip my future notebooks will have.

Aaron’s first presentation was delayed a bit, but it was a great introduction to KDE 4 current state. His next presentation (today) will go in more detail about the technical bits. The man really knows how to conduct a presentation, even in the short time allowed for such a huge topic. I left the presentation really excited about  the work that is going on for this release! It is going to be huge! But wait… I knew that already… Didn’t I?!?  🙂

And for those wondering why we are not blogging more frequently, the wireless setup and internet connection is not working reliably at the convention center. Guess they underestimated the impact of 4,000 people roaming around, at least 50% of them carrying notebooks and attempting to find a hotspot…