Search Results: "cas"

20 October 2009

Patrick Schoenfeld: Cool PHP-Code.

Did you know that in PHP you can write something like that:

$test = "foobar";
$test = sTr_RePlace("bar", "baz", $test);
$x = sPrinTf("%s is strange.", $test);

pRint $x . "\n";
eCho "foo";
What makes me frighten is that this actually used, e.g. by this code snippet which exists (in a similar form) in an unnamed PHP-project:

echo sPrintF(_("Bla bla bla: %s"), $bla))

And yes, they do use echo to output the result of sprintf.

Update: So i got this great comment. The commentator wants to point out that the senseless use of "echo sprintf" is because of gettext. He says "That's simply the way you use gettext." But this is simply not true. The difference between printf and sprintf is that the first one outputs the string, while the second one returns it. That means that in the above example printf could be used (instead of sprintf) without a useless echo call in front of it. The reason for using sprintf (and eventually the reason because you find it in a lot of applications using gettext) is that you can use it to fill a variable with the translated string or to use the string in-place. A common use-case for this is to handle a translated string to a template engine, for example.

Maximilian Attems: Debian Kernel Meeting

Vincent Sanders took notes during all our meetings at the Portland Linux Plumbers Conference: Debian Kernel Group Meeting. The condensed form has been posted today as Bits from the kernel team. In the case of feedback I'd highly recommend to bring the Debian Kernel Mailinglist into the loop. The meeting decisions were done by the team as entity. Responding to the deprecation of some external patches (Vserver, Xen Dom0): None of above patches have an upstream that supported the Lenny released version. Both have troublesome bugs in Lenny and thus are not in a condition one would expect from a stable release. If you want to help and have continued release of those beyond squeeze the answer is easy: Get them merged upstream. Openvz supports Lenny linux-2.6 version actively and promised to keep up with their work for Squeeze. It has been a very productive meeting with lots of problems^Witems discussed. Interesting tracks for better cooperation between distributions, heavy technical tracks and loud BOFS. Quite some work has already been picked up since (Bug scripts, 2.6.31 experimental uploads, DEB_BUILD_OPTIONS=parallel=N support, package descriptions improvements, piuparts install fix, DFSG firmware clean, preempt, ..). So thanks a lot to Steve McIntyre (Debian Project Leader) for pushing the meeting, to Steve Langasek for setting it up on site and of course to everyone who contributed. Read aboves report for the full picture. :-)

Bastian Venthur: Amarok going downhill

Amarok 2.2 is probably the only audio application on the market unable connect properly to the IPod. It is impossible to copy podcasts within Amarok to the IPod since Amarok 2.x. This functionality simply disappeared during the 1.x to 2.x version jump. You can download and listen to podcasts, you can connect your IPod, but you cannot drag the podcast to the IPod. A few weeks ago you could help yourself if you know where Amarok stores the podcasts (~/.kde/share/apps/amarok/podcasts): just navigate to this directory and drag the audio file to the IPod, but looks this rake was also disabled within the last versions, since Amarok now only segfaults if you dare to do this. Great.

Gunnar Wolf: Among the reasons that brought me to Debian...

