<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Who Says Penguins Can&#039;t Fly?</title>
	<atom:link href="http://hanswchen.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://hanswchen.wordpress.com</link>
	<description></description>
	<lastBuildDate>Fri, 06 Nov 2009 19:05:29 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='hanswchen.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/3c5596b91b62a09f9977c99bf4a6a40b?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Who Says Penguins Can&#039;t Fly?</title>
		<link>http://hanswchen.wordpress.com</link>
	</image>
			<item>
		<title>The wonderful world of Go</title>
		<link>http://hanswchen.wordpress.com/2009/11/06/the-wonderful-world-of-go/</link>
		<comments>http://hanswchen.wordpress.com/2009/11/06/the-wonderful-world-of-go/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 19:01:09 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Interests]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=938</guid>
		<description><![CDATA[No, not World of Goo.
Go is a wonderful board game. The rules themselves are very simple, but the game itself is fascinating. It&#8217;s a bit like Conway&#8217;s Game of Life &#8211; with a few simple rules you can create something really interesting. However, the similarities pretty much stop there.

Introduction to the game
The equipment consist of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=938&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>No, not <a href="http://en.wikipedia.org/wiki/World_of_Goo">World of Goo</a>.</p>
<p><a href="http://en.wikipedia.org/wiki/Go_(game)">Go</a> is a wonderful board game. The rules themselves are very simple, but the game itself is fascinating. It&#8217;s a bit like <a href="http://en.wikipedia.org/wiki/Conway_game_of_life">Conway&#8217;s Game of Life</a> &#8211; with a few simple rules you can create something really interesting. However, the similarities pretty much stop there.</p>
<div id="attachment_939" class="wp-caption aligncenter" style="width: 260px"><img class="size-full wp-image-939   " title="A game of Go" src="http://hanswchen.files.wordpress.com/2009/11/go.png?w=250&#038;h=192" alt="A game of Go" width="250" height="192" /><p class="wp-caption-text">A game of Go</p></div>
<p><span id="more-938"></span></p>
<h2>Introduction to the game</h2>
<p>The equipment consist of black and white stones and a board with a grid (usually 19&#215;19). Playing the game is easy:</p>
<ul>
<li>Two players, Black and White, take turns to place a stone on an intersection on the board. First out is Black.</li>
<li>You can capture stones by &#8220;surrounding&#8221; them. There&#8217;s a nicer way to describe this involving the term <em>liberties</em>, but it&#8217;s too lengthy for this post.</li>
<li>In the end, the player with the largest territory + most captured stones wins.</li>
</ul>
<p>There are some additional rules, but this is basically how you play.</p>
<div id="attachment_941" class="wp-caption aligncenter" style="width: 129px"><img class="size-full wp-image-941" title="Captured Stone" src="http://hanswchen.files.wordpress.com/2009/11/go-captured.png?w=119&#038;h=119" alt="White's stone is captured by Black" width="119" height="119" /><p class="wp-caption-text">White&#39;s stone is captured by Black</p></div>
<p>&#8220;Piece of cake&#8221;, you might think, &#8220;but how do you actually <em>play</em> it?&#8221; That&#8217;s one of the things I found difficult in Go &#8211; what are the objectives, and how do you achieve them? As for the first question, a key word is <em>territory</em>. If you look at pros, you&#8217;ll see that it&#8217;s not about capturing most stones. As you play more, you&#8217;ll surely discover many answers.</p>
<p>The second question then? Ikuro Ishigure writes in <a href="http://www.amazon.com/Beginning-Beginner-Elementary-Go-Books/dp/4906574106/ref=pd_sim_b_1">Elementary Go Series, Volume 1</a>: &#8220;When black puts his first stone onto the empty go board, he has three-hundred sixty-one points among which to choose. Even if symmetry is taken into account, there are fifty-five different possible opening moves&#8221;.</p>
<p>As if that isn&#8217;t scary enough, let&#8217;s look at some more statistics. According to <a href="http://en.wikipedia.org/wiki/Go_(game)#Nature_of_the_game">Wikipedia</a>, the number of possible Go games exceeds the number of atoms in the known universe. Needless to say, Go gives the player a lot of freedom.</p>
<p>Now don&#8217;t be discouraged. Go is a very interesting game, and there are many online guides to get you started. I think this one teaches Go in a fun way (requires Java):</p>
<p style="text-align:center;"><a href="http://playgo.to/iwtg/en/">The Interactive Way To Go</a></p>
<p><a href="http://blip.tv/file/262606/">Here&#8217;s a video tutorial</a>. I haven&#8217;t watched it myself, but videos are usually nice to get a basic understanding of something.</p>
<p>Some more useful links are listed <a href="http://gbohus.szncs.com/go/go_eng.html">on this page</a>.</p>
<h2>My experience</h2>
<p>I&#8217;ve know the rules of Go for a very long time &#8211; similar to how most western people know the rules of Chess. And similarly, I didn&#8217;t know how to actually play it well.</p>
<p>I still don&#8217;t. But I&#8217;m confident that I&#8217;m a stronger player than I was one year ago. And I&#8217;m sure that there&#8217;s a lot of room for improvement.</p>
<p>The reason I became more interested in Go was an anime called <a href="http://en.wikipedia.org/wiki/Hikaru_no_Go">Hikaru no Go</a> (recommended if you like anime). I read some guides on the Internet, but soon other things demanded my attention and the Go board¹ started to collect dust again.</p>
<p>About one year ago, I stumbled upon <a href="http://www.gokgs.com/">KGS</a> and decided to give it a try. Playing people online was much more fun than the Go programs I had tried. A yotta more fun. I&#8217;ve learned a lot from playing persons from all around the world. There&#8217;s a handicap system in Go, so playing stronger player is not futile; actually quite the contrary, since some kind people don&#8217;t mind to spend some time and review the game afterwards.</p>
<p>Now I&#8217;m become hooked again. I even bought some Go books, currently reading the <a href="http://senseis.xmp.net/?ElementaryGoSeries">Elementary Go Series</a> when I find the time and play on KGS. I wish I had more people in Real Life to play against &#8211; maybe I should visit the local Go club, or make more friends discover the beauty of Go.</p>
<blockquote><p><em>&#8230; [it is] something unearthly&#8230; If there are sentient beings on other planets, then they play Go.<br />
</em>- Emuanel Lasker<em> </em></p></blockquote>
<p><em><br />
</em></p>
<hr />
<p style="text-align:left;">¹ To be honest, I didn&#8217;t even own a board at that time. If you&#8217;re a mathematician, you can call it an <a href="http://senseis.xmp.net/?Igo">iGo</a> board if it makes you feel more comfortable. /me hides</p>
<p>&nbsp;</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/938/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/938/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/938/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/938/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/938/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/938/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/938/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/938/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/938/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/938/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=938&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/11/06/the-wonderful-world-of-go/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/11/go.png" medium="image">
			<media:title type="html">A game of Go</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/11/go-captured.png" medium="image">
			<media:title type="html">Captured Stone</media:title>
		</media:content>
	</item>
		<item>
		<title>Interests</title>
		<link>http://hanswchen.wordpress.com/2009/10/31/interests/</link>
		<comments>http://hanswchen.wordpress.com/2009/10/31/interests/#comments</comments>
		<pubDate>Sat, 31 Oct 2009 00:44:35 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Interests]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=923</guid>
		<description><![CDATA[Lately my blog posts have all been about KDE, a Free software project that I&#8217;m interested in. However, since this is also a personal blog, I&#8217;ve decided to write a bit more about myself. Therefore I&#8217;ve added a category called Interests, where I&#8217;ll write about my hobbies and interests.
I&#8217;ve always had a lot of hobbies. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=923&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Lately my blog posts have all been about <a href="http://en.wikipedia.org/wiki/KDE">KDE</a>, a <a href="http://en.wikipedia.org/wiki/Free_software">Free software project</a> that I&#8217;m interested in. However, since this is also a personal blog, I&#8217;ve decided to write a bit more about myself. Therefore I&#8217;ve added a category called <a href="http://hanswchen.wordpress.com/category/interests/">Interests</a>, where I&#8217;ll write about my hobbies and interests.</p>
<p>I&#8217;ve always had a lot of hobbies. When I was a child, I usually had one or two activities every weekday (except on Sundays). Many were dropped due to lack of time, but I&#8217;ve also picked up a few new interests. I think I&#8217;m pretty open to new things, as long as they look fun or seem useful.</p>
<p>Regardless of how much I enjoy a hobby, it&#8217;ll only be just that &#8211; a hobby. I don&#8217;t plan to take either to a professional level.</p>
<p>Still, I want to work with something I&#8217;m interested in. The scientific world seems to be perfect &#8211; a place with constant new challenges, a place where you&#8217;re relatively independent and learn new things every day. Of course it won&#8217;t be perfect all the time. specially not in the beginning I would guess. But it&#8217;s hopefully interesting enough to give me something to blog about besides the usual KDE-related stuff. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/923/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/923/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/923/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/923/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/923/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=923&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/10/31/interests/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>
	</item>
		<item>
		<title>Mouse shortcuts with xbindkeys</title>
		<link>http://hanswchen.wordpress.com/2009/10/13/mouse-shortcuts-with-xbindkeys/</link>
		<comments>http://hanswchen.wordpress.com/2009/10/13/mouse-shortcuts-with-xbindkeys/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 16:21:43 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KApplication KTips]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=844</guid>
		<description><![CDATA[Note: This isn&#8217;t directly related to KDE. However, since there isn&#8217;t such a tool for KDE at the moment, I figured some KDE users might find it interesting as well.
I recently bought a new mouse for my desktop computer, more specifically a Logitech Corded Mouse M500. Up until then I had been using an old [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=844&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><blockquote><p><strong>Note:</strong> This isn&#8217;t directly related to KDE. However, since there isn&#8217;t such a tool for KDE at the moment, I figured some KDE users might find it interesting as well.</p></blockquote>
<p>I recently bought a new mouse for my desktop computer, more specifically a <a href="http://www.logitech.com/index.cfm/mice_pointers/mice/devices/5743&amp;cl=us,en">Logitech Corded Mouse M500</a>. Up until then I had been using an old mouse with two buttons and a scroll wheel. Now I suddenly have two extra mouse buttons, and a scroll wheel that you can tilt to the left and right. Let&#8217;s see how to take advantage of this.</p>
<p><span id="more-844"></span></p>
<div id="attachment_847" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/10/m500.jpg"><img class="size-medium wp-image-847" title="Logitech M500" src="http://hanswchen.files.wordpress.com/2009/10/m500.jpg?w=300&#038;h=246" alt="The freewheel scroll feature is pretty nice as well" width="300" height="246" /></a><p class="wp-caption-text">The freewheel scroll feature is pretty nice as well</p></div>
<h2>Bind keys with xbindkeys</h2>
<p>As the name suggests, <code>xbindkeys</code> is a small program that lets you bind hotkeys to actions under X. Although it doesn&#8217;t include a GUI, it&#8217;s very easy to use. <strong>There is a  graphical configuration tool called <code>xbindkeys-config</code></strong> (GTK frontend)<strong>, but in this guide I&#8217;ll edit the config file directly.</strong></p>
<ol>
<li>First of all you need to install <code>xbindkeys</code>, preferably through your package manager.</li>
<li>You can create a default configuration file with the command<br />
<blockquote>
<pre>xbindkeys --defaults &gt; $HOME/.xbindkeysrc</pre>
</blockquote>
</li>
<li>Open <code>~/.xbindkeysrc</code> in your your favorite text editor. (If you can&#8217;t find it, make sure you have &#8220;Show hidden files&#8221; enabled).<br />
<span style="color:#999999;">[This guide aims to be quite comprehensive - if you don't want to read everything, you can look at the default configuration file and try to figure out the rest yourself. It's not difficult if you read the included comments]</span></li>
<li>Let&#8217;s check the syntax. Everything after <code>#</code> are comments, which means that the program will ignore them.<br />
You can find the following text in the default file:</p>
<blockquote>
<pre># The format of a command line is:
#    "command to start"
#       associated key</pre>
</blockquote>
<p>Below are also some examples &#8211; great. It&#8217;s probably a good idea to include a short comment (start the line with <code>#</code>) before each command, for example</p>
<blockquote>
<pre># short comment
    "command to start"
       associated key</pre>
</blockquote>
</li>
<li><code>"command to start"</code> is simply a shell command (that you can run from a terminal). I&#8217;ll talk more about it under <em>Actions</em>.</li>
<li><code>associated key</code> is the hotkey. Let&#8217;s take a closer look at how to find what we should write here. But before that, don&#8217;t forget the last step.</li>
<li>Start <code>xbindkeys</code> by running the command in a terminal.</li>
</ol>
<h2>Keyboard shortcuts</h2>
<p>This section deals with keyboard shortcuts. If you&#8217;re only interested in mouse shortcuts, please see the next section <em>Mouse shortcuts</em>.</p>
<p>The first example in the generated <code>.xbindkeysrc</code> shows how you can define a hotkey:</p>
<blockquote>
<pre> control+shift + q</pre>
</blockquote>
<p>A list of modifiers is included in the comments.</p>
<blockquote>
<pre># List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll).
#
# The release modifier is not a standard X modifier, but you can
# use it if you want to catch release events instead of press events
#
# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.</pre>
</blockquote>
<p>Pretty straightforward, don&#8217;t you think? You can also use raw keycodes, as shown in the next example:</p>
<blockquote>
<pre>c:41 + m:0x4</pre>
</blockquote>
<p>Now this might look cryptic, but it&#8217;s really no problem &#8211; you can easily find the keycodes with the <code>--key</code> option. Run</p>
<blockquote>
<pre>xbindkeys -k</pre>
</blockquote>
<p>in a terminal and a window pops up. Press the desired hotkey and you should get an output similar to this:</p>
<blockquote>
<pre>Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
 m:0x15 + c:34
 Control+Shift+Mod2 + q</pre>
</blockquote>
<p>In this case I pressed <code>Ctrl+Shift+Q</code>. <code>Mod2</code> corresponds to Numlock which is ignored by default, as explained in the earlier text about modifiers. Apparently the  keycodes for this hotkey are <code>m:0x15 + c:34</code>.</p>
<h2>Mouse shortcuts</h2>
<p>Now that we know how to deal with keyboard hotkeys, mouse shortcuts should be a piece of cake. The first mouse button (left) is called <code>b:1</code>, the second (right) <code>b:2</code> and so forth. Take a look at the third example and you&#8217;ll see how a mouse shortcut can be defined:</p>
<blockquote>
<pre>control + b:2</pre>
</blockquote>
<p>That&#8217;s right, you can combine mouse and keyboard shortcuts &#8211; great for those who don&#8217;t have a fancy mouse with extra buttons. I used to bind <code>Super+</code> mouse buttons to various actions with my old mouse (<code>Super</code> is the Windows key on most keyboards).</p>
<p>To find out what a mouse button is called, you can use <code>xev</code>. Similar to <code>xbindkeys -k</code> that you used earlier, it pops up a window. However, this one isn&#8217;t closed automatically, and it also grabs mouse movement and clicks. Try to click/scroll in the window (without too much mouse movement), and you should see something like</p>
<blockquote>
<pre>ButtonPress event, serial 31, synthetic NO, window 0x3a00001,
 root 0x189, subw 0x0, time 55432271, (4,0), root:(1102,842),
 state 0x10, button 9, same_screen YES</pre>
</blockquote>
<p>in the terminal output. According to the last line, I just pressed mouse button 9, which translates to <code>b:9</code> in <code>.xbindkeysrc</code>.</p>
<h2>Actions</h2>
<p><code>command to start</code> is a command that you can run from a terminal, for example an application (<code>dolphin</code>) or a shell script (out of scope for this article).</p>
<p>Let&#8217;s take a concrete example. I want to bind wheel tilt -&gt; switch to previous/next desktop. To do this I have to communicate with KWin, the default KDE window manager. KDE applications use  D-Bus to communicate with each other, and you can &#8220;talk&#8221; to them with D-Bus as well with. (This is for KDE4, in the KDE3 series DCOP is used instead).</p>
<p>I&#8217;m not very familiar with D-Bus myself, but with the help of the <code>qdbusviewer</code> tool and some Googling I found that I can use the following command to switch  desktop:</p>
<blockquote>
<pre>qdbus org.kde.kwin /KWin org.kde.KWin.nextDesktop</pre>
</blockquote>
<div id="attachment_869" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/10/qdbusviewer.png"><img class="size-medium wp-image-869" title="qdbusviewer" src="http://hanswchen.files.wordpress.com/2009/10/qdbusviewer.png?w=300&#038;h=260" alt="Find the dbus call with qdbusviewer" width="300" height="260" /></a><p class="wp-caption-text">Find the D-Bus call with qdbusviewer</p></div>
<p>According to <code>xev</code> (explained in <em>Mouse shortcuts</em>) the tilt to the left and right corresponds to <code>b:6</code> and  <code>b:7</code>. Therefore, a part of my <code>.xbindkeysrc</code> looks like this:</p>
<blockquote>
<pre># Previous desktop
"qdbus org.kde.kwin /KWin org.kde.KWin.previousDesktop"
  b:6

# Next desktop
"qdbus org.kde.kwin /KWin org.kde.KWin.nextDesktop"
  b:7</pre>
</blockquote>
<p>Don&#8217;t forget the quotation marks (<code>""</code>) around the commands!</p>
<h2>Emulate key presses</h2>
<p>Now I want to map the two other mouse buttons to the KWin effects &#8220;Present Windows&#8221; and &#8220;Desktop Grid&#8221;. I couldn&#8217;t find any D-Bus calls for this, so let&#8217;s try to achieve it in another way. The effects are already mapped to some keyboard shortcuts &#8211; maybe we can find a command to &#8220;emulate&#8221; these key presses?</p>
<p>The tool for doing this is called <code>xte</code>, and is included in the <code>xautomation</code> package. Again, install it with your package manager.</p>
<p>The default shortcut for &#8220;Show Desktop Grid&#8221; is <code>Ctrl+F8</code>. The following command should then activate the effect:</p>
<blockquote>
<pre>xte 'keydown Control_L' 'key F8' 'keyup Control_L'</pre>
</blockquote>
<p>Whether we choose<code> Control_L </code>or <code>Control_R </code>doesn&#8217;t really matter. After confirming that it works, I added the following lines to <code>.xbindkeysrc</code>:</p>
<blockquote>
<pre># Present Windows
"xte 'keydown Control_L' 'key F10' 'keyup Control_L'"
  b:8

# Desktop Grid
"xte 'keydown Control_L' 'key F8' 'Control Super_L'"
  b:9
</pre>
</blockquote>
<p>If nothing happens for you, make sure you emulate the right key presses. Have you changed any shortcuts?</p>
<p><code>xte --help</code> displays some helpful text that you might find useful.</p>
<h2>Apply settings and make xbindkeys autostart</h2>
<p>Now we&#8217;re almost done! Remember that you have to restart <code>xbindkeys</code> to apply the changes:</p>
<blockquote>
<pre>killall xbindkeys &amp;&amp; xbindkeys</pre>
</blockquote>
<p>As a final touch, let&#8217;s make <code>xbindkeys</code> autostart with KDE. It&#8217;s very easy to do with the new Autostart module.</p>
<ol>
<li>Open System Settings.</li>
<li>Go to Advanced tab -&gt; Autostart.</li>
<li>Click on &#8220;Add Program&#8230;&#8221;.</li>
<li>Write <code>xbindkeys</code> and press OK. A new dialog pops up. Press OK again.</li>
<li>Done!</li>
</ol>
<div id="attachment_871" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/10/autostart.png"><img class="size-medium wp-image-871" title="Autostart" src="http://hanswchen.files.wordpress.com/2009/10/autostart.png?w=300&#038;h=211" alt="Make xbindkeys autostart" width="300" height="211" /></a><p class="wp-caption-text">Make xbindkeys autostart</p></div>
<h2>Closing words</h2>
<p>In this tutorial we&#8217;ve learned how to use the <code>xbindkeys</code> program to bind keyboard and mouse shortcuts to different commands. We also took a quick look at how to communicate with an application using <code>qdbus</code> and emulate key presses with <code>xte</code>. Finally, we made <code>xbindkeys </code>autostart.</p>
<p>I think it would be great if the &#8220;Input Actions&#8221; module in System Settings also supported mouse shortcuts. A more simple module for assigning mouse buttons to actions would be nice as well.</p>
<p>Hope that you found this guide helpful, don&#8217;t hesitate to leave a comment below if there&#8217;s anything on your mind.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/844/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/844/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/844/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/844/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/844/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/844/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/844/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/844/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/844/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/844/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=844&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/10/13/mouse-shortcuts-with-xbindkeys/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/m500.jpg?w=300" medium="image">
			<media:title type="html">Logitech M500</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/qdbusviewer.png?w=300" medium="image">
			<media:title type="html">qdbusviewer</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/autostart.png?w=300" medium="image">
			<media:title type="html">Autostart</media:title>
		</media:content>
	</item>
		<item>
		<title>KDE Community Forums and Feeds</title>
		<link>http://hanswchen.wordpress.com/2009/10/06/kde-community-forums-and-feeds/</link>
		<comments>http://hanswchen.wordpress.com/2009/10/06/kde-community-forums-and-feeds/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 23:37:20 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=785</guid>
		<description><![CDATA[Good news ahead for all the people who don&#8217;t like forums in general, but still want to know what&#8217;s going on.
The Feed option has been available for a while and makes it possible to create personalized newsfeeds to follow specific forums and subforums. That&#8217;s nice, but sometimes it&#8217;s not enough.
If you follow Planet KDE you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=785&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Good news ahead for all the people who don&#8217;t like forums in general, but still want to know what&#8217;s going on.</p>
<p>The<a href="http://forum.kde.org/smartfeed_url.php"><img class="alignnone size-full wp-image-786" title="Feeds" src="http://hanswchen.files.wordpress.com/2009/10/feeds.png?w=16&#038;h=16" alt="Feeds" width="16" height="16" /> <strong>Feed</strong></a> option has been available for a while and makes it possible to create personalized newsfeeds to follow specific forums and subforums. That&#8217;s nice, but sometimes it&#8217;s not enough.</p>
<p>If you follow <a title="Planet KDE" href="http://planetkde.org/">Planet KDE</a> you might have heard about the <a title="KDE Community Forums: So ‘fast’ so good!" href="http://blog.sayakbanerjee.com/?p=310">recent improvements</a> on <a title="KDE Community Forums" href="http://forum.kde.org/">forum.kde.org</a>, including <a title="Extended search in the forums" href="http://neverendingo.blogspot.com/2009/10/extended-search-in-forums.html">the better search system</a>. It&#8217;s faster, it allows you to search for common words (such as &#8216;kde&#8217;) and it offers more options to give more accurate results. However, that&#8217;s not all. Now it&#8217;s also possible to display the results as a newsfeed, which means that you can make highly customized feeds with posts that you&#8217;re interested in.</p>
<p>Below I&#8217;ll show you have to make such a feed with an example. If you want to play around with it yourself,  head to<a href="http://forum.kde.org/search.php"><img class="alignnone size-full wp-image-793" title="Search" src="http://hanswchen.files.wordpress.com/2009/10/search.png?w=16&#038;h=16" alt="Search" width="16" height="16" /><strong> Search</strong></a>.</p>
<p><strong>Update October 10, 2009:</strong> Feed has been removed. You can use Search to archive the same thing.<a href="http://forum.kde.org/smartfeed_url.php"><strong></strong></a></p>
<p><span id="more-785"></span></p>
<h2>Creating a customized feed</h2>
<p>In this example we want a newsfeed for new ideas in <a title="KDE Brainstorm" href="http://brainstorm.forum.kde.org">Brainstorm</a> that are tagged &#8216;plasma&#8217;. An idea is simply a topic in the Brainstorm forum, and using the tag system we can find Plasma-related ideas that don&#8217;t necessary have the word &#8216;plasma&#8217; in their title or description.</p>
<ol>
<li>Go to the<a href="http://forum.kde.org/search.php"><img class="alignnone size-full wp-image-793" title="Search" src="http://hanswchen.files.wordpress.com/2009/10/search.png?w=16&#038;h=16" alt="Search" width="16" height="16" /><strong> Search</strong></a> page.</li>
<li><strong>Search Query</strong><br />
Enter <code>plasma</code> in the tags textbox. You can enter multiple tags if you want, just remember to separate them with commas (<code>tag1,tag2,tag3</code>).</li>
<li><strong>Search Options</strong><br />
Select <code>KDE Brainstorm</code> in the list. You can select multiple forums by dragging, or clicking on the items while holding down <code>Ctrl</code>. We don&#8217;t want to search in subforums, so choose <code>No</code> for <code>Search subforums</code>.<br />
To only search for ideas (and not their comments), we choose <code>First post of topics only</code> in <code>Search within</code>. This may seem strange, but don&#8217;t worry &#8211; this will hopefully be fixed in a not too distant future.</li>
<li><strong>Display Options</strong><br />
In this example we don&#8217;t need to change any settings in this section. For now only <code>Sort results by</code> and <code>Limit results to previous</code> work for feeds.</li>
<li><strong>RSS Options</strong><br />
Finally! Choose the feed format you prefer (for example <code>RSS 2.0</code>) and a Style (<code>HTML</code> is fine if you&#8217;re unsure). You&#8217;re finished with the search options &#8211; hit the <code>Search</code> button.</li>
<li><strong>Add feed to your feed reader</strong><br />
Now you just have to copy the URL and use it to create a new feed in your feed reader (for example <a href="http://akregator.kde.org/">Akregator</a>).</li>
</ol>
<div id="attachment_802" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/10/forumfeed3.png"><img class="size-medium wp-image-802      " title="Adding a feed to your feed reader" src="http://hanswchen.files.wordpress.com/2009/10/forumfeed3.png?w=300&#038;h=209" alt="Adding a feed to your feed reader" width="300" height="209" /></a><p class="wp-caption-text">Adding a feed to your feed reader</p></div>
<p>Your feed reader will handle the rest, and you can stay up-to-date without visiting the forums.</p>
<p>By now, you should have a fairly clear idea of how to make your own custom newsfeed using the new search features. There are more plans to bring the KDE Community Forums closer to the desktop &#8211; hope you like it!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/785/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/785/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/785/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/785/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/785/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/785/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/785/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/785/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/785/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/785/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=785&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/10/06/kde-community-forums-and-feeds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/feeds.png" medium="image">
			<media:title type="html">Feeds</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/search.png" medium="image">
			<media:title type="html">Search</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/search.png" medium="image">
			<media:title type="html">Search</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/10/forumfeed3.png?w=300" medium="image">
			<media:title type="html">Adding a feed to your feed reader</media:title>
		</media:content>
	</item>
		<item>
		<title>Spin that spinbox</title>
		<link>http://hanswchen.wordpress.com/2009/09/29/spin-that-spinbox/</link>
		<comments>http://hanswchen.wordpress.com/2009/09/29/spin-that-spinbox/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 13:53:30 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=752</guid>
		<description><![CDATA[
Do you remember this guy? In my previous blog post I asked the KDE community what you thought it was, and after many good guesses Kmetamorphosis finally nailed the answer: it&#8217;s for voting on questions in KDialogue.
Another person commented that &#8220;if it looks like a spinbox, it acts like a spinbox then probably it’s a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=752&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p style="text-align:center;"><img class="size-full wp-image-745 aligncenter" title="What is this?" src="http://hanswchen.files.wordpress.com/2009/09/newbrainstorm.png?w=84&#038;h=29" alt="What is this?" width="84" height="29" /></p>
<p>Do you remember this guy? In my<a href="http://hanswchen.wordpress.com/2009/09/23/what-is-this/"> previous blog post</a> I asked the KDE community what you thought it was, and after many good guesses <a href="http://hanswchen.wordpress.com/2009/09/23/what-is-this/#comment-331">Kmetamorphosis</a> finally nailed the answer: it&#8217;s for voting on questions in <a href="http://www.dennogumi.org/2009/09/introducing-kdialogue">KDialogue</a>.</p>
<p>Another person commented that &#8220;if it looks like a spinbox, it acts like a spinbox then probably it’s a spinbox. Only it doesn’t apear to be spinning&#8221;. Right, I guess we can call it a spinbox. If you&#8217;re the type who likes to spin spinboxes, I have good news for you &#8211; the <a href="http://dot.kde.org/2009/09/28/first-kdialogue-now-open"> first KDialogue opened recently</a>, which means that you can spin to your heart&#8217;s content¹ over in the<a href="http://forum.kde.org/viewforum.php?f=135"> KDialogue forum</a>!</p>
<p>Don&#8217;t forget to take the opportunity to ask <a href="http://forum.kde.org/viewtopic.php?f=135&amp;t=82458">Jonathan Riddell</a> one question or four &#8211; the more spinboxes, the better right? As someone said, there are no stupid questions (as long as they follow <a href="http://forum.kde.org/viewtopic.php?f=135&amp;t=82428">the rules</a>) &#8211; only good ones and less good ones. And that decision is in your hands. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-align:center;"><a title="KDialogue #1 - Jonathan Riddell" href="http://forum.kde.org/viewtopic.php?f=135&amp;t=82458"><img class="aligncenter size-full wp-image-755" title="KDialogue" src="http://hanswchen.files.wordpress.com/2009/09/kdialogue_logo.png?w=332&#038;h=85" alt="KDialogue" width="332" height="85" />Take me to the first KDialogue now »</a></p>
<p>&nbsp;</p>
<hr />
<p style="text-align:left;">
¹ You can only vote on each question once, though.</p>
<p>&nbsp;</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/752/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/752/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/752/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/752/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/752/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/752/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/752/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/752/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/752/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/752/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=752&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/09/29/spin-that-spinbox/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/09/newbrainstorm.png" medium="image">
			<media:title type="html">What is this?</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/09/kdialogue_logo.png" medium="image">
			<media:title type="html">KDialogue</media:title>
		</media:content>
	</item>
		<item>
		<title>What is this?</title>
		<link>http://hanswchen.wordpress.com/2009/09/23/what-is-this/</link>
		<comments>http://hanswchen.wordpress.com/2009/09/23/what-is-this/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 14:29:48 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=744</guid>
		<description><![CDATA[Let&#8217;s see if you&#8217;ve done your homework lately &#8211; can you guess what this is?

Hint: it has something to do with the KDE Community Forums.
(If you&#8217;re a regular visitor to the forum channel, #kde-forum on freenode, you&#8217;re not allowed to answer.  )
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=744&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Let&#8217;s see if you&#8217;ve done your homework lately &#8211; can you guess what this is?</p>
<p><img class="aligncenter size-full wp-image-745" title="What is this?" src="http://hanswchen.files.wordpress.com/2009/09/newbrainstorm.png?w=84&#038;h=29" alt="What is this?" width="84" height="29" /></p>
<p>Hint: it has something to do with the <a title="KDE Community Forums" href="http://forum.kde.org/">KDE Community Forums</a>.</p>
<p>(If you&#8217;re a regular visitor to the forum channel, <code>#kde-forum</code> on freenode, you&#8217;re not allowed to answer. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> )</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/744/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=744&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/09/23/what-is-this/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/09/newbrainstorm.png" medium="image">
			<media:title type="html">What is this?</media:title>
		</media:content>
	</item>
		<item>
		<title>The Road to KDE Devland &#8211; step 4</title>
		<link>http://hanswchen.wordpress.com/2009/09/14/the-road-to-kde-devland-step-4/</link>
		<comments>http://hanswchen.wordpress.com/2009/09/14/the-road-to-kde-devland-step-4/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 19:55:53 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>
		<category><![CDATA[The Road to KDE Devland]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=675</guid>
		<description><![CDATA[

The end of summer
Whew, long time no see! After the summer vacation I&#8217;ve had my hands full, so I never found the motivation to sit down and write this. Sorry about the delay.
This step marks the end of summer and will show you what I&#8217;ve achieved in these two months. But first something about Qt.

The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=675&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://hanswchen.wordpress.com/category/the-road-to-kde-devland/"><img class="size-full wp-image-364 alignleft" title="The Road to KDE Devland" src="http://hanswchen.files.wordpress.com/2009/07/logo.png?w=138" alt="logo" width="138" /></a></p>
<p style="text-align:center;">
<h1>The end of summer</h1>
<p>Whew, long time no see! After the summer vacation I&#8217;ve had my hands full, so I never found the motivation to sit down and write this. Sorry about the delay.</p>
<p>This step marks the end of summer and will show you what I&#8217;ve achieved in these two months. But first something about Qt.</p>
<p><span id="more-675"></span></p>
<h2>The start of Qt programming</h2>
<p>To start off, I need to say this:</p>
<p style="text-align:center;">Qt is easy.</p>
<p>When I was a child, I made some GUI applications in Visual Basic. It was very easy to get started with &#8211; you place some widgets on a form, double click on one (e.g. a pushbutton) and write some code to be run (e.g. when the pushbutton is pressed). Simple.</p>
<p>Even with my limited knowledge of Visual Basic, I could do pretty much. The code was usually awful &#8211; I preferred to store values in (invisible) textboxes instead of using variables, just to mention one thing &#8211; but they actually worked.</p>
<p>Now, I would argue that Qt is harder to get started with, probably because it uses C++ (yes I know that Qt has a lot of <a href="http://en.wikipedia.org/wiki/Qt_(toolkit)#Bindings">bindings for other languages</a>). It&#8217;s easy to lay out widgets in <a href="http://doc.trolltech.com/designer-manual.html">Qt Designer</a>, but it&#8217;s far from obvious what to do afterwards. The workflow is probably clearer if you use <a href="http://qt.nokia.com/products/developer-tools">Qt Creator</a>, but I haven&#8217;t tried it yet.</p>
<p>To my aid I had my books, and I soon found that I was able to do a lot in Qt that I didn&#8217;t know how to implement in Visual Basic. The <a href="http://qt.nokia.com/doc/layout.html">Qt layout system</a> makes it easy to lay out widgets and takes care of the position and size of widgets when you resize the window. To make an application with menubar and toolbars, you derive from <code>QMainWindow</code> and add a few objects and functions.</p>
<p><em>Derive</em>. That&#8217;s something you&#8217;ll do a lot in Qt. An excellent example of object-oriented programming.</p>
<p>If you want an object A that have the same properties (talking about general properties, not Qt specific) as object B, but further specialized, you can derive A from B. For example, I want a cat that can play <a href="http://en.wikipedia.org/wiki/Go_(game)">Go</a>. Most cats can&#8217;t do that, right? A normal <code>Cat</code> is not enough. But I don&#8217;t need to create a new <code>Cat</code> from scratch, I can make the new class inherit from <code>Cat</code> (i.e., it is derived from <code>Cat</code>):</p>
<blockquote>
<pre>class  GoCat : public Cat
{
    Q_OBJECT

public:
    GoCat(QWidget *parent = 0);

private slots:
    void playGo();
};</pre>
</blockquote>
<p>This is just standard C++. <code>Q_OBJECT</code> is included because we want to make use of Qt&#8217;s meta-object system, including signals and slots (<a href="http://doc.trolltech.com/qobject.html#Q_OBJECT">read more here</a>).</p>
<p>In a similar fashion, we can build GUI applications by using the classes Qt provides. A Main Window with menubar, toolbar and system tray? No problem, <code>QMainWindow</code> takes care of it. If we want to make a custom widget that consist of two Qt widgets, for example a <code>QSlider</code> that&#8217;s connected to <code>QLCDNumber</code> like in <a href="http://doc.trolltech.com/4.4/tutorials-tutorial-t5.html">this tutorial</a>, we simply derive from <code>QWidget</code>.</p>
<p><code>MyWidget(QWidget *parent = 0);</code> is a typical constructor declaration for derived classes. We then pass the parent pointer to the base class (the one we derive from) in the constructor:</p>
<blockquote>
<pre>MyWidget::MyWidget(QWidget *parent)
     : QWidget(parent)
[...]</pre>
</blockquote>
<p>In this example  (taken from <a href="http://doc.trolltech.com/4.4/tutorials-tutorial-t5.html">tutorial</a>) <code>MyWidget</code> is derived from <code>QWidget</code>, as you can see.</p>
<p>(Qt&#8217;s parent-child mechanism is out of scope for this article. I touched upon the subject in <a href="http://hanswchen.wordpress.com/2009/07/25/the-road-to-kde-devland-%e2%80%93-step-2/">step 2</a>, when I wrote about pointers in Qt).</p>
<h2>Result</h2>
<p>As promised I&#8217;ll show you the two Main Windows (derived from <code>QMainWindow</code>, of course) that I&#8217;ve done by following my two Qt books.</p>
<p>In <a href="http://www.amazon.com/Book-Qt-Art-Building-Applications/dp/1593271476/ref=sr_1_3?ie=UTF8&amp;s=books&amp;qid=1248024255&amp;sr=1-3" target="_blank">The Book of Qt 4: The Art of Building Qt Applications</a> you create a simple text editor in chapter 4. The GUI is done in Qt Designer and the final application looks like this:</p>
<div id="attachment_700" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/09/cuteedit.png"><img class="size-medium wp-image-700" title="Cute Editor" src="http://hanswchen.files.wordpress.com/2009/09/cuteedit.png?w=300&#038;h=263" alt="Cute Editor" width="300" height="263" /></a><p class="wp-caption-text">CuteEditor</p></div>
<p style="text-align:left;">I liked this application. It&#8217;s simple &#8211; most of the functionality is already in <code>QTextEdit</code>. You need to setup the actions in the toolbar and menubar and implement a few functions functions, such as loading and saving files. Oh, and don&#8217;t forget the status bar. That&#8217;s pretty much it.</p>
<p style="text-align:left;">This chapter gave me a good understanding of how to create similar small applications. However, I found the part about the dock window (&#8220;Templates&#8221; in screenshot) somewhat vague and incomplete. The code wouldn&#8217;t compile for me at first &#8211; I need to look into it and see if it&#8217;s a mistake from my part.</p>
<p style="text-align:left;">The application in <a href="http://www.amazon.com/Programming-Prentice-Source-Software-Development/dp/0132354160/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1248024255&amp;sr=1-1" target="_blank">C++ GUI Programming with Qt 4</a> is more complex. You build a spreadsheet, completely from a text editor (chapter 3 and 4). Well, for most parts at least.</p>
<p style="text-align:left;">
<div id="attachment_702" class="wp-caption aligncenter" style="width: 310px"><a href="http://hanswchen.files.wordpress.com/2009/09/spreadsheet.png"><img class="size-medium wp-image-702" title="Spreadsheet" src="http://hanswchen.files.wordpress.com/2009/09/spreadsheet.png?w=300&#038;h=249" alt="Spreadsheet" width="300" height="249" /></a><p class="wp-caption-text">Spreadsheet</p></div>
<p style="text-align:left;">The reason I said &#8220;for most parts&#8221; is because you create some of the dialogs in Qt Designer in an earlier chapter. It&#8217;s very nice that you get to reuse them to create your Spreadsheet application and learn how dialogs work. Completing the application was also a big motivation booster &#8211; &#8220;woah, I could actually make this application&#8221;.</p>
<p style="text-align:left;">That&#8217;s unfortunately also the bad thing about this example &#8211; to me, it was a bit too complex and it was easy to get lost in details. Yet it&#8217;s listed under &#8220;Basic Qt&#8221;, which I find somewhat amusing.</p>
<p style="text-align:left;">Another thing I didn&#8217;t like was that I couldn&#8217;t compile it until I was finished. I prefer to take it in smaller steps, to be able to see what I&#8217;ve accomplished after a while. In hindsight, I should have copied example files from chapter 4 (included on CD) to test the application.</p>
<p style="text-align:left;">Overall I get the feeling that <em>C++ GUI Programming with Qt 4</em> assumes the reader has more prior knowledge in C++ than <em>The Book of Qt 4: The Art of Building Qt Applications</em>. In my opinion Daniel Molkentin, the author of the latter book, gives a more expanded explanation on some topics, such as memory management (stack vs heap) and how to use Ui files created in Qt Designer. On the other hand, I also appreciate the insight Jasmin Blanchette and Mark Summerfield (authors of C++ GUI Programming with Qt 4) provides and their elegant code.</p>
<p style="text-align:left;">To summarize, I don&#8217;t regret getting both books &#8211; so far, I think they work pretty well as complements.</p>
<p style="text-align:left;"><a href="http://www.thelins.se/johan/blog.html">Johan Thelin</a> has been kind enough to send me a review copy of his book, <a href="http://www.amazon.com/Foundations-Development-Experts-Voice-Source/dp/1590598318/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1252943129&amp;sr=1-1">Foundations of Qt Development</a> -<strong> thanks Johan!</strong> It&#8217;s still at my parents&#8217; place but I&#8217;ll pick it up the next time I visit them. I&#8217;m looking forward to seeing what this book has to offer.</p>
<h2 style="text-align:left;">Final words</h2>
<p style="text-align:left;">Everything above (mainly referring to &#8220;The start of Qt programming&#8221;) is my interpretation. If you find any errors in the text, please don&#8217;t hesitate to correct me.</p>
<p style="text-align:left;">Next time I&#8217;ll show you the applications I recently started working on. Simple small applications, very similar to the ones I showed above (but rewritten from scratch). I do, however, have plans to eventually turn one into a plasmoid later.</p>
<p style="text-align:left;">My lectures have started again, so I&#8217;ll have even less time to learn about KDE Development. That also means less frequent steps, which in unfortunate. I&#8217;ll try to keep you updated as often as my time (and motivation) allows.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/675/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=675&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/09/14/the-road-to-kde-devland-step-4/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/07/logo.png" medium="image">
			<media:title type="html">The Road to KDE Devland</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/09/cuteedit.png?w=300" medium="image">
			<media:title type="html">Cute Editor</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/09/spreadsheet.png?w=300" medium="image">
			<media:title type="html">Spreadsheet</media:title>
		</media:content>
	</item>
		<item>
		<title>Record screencasts to animated GIF files</title>
		<link>http://hanswchen.wordpress.com/2009/09/02/record-screencasts-to-animated-gif-files/</link>
		<comments>http://hanswchen.wordpress.com/2009/09/02/record-screencasts-to-animated-gif-files/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 13:02:22 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=580</guid>
		<description><![CDATA[Since a few people have asked me how I recorded the Plasma HowTo screencasts, I decided to post a short HowTo here. And is there any better way to show this than with an animated GIF? I can almost hear you saying &#8220;of course not!&#8221;, so here we are:
I use byzanz to record my desktop. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=580&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Since a few people have asked me how I recorded the <a href="http://userbase.kde.org/Plasma/FAQ/HowTo">Plasma HowTo</a> screencasts, I decided to post a short HowTo here. And is there any better way to show this than with an animated GIF? I can almost hear you saying &#8220;of course not!&#8221;, so here we are:</p>
<div id="attachment_581" class="wp-caption aligncenter" style="width: 210px"><a href="http://hanswchen.files.wordpress.com/2009/08/screencast_howto.gif"><img class="size-full wp-image-581 " title="HOWTO Record a screencast" src="http://hanswchen.files.wordpress.com/2009/08/plasma_howto-thumbnail.png?w=200&#038;h=150" alt="" width="200" height="150" /></a><p class="wp-caption-text">A typical record session</p></div>
<p>I use <a href="http://www.advogato.org/person/company/diary.html?start=18">byzanz</a> to record my desktop. It works as a GNOME panel applet but can also be used from the command line. <strong>Note that it depends on quite a lot of GNOME libraries and requires Composite to work </strong>(according to the website).</p>
<p>[Update October 19, 2009: I tried to remove most of the GNOME libs and byzanz still seems to run fine.]</p>
<p>Now back to the screencast above. I usually do the following steps:</p>
<p><span id="more-580"></span></p>
<ol>
<li>Open a terminal to run the command. My terminal emulator of choice is <a href="http://yakuake.uv.ro/">yakuake, </a>because it&#8217;s very easy to hide and unhide.</li>
<li>I use the following command:<br />
<blockquote><p><code>byzanz-record --loop</code><code> --cursor</code><code> --delay=<em>delay</em> --duration=<em>duration</em> <em>filename<br />
</em></code></p></blockquote>
<p>where <code>delay </code>is the time before it starts recording, <code>duration </code>the duration of the animation and <code>filename</code> the name of the output file. <code>--loop </code>specifies that the animation will loop and <code>--cursor </code>makes sure that it also captures the mouse cursor. As an example, the command in the screencast is</p>
<blockquote><p><code>byzanz-record --loop --delay=3 --duration=8 -c plasma_howto-throw-ball<br />
</code></p></blockquote>
<p>(Don&#8217;t ask me why I use <code>-c </code>instead of <code>--cursor</code>; I don&#8217;t know myself). Enter<code> byzanz-record --help </code> to see all options.</li>
<li>I have a timer beside me which I start when I execute the command. After 4 seconds (3 seconds of delay + 1 second when the mouse cursor is idle) I start to do whatever I want recorded.</li>
<li>When the recording is done, I preview the file in Firefox to see if it looks good. I&#8217;m pretty strict &#8211; a small mistake and I redo the recording. For example, the ball screencast I did in the screencast is on the borderline &#8211; I accidentally move the mouse cursor one or two pixels after I&#8217;m done.</li>
</ol>
<h2>Tips</h2>
<p>Finally here are some tips and tricks:</p>
<ul>
<li>I created a new user to do the recording. This has several benefits, one being that you can nuke the Plasma config files without hesitation to restore the settings to default. The command to do this is<br />
<blockquote><p><code>kquitapp plasma-desktop; rm $KDEHOME/share/config/plasma-desktop-appletsrc; plasma-desktop<br />
</code></p></blockquote>
<p>If the <code>$KDEHOME</code> environment variable isn&#8217;t set, try to replace it with <code>~/.kde4</code> or <code>~/.kde</code>.</li>
<li>Disable Nepomuk/Strigi and other stuff that might pop up.</li>
<li>For me it didn&#8217;t work very well to record the screencast with Desktop Effects enabled. You can disable it temporary in System Settings -&gt; Desktop Effects -&gt; Suspend Compositing.</li>
<li>Configure the task manager to only show tasks from the current desktop. As you can see in my screencast, I keep  a Dolphin and a Firefox window opened on my other virtual desktop to quickly preview the results.</li>
<li>Gwenview also works for viewing the GIF files. However, note that it&#8217;ll loop the animation even if they&#8217;re recorded without the<code> --loop</code> option. I warn you because I learned this the hard way.</li>
<li>Most people probably know this, but to run the same command again you just have to press the <code>up arrow </code>(on your keyboard)  to go back in history in the terminal &#8211; no need to copy and paste the command over and over again. Just make sure that you don&#8217;t overwrite a screencast you&#8217;re satisfied with! (Yep, it happened to me).</li>
<li>As you might have noted, my <code>filename</code> (plasma_howto-throw-ball) doesn&#8217;t have the <code>.gif </code>extension. There&#8217;s actually a reason for this &#8211; to avoid overwriting good screencasts, I add the extension when I&#8217;m happy with the screencast. Then it doesn&#8217;t matter if I accidentally run the same command again without changing the output file name.</li>
<li>How to find out the <code>duration</code> beforehand? Unfortunately I don&#8217;t have any good tips regarding this &#8211; I did it the troublesome way and timed it before recording. After doing a few screencasts I had a pretty good feeling of how long it would take.<br />
If the duration is too long you should be able to remove the last frames, although you have to figure it out yourself &#8211; I would just redo the screencast.</li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/580/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/580/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/580/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=580&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/09/02/record-screencasts-to-animated-gif-files/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://hanswchen.files.wordpress.com/2009/08/plasma_howto-thumbnail.png" medium="image">
			<media:title type="html">HOWTO Record a screencast</media:title>
		</media:content>
	</item>
		<item>
		<title>Plasma/FAQ/HowTo &#8211; No longer experimental</title>
		<link>http://hanswchen.wordpress.com/2009/08/31/plasmafaqhowto-no-longer-experimental/</link>
		<comments>http://hanswchen.wordpress.com/2009/08/31/plasmafaqhowto-no-longer-experimental/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 19:07:48 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=590</guid>
		<description><![CDATA[You might have seen my previous posts about Plasma HowTos in form of short screencasts. I&#8217;m happy to announce that all screencasts are recorded now and uploaded to UserBase. The full article can be found under Plasma/FAQ/HowTo.
If you don&#8217;t know what this is all about, here&#8217;s a small taste:

Obviously you can watch the HowTos to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=590&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>You might have seen my previous posts about Plasma HowTos in form of short screencasts. I&#8217;m happy to announce that all screencasts are recorded now and uploaded to <a href="http://userbase.kde.org/">UserBase</a>. The full article can be found under <a href="http://userbase.kde.org/Plasma/FAQ/HowTo" target="_blank">Plasma/FAQ/HowTo</a>.</p>
<p>If you don&#8217;t know what this is all about, here&#8217;s a small taste:</p>
<p style="text-align:center;">
<div id="attachment_581" class="wp-caption aligncenter" style="width: 210px"><a href="http://userbase.kde.org/images.userbase/6/65/Plasma_howto-widget-unlock.gif"><img class="size-full wp-image-581  " title="Plasma HowTo" src="http://userbase.kde.org/images.userbase/e/e8/Plasma_howto-thumbnail.png" alt="" width="200" height="150" /></a><p class="wp-caption-text">How to unlock your widgets</p></div>
<p style="text-align:left;">Obviously you can watch the HowTos to learn more about Plasma, but that&#8217;s not all: they can also be used to easily answer beginners&#8217; questions in an easy-to-understand and nice-looking way. In forums, for example, you can use the same thumbnail as the one above to link to a HowTo.</p>
<p style="text-align:left;">Now, let&#8217;s spread the screencasts and  make Plasma more comprehensible to new users!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/590/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/590/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/590/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=590&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/08/31/plasmafaqhowto-no-longer-experimental/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>

		<media:content url="http://userbase.kde.org/images.userbase/e/e8/Plasma_howto-thumbnail.png" medium="image">
			<media:title type="html">Plasma HowTo</media:title>
		</media:content>
	</item>
		<item>
		<title>The experiment continues: Plasma/HOWTO</title>
		<link>http://hanswchen.wordpress.com/2009/08/28/the-experiment-continues-plasmahowto/</link>
		<comments>http://hanswchen.wordpress.com/2009/08/28/the-experiment-continues-plasmahowto/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 21:10:21 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[PlanetKDE]]></category>

		<guid isPermaLink="false">http://hanswchen.wordpress.com/?p=567</guid>
		<description><![CDATA[Due to the positive feedback I received in my last post, I decided to take the experiment one step further. A page that listed all Plasma HOWTO screencasts &#8211; doesn&#8217;t that sound good?
My initial idea was to do it on my blog and eventually move it to UserBase if it was well received by the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=567&subd=hanswchen&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Due to the positive feedback I received in my <a href="http://hanswchen.wordpress.com/2009/08/22/experiment-short-plasma-howto-screencasts-2/" target="_blank">last post</a>, I decided to take the experiment one step further. A page that listed all Plasma HOWTO screencasts &#8211; doesn&#8217;t that sound good?</p>
<p>My initial idea was to do it on my blog and eventually move it to <a href="http://userbase.kde.org/" target="_blank">UserBase</a> if it was well received by the community. However, some people on IRC already voiced interest for such an article on the wiki, so here it is:</p>
<p style="text-align:center;"><a href="http://userbase.kde.org/Plasma/FAQ/HowTo" target="_blank">Plasma/HOWTO</a></p>
<p style="text-align:left;"><span style="text-decoration:line-through;">Currently it&#8217;s on my own page</span>, but the plan is to move it to Plasma/HOWTO when more screencasts have been done. <span style="text-decoration:line-through;">As you can see, I&#8217;ve only done the first section (Widgets)</span>.</p>
<p style="text-align:left;">Dear KDE community, <strong>now I need your help</strong>. Are the sections strange? Do you miss a HOWTO? Should something be rearranged? Please help to improve the article! It&#8217;s a wiki, so feel free to edit it. However, if it&#8217;s something major, I would appreciate if you wrote a note under Discussion first.</p>
<p style="text-align:left;">Thanks everyone who commented my last post, you motivated me to continue this experiment.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hanswchen.wordpress.com/567/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hanswchen.wordpress.com/567/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hanswchen.wordpress.com/567/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hanswchen.wordpress.com/567/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hanswchen.wordpress.com/567/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hanswchen.wordpress.com/567/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hanswchen.wordpress.com/567/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hanswchen.wordpress.com/567/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hanswchen.wordpress.com/567/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hanswchen.wordpress.com/567/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hanswchen.wordpress.com&blog=1435266&post=567&subd=hanswchen&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://hanswchen.wordpress.com/2009/08/28/the-experiment-continues-plasmahowto/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/96ef52ca5132655fa9a3fe17de01f749?s=96&#38;d=identicon" medium="image">
			<media:title type="html">Mogger</media:title>
		</media:content>
	</item>
	</channel>
</rss>