<?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>Edulix</title>
	<atom:link href="http://edulix.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://edulix.wordpress.com</link>
	<description>Konquerization</description>
	<lastBuildDate>Tue, 10 Jan 2012 02:37:27 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='edulix.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Edulix</title>
		<link>http://edulix.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://edulix.wordpress.com/osd.xml" title="Edulix" />
	<atom:link rel='hub' href='http://edulix.wordpress.com/?pushpress=hub'/>
		<item>
		<title>The Server in the middle problem and solution</title>
		<link>http://edulix.wordpress.com/2012/01/08/the-server-in-the-middle-problem-and-solution/</link>
		<comments>http://edulix.wordpress.com/2012/01/08/the-server-in-the-middle-problem-and-solution/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 15:25:51 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[wadobo]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=127</guid>
		<description><![CDATA[At the beginning of 2009 I posted a story in this very same blog where I proposed the creation of a web encryption framework to add support for end to end encryption in the web browser. As it turns out, in 2010 I did my Computer Science final project about this subject, successfully implementing an [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=127&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>At the beginning of 2009 I posted a story in this very same blog where I <a href="http://edulix.wordpress.com/2009/01/22/web-encryption-framework/">proposed the creation of a web encryption framework</a> to add support for end to end encryption in the web browser.</p>
<p>As it turns out, in 2010 I did my Computer Science final project about this subject, successfully implementing an HTML extension in KHTML that fixed what during one talk I was giving on the subject I coined to be the <a href="http://www.youtube.com/watch?v=0CtGwbyKnrU">Server in the middle</a> problem (<a href="https://forja.rediris.es/docman/view.php/799/1145/proyect.pdf">project memory in spanish</a>, <a href="https://github.com/edulix/pfc">code in github</a>).</p>
<p>The solution I developed is just a proof of concept and not a final proposition. It basically extends the <em>div element</em> and <em>input type=text element </em>by adding two attributes, encryption=&#8221;gpg&#8221; and encryption-key=&#8221;&lt;keyid&gt;&#8221;, so that a div containing a gpg ascii encoded encrypted text is automatically decrypted shown the plaintext, and when a form with an encrypted input type=&#8221;text&#8221; element is sent, the data is automatically encrypted.</p>
<p>The key point about this proposition is twofold:</p>
<ol>
<li><strong>The security it provides is website-independent</strong>, you only need to trust the web browser.. It&#8217;s not possible using javascript, the DOM, CSS or any other tactics to access to the contents of the plaintext.</li>
<li>It&#8217;s easy to implement as an <strong>HTML extension that  could be standardized.</strong></li>
</ol>
<p>This is what makes the proposal differ from other approaches like the deceased FirePGP Mozilla Firefox extension, the javascript API that some web browsers like Mozilla Firefox provide for cryptographic primitives, or javascript libraries like Slow AES that currently provide cryptographic support for some websites that uses them.</p>
<p>I have spent this weekend updating the code to work in recent KDE versions and creating an ready-to-go usb live opensuse-based [1] appliance called &#8220;Server in the middle&#8221; that shows Sweeetter, a microblogging application that allows users to exchange messages using the aforementioned HTML extension. <a href="http://susestudio.com/a/qGpBsa/server-in-the-middle">Check it out!</a> it&#8217;s for you to test it =)</p>
<p>SSL was the first step for securing the web. End to end encryption is the next, and it will allow cloud applications like web chats, web mails, and even office apps in the cloud with privacy being orthogonal to the servers used. When you chat using gmail with your peers using HTTPS, there&#8217;s someone else listening: it&#8217;s Google. It&#8217;s <strong>the server that is in the middle by design</strong>. When a Los Angeles employee sends an email to another peer <a href="http://latimesblogs.latimes.com/technology/2009/10/city-council-votes-to-adopt-google-email-system-for-30000-city-employees.html">using Gmail</a>, it ain&#8217;t Google&#8217;s business.  Perhaps if an end-to-end encryption scheme as proposed was available as a standard, Google would offer it in Gmail for businesses and for geeks like us <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> , and certainly other service providers would.</p>
<p>I will say it again: what I proposed is just a proof of concept. We could perhaps encrypt whole forms in a similar manner, or  use a secure sandbox inside which plaintext data can be freely manipulated, but whose details are well known to the browser, are being recorded and the user can see in a details dialog, similar to the details of HTTPS connections in current web browsers, and the data going out from the sandbox is encrypted in a controlled and secure way.</p>
<p>The issue of privacy in the web will arise sooner or later. All the applications are jumping to the web wagon and some applications just need to be secure. It&#8217;s not only cryptonerds that need to take this seriously. Big companies that need their data to be secure will either continue using old-fashioned software, or request something better than we have now. <a href="http://lists.kde.org/?l=kfm-devel&amp;m=125996958908208&amp;w=2">This has already happened</a> sooner than you might think (1999). Thus, we need to take this seriously, and begin standardizing and developing similar solutions to the one proposed for the shiny future that is about to come.</p>
<p>&#8211;</p>
<p>[1] BTW, SUSE Studio rocks!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/127/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/127/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/127/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=127&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2012/01/08/the-server-in-the-middle-problem-and-solution/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>QMLPart: enabling a declarative web</title>
		<link>http://edulix.wordpress.com/2011/12/08/qmlpart-enabling-a-declarative-web/</link>
		<comments>http://edulix.wordpress.com/2011/12/08/qmlpart-enabling-a-declarative-web/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 20:42:49 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[wadobo]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=138</guid>
		<description><![CDATA[As some of you already know, I started last year with some university friend Wadobo, a spanish-based free software startup. Lately we&#8217;ve been working with QML and now that I know it, it&#8217;s really nice. Some weeks ago I was with danigm (also from Wadobo) and we were talking about how nice it is to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=138&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As some of you already know, I started last year with some university friend <a href="http://www.wadobo.com" title="Wadobo">Wadobo</a>, a spanish-based free software startup. Lately we&#8217;ve been working with QML and now that I know it, it&#8217;s really nice. Some weeks ago I was with <a href="http://danigm.net/">danigm</a> (also from Wadobo) and we were talking about how nice it is to do mobile applications in QML, and how web applications are taking over desktop applications more and more. Do you know <a href="">GTK already has an HTML/JS frontend? Demo here</a>. BTW, Gnome guys have been working on something similar to QML too, <a href="http://developer.gnome.org/clutter/stable/ClutterScript.html">ClutterScript</a>.</p>
<p>And then the idea came out of the blue. QML could be (in my dreams <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  the successor of HTML. I know, sounds crazy doesn&#8217;t it? That&#8217;s because it is crazy. So anyway, I wanted to test the concept, and today I coded this <a href="https://gitorious.org/qmlpart">litle KPart called QmlPart</a> that simply loads a .qml file into the KPart. The code is really minimal and it works beautifully, both in Konqueror and in rekonq, and loads fine both local and remote QML files <strong>and remote</strong> files, even if the QML application is divided in multiple files. </p>
<p>I am really surprised how easy it was to do this KPart. I uploaded to wadobo&#8217;s web server the Qt Declarative examples and most of them work out of the box with QmlPart. Here is a screencast:</p>
<span style="text-align:center; display: block;"><a href="http://edulix.wordpress.com/2011/12/08/qmlpart-enabling-a-declarative-web/"><img src="http://img.youtube.com/vi/pjwlzCYJekU/2.jpg" alt="" /></a></span>
<p>Why would we want to make the web declarative? Because QML is <strong>much</strong> more powerful than HTML/CSS. Those of you that know QML will probably agree. HTML doesn&#8217;t even have a proper way to create column or row layouts. All kind of animations, transitions, states are easy-peasy in QML. And its object orientation is quite powerful, as they have properties, inheritance, etc. The web of 2011 can be much easily done in QML than in current web technologies.</p>
<p>What would be the path of action? This is just a proof of concept, and it might end here. Or it might not. If we get serious, we would first try to agree in a standard for a declarative web (talk to Gnome/ClutterScript guys), work in including this standard in web browsers, create a library in Javascript that allows loading declarative files as HTML/JS as a fallback for browsers without native declarative web support, and that way we can attract people to the platform, and then we would have something. </p>
<p>Either way, I had my fun today with this little kpart and all those crazy ideas around it. Mission accomplished.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/138/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=138&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2011/12/08/qmlpart-enabling-a-declarative-web/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>Cloud development</title>
		<link>http://edulix.wordpress.com/2011/02/19/cloud-development/</link>
		<comments>http://edulix.wordpress.com/2011/02/19/cloud-development/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 00:00:47 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[wadobo]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=129</guid>
		<description><![CDATA[As always, it&#8217;s been a while since I wrote something here. Anyway, I&#8217;m going to present here a new concept:  cloud development. First of all I must say: the people of Cloud9 IDE (Mozilla bespin/skywriter has been merged into that) are already working on something similar to my idea, but not quite the same. The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=129&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As always, it&#8217;s been a while since I wrote something here. Anyway, I&#8217;m going to present here a new concept:  cloud development. First of all I must say: the people of Cloud9 IDE (Mozilla bespin/skywriter has been merged into that) are already working on something similar to my idea, but not quite the same.</p>
<p>The idea behind Cloud9 IDE is being able to develop javascript collaboratively  using only the web browser. It even supports debugging, but that&#8217;s because the browser actually can run javascript code itself. They plan to support syntax highlighting for more languages. They of course have a chat for those connected to the ide, and changes occur live to the code for everyone connected at the same time.</p>
<p>Gobby/Kobby are native (gnome, kde) collaborative editors which use the infinote protocol for collaborative editing. So you connect to a infinote server, and then you can see the files in that session, edit them, add/remove files, and chat with your colleagues.</p>
<p>None of those solutions provide real general purpose &#8220;cloud development&#8221; for me.  These are the features I¡m looking for:</p>
<ul>
<li>The server side is a bunch of machines in a cloud configuration which provide an API.</li>
<li>The server side provides compilation for languages like C/C++.</li>
<li>The server side provides inexpensive VMs that can be easily cloned/forked.</li>
<li>When you create a new project in the cloud, a new VM is given to you, and you can configure it as you like. There you install the deps for your project development, download the source code, etc.</li>
<li>The server side has an rich API and has knowledge of high level concepts like:
<ul>
<li><strong>VMs</strong> that can be forked, and cloned, for creating new live sessions.</li>
<li><strong>Compilation</strong>, which can be done quickly and distributedly in the cloud.</li>
<li><strong>Execution</strong>, to be able to see and control remotely the execution and debugging of gui  applications.</li>
</ul>
</li>
<li>The client side could as well be web app like with cloud9 ide, or it could be a native standalone application with &#8220;cloud development&#8221; support (Kdevelop, Eclipse, whatever..)</li>
</ul>
<p>A simple cloud computing use case:</p>
<p>An Amarok developer configures a cloud development vm for trunk. Then he forks it, and creates a git branch in which he starts working in a new feature for amarok. This feature might need new libraries, difficult to compile. He doesn&#8217;t know much about how to use this library and it&#8217;s giving him headaches: he asks in the irc channel of #lib, and gives a link to clouddevelopment://kde.org/amarok/livesessions/featurex and the developer of libx sees the problem in the system while the amarok developer sees live how it&#8217;s getting resolved.</p>
<p>Then he posts in his blog about his new feature, and some other amarok developers think it&#8217;s really cool and connect to the feature branch&#8217;s live session and improve a bit the code, effortesly.<br />
As you can see, this would mean,  among other things:</p>
<ul>
<li>No more &#8220;person1: it&#8217;s broken! person2: it works here&#8221;.</li>
<li>No more pastebin: just connect to the live session and see (and even fix) the problem yourself.</li>
<li>Configure the VM once, and then everyone can use it.</li>
<li>You don&#8217;t need to install all the deps in your system.</li>
<li>If your computer breaks, you don&#8217;t lose the data and configuration.</li>
<li>You can access to different development environments that might require different versions of the same libs from your own computer, no dependency hell guaranteed, and no extra local disk usage.</li>
<li>Compilation can be really fast and the speed of it would not depend on how powerful your computer is:  you can have preconfigured already in the VMs an icecream+ccache set of computers.</li>
<li>You could develop for KDE in Mac OS X within Linux, or Windows, or whatever you want.</li>
</ul>
<p>Of course this is just an idea&#8230; and I don&#8217;t currently have time for making it happen, but&#8230; wouldn&#8217;t it be nice? I thought I had to share it =)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/129/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/129/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/129/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=129&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2011/02/19/cloud-development/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>And you &#8230; Do you dare to predict what will happen in 2091?</title>
		<link>http://edulix.wordpress.com/2010/12/18/and-you-do-you-dare-to-predict-what-will-happen-in-2091/</link>
		<comments>http://edulix.wordpress.com/2010/12/18/and-you-do-you-dare-to-predict-what-will-happen-in-2091/#comments</comments>
		<pubDate>Sat, 18 Dec 2010 09:57:08 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[KDE]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=125</guid>
		<description><![CDATA[An interesting article (in spanish) about how great minds of the time thought things will be in 2011 80 years ago finishes with an open question which is the title of this post: And you &#8230; Do you dare to predict what will happen in 2091? I can&#8217;t resist to try, and here is why. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=125&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>An interesting article (in spanish) about how great minds of the time thought things will be in 2011 80 years ago finishes with an open question which is the title of this post: And you &#8230; Do you dare to predict what will happen in 2091?</p>
<p>I can&#8217;t resist to try, and here is why. The future is a sea of posibilities, and our mind is developed precisely to predict it. We are machines that are always classifying, archiving information and making relations between the data. Using this knowledge we can find out things about the world. Childs are bad understanding the speed of moving things, and that&#8217;s one of the reasons you should be careful letting a child cross the street. The other of course is that childs don&#8217;t understand that they need to focus on the important task of crossing the street, and even if they do, they don&#8217;t know what data should they be looking for and how to mine that data. With time and experience, we grow, and we can predict this kind of events much better and it also stops being something important.</p>
<p>Such a thing happens all the time. We learn something, and it becomes trivial, and suddently it&#8217;s boring stuff. But it&#8217;s much more difficult to learn anything if you didn&#8217;t experience it. That&#8217;s why learning history is so important. And even if you know history, you&#8217;ll probably not internalize it. Errors of the past will come over and over again by new people. And trial and error is often a very convenient and powerful way of learning with computers that everyone uses, but it&#8217;s not much so covenient in other matters.</p>
<p>Bottom line is, it&#8217;s very interesting to see how the predictions of these prominent people of the past failed. Sometimes reality surpassed their predictions, some others it came short. For example, Doctor Mayopredicted correctly that most infectius ailments would be minimized and controlled and most deaths would be due to heart issues, cancer, etc. He predicted 70 years of life expectancy in USA, and it&#8217;s now 77. However, these greats minds of the past predicted poverty will have ended, and that we would have an equitative wealth distribution, and it&#8217;s clear that it&#8217;s not the case.</p>
<p>When doing a prediction for the distant future, it&#8217;s difficult not fall into wishful thinking. Things changes faster than ever, and currently technology is indistinguishable from magic. Because of that, and that my field of expertise is that one related to Computers, that&#8217;s where I will make (most) predictions for: I have a better insight on it. However that will be more difficult for me, because as you know 80 in computers might be comparable to 5 centuries in other fields.</p>
<p>My predictions for 2091:</p>
<p>Privacy will be at the same time a very important legislated issue, and futile. Governments and private companies will have found unimaginable ways of cooperating for invading citiziens&#8217; privacy, and still most people will think/find that it is for the good of them and cooperate with this task every single day at all hours. There will be some countries like Iceland that will have put a limit to this, but people will still be so dependent on technology that it won&#8217;t matter that much.</p>
<p>Most people won&#8217;t call themselves cyborgs, but they will be: they&#8217;ll have some kind of alien tecnology in their bodies to gather information and communicate, or perhaps they might wear fancy stylish hats that read their minds. Silent people walking on the street will be able to talk with each other using this technology.</p>
<p>Computers will have changed a lot, but then again not that much. We will still be using very similar devices as some that we use today: screens and keyboards &#8211; or at least computer programers will. Non-trivial software will still be created in a written computer language. Of course, trivial will have a different meaning in the future.</p>
<p>Cars will still be a very important means of transport. But they will be electric cars, in most cases public taxis in big important cities, and no person will drive them, they will drive themselves and thus roads will be much more secure than today.</p>
<p>Genetic advances will still be happening and feel like the field has just started to emerge. It will be like it was computer intelligence for us: it will feel like it never quite started, but it did indeed. We the people born before year ~2030 will be old and very ugy in the eyes of the new youth generation that will all be tall, in good health, beautiful and have perfect bodies. Life expectancy will have reached 100 years, so I might still be alive but I&#8217;ll probably have forgotten this post.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/125/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=125&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2010/12/18/and-you-do-you-dare-to-predict-what-will-happen-in-2091/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>Presenting git timetracker</title>
		<link>http://edulix.wordpress.com/2010/12/05/presenting-git-timetracker/</link>
		<comments>http://edulix.wordpress.com/2010/12/05/presenting-git-timetracker/#comments</comments>
		<pubDate>Sun, 05 Dec 2010 21:19:33 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[KDE]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=122</guid>
		<description><![CDATA[Damn, it&#8217;s been a while since last post, again. Anyway, I&#8217;m here to present you a new git tool I&#8217;ve been working on together with Daniel (danigm): the new git timetrack comand, part of the distributed time tracker project. It allows you to track the time spent in commits done to a git repository. It&#8217;s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=122&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Damn, it&#8217;s been a while since last post, again. Anyway, I&#8217;m here to present you a new git tool I&#8217;ve been working on together with Daniel (danigm): the new <a href="http://wadobo.com/trac/dtt"><strong>git timetrack comand</strong>, part of the distributed time tracker project</a>. It allows you to track the time spent in commits done to a git repository.</p>
<p>It&#8217;s quite simple to use: you do a <strong><em>git timetrack &#8211;start</em></strong>, the clock starts counting. Then you go for a coffee, you use <strong><em>git timetrack &#8211;stop</em></strong> for that, and then when you come back, you can continue counting the time executing <em>git timetrack &#8211;start</em>. Then you do a commit, and it gets automatically annotated with the time spent, and the clock stops counting. Some random notes:</p>
<ul>
<li>To start using git timetrack, you need to first execute <strong><em>git timetrack &#8211;init</em></strong> in your project to add the needed hooks and options to .git/config.</li>
<li>The time annotations will appear in <em>git log</em> in seconds, and will be shown more nicely when using <strong><em>git timetrack &#8211;log</em></strong>.</li>
<li>If you forgot to start tracking the time for a commit, you can execute <strong><em>git timetrack &#8211;set X</em></strong> to set the clock to X minutes, and then continue counting the time with <em>git timetrack &#8211;stop</em>. And if you messed the time and want to start from zero, you can do a <strong><em>git timetrack &#8211;reset</em></strong> (or <em>git timetrack &#8211;set 0</em>).</li>
<li>You can add an estimation of the time you spent in last commit with <em>git timetrack &#8211;set X</em> and then &#8220;amending&#8221; the commit (adding the times-pent) with <em><strong>git timetrack &#8211;amend</strong>.</em> Using that, you can also change the time spent in last commit, and you can also change/set the time spent in any commit giving the commit-ref to the<em> &#8211;amend </em>option.</li>
<li>For consulting how much time have you been currently spent in next commit (i.e. the status of the stopwatch), use <strong><em>git timetrack &#8211;current</em></strong>.</li>
<li>For consulting the time spent in the project, use <strong><em>git timetrack &#8211;summary </em></strong>. It internally makes use of git log, and allows the same options as git log, so <strong><em>git timetrack &#8211;summary &#8211;author=foo@server.com &#8211;since=1week dir/file.c </em></strong>would tell you the time foo@server.com spent in dir/file.c since last week.</li>
<li>If you&#8217;re going to start hacking and thus do a batch of commits, you might not want to execute git timetrack &#8211;start to start counting the time after each commit. That&#8217;s automatically done for you if you use the properly named option <strong><em>git timetrack &#8211;start-hacking</em></strong>!</li>
<li>List all the options available with <em>git timetrack -h</em>.</li>
</ul>
<p>Git timetracker uses Git notes to add time-spent annotations to commits.  That means that thos annotations do not modify the commits and leave them intact, and are stored in a git notes branch instead. Git notes itself is quite recent and <strong>git timetracker  requires git-next</strong> (git development unstable branch) because it makes use of the git notes merge feature to be able to share the timetracker notes between users and merge changes on it nicely.</p>
<p>Why did we develop timetracker? We are creating a small software company called <strong>Wadobo</strong>, and we needed to do (rough) estimations of the time the development in the projects we work on will take, so we thought that the first thing we needed is having some real information about time spent in those projects.</p>
<p>I think that this can be really useful for the mentioned usecase. The tool is quite new but <strong>works-fine-for-me</strong> (TM) and we&#8217;ve been using it for a project for nearly two weeks already. Hopefully you like this little gem from us.</p>
<p>PS: I wanted to do a screencast, I really tried, but boy is that a difficult task to do. ffmpeg is segfaulting (I don&#8217;t use/have pulse audio but directly alsa). xvidcap is not capturing audio in the arch linux binary, and it&#8217;s diffcult to compile. recordmydesktop gives me audio artifacts. aur/screencast is not compiling&#8230; I gave up, have better things to do. What tools would you recommend to me?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/122/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/122/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/122/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=122&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2010/12/05/presenting-git-timetracker/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>Sexismo no es feminismo</title>
		<link>http://edulix.wordpress.com/2010/10/31/sexismo-no-es-feminismo/</link>
		<comments>http://edulix.wordpress.com/2010/10/31/sexismo-no-es-feminismo/#comments</comments>
		<pubDate>Sun, 31 Oct 2010 00:03:39 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=118</guid>
		<description><![CDATA[Este pequeño espacio que es mi blog ha estado callado desde hace un tiempo. Ha habido muchos cambios desde el último post que escribí y son tantos que no me sale ahora a cuenta escribirlos. Una de las últimas cosas que he estado haciendo cierta aplicación web, que ya está casi terminada, y en la [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=118&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Este pequeño espacio que es mi blog ha estado callado desde hace un tiempo. Ha habido muchos cambios desde el último post que escribí y son tantos que no me sale ahora a cuenta escribirlos.</p>
<p>Una de las últimas cosas que <strong>he estado haciendo cierta aplicación web</strong>, que ya está casi terminada, y en la última reunión con ellas (puesto que son todas mujeres) me<strong> pidieron</strong> realizar una serie de <strong>cambios</strong>. Entre ellos, uno que consideraron muy importante era la <strong>corrección del género</strong> de los mensajes de la aplicación. Para ellas algo tipo <em>&#8220;Buscar usuarios&#8221;</em> estaba mal dicho, porque se refería a los usuarios pero no a las usuarias. Según ellas lo correcto sería usar <em>&#8220;Buscar usuarixs&#8221;</em>, <em>&#8220;Buscar usuari@s&#8221;</em> o <strong>&#8220;Buscar usuarios y usuarias&#8221;</strong>.</p>
<p>Les dije que <strong>según la RAE el género neutro es igual que el masculino</strong>, y me contestaron diciendo que la RAE estaba formada por vejestorios. Tras oir esto, no quise profundizar más en la discusión porque al fin y al cabo son un cliente y además tampoco me sobraba el tiempo en ese momento. Pero <strong>me tuve que morder la lengua</strong> para callarme. Al terminar la reunión, comenté con el compañero con el que fuí a ella lo absurdo del asunto, y me volví a casa en bici dándole vueltas y mas vueltas.</p>
<p>El objetivo es claro: hacer referencia a un grupo de personas, indistintamente de su sexo. El idioma español ya tiene una manera de hacer esto, y es usando el género neutro que coincide con el masculino. La frase de marras sería <em>&#8220;Buscar usuarios&#8221;</em>. Las razones por las cuales coincide el neutro con el masculino puede que sea porque antes a las mujeres no se las tenía en cuenta (cosa que tampoco sé a ciencia cierta), pero eso es irrelevante. Todo lenguaje tiene una historia detrás, y muchas palabras, expresiones y reglas verbales vienen de acontecimientos pasados, como es lógico. Ningún moro debería sentirse indignado porque alguien se apellide <strong><em>&#8220;matamoros&#8221;</em></strong>, pese a que me consta que los hay.</p>
<p>Escribir o decir <em>&#8220;usuarios y usuarias&#8221;</em> cada vez que nos referimos a las personas que usan algo sin distinguir su sexo es una <strong>pérdida de tiempo, o de espacio</strong> en la web. Por eso mismo proponen usar <em>&#8220;Buscar usuarixs&#8221;</em> o <em>&#8220;Buscar usuari@s&#8221;</em>. Esto si que sería un crimen:</p>
<ul>
<li><strong>¿Cómo demonios pronuncio eso?</strong> Elimina una de las bondades del lenguaje español, y es que se pronuncia tal y como se escribe.</li>
</ul>
<ul>
<li>La eliminación de vocales y el uso de caracteres que ni son vocales ni consonantes como la arroba dificulta y enlentence sobremanera la velocidad de lectura y procesamiento del texto.</li>
<li>Poca gente está habituada a su uso, y menos la gente mayor que es especialmente importante en la aplicación web de marras.</li>
<li>No es algo aceptado por la RAE.</li>
<li><strong>Es sexista.</strong></li>
</ul>
<p>Y con este último punto llegamos a lo que es el meollo de la cuestión. Para igualar al hombre y a la mujer, quieren que haya que estar mencionando de forma separada a los hombres y a las mujeres cada vez que hablemos, o como mínimo escribirlos referenciándolos a ambos por igual con arrobas o X pero no con el género neutro de toda la vida. Eso <strong>lo único que hace es recalcar la separación entre ambos</strong>.</p>
<p>La no aceptación de un género neutro que por razones históricas es igual al masculino por el hecho de ser igual al masculino es síntoma de que realmente no se está equiparando a hombres con mujeres. Es como cuando los de la derecha exigen que no se llame matrimonio al matrimonio homosexual sino que se le llame unión, porque no quieren que el matrimonio pueda ser entre personas del mismo sexo&#8230; porque no quieren que se mezcle a los matrimonios homosexuales con los matrimonios &#8220;de gente de bien&#8221;.</p>
<p>Es como si dijese &#8220;Buscar usuarios pelirojos y no pelirojos, zurdos o distros, tontos o listos, feos o guapos&#8221;. <strong>¿Os acordáis del <a href="http://www.youtube.com/watch?v=eRBQswQi1E8">anuncio de la cocacola</a>?</strong> &#8220;Para los gordos, para los flacos, para los que ríen,&#8230;. para ellos, para ellas&#8230;&#8221; ¿Y al final cómo acababa? Os puedo asegurar que no era con un <strong>&#8220;Para todos y todas&#8221;</strong>, aunque igual algún sexista termina pidiendo que se rescriba para que así sea, desde luego visto lo visto no me extrañaría. Aquí el anuncio para que lo comprobéis vosotros mismos:</p>
<span style="text-align:center; display: block;"><a href="http://edulix.wordpress.com/2010/10/31/sexismo-no-es-feminismo/"><img src="http://img.youtube.com/vi/eRBQswQi1E8/2.jpg" alt="" /></a></span>
<p>El feminismo es un movimiento cuyo objetivo la igualdad del hombre con la mujer, en derechos. A mi me parece un objetivo perfectamente válido y loable que además yo comparto. Lo que sí <strong>no comparto ni entiendo es el feminismo radical</strong>, que es tan discriminatorio sexualmente como el machismo de toda la vida, y es igual de ilógico y sin sentido.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/118/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/118/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/118/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=118&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2010/10/31/sexismo-no-es-feminismo/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>Reflexiones sobre Internet</title>
		<link>http://edulix.wordpress.com/2010/08/09/reflexiones-sobre-internet/</link>
		<comments>http://edulix.wordpress.com/2010/08/09/reflexiones-sobre-internet/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 21:40:15 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=112</guid>
		<description><![CDATA[Hoy estaba leyendo un artículo en Slahdot sobre  la Generación de Internet muy interesante que me ha hecho reflexionar. Lo más interesante para mí han sido los comentarios, como suele ser el caso muchas veces en Slashdot.  Es curioso cómo pasa el tiempo en Internet, y es que hace ya una década que descubrí Slashdot. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=112&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hoy estaba leyendo un <a href="http://tech.slashdot.org/story/10/08/08/2139210/The-Net-Generation-Isnt?from=rss">artículo en Slahdot sobre  la Generación de Internet</a> muy interesante que me ha hecho reflexionar. Lo más interesante para mí han sido los comentarios, como suele ser el caso muchas veces en Slashdot.  Es curioso cómo pasa el tiempo en Internet, y es que hace ya una década que descubrí Slashdot. Cuando gracias a Ferdy descubrí Slashdot (y Barrapunto) nunca llegué a pensar que 10 años más tarde seguiría visitando el mismo sitio web.</p>
<p>Nos hacemos viejos, sí, pero lo más interesante es que la red madura con nosotros. Pertenezco a una generación que aun recuerda (como algo lejano, eso sí) una época sin Internet. Una época sin apenas teléfonos móviles. Cuando los hombre eran hombres y se programaban sus propios drivers.. bueno, ¡no nos pasemos!.</p>
<p>La cuestión que quiero abordar hoy es que al princio, las cosas eran nuevas, y había ideas que luchaban por emerger.   Cuando querías buscar algo en Internet, te ibas a Altavista, mirabas tres o cuatro páginas de resultados, luego a Yahoo, y así ibas saltando de buscador en buscador hasta que igual dabas con la tecla. Como menciona alguien en un comentario en slashot, cada vez utilizabas un buscador diferente, el que mejor fuese en aquel año o mes.  Lo mismo ocuría con la mensajería instantánea, el email, etc. Tenías cuenta en miles de sitios que servían para lo mismo, ibas cambiando probando decenas de programas hasta encontrar el mejor. Entre los pocos internautas que había entonces, había un interés importante en encontrar mejores herramientas, y los desarrolladores  luchaban por dominar un mercado nuevo sin un líder claro y totalmente cambiante. Era la época de las .COM, y cualquiera podía ser el nuevo Microsoft o Terra.</p>
<p>Con la madurez de la red, aumentó el número de usuarios, y bajó el interés por encontrar nuevas redes/protocolos de IM/programas. La gente realmente utiliza lo mismo que el resto y es un mundo mucho menos cambiante en temas trillados. Si quieres una cuenta de correo, usas gmail o hotmail. En España para redes sociales tenemos todos tuenti y a lo mejor facebook. Si quieres chatear, usas los dos anteriores o MSN. A lo mejor si eres friki, usas GMail para chatear. Las noticias las lees en elmundo.es, marca.com, y a lo mejor meneame.net.</p>
<p>Por otra parte, muchos  somos frikis de algo. Uno está registrado en forocoches, el otro es un friki del counter strike, y la otra está en un grupo de flickr que sube fotos hechas con cámaras CANON, y escribe en el foro de canonistas.  Como ahora en Internet somos muchos,  estandarizamos las cosas que hacemos todos en común (tuenti, msn..), y luego nos segregamos en comunidades de menor tamaño para nuestras rarezas. Y de ahí no salimos apenas.</p>
<p>Este comportamiento es normal si no queremos volvernos locos, pero también marca una inercia. Un hecho evidente es que no podemos conocer todo Internet (ni el 0.01% tampoco) así que necesitamos alguna manera de escoger nuestro pedazito de tarta particular. Antes la vida en Internet era más caótica, era más común ir saltando de un sitio a otro. Ahora ya cada uno ha encontrado su lugar, y explora cada vez menos el mundo exterior.</p>
<p>¿Se puede luchar contra los gigantes establecidos? Se puede, pero es difícil. Por las razones mencionadas, estos gigantes tienen más poder que nunca, lo que genera una inercia difícil de vencer. Una inercia que crecerá más si cabe si no se cumple con la neutralidad en la red y los grandes sitios vayan a ir más rápido que los pequeños que no pagan a las telecos.</p>
<p>Los &#8220;grandes gigantes&#8221; de ahora tienen poder y lo utilizan a su favor: antes la gente subía páginas a geocities, ahora en cambio suben sus fotos a tuenti sin ningún rubor, cediendo los derechos de explotación de esas fotos a Telefónica, incluso pese a también subirlas  a otros sitios como flickr para verlas con mayor calidad. Pero como sus amigos tienen y usan mas frecuentemente tuenti que flickr, pues las suben a tuenti. Y se etiquetan en ellas, y así telefónica puede hacer luego reconocimiento facial de todos nosotros si quiere.</p>
<p>Sin darnos cuenta, por comodidad, por ser prácticos, cedemos nuestros derechos. Ahora que tuenti tiene tanto &#8220;moméntum&#8221; en España, y facebook en el resto del mundo, va a ser difícil crear un red libre y distribuída como Diaspora que luche contra este tipo de injusticias, y los grandes como Telefónica lo saben. Por eso creo que es importante que nosotros, los desarrolladores y emprendedores, no pensemos tanto en nuestros bolsillos sino en nuestros ideales cuando creemos nuevos servicios disponibles en la red, para conseguir que sea un lugar mejor. Porque al fin y al cabo forma parte de nosotros y formará parte de nuestros hijos.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/112/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=112&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2010/08/09/reflexiones-sobre-internet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>¿Incumple la policía la LGPL con el dni electrónico?</title>
		<link>http://edulix.wordpress.com/2010/06/11/incumple-la-policia-la-lgpl-con-el-dnie/</link>
		<comments>http://edulix.wordpress.com/2010/06/11/incumple-la-policia-la-lgpl-con-el-dnie/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 09:34:52 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=102</guid>
		<description><![CDATA[El siguiente mensaje es una carta abierta que he mandado por email a la oficina técnica del Dni Electrónico que pone a nuestra disposición la Dirección General de la Policía y de la Guardia Civil: A la atención de la Oficina Técnica: Recientemente ustedes han publicado el código fuente del paquete que llaman pkcs11 [1]. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=102&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>El siguiente mensaje es una carta abierta que he mandado por <a href="oficinatecnica@dnielectronico.es">email</a> a la oficina técnica del Dni Electrónico que pone a nuestra disposición la Dirección General de la Policía y de la Guardia Civil:</p>
<blockquote><p>A la atención de la Oficina Técnica:</p>
<p>Recientemente ustedes han publicado el código fuente del paquete que llaman pkcs11 [1]. He  inspeccionado el código, y no especifican ningún tipo de licencia, por lo que según la ley española se reservan todos los derechos. No obstante esté código está diseñado y así ha sido empaquetado en las versiones compiladas que ustedes mismos ofrecen para ser añadido al paquete opensc que se encuentra bajo licencia LGPL, una licencia cuya naturaleza es vírica y por tanto fuerza a que obras derivadas como la vuestra deban estar bajo una licencia LGPL-compatible. Ustedes parecen estár incumpliendo la licencia. ¿Llamo a la policía o ya se llaman ustedes mismos?</p>
<p>Además, no proveen de un código que pueda utilizarse una vez compilado, porque el código parece estar diseñado para ser incluido en opensc y no es compilable de por sí. Tampoco se incluye ningún tipo de guía (README) de cómo realizar el proceso de compilación. Con el código fuente para cumplir con la  licencia LGPL deben incluirse las instrucciones necesarias para poder ser debidamente compilado.</p>
<p>Como ciudadano que ve sus &#8220;impuestos trabajando&#8221;, me siento decepcionado porque hayan tardado tanto en abrir el código para que luego lo hiciesen de forma tan chapucera. Existen multitud de aplicaciones que puede tener el DNI electrónico y están realizando un trabajo que va en detrimento de su uso. Deberían de colaborar directamente con la gente del proyecto opensc [2] como ya han realizado otros países de la Unión Europea y dejarse de cutres aperturas de código que ni siquiera ofrecen código bajo una licencia libre, como es el caso actualmente, y que no permiten al ciudadano basarse en ese código para mejorarlo.</p>
<p>Firma un servidor (y no con el DNI-e aun),<br />
Eduardo Robles Elvira.<br />
&#8211;<br />
[1] http://www.dnie.es/descargas/codigo_fuente_pkcs11/src.zip<br />
[2] http://www.opensc-project.org/opensc/wiki/GetInvolved</p>
<p>EDIT: He corregido y ampliado algunos aspectos de la carta (como el &#8220;detrimenta&#8221; que se me escapó y algún otro).</p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/102/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/102/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/102/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=102&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2010/06/11/incumple-la-policia-la-lgpl-con-el-dnie/feed/</wfw:commentRss>
		<slash:comments>38</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>GSoC wrapup &#8211; Konqueror new bookmarks system</title>
		<link>http://edulix.wordpress.com/2009/08/27/gsoc-wrapup-konqueror-new-bookmarks-system/</link>
		<comments>http://edulix.wordpress.com/2009/08/27/gsoc-wrapup-konqueror-new-bookmarks-system/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 13:42:22 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[GSoC]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=94</guid>
		<description><![CDATA[So GSoC ended already, as most of you already know. I haven&#8217;t been blogging as much as I would like, and I didn&#8217;t achieve to finish on time everything I wanted, but that&#8217;s not a defeat, only a delay &#8211; I will continue working on this bookmarks system until it can get merged into trunk. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=94&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So GSoC ended already, as most of you already know. I haven&#8217;t been blogging as much as I would like, and I didn&#8217;t achieve to finish on time everything I wanted, but that&#8217;s not a defeat, only a delay &#8211; I will continue working on this bookmarks system until it can get merged into trunk. And then I&#8217;ll fix incomintheg related  bug reports =).</p>
<p>So the state of the art is: we&#8217;ve got an akonadi resource for konqueror bookmarks which stores the bookmarks in nepomuk. We&#8217;ve got a bookmarks organizer, and we&#8217;ve got a bookmarks menu integrated in konqueror. The new location bar is however not finished yet, but that will be fixed within days.</p>
<p>A lot has changed since last report. I&#8217;ll try to explain here what&#8217;s the base structure of the new classes and what I&#8217;ve been doing, mainly related to the location bar, and why I followed that design decisions.</p>
<p><strong>KCompletion</strong></p>
<p>The current konqueror location bar uses a KCompletion class for autocompletion, which is mainly handled by KLineEdit. But how does it work? Let&#8217;s use a simple example. Imagine you are developing kmail&#8217;s new email dialog. For the line in which the user enters the destination email address, you could use a KLineEdit, but in order to easy the task of the user, you could use autocompletion like this:</p>
<p><code><br />
KLineEdit* destinationLineEdit = new KLineEdit(this);<br />
...<br />
KCompletion completion;<br />
completion.addItem("tigerwoods@fortune.com");<br />
completion.addItem("billgates@microsoft.com");<br />
...<br />
destinationLineEdit-&gt;setCompletionObject(completion);<br />
</code></p>
<p>You could of course get the list of items to add to the completion object from the address list too <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . If you were developing instead the location bar for dolphin, you would like to have directories listed while the user is typing. Instead of adding and removing items manually yourself to the completion each time the user types, you can use a KUrlCompletion object that does that automatically.</p>
<p>But for konqueror location bar we have a problem: it needs to be able to use kurlcompletion for completing directories, but it also needs to complete from bookmarks and history. We need to work with multiple completion objects at once even though KLineEdit and similar classes can work only with one. Also, we need to do more complex completion A normal KCompletion object contains a list of strings and matches what you type with those, but for having an amazing location bar we need more power: if I type &#8220;work&#8221; and I have a bookmark tagged &#8220;work&#8221;, I want it to show up in the completion list even if its URL doesn&#8217;t contain the word &#8220;work&#8221; at all. And that&#8217;s only the beginning. I want to be able to set an order of the completed items depending on the relevance and type of the items, and more..</p>
<p><strong>Enter Qt Model-views</strong></p>
<p>I need to confess that I love Qt model-views classes. QAbstractItemModel, QAbstractItemView, QAbstractProxyModel, QSortFilterProxyModel, QTreeView.. They provide an standard convinient and flexible way to manage and display almost any kind of collections. Even collections of completed items. Actually, the completed items popup is in reality a QListWidget, which displays a model associated with the completion object..</p>
<p>But that is an internal model which KLineEdit doesn&#8217;t let me change. So the question that follows is.. <em>why not use directly my own custom item models instead of a KCompletion object?</em> And that&#8217;s what I did, even if it required a lot of work to be done.</p>
<p>First of all, I tried to outline in paper the master plan. What classes needed to be created for everything to work fine. Then I wrote step by step what needed to be done before what. Then I started following those steps one by one and it worked!</p>
<p><strong>Places all over the.. place</strong></p>
<p>The plan was that the location bar autocompletes places. A place could be:</p>
<ul>
<li>a history entry from history entries model</li>
<li>a bookmark from bookmarks model</li>
<li>an url from a kurlcompletion model</li>
</ul>
<p>I had already a bookmarks model and konqueror already has an history entries model, but I had no kurlcompletion model. I looked at the code of the KUrlCompletion class I decided that I didn&#8217;t want to rewrite it.. so I simply created a KCompletionModel which acts as a proxy and converts a KCompletion object in a QAbstractItemModel. So to create a url completion model, I do:</p>
<p><code>KUrlCompletion* urlCompletion = new KUrlCompletion();<br />
KCompletionModel* urlCompletionModel = new KCompletionModel();<br />
urlCompletionModel-&gt;setCompletion(urlCompletion);<br />
</code></p>
<p>To do a completion, I connect the urlCompletion to the textChanged(QString) signal from the lineedit. And the completion objects reflects the changes which in turn instantly appear in the model. It&#8217;s not the best solution but hey it works. </p>
<p>Also, another problem was that the completion object of KLineEdit would be replaced by a model, not three. But now as you see I have again multiple completion objects, so what was the solution? creating an aggregated model created out of multiple models. It works like this:</p>
<p><code><br />
KAggregatedModel* aggregatedModel = new KAggregatedModel(this);<br />
aggregatedModel-&gt;addSourceModel(bookmarksModel);<br />
aggregatedModel-&gt;addSourceModel(historyEntriesModel);<br />
aggregatedModel-&gt;addSourceModel(urlCompletionModel);<br />
</code></p>
<p>Now, those who know how an item model works will probably have a lot of questions about that. For example one could be.. Do all those models need to share the same columns? The answer is no. The aggregated model I created is quite simplistic in the way it works:</p>
<ul>
<li>It assumes the source models have only one level of childrens.</li>
<li> It only shows one column, which is the default display column (sourceIndex.data(role)).</li>
<li>It shows the list of items as a list, showing first the items from the first item model, then the ones from the second, etc.</li>
</ul>
<p><strong>Places Manager</strong></p>
<p>So far we have an aggregated model with completed urls, unfiltered bookmarks and unfiltered history entries. That&#8217;s yet not complete from being the amazing completer model. What we need to do is the amazing filtering and sorting. That&#8217;s done by the final completion model, the master of places..</p>
<p>It&#8217;s called PlacesProxyModel and inherits QSortFilterProxyModel. It takes a QAbstractIteModel and takes the Konqueror::PlaceUrlRole for each index, gets the URL, and obtains the corresponding Konqueror::Place for it. Then, knowing already all the available information for that place, tries to match it against the query the user entered in the lineedit and sets its relevance for sorting purposes. It also filters out duplicated entries. Quite an achievement, but how does all that work again?</p>
<p>First off, all previous models (url completion, bookmarks and history entries models) report their items to a Places Manager which keeps track of them and contains a Place for each relevant url. So for example, if the user has bookmark for http://www.kde.org and it&#8217;s been visited yesterday, there&#8217;s a place in the places manager with the information from both the bookmark and the history entry. </p>
<p>All those models also support obtaining the url related to each item by using the Konqueror::PlaceUrlRole. The aggregated model proxies calls to retrieve data from any role, including that. So in the end the information can be retrieved by the places proxy model. Then an algorithm that takes into account the number of visits, the last visit, if the user-written string matched the place&#8217;s url, title or tags, etc sets the relevance of the items in the proxy model.</p>
<p><strong>The road to the location bar</strong></p>
<p>The new location bar inherits from the modified KLineEdit which uses a QAbstractItemModel for completion, which I have named KLineEditView. An amazing location bar needs to be able to show an star that can be clicked to add/remove a bookmark, and the autocompletion needs to show for each place shown if it&#8217;s bookmarked, its tags, etc. Contextual information.</p>
<p><strong>State of the art</strong></p>
<p>What has been done? All the previous things I have mentioned are working. They can always improve, but the code is already there. The location bar widget is the last thing I started to write so it&#8217;s not finished: it has already plugins support so that new icons/sub-widgets can be shown inside the location bar. Now I need to write the plugin to let the user bookmark the current location, and I also need to write the CompletionPlaceDelegate to have a properly eye-candied completion list. And I&#8217;ll do it shortly.</p>
<p><strong>Future and end</strong></p>
<p>Unfortunately, a lot of things need to be done before this new bookmarks system ends up in konqueror trunk. Revamping such an integral part of Konqi is not a simple task. We also want to be sure that when the replacements comes into play the user doesn&#8217;t have to suffer it but to enjoy it instead, so I need to find fix and all the regressions. I need to write documentation and test cases too. I honestly don&#8217;t really know when the job will be done but I know I&#8217;ll continue working on it. </p>
<p>I want to thank specially my mentor David Faure for the support, for giving me a thumbs up even if I didn&#8217;t finish on time everything I wrote in my gsoc propossal. You rock david!</p>
<p>This is post has been too large I admit, so I think I&#8217;ll stop here <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> . If you read everything yay you&#8217;ve got too much free time so go and do something more useful!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/94/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/94/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/94/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=94&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2009/08/27/gsoc-wrapup-konqueror-new-bookmarks-system/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
		<item>
		<title>GSoC: I Am Alive! (And bookmarks too!)</title>
		<link>http://edulix.wordpress.com/2009/07/31/gsoc-i-am-alive-and-bookmarks-too/</link>
		<comments>http://edulix.wordpress.com/2009/07/31/gsoc-i-am-alive-and-bookmarks-too/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 14:38:36 +0000</pubDate>
		<dc:creator>edulix</dc:creator>
				<category><![CDATA[GSoC]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://edulix.wordpress.com/?p=91</guid>
		<description><![CDATA[First I want to apologise because I haven&#8217;t blogged fo a month about my gsoc. But that doesn&#8217;t mean that I haven&#8217;t been working, quite contrary. I&#8217;ve been having limited connectivity and the limited time I got access to Internet I didn&#8217;t feel like blogging. Now I do. Lot&#8217;s of things have happened. I&#8217;ve even [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=91&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>First I want to apologise because I haven&#8217;t blogged fo a month about my gsoc. But that doesn&#8217;t mean that I haven&#8217;t been working, quite contrary. I&#8217;ve been having limited connectivity and the limited time I got access to Internet I didn&#8217;t feel like blogging. Now I do. Lot&#8217;s of things have happened. I&#8217;ve even suffered the H1N1 but don&#8217;t worry about that because it&#8217;s not as bad as TV shows: for me it was two days with flu and the third day I was 100% ok.</p>
<p>The konqueror bookmarks menu is already rewritten to support the new bookmarks system.  I like to read see other people&#8217;s code because it can inspire me when I want to develop something. Thus, I&#8217;ve been reading Arora code and I liked their idea of using QAbstractItemModel as the data source for QMenu and that&#8217;s how I&#8217;ve implemented the new bookmarks menu.</p>
<p>I&#8217;ve always wanted to have menus more advanced than just normal menus. When I saw that inside Mac OS X Help menu there&#8217;s a search bar I knew I wanted to have something like that in KDE and I wondered if that was possible. The answer is yes. Qt Menu system allows to insert custom widgets with WidgetAction class so I&#8217;ve added a Search Bar to Bookmarks Menu. When you type in the search bar, the source model of the Bookmark menu changes to a DescendantsPRoxyModel which represent all bookmarks and folders in a flat list and uses a QSortFilterProxyModel to filter out results. It&#8217;s not finished yet, there are some issues with the search but all in all I&#8217;m quite satisfied. Next step: Awesome bar, and fix more bugs =).</p>
<p>I&#8217;ve also been working on the bookmarks organizer, fixing bugs, adding support inline bookmark editing in the bookmarks view using double-click, adding a BreadCrumb view similar to Dolphin&#8217;s breadcrumb mode but using a QAbstractItemModel as a source for paths, etc. Here&#8217;s a small videocast where I show some of the mentioned features in action:</p>
<span style="text-align:center; display: block;"><a href="http://edulix.wordpress.com/2009/07/31/gsoc-i-am-alive-and-bookmarks-too/"><img src="http://img.youtube.com/vi/bcwMmOTnTbU/2.jpg" alt="" /></a></span>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/edulix.wordpress.com/91/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/edulix.wordpress.com/91/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/edulix.wordpress.com/91/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=edulix.wordpress.com&amp;blog=159278&amp;post=91&amp;subd=edulix&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://edulix.wordpress.com/2009/07/31/gsoc-i-am-alive-and-bookmarks-too/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d593ecff710fdbe6dcaa6cebc2453610?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">edulix</media:title>
		</media:content>
	</item>
	</channel>
</rss>