Every now and then, people ask me why Debian? Why, among so many projects to choose from, I first liked, then got into, and finally I got committed into Debian, and not anything else? Of course, one of the main points back in 2000-2001 when I started using it, and still to this very day is a strong identification with the ideological side. Yes, I am a strong Free Software believer, and Debian is what best suites my ideology. Still, I did not only get into Debian because of this And I was reminded about this by an article in this month's Usenix ;login: magazine: An anecdotal piece by Thomas A. Limoncelli titled Hey! I have to install and maintain this crap too, ya know! (article requires ;login: subscription, but I'll be glad to share it with whoever requests it to me I have of course no permission to openly put it here in whole online. Yes, I am expressly sending a copy of this text to the author, I will update this if/when I hear from him) [update] The author has kindly allowed me to redistribute his article's PDF Download it here. Before anything else I'll go on a short digression: I am writing a bit regarding the Free Software participants' culture, and this is a trait I love about it: The lack of formality. Even though ;login: (and Usenix as a whole) is not exactly Free Software, it runs quite close to it), it is a well regarded magazine (and association) with an academic format and good (not deep or highly theoretical, but good) contents. Still, it is quite usual to see titles as informal and inviting as this one. And it happens not only here I have been fearing having to explain at work, over and over, why I have requesting permissions to go to Yet Another Perl Conference, Festival de Software Libre or DebCamp, tagging them as academic settings. Or why I am wasting our library's resources on buying cookbooks, recipes and similar material on the most strange-sounding subjects. Anyway, back on track This article I found refers to the lack of value given to the system administrator's time when selling or purchasing (or more in general, as it happens also in Free Software, when offering or adopting) a product. Quoting Thomas:
A person purchasing a product is focused on the features and benefits and the salesperson is focused on closing the deal. If the topic of installation does come up, a user thinks, Who cares! My sysadmin will install it for me! as if such services are free. Ironically, it is the same non-technical executive who dismisses installation and upkeep as if they are free who might complain that IT costs are too high and go on a quest to kill IT spending. But I digress. I can understand why a product might be difficult to install. It is hard enough to write software, and with the shortage of software developers it seems perfectly reasonable that the installation script becomes an afterthought, possibly given to a low-ranking developer. The person purchasing the product usually requires certain features, and ease of installation is not a consideration during the procurement process. However, my ability to install a product affects my willingness to purchase more of the product.
Thomas goes on to explain his experience with Silicon Graphics, how Irix was so great regarding install automation and how they blew it when switching to Windows NT; talks very briefly about IBM AIX's smit, a very nifty sysadmin aid which is basically a point-and-click interface to system administration with the very nice extra that allows you to view the commands smit executes to perform a given action (and then you can copy into a script and send over to your hundreds of AIX machines) Incidentally, by the time I started digging out of what became the RedHat mess of the late 1990s and passed briefly through OpenBSD on my way to Debian enlightenment, I was temporarily the sysadmin for an AIX machine And I too loved this Smit approach, having it as the ultimate pedagogical tool you could ever find. Anyway, I won't comment and paraphrase the full article. I'll just point out to the fact that this was what ultimately sold me into Debian. The fact that I could just install anything and (by far) most of the times it will be configured and ready to use. Debian made my life so much easier! As a sysadmin, I didn't have to download, browse documentation, scratch head, redo from start until I got a package working Just apt-get into it, and I'd be set. Of course, one of the bits I learnt back then was that Debian was for lazy people Everything works in a certain way. Policy is enforced throughout. So as a sysadmin, I should better get well acquinted with the Debian policy and know it by heart. In order to be able to enjoy my laziness, I should read it and study it. And so I did, and fell in love. And that is where my journey into becoming a Debian Developer started. Why am I talking so nostalgic here? Because I got this magazine on the mail just last weekend And coincidentally, I also got bug report #551258 I packaged and uploaded the Haml Ruby library (Gem, as the Rubyists would call it). Haml is a great, succint markup language which makes HTML generation less of a mess. It is even fun and amazing to write Haml, and the result is always nicely formatted, valid HTML! And well, one of Haml's components is haml-elisp, the Emacs Lisp major mode to do proper syntax highlighting in Haml files. Of course, I am an Emacs guy (and have been for over 25 years), so I had to package it. But I don't do Emacs Lisp! So I just stuffed the file in its (supposed) place, copying some stuff over from other Emacs packages. During DebConf, I got the very valuable help of Axel Beckert to fix a simple bug which prevented my package from properly being installed, and thought I was basically done with it. I was happy just to add this to my ~/.emacs and get over with it:
  1. (require 'haml-mode)
  2. (add-to-list 'auto-mode-alist '("\\.haml$" . haml-mode))
  3. (require 'sass-mode)
  4. (add-to-list 'auto-mode-alist '("\\.sass$" . sass-mode))
However As Mike Castleman points out: This requires manual intervention. So it is not the Debian Way! Reading Mike's bug report, and reading Thomas' article, made me realize I was dilluting something I held so dearly as to commit myself to the best Free Software-based distribution out there. And the solution, of course, was very simple: Debian allows us to be very lazy, not only as sysadmins, but as Debian packagers. Just drop this (simplified version) as $pkgroot/debian/haml-elisp.emacsen.startup and you are set!
  1. (let ((package-dir (concat "/usr/share/"
  2. (symbol-name flavor)
  3. "/site-lisp/haml-elisp")))
  4. ;; If package-dir does not exist, the haml-mode package must have
  5. ;; removed but not purged, and we should skip the setup.
  6. (when (file-directory-p package-dir)
  7. ;; Use debian-pkg-add-load-path-item per 9 of debian emacs subpolicy
  8. (debian-pkg-add-load-path-item package-dir )
  9. (autoload 'haml-mode "haml-mode"
  10. "Major mode for editing haml-mode files." t)
  11. (add-to-list 'auto-mode-alist '("\\.haml\\'" . haml-mode))
  12. ;; The same package provides HAML and SASS modes in the same
  13. ;; directory - So repeat only the last two instructions for sass
  14. (autoload 'sass-mode "sass-mode"
  15. "Major mode for editing sass-mode files." t)
  16. (add-to-list 'auto-mode-alist '("\\.sass\\'" . sass-mode))
  17. ))
This will make the package just work as soon as it is installed, with no manual intervention required from the user. And it does not, contrary to what I feared, bloat up Emacs Adding it to the auto-mode-alist leaves it as known to Emacs, but is not loaded or compiled unless it is required. Deepest thanks to both of you! (and of course, thanks also to Manoj, for pointing out at the right spells in emacs-land)
AttachmentSize
Thomas A. Limoncelli: Hey! I have to install and maintain this crap too, ya know! (Usenix's ;login: October 2009144.5 KB

19 October 2009

Jaldhar Vyas: Sal Mubarak 2066

Best wishes to everyone in Debianland for a happy and prosperous Gujarati New Year (Vikram Samvat 2066, called Plava) This year the local mandirs continued their recent trend of coordinating their Diwali/new year plans and there was a big mela planned. Unfortunately the weather didn't really cooperate but the kids got to manhandle some explosives and after all isn't that the reason for the season? Presentwise, I got a DIY 4-shelf bookcase from Sears, the Catalyst Book plus a much-needed woolen hat. I've decided that I am going to quit my job. It's a soul-sucking dead end but in these tough economic times it pays bills so I've agonized about this for a long time. This was supposed to be the year we moved out of Jersey City but it has yet to happen. And it never will unless I take some sort of decisive action. So I'm going to do it. Wish me luck!

18 October 2009

Russell Coker: Mobile Phones Are Computers

One thing I noticed when I got my new LG U990 Viewty [1] mobile phone is the way the core telephony functionality has suffered while features for web browsing etc have been added. It seems that the core phone functionality (making and receiving calls and maintaining a list of names and phone numbers) has generally decreased since about 2004 when I got my first camera-phone. The Nokia GSM phones that I used prior to getting a 3G phone seemed to have a combination of signal reception, voice quality, and basic telephony features that beat all the 3G phones I ve used. The only way the 3G phones were better for core telephony features is in managing the list of recently called numbers. In my past two LG phones I ve been able to easily call an alternate number of the person I last called this feature was dropped in the Viewty. Some of my relatives have camera-phones that have an extremely poor ability to get a signal, they can t get a GSM signal in places where my Viewty can get 3G! Obviously making a usable phone was not a design priority for those devices! Then there s the issue of battery life. Early mobile phones had NiCd batteries that lasted a week, later mobile phones had Li batteries that lasted a week as a standard feature. Nokia sold phones with replacement batteries, so if you wanted to make lots of phone calls while on the move you could have a second battery charged and ready for use. Now the latest BlackBerry [5] apparently has batteries that only last for one day I haven t investigated the options for storing a second battery but a casual glance indicates that changing a battery will be a lot more difficult than on an old Nokia phone. I ve been wondering, why don t they just sell some mobile phones that don t support making phone calls? Smart phones that aren t very good at telephony is really only going half way, do it properly and just rip out the phone functionality! Or they could use the word phone to apply to devices that already exist to do mobile stuff. You could have an Amazon Kindle phone [2] that allows you to read documents, and a Nokia N800 tablet phone [3] for general Internet access including web browsing and email really the only smart-phone feature that is missing from the Nokia is a camera. For that matter my EeePC 701 [4] is probably about twice as heavy as my first mobile phone, maybe it could be called a phone too. If you have two phones, one for making phone calls and the other for doing smart-phone stuff then it won t matter so much if the smart-phone (which can t make phone calls) has it s battery run out. One likely objection to the idea of selling phones that can t be used for making phone calls is that it might confuse the users. However the current situation is that there are significant differences in the signal reception ability of mobile phones, the people who sell them don t know what the difference is, and the rare reviews that analyse signal strength (as done by Choice [6]) are become outdated rapidly and never cover all phones on the market. So I think it would be a great improvement if the phone sales people could say don t buy phone A if you want to make phone calls because it can t do that because currently anyone who just wants to make phone calls has a matter of luck to determine whether they get a phone that works well. The really sad thing however, is that some people apparently have usage patterns that are similar to my satire above. I have heard of people having two phones, one for smart-phone functionality and another for making calls. What we need is to have manufacturers put more effort into making hardware that can receive week signals, from now on I will consult the Choice review of this before making any mobile phone purchase or recommendation. If only a few million other people would do the same then the manufacturers would improve their products. The next thing we need is to have better software to run the phones. The deficiencies in the software on my Viewty could easily be fixed if everyone had source code access. Benjamin Mako Hill writes about some of the problems with closed-source on mobile phones [7]. He mentions security (in terms of our trust in the phone manufacturers), and the general ideal of having control over your own device. One specific problem he doesn t mention are the ways that mobile phones are deliberately crippled by the manufacturers, 3G phones have precious main menu space occupied by the services that are most profitable to the telephone company without regard to what the users desire. Another problem for people who desire free software is file format support. Camera-phones that save video to AVI format instead of OGG reduce our ability to use free software in other places as a general rule every time you transcode a video you either lose some quality or increase the file size so the format that the phone uses will be carried through many other computers and devices. Smart-phones generally have the ability to view a range of data types, the ability to view MS file formats is common (which excludes free competitors). My Viewty has an entire menu section dedicated to Google services (Gmail, blogger, youtube, etc). That s nice for Google who presumably paid well for that, but not so good for me as I don t use any of the Google features on my phone. Now a menu that had a caching IMAP client, an RSS feed reader, a Wordpress API client, a Jabber client, and a caching Wikipedia client would be really useful. My current phone is just under a year old, so I won t be buying a new phone until January 2011 (unless I break or lose my Viewty). Hopefully then there will be some better options. Before anyone suggests that I buy another phone to help with the coding, my current free software coding projects are all behind schedule http://mako.cc/copyrighteous/20091017-00

17 October 2009

Benjamin Mako Hill: The Computer in My Pocket

If we've kept up with projections, by the end of this year, the world will be home to 3 billion mobile phones. That's nearly one phone for every other living human being. Although these phones open up a world of important new opportunities in communication, creativity, and cooperation --- and it's important not to understate this fact --- they also represent a step toward a sort of technological dystopia not unlike Stallman's Right To Read. Phones represent one of the most locked-down, proprietary, and generally unfree technologies in wide distribution. The implications for software freedom and technological empowerment are dire. But despite the fact that mobile phones represent what may be the greatest threat to software freedom today, the free software community has --- with a number of notable exceptions that I want to both thank and draw increased attention to --- been mostly silent on the issue. I know passionate advocates of software freedom who work tirelessly to rid themselves and the world of a handful of binary blobs in the Linux kernel --- important work that we all benefit from. And yet, even some of these "hardliners" don't seem to hold their phones to their same standards as their laptops. Ubuntu's decision to ship a new binary driver remains more controversial than the fact that the vast majority of the world's computer using population knows nothing other than phone-based computers that remain almost unthinkably unfree and which remain almost entirely unfreeable when compared to personal computers. For most of the world's computer users', there is no option of, and essentially no hope for, freedom on their current devices. It shocks me that anyone, especially free software advocates, would happily put up with such non-free computers.[1] I think part of the reason lies in the fact that most users of mobile phones, and even most phone users that care about software freedom and technological autonomy, don't think of their phones as computers. Thinking that our phones as computers will not solve any of the problems I've alluded to. But doing so remains an essential first step toward any solution. Although we must still work to build viable, widely accessible, and compelling free phones, we must first convince both users and developers that this is an important goal. Reminding people that our phones, both free and non-free, are powerful general-purpose computers remains an important and still largely unfufilled part of this process. We must find ways to remind ourselves and others of the fact that modern phones are powerful computers with powerful interfaces that are useful for a unimaginable variety of arbitrary applications. We must focus on the fact that these computers have microphones, sensors, and other sensors and that we trust them with our closest secrets and most sensitive data. We must not forget that, in almost all cases, these computers remain controlled, completely and ultimately, by companies that very few of us trust at all. I'm not sure how we will accomplish this task. But more of us need to think long, hard, and creatively about this problem. I'll be calling my phone "my computer" as a first, very personal, step. I have done this over the last week and it has led to some conversations with slightly confused acquaintances. Of course, this doesn't make my phone any less free. But it does mean I'm talking more about the non-freeness most of us have put up with too silently. At this stage, that seems like progress.
[1]Like many free software advocates, my phone is also a computer running a combination of free and non-free software. I use it unhappily and am doing what I can to change this.

Russell Coker: Links October 2009

Garik Israelian gave an interesting TED talk about spectrography of stars and SETI [1]. He assumes that tectonic activity is a pre-requisite for the evolution of life (when discussing the search for elements that are needed for life) and that life which is based on solar energy will have a similar spectrographic signature to the chlorophyl based plants that we are familiar with. I doubt both those assumptions, but I still found the talk very interesting and I learned a lot. Julian Dibbell wrote an interesting Wired article about an ongoing battle between the Cult of Scientology and 4chan [2]. I don t often barrack for 4chan, but they seem to be doing some good things here but of course they do it in their own unique manner. The article also links to a hilarious video of Tom Cruise being insane, among other things he claims that Scientologists are only ones who can help at an accident site. Has Tom Cruise ever provided assistance at a car crash? The Independent has an article by Robert Fisk about the impending shift away from the US dollar for the oil trade [3]. This is expected to cause a significant loss in the value of the US dollar. Robin Marantz Henig wrote an interesting article for the NY Times about the causes of anxiety [4]. It focusses on Jerome Kagan s longitudal studies of babies and young people. One thing that I found particularly interesting were the research issues of recognising the difference between brain states, internal emotional state, and the symptoms of emotions that people display (including their own description of their emotions which may be misleading or false). The tests on teenage social interactions that involved fake myspace pages and an MRI were also interesting. Juan Cole wrote an insightful Salon article titled The top ten things you didn t know about Iran [5]. The Iranian government doesn t seem to be a threat to anyone outside their country. Clay Shirky wrote an insightful post about TV being a heat-sink for excess spare time and considers the number of projects of the scale of Wikipedia could be created with a small portion of that time [6]. It seems that the trend in society is to spend less time watching TV and more time doing creative things. In a related note Dan Meyer has an interesting blog post about trolls who say You Have No Life [7]. The Making Light blog post about Barack Obama s Nobel Peace Prize has some insightful comments [8]. I doubted that he had achieved enough to deserve it, but the commentators provide evidence that he has achieved a lot. I wonder if he will receive a second Peace Prize sometime in the next 10 years. The Making Light blog post about bullies and online disputes predictably got diverted to discussion school bullying [9]. The comments are interesting. Making Light has a mind-boggling post about homosexuality and porn [10]. US Senator Tom Coburn s (R-OK) chief of staff Michael Schwartz made the case against pornography. All pornography is homosexual pornography , said Schwartz, quoting an ex-gay friend of his. Among other things there are many good puns in the comments. Cubicle Jungle is an amusing satire of the computer industry [11]. It s shocking how long it goes before it gets to the part that s obviously fiction. The WikiReader is an interesting new device [12]. It costs $99US and has a copy of Wikipedia on an SD card, they have a subscription service that involves posting you a new SD card every 6 months, or you can download an image from their server. They state that they have a filtered version of Wikipedia for children, I wonder how they manage that, I also wonder whether they have an unfiltered version for adults. The device runs on two AAA batteries and is designed to be cheap and easy. Naturally it doesn t support editing, but most of the time that you need Wikipedia you don t need edit access or access to content that is less than 6 months old. Exetel are scum, customers who complain are cut off [13]. Making Light has an interesting post about a New Age scumbag who killed at least two of the victims who paid $10,000 for a sweat-lodge workshop (others are in hospital and may die in the near future) [14]. The NY Times has an interesting article about Jamie Oliver and his latest project [15]. He is trying to reform the eating habits of the unhealthiest area in the US. The 15 pound burger sounds interesting though, I wouldn t mind sharing one of those with 14 friends

Christian Perrier: Thy laptop shalt be a database server (take 2)

Thanks to people who reacted to this post of mine. As expected, when one posts such angry post, reactions come. Guess what: that was intended..:-) So, I got more background on this KDE pulls MySQL in issue. The issue is more subtle than just KDE upstream being dumb and using a MySQL daemon or database for desktop operations. In short, akonadi uses mysqld to manage its cache, from what I understood. So, what's needed is indeed the mysqld binary and not necessarily having it running as a *daemon*. Bug #513382 explains it all. I really hope that MySQL and KDE maintainers will settle to find a solution for this. Apparently, other distros managed to get such issue solved and I would hate Debian being laughed at because we are the only ones where "thy laptop shalt be a database server". Really, I won't be getting deeper into that issue, because I don't have the expertise but, really also, we can't seriously ship Squeeze with the current setup. What's unclear from the pointed bug report is whether someone is doing something about this. Yes, the issue is not new. I actually went on it because I was installing a new laptop and noticed questions about MySQL. My former laptop already had MySQL for other reasons, so I never noticed that my KDE packages were suddenly pulling more stuff in. Thanks to Sune Vuorela, from the Debian KDE team, and Eckhart W rner, from upstream KDE, for bringing more light on this. Ah, and thanks also to people who reworked the design of kdm login screen. It's really nice..:-) (and this is not sarcasm, here, I really mean it).

16 October 2009

Russell Coker: TPG Lies

Shortly before 9AM this morning I discovered that the IP address for my mail server was not being routed, according to my logs the problem started shortly after midnight. It s on a TPG ADSL connection, there is one IP address for the PPPOE link and 6 addresses in a /29 routed to it one of the addresses in the /29 is for my mail server. It wasn t until 3PM that I was able to visit the server to sort the problem out. It turned out that the main IP address was working but the /29 wasn t being routed to it. So TPG had somehow dropped the route from my routing table. I pinged all the addresses from a 3G broadband connection on my EeePC while running tcpdump on the server, and no packets for the /29 came through but the IP address for the PPP link worked fine. I was even able to ssh in to the server once I knew the IP address of the ppp0 device for future use I need to keep ALL IP addresses of all network gear on my EeePC not just the ones used for providing services. So I phoned the helpdesk, and naturally they asked me inane questions. My patience extended to telling them the broadcast address etc that was being used on the Ethernet device (actually a bridge for Xen but I wasn t going to confuse them). The system been power-cycled before I got there in the hope that it might fix the problem so I could honestly answer the question have you rebooted it (usually I lie rebooting systems to fix network problems is a Windows thing). But my patience started to run out when they asked me to check my DNS settings, I explained very clearly that my problem was that IP packets couldn t get through and that I wasn t using DNS and demanded that they fix it. I didn t get anyone technical to look at the problem until I firmly demanded that the help-desk operator test the routing by pinging my systems. The help-desk people don t have Internet access so that actually testing the connection required escalating the issue. It seems that the algorithm used for help-desk people is to just repeatedly tell people to check various things on their own system, and that continues until the customer s patience runs out. Either the customer goes away or makes requests firmly enough to get something done about it. So their technician did some tests and proclaimed that there was no problem. While said tests were being done things started working, so obviously their procedure is to fix problems and then blame it on the customer. It is not plausible to believe that a problem in their network which had persisted for more than 15 hours would accidentally disappear during the 5 minute window that the technician was investigating the problem. In the discussion that followed the help-desk operator tried to trick me into admitting that it was my fault. They claimed that because I had used multiple IP addresses I must have reconfigured my system and had therefore fixed a problem on my end, my response was I HAVE A HEAP OF MACHINES HERE RUNNING ALL THE TIME, I USE WHICHEVER ONE I FEEL LIKE, I CHANGED NOTHING . I didn t mention that the machines in question are DomUs on the same Xen server, someone who doesn t understand how ping works or what routing is wouldn t have been able to cope with that. I stated clearly several times that I don t like being lied to. Either the help-desk operator was lying to me or their technician was lying to them. In either case they were not going to trick me I know more about how the Internet works than they do. TPG was unable to give me any assurance that such problems won t happen again. The only thing I can be sure of is that when they lie they will stick to their story regardless of whether it works.

Gunnar Wolf: Getting closer to the fifth EDUSOL Encounter

This is the fifth year we hold an EDUSOL, and we are closing in on it. EDUSOL is an online encounter whose topics are Education and Free Software Actually, this year we are widening our scope, and we will include Free Culture as well as a base area. Now, besides those three general areas, each year we have had a base topic around which we invite the speakers to talk about (although it is a lax requirement). This year, the base topic is social networks No, not in the Twitter/Facebook/blah sense, but as a wider phenomenon, studying interaction between people, the forming of communities. And for our particular areas, the forming of knowledge-based communities. Anyway I agreed with the organizers to provide the English translation of the participation invitation. I will skip the call for papers, as we are basically at the proposal deadline (October 17), but if you have anything you want to propose, please tell us so! Leaving that aside... Please excuse the quality of my translation, it is late and I'm tired. We will work on it :) Videoconference reception EDUSOL spans several participation categories. The closest category to a traditional, face to face conference. Each year, we invite a group of speakers to talk about a topic related to our main discoursive line. Among the speakers that have confirmed so far, we have: We invite you to be active participants in the videoconference cycle. You can invite your social or user group to be part of the Encounter. There are three ways to do it:
  1. Using the videoconference facilities in your University network
  2. Connecting from a personal computer with broadband access, by using Ekiga or any other H.323 client
  3. Following the .ogg stream and participating back via IRC
In any case (specially in the first two, which require more coordination), please contact us. For further information, visit http://edusol.info/es/e2009/convocatorias/videoconfrencias November 6: Free Education and Free Culture day We invite social and user groups to host talks regarding Free Education and Free Culture. This is not a call to promote Free Software, as there are many other spaces devoted to it. We should start with the idea that freedom resides in us, not in the software. Some of the topics our community recommends are: Further details at http://edusol.info/es/e2009/convocatorias/dialternativo We need some help in this area to generate contents with slides, making it easier for proposed scripts for the talks. If you want to collaborate, please write to our academic support list, http://lists.edusol.info/listinfo.cgi/soporte-academico-edusol.info Want to collaborate? Further questions or comments? We are holding on-line meetings for this group of topics on Thursday 22:00 GMT-5, in the #edusol channel in OFTC (irc.debian.org); you can enter the IRC channel using the Web client at http://irc.bine.org.mx or http://edusol.info/irc About EDUSOL EDUSOL started as a proposal seeking to provide a space so that people interested in education could discuss and analize the good and bad points about Free Culture and Free Software, with no geographic restrictions. Year after year, freedom-loving educators of all Latin America and Spain gather for our annual party. EDUSOL's core language is Spanish, although participation in English is allowed and encouraged (although understanding Spanish will be a strong aid). We invite you to participate and contribute in this collective effort using and commenting on our blogs, or adding your personal blog to our planet: http://edusol.info/es/node/add/blog
http://edusol.info/es/node/add/feedapi-node You can follow us by identi.ca or RSS: http://identi.ca/group/edusol
http://edusol.info/rss.xml

15 October 2009

Anand Kumria: It is easy to not hear when your fingers are in your ears.

I read this post by Steve Waddington of Exetel where he says that customers never seem to follow-up with him when he asks them about their poor customer experiences. I just had to laugh. I had actually just filled a complaint with the TIO about Exetel. I have emailed Steve Waddington a number of times, generally outlining problems, but I am yet to ever receive a response. Generally if you want to hear feedback from your customers, you have to take your fingers out of your ears. Here is my (most recent) Exetel story. To set the scene, I am synchronising a large backup of data. Think around 100Gb. In reality a small amount. Towards the end of September, we receive an email indicating that we had used a large amount of service. Furthermore that we had 72 hours to pay an interim fee of AUD$100. The email was sent in the early hours of a Friday morning. Which effectively turned it into a single business day. Heaven help you if you had decided to take a long weekend. At any rate, the fee was paid by that afternoon and a name and receipt were obtained. Everything should have be hunky-dorey. Come Monday morning - the Internet service had mysteriously failed. After some remote, expensive AU to UK phones calls and diagnostics I determined that the problem was that Exetel's system had disconnected the service anyway. I emailed them to see what the problem was, and contact was made from Australia. Around the middle of the day, service was restored. A complaint was filed with them (reference: #1691636), that day, which was summarily responded too. I left things for a while since I was busy. But on the 13th Oct night, I decided to file a complaint with the TIO (reference: 09/251856). Here is the full text:
Describe your complaint On 25 Sep, roughly 07:30am, an email was received from Exetel that they required an interim payment as our usage had exceeded AUD$100. The email indicated that if payment was not received within 72 hours - the service may be suspended. At roughly 3:15pm, on 25 Sep - i.e. the same day. A payment of AUD$100 was made and we were issued receipt number 346650646 by an employee who indicated that there name was Rukshani. On 28 Sep at roughly 8am, the Internet ceased to function. After some investigation we determined that Exetel's automated systems believed that the payment had not occurred. #1: I sent an email at 11am on 28 Sep to their billing department, along with their senior management, with payment and service details asking why this occurred. #2: A complaint was sent by the payee at 11:30am on 28 Sep indicating that we were unhappy with the service -- having been customers of long standing (over 4 years) -- being disconnected for over 4 hours despite paying is annoying. Particular when this was not through fault of our own. Nor a technical fault. How did the service provider respond to your complaint #1: On 30 Sep at 12:45 an email was received from James Lowe, who said "Your service is un block now [sic]". No explanation was provided for the outage and non-application of the payment made. #2: 2 responses were received to this email. #2a: At ~11:50am on 28 Sep we received an email from Larry Kaeto who said that the service was unavailable for 2hrs 31mins, not the 4hrs as we had claimed. Additionally he indicated that we had a residental service which is not to be relied upon for business/mission critical requirements and suggested we purchase a more expensive service which has "business grade type support". #2b: At ~09:40am on 29 Sep we received a further email from Larry Kaeto who claimed that no payment had been received by Exetel on 25 Sep. How would you like the service provider resolve your complaint Exetel appears to pride itself on its automated systems. (c.f. http://johnl.blogs.exetel.com.au/index.php?/archives/2783-Automating-Key-Systems-Is-A-Never-Ending-Task.html) However, in this case, the automated system issued a demand for money. The money was paid, but it suspended access to the service anyway. Service should not have been disrupted for 1 minute nor 150 minutes nor 240 minutes. I believe the charge of AUD$100 and the monthly charge should be credited back to us for the hassle.
I've put in the headings as they are on the TIO complaint form, and made the URL a link otherwise it is exactly as I submitted it which is also why the text is not very lengthy, as the TIO restrict how much you can submit. This morning, at 09:10 I received an email from Exetel acknowledging receipt of the TIO complaint and asking Please detail in a point by point manner your concerns. This email was from Larry Kaeto. It also contained a copy of the most recent LNS logs. I replied with a full copy of the complaint as I submitted it to the TIO (reference: #1770435) and also indicated I would speak with the TIO to confirm what they had sent to Exetel (Exetel reference: #1771491). By 12:56, Larry Kaeto was able to responsd, quoted here and edited to occlude privacy information:
Exetel acknowledge payment 25/9/09 was manually processed 25/9/09 but the record to remove the timer to suspend in 72 hrs was not removed. I did not see the manual payment of the 25/9/09. Sorry for my ''incompetence'' for saying payment was not made. The duration of suspension was 2 hours and 28 minutes (or thereabouts) as the facts show below (our session logs and your usage time logged in and out) and nto 4 hours as is claimed. As gesture of goodwill, Exetel will provide a refund of $100 Exetel has made a commercial decision to end the relationship with you. See e-mail sent separately titled ''Ticket #1771491: XXXXXXXX5X - Notice of Termination - XXXXX XXXXXX ''
So, as you can see from John Linton's post, if there is a problem with taking payment your service is summarily disconnected. And, as you can see here, even if they take payment, but their automated system fails, if you complain about it, your service is summarily disconnected. It is much easier to listen to your customers when you take your fingers out of your ears.

Romain Beauxis: Ocaml-cry

Coming along with the next release of liquidsoap, we have just released a new module for ocaml, namely ocaml-cry. Ocaml-cry is a native implementation of the protocols used for sending source data to icecast and shoutcast servers. The main difference with the famous libshout implementation is about flexibility. This module allows to set any source header, which in particular allows to use any custom format which is compatible with the servers. However, contrary to libshout, ocaml-cry does not handle the synchronisation of the audio data sent to the servers. Hence, the task of controling the rate of the data sent is up to the programmer. You can find more informations on this module there: http://www.rastageeks.org/cry.html Debian packages are available there [1]: http://packages.debian.org/libcry-ocaml-dev

[1] Many thanks to the ftp-masters for dealing with the NEW package so fast !

14 October 2009

Patrick Schoenfeld: PHP and the great "===" operator

Lets suppose you've got an array with numeric indices:
[0] => 'bla'
[1] => 'blub'
Now you want to do something if the element 'bla' is found in that array.
Well, you know that PHP has a function array_search, which returns the key(s) of the found values. Lets say, you write something like this:
if(array_search($array, 'bla')) do_something

Would you expect that do_something would actually do something?
If yes: You are wrong.
If no: Great, you've understand some parts of PHP - insanitygoodness..

Actually, if 'bla' wouldn't have the index 0 it would work, because 1, 2, 3, 4, etc. is TRUE. But unfortunately PHP has some sort of implicit casting, which makes 0 behave like a FALSE, depending on the context. So following this, the if() works for all elements except 0.

You might be tempted to write
if(array_search... != FALSE)
But this wouldn't help you, because 0 would still evaluate to FALSE, leading to if(FALSE != FALSE) which is (hopefully obviously) never true.

A PHP beginner (or even an intermediate, if he never stumbled across this case) might ask:
Whats the solution for this dilemma?

Luckily the PHP documentation is great. It tells you about this. And additionally PHP has got this great operator (===), which causes people to ask "WTF?" when they hear about it for the first time. Additionaly to comparing the values to each other, they also check the type of the variable. This leads to the wanted result because 0 is an integer, while FALSE is Boolean. So the solution for our problem looks like this:
if (array_search($array, 'bar') !== FALSE)
Isn't this great?

Robert McQueen: Telepathy Q&A from the Boston GNOME Summit

The first Telepathy session session on Saturday evening at the Boston GNOME Summit was very much of a Q&A where myself and Will answered various technical and roadmap issues from a handful of developers and downstream distributors. It showed me that there s a fair amount of roadmap information we should do better at communicating outside of the Telepathy project, so in the hope its useful to others, read on MC5 Ted Gould was wondering why Mission Control 4 had an API for getting/setting presence for all of your accounts whereas MC5 does not. MC5 has a per-account management of desired/current presence which is more powerful, but loses the convenience of setting presence in one place. Strictly speaking, doing things like deciding which presence to fall back on (a common example being if you have asked for invisible but the connection doesn t support it) is a UI-level policy which MC should not take care of, but in practice there aren t many different policies which make sense, and the key thing is that MC should tell the presence UI when the desired presence isn t available so it could make a per-account choice if that was preferable. As a related side point, Telepathy should implement more of the invisibility mechanisms in XMPP so it s more reliably available, and then we could more meaningfully tell users which presence values were available before connecting, allowing signing on as invisible. Since MC5 gained support for gnome-keyring, its not possible to initialise Empathy s account manager object without MC5 prompting the user for their keyring password un-necessarily (especially if the client is Ubuntu s session presence applet and the user isn t using Empathy in the current session but has some accounts configured). Currently the accounts D-Bus API requires that all properties including the password are presented to the client to edit. A short-term fix might be to tweak the spec so that accounts don t have to provide their password property unless it s explicitly queried, but this might break the ABI of tp-glib. Ultimately, passwords being stored and passed around in this way should go away when we write an authentication interface which will pass authentication challenges up to the Telepathy client to deal with, enabling a unified interface for OAuth/Google/etc web token, Kerberos or SIP intermediate proxy authentication, and answering password requests from the keyring lazily or user on demand. Stability & Security Jonathan Blandford was concerned about the churn level of Telepathy, from the perspective of distributions with long-term support commitments, and how well compatibility will be maintained. Generally the D-Bus API and the tp-glib library APIs are maintained to the GNOME standards of making only additive changes and leaving all existing methods/signals working even if they are deprecated and superseded by newer interfaces. A lot of new interfaces have been added over the past year or so, many of which replace existing functionality with a more flexible or more efficient interface. However, over the next 4-6 months we hope to finalise the new world interfaces (such as multi-person media calls, roster, authentication, certificate verification, more accurate offline protocol information, chat room property/role management), and make a D-Bus API break to remove the duplicated cruft. Telepathy-glib would undergo an ABI revision in this case to also remove those symbols, possibly synchronised with a move from dbus-glib to GVariant/etc, but in many cases clients which only use modern interfaces and client helper classes should not need much more than a rebuild. Relatedly there was a query about the security of Telepathy, and how much it had been through the mill on security issues compared to Pidgin. In the case of closed IM protocols (except MSN where we have our own implementation) then we re-use the code from libpurple, so the same risks apply, although the architecture of Telepathy means its possible to subject the backend processes to more stringent lockdowns using SElinux or other security isolation such as UIDs, limiting the impact of compromises. Other network code in Telepathy is based on more widely-used libraries with a less chequered security history thus far. OTR The next topic was about support for OTR in Telepathy. Architecturally, it s hard for us to support the same kind of message-mangling plugins as Pidgin allows because there is no one point in Telepathy that messages go through. There are multiple backends depending on the protocol, multiple UIs can be involved in saving (eg a headless logger) or displaying messages (consider GNOME Shell integration which previews messages before passing conversations on to Empathy), and the only other centralised component (Mission Control 5) does not act as an intermediary for messages. Historically, we ve always claimed OTR to be less appealing than native protocol-level end-to-end encryption support, such as the proposals for Jingle + peer to peer XMPP + TLS which are favoured by the XMPP community, mostly because if people can switch to an unofficial 3rd party client to get encryption, they could switch to a decent protocol too, and because protocol-level support can encrypt other traffic like SRTP call set-up, presence, etc. However, there is an existing deployed OTR user base, including the likes of Adium users on the Mac, who might often end up using end to end encryption without being aware of it, who we would be doing a disservice by Telepathy not supporting OTR conversations with these people. This is a compelling argument which was also made to me by representatives from the EFF, and the only one to date which actually held some merit with me compared to just implementing XMPP E2E encryption. Later in the summit we went on to discuss how we might achieve it in Telepathy, and how our planned work towards XMPP encryption could also help. Tubes We also had a bit of discussion about Tubes, such as how the handlers are invoked. Since the introduction of MC5, clients can register interest in certain channel types (tubes or any other) by implementing the client interface and making filters for the channels they are interested in. MC5 will first invoke all matching observers for all channels (incoming and outgoing) until all of them have responded or timed out (eg to let a logger daemon hook up signal callbacks before channel handling proceeds), all matching approvers for incoming channels until one of them replies (eg to notify the user of the new channel before launching the full UI), and then sending it to the handler with the most specific filter (eg Tomboy could register for file transfers with the right MIME type and receive those in favour to Empathy whose filter has no type on it). Tubes can be shared with chat rooms, either as a stream tube where one member shares a socket for others to connect to (allowing re-sharing an existing service implementation), or a D-Bus tube where every member s application is one endpoint on a simulated D-Bus bus, and Telepathy provides a mapping between the D-Bus names and the members of the room. In terms of Tube applications, now we ve got working A/V calling in Empathy, as well as desktop sharing, and an R&D project on multi-user calls, our next priority is on performance and Tube-enabling some more apps such as collaborative editing (Gobby, AbiWord, GEdit, Tomboy ?). There was a question about whether Tube handlers can be installed on demand when one of your contacts initiates that application with you. It d be possible to simulate this by finding out (eg from the archive) which handlers are available, and dynamically registering a handler for all of those channel types, so that MC5 will advertise those capabilities, but also register as an approver. When an incoming channel actually arrives at the approval stage, prompt the user to install the required application and then tell MC5 to invoke it as the handler. Colin Walters asked about how Telepathy did NAT traversal. Currently, Telepathy makes use of libnice to do ICE (like STUN between every possible pair of addresses both parties have, works in over 90% of cases) for the UDP packets involved in calls signalled over XMPP, either the Google Talk variant which can benefit from Google s relay servers if one or other party has a Google account, so is more reliable, or the latest IETF draft which can theoretically use TURN relays but its not really hooked up in Telepathy and few people have access to them. XMPP file transfers and one-to-one tube connections use TCP which is great if you have IPv6, but otherwise impossible to NAT traverse reliably, so often ends up using strictly rate-limited SOCKS5 -ish XMPP proxies, or worse, in-band base64 in the XML stream. We hope to incorporate (and standardise in XMPP) a reliability layer which will allow us to use Jingle and ICE-UDP for file transfers and tubes too, allowing peer to peer connections and higher-bandwidth relays to enhance throughput significantly. Future Ted Gould had some good questions about the future of Telepathy
Should Empathy just disappear on the desktop as things like presence applets or GNOME Shell take over parts of its function? Maybe, yes. In some ways its goal is just to bring Telepathy to end users and the desktop so that its worth other things integrating into Telepathy, but Telepathy allows us to do a lot better than a conventional IM client. Maemo and Sugar on the OLPC use Telepathy but totally integrates it into the device experience rather than having any single distinct IM client, and although Moblin uses Empathy currently it has its own presence chooser and people panel, and may go on to replace other parts of the user experience too. GNOME Shell looks set to move in this direction too and use Telepathy to integrate communications with the desktop workflow. Should Telepathy take care of talking to social networking sites such as Facebook, Twitter, etc? There s no hard and fast rule Telepathy only makes sense for real-time communications, so it s good for exposing and integrating the Facebook chat, but pretty lame for dealing with wall posts, event invitations and the like. Similarly on the N900, Telepathy is used for the parts of the cellular stack that overlap with real-time communications like calling and SMS, but there is no sense pushing unrelated stuff like configuration messages through it. For Twitter, the main question is whether you actually want tweets to appear in the same UI, logging and notification framework as other messages. Probably not anything but the 1-to-1 tweets, meaning something like Moblin s Mojito probably makes more sense for that. Later in the summit I took a look at Google Latitude APIs, which seem like something which Telepathy can expose via its contact location interface, but probably not usefully until we have support for metacontacts in the desktop. Can/will Telepathy support IAX2? It can, although we d have to do a local demultiplexer for the RTP streams involved in separate calls. It s not been a priority of ours so far, but we can help people get started (or Collabora can chat to people who have a commercial need for it). Similarly nobody has looked at implementing iChat-compatible calling because our primary interest lies with open protocols, but if people were interested we could give pointers its probably just SIP and RTP after you dig through a layer of obfuscation or two.
If you want to know more about Telepathy feel free to comment with some follow-up questions, talk to us in #telepathy on Freenode, or post to the mailing list.

13 October 2009

Christian Perrier: Virtualization for dummies?

Dear Lazyweb, I'm currently installing my new toy^W laptop, namely a shiny Dell E4200 that will replace my good old X1. As this is not only my Debian laptop but also my work machine and I need to work with Windows several hours a day...but still receive my mail through my Debian laptop, I decided to put my fingers into virtualization. I know nearly nothing about this whole thing (up to now, my Windows work machine was a desktop machine). So, that's a perfect occasion to make my mind abou tall this, right? What I have been able to figure out as of now is that I could use Xen for this: the Debian machine would be the host machine (if I understand properly Xen jargon, that would be the dom0) and I would run Windows in a virtual machine (domU). Another option would be having the host system run a very small Debian system and use two "domU", one with Debian unstable and the other one with Windows. But, indeed, I don't really see the benefit of this except wasting my resources. As I'm having hard times having a Xen hypervisor work properly (I iitially installed the machine as a regular Debian machine), I actually wonder whether I'm going The Right Way.....and I also try to find some good "virtualization with Xen for dummies" references. For instance, about how to boot the damn hypervisor when using grub2, an encrypted root file system (/boot on ext2), etc. Where, really, do I need to look?

Jonathan McDowell: What to wear?

I tend to dress quite casually - unless there's a good reason to do otherwise I'll be in jeans and a t-shirt, or something similar. I'm comfortable in it and I take the view point that in general people shouldn't be making assumptions based on what I'm wearing. Of course they do, and while this can be infuriating at times it can also be amusing. The man at the RBoS who witnessed me signing the personal DD guarantee form for Black Cat obviously couldn't reconcile my appearance with what I was there to do, for example.

I'd never thought about this from the other side until a few weeks ago. I spoke to someone who explained how difficult it had become to conduct business meetings with other companies with the increased level of business casual. In fact on occasion different branches of the same company that he'd be meeting with would have different dress codes, so he'd go to something involving casual dress in the morning and something with full business suit attire in the afternoon and end up feeling over or under dressed.

This isn't likely to make me change my own behaviour in the immediate future (I don't have to interact with external parties as part of my current job). It did help me realise that there was another explanation for awkward behaviour when I'm my usual scruffy self that wasn't just about judging on appearances though.

