Older blog entries for zeenix (starting at number 138)

16 Sep 2007 (updated 17 Sep 2007 at 12:07 UTC) »
DAAP vs UPnP MediaServer

While I believe that Lennart's work on free implementation of Apple protocols is very important for the wide-spread acceptance of free software, I fail to see any fact(s) that could support his claims like "I believe that DAAP is the superior protocol in comparison to UPnP MediaServer". When he was visited our office for his presentation on Avahi, he claimed that Zeroconf is better than UPnP itself, his argument being that Zeroconf uses simple ASCII text files and that makes it much more compatible with other Internet protocols, while UPnP uses XML (corrections welcomed). Here are a few points for him to consider:

  • UPnP is much more than addressing and discovery: Zeroconf defines standards for the addressing and discovery of services on a network but do no define any means for description, control, event notification and presentation. While this allows the services to choose any mechanism for any or all of these, the point being that UPnP itself isn't really comparable to Zeroconf but only two of it's parts.

  • ASCII is superior to XML?: how come? Just because MS supports XML or other Internet protocols didn't choose to use it?

  • "Microsoft/Intel started to include a similar technology in UPnP, the UPnP MediaServer". Media Server is based on UPnP not part of it in any way.

  • It's pronounced GUPnP, not gUPnP (thats the logo). :)

  • GUPnP is *not* an implementation of any particular service or device but a framework to create control-points, devices and services on top of it.

  • RAOP is obviously not superior to Media Renderer as it uses modified RTSP/RTP, while Media Renderer (and Media Server) standards allow you to implement any number of protocols for streaming the media, while it mandates the HTTP protocol so all devices have at least one protocol in common. Since these technologies target streaming of non-live media between devices connected to local LAN, I really don't see any reason not to just use HTTP.
Blog moved to blogger.com

I am moving my blog to blogger.com so that people can comment on my blog. Nothing should change for subscribers of my blog as advogato has blog syndication feature.

Syndicated 2007-09-16 12:33:00 (Updated 2007-09-17 11:36:29) from zeenix

13 Sep 2007 (updated 13 Sep 2007 at 22:10 UTC) »
Nothing personal against anyone

Olav! I've nothing against you personally, I merely said what i felt and apparently Kalle felt the exact same thing. You presented several different arguments, some i found good enough and some not so good but I don't see anything that could make me change the conclusion I derived from that statement of yours that i quoted, neither in that discussion nor in your reply to my last blog entry. Unless you can provide such an explanation, anyone who reads that statement would come to the same conclusion as i did.

13 Sep 2007 (updated 14 Sep 2007 at 13:35 UTC) »
git vs svn debate

I must confess that it was me who (unintentionally) started the git vs svn debate on gnome foundation mailing list. It was just that when Damien announced his extreme anger over not being able to get a developer write access to the svn repo, I couldn't resist my temptation to point out the fact that Damien wouldn't have found it a problem if either gnome was using git (or some other distributed SCM) or Damien had decided to use git together with git-svn on his end. OTOH, The discussion went very well until the biggest opponent of git, Olav Vitters admitted that "It translates to: I really care about not needing to learn an SCM.". From that point onwards, I completely lost the interest in the discussion.

UPnP Stuff

Looking at the screenshot from Christian, it seems that the Universal Control-Point looks much better on fedora than my debian testing laptop. :) Although almost all the icons are being replaced currently so it will soon look quite different. Also, Stéphane Loeuillet had been testing our UPnP stack on his Ubuntu Gutsy and have filed a couple of critical bugs against Jorn's and my code so we needed to fix them as well before the release. Today I played with the Intel's MediaRenderer running on my windows machine using the Universal CP on my linux machine and it felt so nice to be able to do that, play, pause, seek, setting volume etc. :)

I have decided with Jorn and Matthew that we will also implement a simple AV control-point, MediaServer and MediaRenderer as part of GUPnP Tools, so soon after the next release of GUPnP Tools, I'll get onto the AV control-point.

Regarding 9/11

I have no doubt that all the people who died in this incident were innocent and deserve our deepest sympathies but remembering this incident and not the many other bigger incidents isn't very humane thing to do. We must not forget that USA is directly responsible for the destruction of Afghanistan by aiding and funding in all possible ways the terrorist who were at that time called "Freedom Fighters" during and *before* the Soviet Invasion. It's quite understand that western people are unable to believe me when i tell them that Soviet Union was the hero in Afghanistan as they were not only introducing modern infrastructure, education, liberal values but were also crushing the religious fundamentalism.

In fact it were these 'liberal values' the pro-soviet students in Afghanistan were going towards, that made many of the religious fanatics angry with the coming change (talking of 60 and 70's) and they became what they became. They were just random small gangs in the beginning who would sometimes commit an act of violence at random but all that changed when the CIA contacted them and started to organise and fund them.

UPDATE 14-09-2007 16:30

I only have one blog for everything in my life and it's not everyday that I feel like saying anything about politics. I saw some people expressing themselves about 9/11 and I felt the need to point everyone at the other (most impost IMHO) side of the picture as well. If someone have something to say about my political opinion, there is no need to start a debate through blog, you can always email me and if i find your arguments convincing enough I'll change my opinion.

That said, if planet gnome has some policy on this matter, just let me know and I won't talk about politics (at least not the one that doesn't concern free software) anymore on my blog that gets syndicated to planet gnome.

