Older blog entries for zeenix (starting at number 116)

GUPnPServiceIntrospection is here:

So I finally completed the GUPnPServiceIntrospection object this weekend and jorn has already reviewed and applied the patch to svn with some changes. Also included in the patch was a test application (test-introspection) that simply attempts (many services just won't provide the needed SCPD document) to create the introspection object for a discovered service and on success prints the details of all the actions and state variables. Jorn recommended a set of changes that might be a good idea and currently i am at that.

Feeling a bit lonely again:

Ansku left for her summer place on monday morning for two weeks and now i am feeling a bit lonely again. To add to the problem, i sold out my mac mini this morning (which was more like a media center at my house) for 200e. I am supposed to get my new AMD64 soon but i was told by the seller today that I'll get it in this week if I am lucky as many people are on summer vacation these days. I am buying windows xp with it <cough> as most of the existing UPnP software out there is written for windows and I really need those software to test my UPnP code all the time. Right now it's only at the office that i can test it where i have a windows machine. Having said that, I will mostly be using linux on it and only boot into windows if there is no other choice.

26 Jun 2007 (updated 26 Jun 2007 at 20:43 UTC) »
Back to Hel:

So I am back to Hel after spending three weeks in Pakistan. Here is a short summary of the details:

1st two weeks

The trip to Karachi wasn't a long one and i quite enjoyed it by watching nice movies and tv-shows during the flight. In karachi i met my mom and my sisters and stayed with them the whole time. I also told them about Ansku. They seem to be slowly accepting it as 'reality' but they don't like the fact that I would want to spend my life with a western non-muslim woman. My mother didn't have as much objections as my sister saima had as she has become a very big religious bigot for the last few years. This reminded me of the reactions from Ansku's family but those reactions were extremely mild compared to the reaction of my family. Saima was continuously dealing with only and only one question: would Ansku become a muslim? All that was quite enough to keep me frustrated but besides that i was facing the typical problems of karachi: Extreme heat, no electricity for most of the day, pollution and lack of water to count a few.

One good thing about the stay at karachi was that I saw the ATM machine software (a project that i started and worked on alone during my last year in pk) in action on a real ATM machine. I was told that there are some 8-9 ATMs already out, serving people. Note that I am talking about linux+gtk-based ATMs here, something that is quite unheard of and this is happening in Pakistan. There are times when i taste the fruit of pure satisfaction and perhaps these are the moments that keep one going.

A week in Peshawar

On 15th of June, I flew to Peshawar were I stayed in a nice Guest House in the middle of the University. Most of my time was spent with Waheed and other friends but I was also supposed to have two presentation at the CS department of Peshawar University and the Kohat University. Here is an edited version of the email i sent to the mailing-list of our class-mates which tells the story:

I (and Hansain) informed Dr. Abid and Aqeel 1.5 months before my arrival at Peshawar about such a possibility and after a few days i received a welcoming email from Aqeel. The reason i wanted to inform them so soon was that i knew that the students might be on vacation by the time i do my presentation there so they could be notified of the presentation in time and the interested students could attend. But Aqeel told me that we can fix a date for it later when i arrive in pk. I assumed that he must know what he is doing and deferred to his judgment.

Despite the fact that getting internet access in karachi wasn't that easy, i managed to send aqeel an email about my arrival but he didn't reply for 3 days so i asked for his number which Hasnain provided to me. I called him and asked him why he doesn't reply to my email and he told me something i wouldn't normally believe if said by a teacher of CS: "I haven't checked my email for few days". He also told me what i feared: "The students are on vacation so it would only be the faculty members", the way he said it, it seemed like it will be some 8 people at least.

After i arrived in Peshawar, I got in touch with Aqeel by trying to call him for 1-2 days. He and Dr. Abid seemed to be having a lunch together at that time so i got a chance to talk to Abid directly. He gave me a specific date/time, that Aqeel also agreed to. So i went to the department at that date/time and when i arrived at the department, it turned out that Aqeel and Abid were missing themselves. I called Aqeel and he told me that he had to go somewhere all of sudden so he has informed some other new teacher about the presentation (can't recall his name). I met that guy and it turned out that he was the only person who was informed about this presentation, no other faculty member knew about it at all. The 4 teachers who were there were happy to be in the presentation but then after a while it seemed like they were not so interested either so i told one of the teachers that I should probably just cancel the presentation and she agreed that that would be a reasonable thing to do under these circumstances.

I must say that i felt quite embarrassed that i was invited by both Abid and Aqeel and then they not only were missing but they didn't care to inform anyone at all. Many students do visit the department even during the vacation so if Aqeel had cared to put a small notice on the board only a week (or even a day) before, interested people (both students and faculty members) would have attended.

Seems to me that the Department is just becoming another victim of members of Jamiat (a nick for Jamat-e-Islami) who spend the whole day trying to benefit their filthy political aims rather than improving the department itself. I still remember Abid trying recruit all the members of his party whenever we needed a teacher from outside the department. I went for the presentation despite the fact that I personally extremely hate Jamiat and my friends told me not to go as the department is now just another center of Jamiat politics. Now i regret not listening to them."

OTOH, the presentation at the Kohat University went quite well and all the teachers in there knew me as 'the video-wall guy'. The topic of the presentation was "OSSO at Nokia and Internet Tablets". At the end of the presentation, they had quite some questions, which demonstrated that they were quite interested.

The trip back

Since I had booked my tickets to Dubai and onward using different websites, I was to spend 8 hours in Dubai and 6 hours in Amsterdam. Since i don't have a UAE visa, I spent the whole day in the lounge there, sleeping. At Amsterdam, I intended to go out and get into the Canal Cruise (which takes an hour) but thats not what happened. First i got into some problem with my credit-card and the ATM there. The ATM told me to contact my bank and when i called the number on my credit card, there was an automated message telling me the timing of the help-line. People in here told me later that the whole country was on holiday because of the mid-summer. Reminded me of that joke from "The Hitchhicker's guide to the galaxy" which was something like "Sorry but our whole planet is temporarily closed, please leave a message...". Anyway, I got into the train to the center and since it was supposed to take twenty minutes, i thought a little nap wont hurt. When i woke-up, it said something centrum so i got off but i asked some lady before getting off if this is the city center and she said "yes". Then all i saw was a small town and there was no sign of any canals so i asked people where i can find the Canal Cruise. They used to give me strange looks and just say "Canal, those are in Amsterdam" and i was like "yeah! so?" and then finally someone informed me that i have travelled to another town outside Amsterdam so i go into the train back but when i reached the city, it was too late. All i did was to look at the happy people in boats. Well, maybe some other time.

GUPnP

I did some work on the introspection but I just can't test it because gmediaserver have started to crash on me after i last updated libupnp and gmediarenderer doesn't provide valid URLs in it's description document. Any other easily installable UPnP software i can try it against? Anyway, it seems to be quite in shape now and it shouldn't take a lot more time now that i am back into a productive environment. :)

So it happened

I was worried that i might get sick in here and that is what happened recently, It started with a severe stomach flue, then i acquired a fever, flue and cough. After 3 days of illness most of the symptoms seem to be gone but i still have a bad cough. I think my body lost it's resistance to the polluted water and air. :)

Childhood pictures

One thing that i manage to accomplish was to get my childhood pics scanned so now i have their digital copies. Here is one:

Who is this cute kid

Actually i did this for Ansku as she was interested to know how i used to look like when i was very young.

Life sucks even more in karachi

It's been 4 days that i arrived here in karachi. Temperature is quite the same as it was when i left two years ago but it feels much more intolerable not only because my body isn't used to it anymore but also because now the frequency and duration of electricity going off is much higher (or at least it feels so).

Another problem is that i dont have any internet connection at home. I still have that external modem i had used for years to connect my linux box to internet but my laptop doesn't have a serial port so i had to search for usb-to-serial cable and i found one.

My problem didn't just end there. I realised that i didn't have any ppp-sw installed on my laptop so i went to the nearest net cafe to download wvdial and its deps. After installing wvdial, i can't get it to talk to '/dev/ttyUSB0'. i tried a lot of options in 'wvdial.conf' and '/etc/ppp/options' but no luck so far. It simply wont get a reply to 'ATZ'.

However my ex-boss told me that i can go to his office to use very high-speed (compared to 0.1KB/s you get here on dialup) internet.

Hacking

You kidding me, i cant do much in here except for laying on bed and sweat (and also the stuff i mentioned above).

Vacation:

After two years in Finland, I am finally going back to visit pk in 2 days. I will fly Friday afternoon from Helsinki and after a long trip (3 flights, 2 airports with 3 hours on each airport) I should be reaching Karachi on Saturday before be Noon. Already bought some gifts for everyone that matters except for my mom since i wasn't sure what to buy. Me and Liisa will try to take care of that tomorrow. We were supposed to do that today but we got in a nice Mexican restaurant and we didn't have enough time to buy anything before the shops closed at 9.

When your love is away

It's been only a week that Ansku left on her trip to USA but i felt so lonely and missed her so much. She emails me at least once a day and also called me today despite the fact that she doesn't have a phone there, which means that she also misses me a lot. OTOH, we both think that this temporary separation (perhaps it's too strong a word) is good for us at this stage as now we'll realize if we really love each other or not and how much.

New heroes

Ever since I found a video of Russell Peters on youtube, i immediately became big fan of him and quickly consumed all his videos that are out there on youtube. When i showed one of his videos to Markus, he didn't find it as amusing as i did and after saying "Now! this is funny!" he quickly searched out a video of Eddie Izzard. After watching that video, I became a fan of his too. My favourites are "St. Paul's letters", "Do you have a flag?" and "Star Trek" to name a few but i am still trying to dig more of whats available on youtube.

GUPnP: in your nearest shop

As Matthew Allum pointed out in this blog, gupnp and gssdp libraries are already released. There is also a website, a mailinglist and a bugzilla. I am already half-way through implementing the introspection api but if you interested in that, you'll have to wait till the next release. Essentially, introspection will be provided by a separate object called GUPnPServiceIntrospection, which the GUPnPServiceProxy object will attempt (since it all depends on what introspection information the service in question provides) to create on demand from the application.

13 May 2007 (updated 14 May 2007 at 13:34 UTC) »
Presentation about OSSO:

While I was thinking about my stay at Peshawar for a week, I came-up with the idea of doing a presentation followed by a Q&A session about what we do here at Nokia Open Source Software Operations (OSSO) at the Department of CS, University of Peshawar, the place where i had my last three years of education. Turns out there is one classmate of mine who is teaching in there and he has promised to arrange the event.

While that was underway, I called my ex-boss Dr. Lutfullah to inform him about my visit and it turned out that he is now the Vice Chancellor of Kohat University of Science & Tech. When i told him about the presentation idea, he showed his extreme interest in me doing the same presentation at his University as well. He also offered me free pick&drop and stay but i think I would want to stay in that small town since i don't know anyone there and I am looking forward to spend most of the time with my friend in there. He told me that he had converted all computers to Linux and have created a lot of interest about Linux amongst the students already so i am quite sure me (as Nokia employee) telling them about the commercial benefits of using Linux and Open Source SW, should make those changes much more permanent.

GUPnP: coming soon to your nearest shop

As Matthew Allum pointed out in this blog, gupnp and gssdp libraries are about to be released. In fact AFAIK Jorn was waiting for my last patches to the device sniffer, otherwise he would have released already. I sent him my last patches today so I guess tomorrow is going to be the big day. Yay!

Here is a screenshot of the latest gssdp-device-sniffer. It's not a very perfect clone of the Intel one but it does provide the basic features that you would want from it and there is one thing that is provides that the Intel one lacks: The devices are removed from the device view once they are unavailable. To be honest, I think that is just a bug that Intel one has and mine doesn't. :P

The device-sniffer was a bit boring to work on since it needed to be very low-level and high-level at the same time. Now I'll be turning towards device-spy, which is what I'll enjoy writing. One thing that device-spy would need from gupnp is a service introspection API which it currently does not and which is what I'll attempt to write before i actually start writing the device-spy.

2 May 2007 (updated 2 May 2007 at 15:48 UTC) »
The house-warming party

Recently I had my first house-warming party. Despite the small size of the apartment and twenty people attending the party, it went quite well. Along with some 'usual' friends there was two foreign friends also present as they happen to be in town at that time, Sladen and Lennart. Here are some pics i could share.

GUPnP work:

The gupnp-device-sniffer is coming along nicely, most of my time is wasted in the stupid UI stuff like TreeViews and TreeStores despite the fact that the UI part is supposed to be damn easy as I am using Glade. The main functionality is already implemented and here is a screenshot. Also I've finished reading the UPnP book and I must admit, I learnt more while reading/writing gupnp/gssdp code than reading the book. Rest assured the book is and will be a good reference while i am hacking on gupnp.

Work work

Seems I've got too used to of writing 'secret' code since I haven't been writing anything about my daytime work despite the fact that lately I've only been writing free software committed directly to open repositories. Here is a short list of what I've been doing for the last two months:

  1. RTPDTMFSrc: This was the first step towards implementing DTMF in gstreamer and farsight. It is simple gstreamer source element that generates RTP telephony event packets as defined in the RFC 4733.

  2. RTPMux and RTPDTMFMux: RTPMux element is a generic multiplexer for RTP streams which happen to have the same clock-rate. RTPDTMFMux is the DTMF-specific child of RTPMux.

  3. Farsight unit-testing framework: To test the DTMF functionality added to the farsight, I was supposed to write a unit-test but farsight didn't have any unit tests of any kind so i first had to create the unit-testing framework along with writing a basic unit-test for the FarsightStream object. After that adding test-case for DTMF API was piece of cake.
Hello Planet GNOME

On my house-warming party on friday evening, Stefan and Lennart informed me that my blogs have been on the planet for at least a month now. Yes! The fact that i didn't know about it points to the fact that I myself don't read the planet but is that a crime? :) I try my best to follow planet gstreamer but I am not always succesful in that either. Anyway! just writing this blog to say hi to all planet gnome readers.

Visit to Pakistan in June:

When I moved to Finland, I thought I might not go back to Pakistan ever again and definitely not in summer but seems I was quite wrong. I really really want to see my friends and relatives again, maybe thats what they call home-sickness. I have already booked my tickets and I am going to be there for almost three weeks (3-22.6). I planed the trip at that time because Ansku will be visiting her friends in US at that time. It's a weird coincidence that we will be almost completely opposite to each other on the globe, so it's as far as we could be from each other I guess.

The ugliest thing about the whole trip is that I have to spend 16 hours at the Dubai airport but thats what you get when you book the connected flights separately yourself for saving money.

UPnP adventures:

My last blog entry regarding "GOD and Gabriel" resulted in two things:

  1. A lot of traffic on Coherence project homepage: That was completely unintended of course.
  2. mallum pointed me to their UPnP framework, gupnp.

    Full marks to Jorn for coming up with such a simple API design and implementation that also integrates quite nicely with glib's mainloop. No implicit threads or anything like that sort.

    Unfortunately, the implementation is not quite complete yet, not even the client side. Jorn had been and still is busy with other projects so right now I am the only one hacking on the project but he has promised to get back to the project in the near future.

    After submitting a few minor patches, I now think the best way to proceed with implementing the missing bits in gupnp while learning UPnP at the same time would be to write free clones of "Intel® Tools for UPnP Technologies" using/for gupnp, adding the missing bits that I find while at it. I've started with the simplest of these tools, the Device Sniffer. After that, I'll turn towards the Device Spy.

10 Apr 2007 (updated 11 Apr 2007 at 08:22 UTC) »
New Apartment, New TV:

So after months of searching, i finally found myself a new apartment. It's a bit further from my office than the last one but it's:

  • big (31m2)
  • in a nice area (Matinkylä)
  • got a balcony and you get plenty of sunshine in summer
  • 1.5 km to iso omena (big apple), a big shopping mall
  • 15-20 min away on public transport from my office

When I was moving, my neighbor wanted his TV back so I started to look for TVs. After looking here and there, i finally decided to buy an LG 32LC2D. All went fine and now i have a nice big flatscreen TV that i can also use as a monitor for my mac mini, but unfortunately the ATI graphics card in my mac mini (both on os x and linux/x/gnome) refuses to do any 16:9 resolution so i am currently running at 1024x768 (4x3), which wastes quite a bit of space on the screen. :( However, yesterday Riku told me about this utility and I intend to try it today or tomorrow but i am not very hopeful.

Gabriel and GOD:

After realizing that Gabriel doesn't work on any other two machines then the ones i had in office (one of them i don't have anymore), I started to look into writing an ssh transport for D-Bus but turned out that D-Bus doesn't already have a "remote" auth mechanism. That and getting to know UPnP better made me realized that choosing D-Bus for RPC (instead of IPC) was a big mistake i started the whole project with.

I have bought a book on UPnP and the more i read it the more I can see why GOD should be a bunch of Gstreamer elements that implement standard and custom UPnP devices and control points. I am not very sure if it being a "bunch of gst elements" is a good idea or not but I am quite sure of the later.

Stefan and Rob Taylor pointed me to Coherence but not sure if i want to contribute to a python project (python being an interpreted language isn't currently very efficient on embedded yet) or write my own implementation in C using Gstreamer and PUPNP's libupnp. Oh well, I'll just keep reading the book and see what i come-up with in the end. :) Until then, consider both GOD and Gabriel to be dead. :(

107 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!