(All of the above blatantly obvious once you think about it, but it took that conversation for me to do so.)

12 October 2009

Matthew Garrett: Asymmetries in offence

I wasn't going to write about this since I thought that Chris's post covered pretty much everything I would have said, but after reading Scott's entry on how people would have interpreted Mark's remarks differently if he'd said "We'll have less trouble explaining to boys what we actually do" instead I realised that people are still confused about the fundamental issue here.

The assumption that Scott's making is that "girls" and "boys" are semantically equivalent in this case. They're not. There's various ways in which the symmetry is broken, but the most basic one is that Mark's a straight man. When the overwhelming stereotype is that "we" as a community are heterosexual males, using "we" as a shorthand for "People who are straight men" is unfortunate because it supports that stereotype. Using "we" as a shorthand for "People who are attracted to men" doesn't. Unsurprisingly, this results in a fairly significant change in who's going to be offended.

Whatever his intentions (and I could easily believe that it was a slip of the tongue), Mark managed to imply that the Linux community is entirely made up of straight men. This is possible because straight men do make up the majority of the Linux community. In contrast, Scott's version doesn't succeed in implying that everyone in the Linux community is attracted to men because it's blatantly obviously not the case, so we know that Scott is using "we" in a different manner. Context is important, and unless you can invert everything else about the situation as well then simply replacing the word "girls" with "boys" doesn't give you any meaningful insight into whether or not people are justifiably offended.