Hackergotchi

Thanks to everyone who made me hackergotchis but I would take either of the following made by Sean Wilson, though I would prefer the later as i really like to show off my "GObject" t-shirt :)

GUPnP stuff

Have been polishing different stuff in Universal Control Point and Network Light. Also I found some potential segfaults in GUPnP and the patches have been sent and comitted already. Now i am mostly waiting for Lapo to come-up with replacements for icons used by Universal Control Point. Here is a screenshot:

Can anyone make a hackergotchie for me from this image:

git-svn quirks

Although git is a little more than perfect now a days (git >= 1.5), git-svn however has a few quirks. Lately I got into a few frustrating problems and it turned out to be caused by how git-svn bridges the two very different worlds. What happens is that when you `git-svn rebase` (which is implicitly implied in `git-svn dcommit`), git-svn modifies the commit messages to contain an id, a git-svn-id to be precise using which it track down stuff like which latest commits haven't been committed to upstream svn repo etc. To cut the story short, here are is my advice for people who want to use git-svn on regular bases and branch (which they should):

  1. To make life simple, only have one branch sync with upstream svn repo (master branch is the most obvious choice).
  2. `git-rebase master` your branches each time after a `git-svn rebase` happens (implicitly or explicitly).
  3. Don't ever try to merge a branch once you have done that already and did a `git-svn dcommit` after you first merged it, unless you have followed point#2 above.
4 Sep 2007 (updated 4 Sep 2007 at 12:25 UTC) »
GUPnP Tools

Thanks to Lapo Calamandrei, now i have quite perfect images for the network light and it looks much better than that of Intel, IMO:

While Lapo was busy making the icons, I implemented the UI for the network light and also made the universal control point use icon from the device, if available to represent it in the device treeview. If things keep going on this pace, expect a 0.2 release of gupnp-tools anytime soon.

Whining

I am no expert on GPG and SSH keys and MTAs but should that mean that I should be denied write-access to projects hosted on freedesktop.org? For me that is precisely what it meant. Another sin of mine is that I have already used popular web-based email clients, first yahoo and then gmail. So the punishment i get for all these sins is the inability to get my SSH keys uploaded to freedesktop. I first tried the web interface of both gmail and yahoo to send the GPG-signed payload but both did some formating and that screwed the message. Then i tried to use thunderbird and exim4 using gmail's SMTP server, then my office exchange server (both with thunderbird and MS Outlook) but none of them worked. If it was the matter of my project, I would have decided to host it somewhere where they have something as basic as a webpage to upload the SSH key, working but unfortunately the projects i need to work on (e.g gstreamer) have been hosted on f.d.o for years now and why would anyone even consider moving to some other service for a small contributer like me.

Implementing UPnP Services just got easier

So jorn has commited my patch that implements the magic of autoconnecting action and state-variable query signals to GUPnPService. I am too lazy to write all about it so I'll just copy&paste the doc-comment:


/**
 * gupnp_service_signals_autoconnect
 * @service: A #GUPnPService
 * @user_data: the data to pass to each of the callbacks
 * @error: return location for a GError, or NULL
 *
 * A convenience function that attempts to connect all
 * possible "action-invoked" and "query-variable" signals to
 * appropriate callbacks for the service @service. It uses
 * service introspection and GModule's introspective
 * features. It is very simillar to
 * glade_xml_signal_autoconnect except that it attempts to
 * guess the names of the signal handlers on its own.
 *
 * For this function to do its magic, the application must
 * name the callback functions for "action-invoked" signals
 * by striping the CamelCase off the action names and either
 * prepend "on_" or append "_cb" to them. Same goes for
 * "query-variable" signals, except that "query_" should be
 * prepended to the variable name. For example, callback
 * function for "GetSystemUpdateID" action should be either
 * named as "get_system_update_id_cb" or
 * "on_get_system_update_id" and callback function for the
 * query of "SystemUpdateID" state variable should be named
 * "query_system_update_id_cb" or
 * "on_query_system_update_id".
 *
 * Note that this function will not work correctly if
 * GModule is not supported on the platform or introspection
 * is not available for service @service.
 *
 * WARNING: This function can not and therefore does not
 * guarantee that the resulting signal connections will be
 * correct as it depends heavily on a particular naming
 * schemes described above.
 **/
GUPnP Network Light

Thanks to all the people who made and sent icons since this morning. I think I'll use the modification from Markus Berg though but I need to sort out the legal problems (since the original icon is under cc-by-sa) first.

GUPnP Network Light

Jorn has designed such an easy API for GUPnP that I've already implemented the UPnP part of the network light. Now I'll turn towards the GUI which is quite simple now that I've these images:

The first one I borrowed from the Tango project and it's obviously made by some professional but the second one is a modification on my own using Gimp. I'll still be thankful to anyone who can make me a nicer version of the second image. Note that I've removed the shadow from the second one and I did that because the shadow becomes quite dark when i alpha-composite the two images with alpha set to max.

129 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!