In a more general sense, I'm saddened by this case because I think it's a clear case where the Ubuntu code of conduct could have been used to good effect. "Be excellent to each other"[1] ought to include accepting that you've offended other people without meaning to and making appropriate restitution. If the offence was unintended, an apology should be cheap. Whatever the reality of the situation, failing to provide that apology gives people the impression that either the offence was intended or that Mark doesn't care about those who were offended. That's not a good way to build an inclusive community.

[1] Mako's original summary of the code of conduct

11 October 2009

Dirk Eddelbuettel: Chicago Marathon 2009

Earlier today the 33rd Chicago Marathon was held. I will organise my comments by pointing out three epic fails. First, of course, was the Chicago weather. After two successive marathon in excessive heat --- the 2007 race I completed, poorly, with its thousands of runners forced to abandon when the race was cancelled due to excessive heat, and the 2008 version which I skipped as I ran Berlin that year just weeks before Chicago, this year had forecasts of temperatures in the thirties and possibly snow the night before. Well, the weather cleared up -- but with those clear skies we still got a severe weather alert for the area due to frost! So at the (now earlier by 30 minutes) race start, it was very nippy and in the higher 30s, improving steadily under sunny skies. Overall, a little chilly and hence not exactly ideal, but not too bad in the grand scheme of things. A little windy coming up Michigan Avenue. But hey, Wanjiru still finished with a course record though still well off the world record. So maybe not a fail after all. The second fail, though, was my GPS which I had just blogged about yesterday (albeit indirectly). I had had my issues with the previous (much simpler and older) Forerunner 205 which lost satellite tracking when running downtown amidst the skyscrapers. I had high hopes that this newer model would do better. But no, not only did it loose track within the first few miles, it even managed to outdo the older model by turning its GPS tracking off in the later stages. Now that's a fail! The third and final fail, unfortunately, concerns my run. Training had gone well enough to let me hope for another decent race. However, a latent cold during the last two weeks had left me somewhat afraid I might not do well. Things felt better yesterday, and I ended up running a decent first eighteen miles to the waterstop the rest of my household was working. And thereafter: well let's just say that the wheels came off. I ended up with a 3:25:40 (or around 7:51 min/mile and 4:53 min/km) which is not terrible but also not one of my better races. I updated the two race data geekery charts shown here before to illustrate the fail. As I am running out of shades of blue for Chicago, I show the 2009 race in purple. A decent, flat chat indicating a reasonably steady pace throughout most of the race ... followed by one of the very worst finished. And as discussed above, I cannot really blame the weather either. (updated marathon pace comparison chart) I also updated my 'performance by race type through time' chart which suggests that I may be getting slower for marathons (if we allow for a non-linear effect). Eek. (pace by date given group lattice chart)

Jeff Bailey: Karmic review

Angie has my old laptop that some might remember from a couple Ubuntu developer summits. Adam Conrad used to refer to it as the surfboard: a lovely 15" widescreen laptop. It's my test machine for Ubuntu updates and so far I'm loving Karmic. This machine has been continually upgraded since either Hoary or Breezy without a reinstall.

Jaunty was miserable. Bugs in the Intel drivers meant that DVD playing stopped working, sounds would occasionally lock up, and things were just painfully slow. Karmic to the rescue. I did the update at beta time like I usually do, and without any further effort:

* Flash just worked.
* DVD playing in totem just worked.
* Boot time was slightly quicker
* nethack-gnome continues to work (despite being removed from the archive a few releases ago)
* Suspend/resume continues to just work.
* Atheros wireless continues to just work with the free kernel drivers.

I then added the dev channel of Google Chrome, which imported all the Firefox bookmarks and started to remove some optional things that Angie doesn't use anymore and don't run well on the now 5 year-old laptop. I took out openoffice, a pile of -dev packages that were leftover from when I used to build glibc on this thing (This laptop had the Hurd running on it at one point... *g*), and then discovered the System->Admin->Package Cleanup (Or at least, it's called something like that, the laptop is in French) where I could start to remove unused packages. I did a few rounds of that, some apt-get autoremove. I took universe and multiverse out of the packages list and did some more removals, making sure to leave in things like deborphan and the gstreamer packages that are in universe and multiverse. Lastly, I did a round of deborphan to take out some pieces that were just hanging out.

As a final step I've updated to grub2. I don't have a separate /boot partition on this machine, so I haven't been brave enough to convert it to ext4 yet.

The boottime at this point still feels a little long for what this laptop does. While at Canonical, I played with some appliance configs and had from kernel load to running firefox in a dozen seconds or some. This laptop doesn't have anything I'd see as unusual for daemons - there's no mysqld, sshd, or anything unneeded like that. But to have everything Just Work(tm) at this stage is amazing.

Nice job. =)

update: Angie's asked me to figure out why the screen saver kicks in after 30 seconds instead of 10 minutes like it's set to. But still, if this is the worst that goes wrong with this release, then it's still a wild success already at Beta.

Next.

Previous.