Search Results: "beh"

26 September 2007

Scott James Remnant: Why I choose Bazaar (a history of revision control)

Like any sensible software developer, I have a close relationship with revision control systems. In my previous job, I was an SCM Engineer (see Software configuration management) which meant I had an even closer relationship than most, since we were running the CVS servers and actively using them to track changes and deployments. We all know, deep down, that revision control systems shouldn’t exist. This kind of thing should be inherent in the design of the operating system, through standard file and filesystem formats. The OLPC interface is making some headway towards that, but for the rest of us, it means using a revision control tool throughout the development process. Unfortunately, even though the tool is expected to be the most-used command on your system, very few of them are particularly easy to use. Thus there’s a large learning curve, and people become religious about their choice since they have invested significant time in using it. Just to spice the mix up, not only will people religiously defend their choice of revision control system, but they’ll do so while actively hating it. In the beginning there was CVS and we all thought that it was pretty good. It was based on the simpler RCS and shared a file-format with it, but introduced control of directory trees and remote operation. Actually, in reality, CVS wasn’t that good. Its command set could be a little strange and inconsistent (e.g. it’s not possible to diff between two dates on a branch); the support for branching assumed that all branches would be merged into the mainline, and only once; and nobody ever really knew how to create a new project in a repository (tip. cvs import is wrong). But we all used it anyway, and we muddled through. It did have some good features; it was simple, fast and pretty reliable–when it did break, you could usually fix the repository yourself. And most importantly of all, we understood how to drive it. And so it was for many years, until Subversion (SVN) came along. Subversion intended to be “a better CVS”, perhaps this goal should have made us suspicious at the time since CVS was already being a pretty good CVS by itself; unfortunately we hated CVS so much we flocked to the new system in hope. In hindsight, Subversion didn’t really improve on CVS much at all. In fact, arguably, the only real improvement was the addition of atomic commits (in CVS, each commit is per-file, so it’s manual labour to work out which change was made to two files at the same time). (Its support for branching, tagging, copying, renaming, etc. were no better than CVS’s when done in the repository by hand.) The cost of this single new feature was a much more complicated interface (with two separate commands), a backend that tended to break down weekly and a lethargic slowness to its operation. Most people I know now justify their use of Subversion instead of CVS by “Subversion is maintained, CVS isn’t” which is a somewhat self-fulfilling justification. While the mass conversion to Subversion, and ensuing disappointment and frustration, was going on; something new appeared on the horizon: Arch. Arch was different, it broke one of the core assumptions of revision control, that of the repository as a cathedral. In CVS, and Subversion like it, if somebody wants to modify your code (even if on a branch) you need to give them access to your own repository. In some cases (especially with CVS), vast access control and permission structures would be in place to ensure proper behaviour. With Arch, you don’t; all you need to give to anyone is read access. Anybody can make their own branch by copying yours and committing to their own copy. This model also necessitated fixing a long standing problem that CVS had; Arch has repeatable (smart) merging. If you merge from a branch, you can merge again later, and again, and again. Arch made this possible through each commit (changeset) having a globally unique identifier; made from the branch’s own globally unique identifier and the changeset number in the branch. Unfortunately while this was a massive step in a new direction, Arch had an absolutely terrible user interface. Its command list was terrifying with over 100 commands, many of which had multiple word names (tla set-tree-version). It exposed too many of its own innards, and expected you to learn them. It also forced baroque file naming semantics on its users and strange policy (though shalt not commit without first running “make clean”). Efforts were made to improve Arch’s user interface through projects such as baz, but they were always to be doomed from the start. We’ve since seen an explosion of new revision control systems; Monotone, Darcs, Git and Bazaar. What’s especially interesting is the commonality between these systems. They are all “distributed” like Arch, though they also all discard the strange “unique branch identifier” convention and instead simply assign a unique identifier to each file or commit. This means that they all support personal branches, and by necessity all support repeatable (smart) merging. So how do they differ, what are their killer features and killer problems? Monotone is all about repository integrity, ensuring that every commit is both authorised and intact. It pays for this with a severe lack of speed. Darcs is based around a “theory of patches”, a branch is not made up of its history but by the collection of patches in it. Unfortunately this often breaks down, and darcs frequently gets stuck calculating even trial and commonplace branch models. Git is very strange to me; its killer feature appears to be the speed at which it can handle very large trees, but the interface is as insane as Arch’s was. It is heavily optimised for the “I only apply patches” development model, at the expense of ordinary development models (it shares an issue with Arch where calculating annotations on an individual file is an expensive operation). What about Bazaar? Its killer feature is that it is designed to work the way you do. The command set is relatively small, and each of them works in the most obvious manner. It also supports plugins so that you can always implement your own workflow. Of all the revision control systems, it’s the only one (that I’m aware of) that supports both distributed and centralised workflows (and lets you go distributed when you need to, e.g. when you’re on a plane). Here’s a few examples of how Bazaar’s command set works the way you do. To start managing some code in bzr:
$ cd myproject
$ bzr init
To add the files, copy in your usual .bzrignore file and just add everything:
$ cp ~/bzrignore .bzrignore
$ bzr add
added foo.c
added bar.c
Check the output for mistakenly added files, adjust .bzrignore and remove the file with bzr rm. A common operation is realising that the commit you’re about to make should really go on a new branch for now:
$ cd ..
$ cp -a myproject myproject-foo
$ cd myproject-foo
$ bzr commit
A copy of a Bazaar branch is a different branch, you can commit to it separately. There’s a bzr branch command for it too (which deals with issues such as bound branches, checkouts, etc.) but it’s nice to demonstrate that Bazaar does what you’d expect even when you don’t use its own commands. Pulling changes from another branch (where you haven’t made any modifications yet) is easy:
$ bzr pull ../myproject
As is merging (when your branches have diverged):
$ bzr merge ../myproject
One particularly nice feature is that after a merge, you see the merge as a single commit and it can be treated as such; but it also has the set of merged commits indented under it–you can examine these as individual commits as well! What’s the downside of Bazaar? Well, it’s not the fastest system (but by no means the slowest), for small to medium sized projects this is never an issue but may be for extremely large projects–fortunately the developers are improving its performance all the time! But that doesn’t matter; it is, honestly, the first revision control system that I don’t hate.

Raphaël Hertzog: DSA needs a leader

Seriously. Now that we have been using the request tracker for quite some time, it’s even more obvious that the DSA team is not up to its task. Use login “guest” and password “readonly” if you want to check the RT tickets linked in this article. The facts Note that myself and Matt do not have the needed rights to fix most of the tickets, so we provided help on a best-effort basis. Otherwise we would have done more. The communication problem It’s a multi-level problem. Each of the members has some problems with one or more other members. Joey’s behavior has been part of the recurring problems mentioned: he doesn’t use the RT, doesn’t read the DSA email alias and doesn’t follow the DSA IRC channel but he still does stuff very regularly without reporting anything and obviously problems happen. Ryan and James tried to impose him a rule to document what he does, without success apparently. On the other side, as far as I know, Ryan and James also don’t impose themselves to document everything in a central changelog. Joey has refused to provide me an explanation for his behavior. He just reminded me that he holds grudges against James and Ryan because as ftpmasters they didn’t cooperate well with him while he was stable release manager. In general, outside of all personal griefs that they might have, the DSA members do not communicate very much (at least not on their own official channels). Some examples have already been given concerning the request tracker, but it’s not much more effective on IRC. Most of the traffic on the channel is made up by local admins fixing the problems themselves without any intervention by any DSA. I also use the channel to regularly ping some DSA about simple issues and/or stuff that they usually handle. It used to work somewhat but lately fil has been busy (with the kernel summit and other conferences) and I simply got no answer at all… for example I pinged elmo, neuro and fil several times in the last weeks in the hope that they handle the tickets of the security team (#150, #157, #164) without results. There’s room for improvement. The leadership problem The team has no designated leader and every time that there’s a decision to take, they are blocked. Joey wouldn’t communicate and give his opinion, Ryan is extremely requiring and perfectionist, there’s not much room for compromise… A long time ago in a galaxy far, far away, Joey and elmo were friends. It’s even Joey who gave root rights to elmo. Nowadays, it’s rather James that is sort-of leading the team but he’s fed up of the situation and hasn’t managed to get out of this mess. He refuses to take drastic measures by himself because he’s not clearly the leader and doesn’t solicit a decision of the Debian leader (or the project) because he believes that the DSA team is not under the scope of the constitution! This can’t last any further. We’ll have to do something about it. Stay tuned.

Eddy Petrișor: svn-buildpackage pending changes

Just a few snippets:

Author: eddyp-guest
Date: Wed Sep 26 02:14:15 2007
New Revision: 4959

URL: http://svn.debian.org/wsvn/collab-maint/?sc=1&rev=4959
Log:
create a special branch for the svn "mkdir -p" like functionality until all scripts are converted to use this function and more tests are done

Added:
deb-maint/svn-buildpackage/branches/svnmkdir-p/
- copied from r4958, deb-maint/svn-buildpackage/trunk/

0 eddy@bounty ~/usr/src/svn-buildpackage/svnmkdir-p $ dpkg-parsechangelog
Source: svn-buildpackage
Version: 0.6.22
Distribution: UNRELEASED
Urgency: low
Maintainer: Eddy Petri or
Date: Wed, 26 Sep 2007 05:24:59 +0300
Closes: 408690 411666 414581 419996 423487 428225 428689 433404 433536 434932 435746 436133
Changes:
svn-buildpackage (0.6.22) UNRELEASED; urgency=low
.
[ Eddy Petri or ]
* IMPORTANT: changed default behaviour of saving the configuration in
.svn/deb-layout by default to avoid stale data to override the
configuration options that were updated in the repository.
(Closes: #414581)
As a consequence, a new option --svn-savecfg was added to allow a
mechanism for easily overriding options locally
.
[ Gon ri Le Bouder ]
* SDCommon::sd_exit: read the parameter correctly is SDCommon::nosave=1
(Closes: #428225)
.
[ Eddy Petri or ]
* s-u: when importing options from ~/.svn-buildpackage.conf, filter in
only the valid options (Closes: #428689)
* s-u: replace retcode with retval for consistency with svn-bp
* s-i: manpage still claimed layout 2 was not implmented (Closes: #433404)
* s-i: now really supports injects for layout 2 (with the disadvantage of
not creating the tag directory)
* s-i: no longer fails on initial checkout (Closes: 411666)
* when using origUrl, make sure the origDir exists before downloading
in it
* s-i: man page: document the missing -o option (Closes: 419996, 435746)
* s-u: complete the man page synopsis section (Closes: 436133)
* s-b: do not require the build deps to be present when exporting
(Closes: 423487); thanks Stefano Zacchiroli for the patch
* SDcommon.pm: enhance the guessing algo of the layout to make svn-upgrade
guess correctly on layout 2 repos; thanks Gregor Herrmann for the patch
(Closes: 434932)
* Makefile: the version of the package is placed quoted in "SDCommon.pm" so
that versions like "0.6.22~bpo40+1" don't cause s-b to barf
* SDCommon.pm: implemented a function that emulates a 'mkdir -p'
functionality for svn; this will allow a fix for #434932
* s-i: based on the mkdir-p functionality create missing directories on
inject (Closes: 433536, 408690)


24 September 2007

Jordi Mallach: GNOME 2.20 for Debian

My lack of posts lately left Planet readers without yet another yay, GNOME 2.20 released post. I'm sure nobody missed it. However, I can report what's going on in Debian regarding its packaging. The executive summary is: the GNOME team rocks, and having much of GNOME 2.20 available in sid on the very same day it was officially announced was possible thanks to the incredible work done by lool, Np237, slomo and other restless team members, who spent the summer tracking GNOME 2.19 releases and packaging them in experimental. To get a better view on what's left to do, you can use the 2.20 status page, which you'll see shows lots of green at this point. Some of the outstanding blockers are gtksourceview and the new epiphany-webkit binary stuck in NEW, which block gedit and epiphany, and of course, the initial mess that the buildds need to sort out to get the dependencies installed. The rest of red bits will continue trickling in unstable in the next few days. Beware of the new behaviour in control-center, which will by default use the DPI value provided by X. Some X drivers are still buggy and can provide bad values, which will cause bad font displays. If you're hit by this, you can force a DPI value in control-center, which should fix the issue. Also, you can read the relevant thread in our mailing list. Enjoy 2.20! Update: yeah, ftpmasters rock too, and epiphany hit incoming just a few hours after posting this entry. Yay ephy-webkit!

23 September 2007

Russell Coker: DMCA and Sci-Fi

My previous post about the SFWA falsely issuing DMCA take-down notices [1] has got some reactions, many of which indicate a lack of clear reading of my post. I am not advocating boycotting sci-fi. I am merely changing the priorities for my reading list. There must be at least 10 sci-fi books on my shelf of books to read, so refraining from buying more for a while isn’t going to impact my reading much either. In regard to whether boycots are good or bad, it should be considered that the enjoyment of a work of art is highly subjective. If you don’t like the artist then you probably won’t enjoy the art. Boycots on products for which there are objective criteria of quality are often unsuccessful because the buyers have to make a conscious decision to buy a product of a lower quality or a higher price. I can’t make any objective claim about the relative merits of the work of Cory Doctorow and Jerry Pournelle. But it is impossible for me to enjoy reading Jerry’s work as much as I enjoy reading Cory’s work due to my opinion of the two authors. I have just read a post by Eva Whitley [2] (the widow of Jack L. Chalker - one of my favourite authors when I was younger). She starts by describing Jack’s attitude towards electronic publishing, which sounds quite enlightened. She then notes that Del Rey has the rights to some of his books which are officially still in-print but in practice impossible to get, Baen is still paying royalties but had paid him a large advance so he won’t receive money until the royalties exceed the advance, and some books are out of print but no publisher wants to buy the rights to do a re-print. So it seems that she is not receiving money from her late husbands work partly due to book companies being uncooperative (not printing the books and not permitting others to print them without payment) and partly due to being paid in advance. Eva states that she is happy that the SFWA issued take-down requests for copies of the work of her late husband. That is good and in fact it’s a legal requirement. No-one can legally get copyright laws enforced unless they own the copyright or they are acting on behalf of the copyright owner. She is entitled to authorise the SFWA (or any other group) to act on her behalf in regard to her copyright violations. Neither the SFWA nor anyone else can take action against copyright violations without such permission. Jerry Pournelle has written about the situation [3]. He complains that the site owners wanted the items listed individually. The Wikipedia page about the DMCA [4] makes it quite clear that you must provide such detailed information to get something taken offline, and that the DMCA take-down request MUST include a statement claiming ownership of the material UNDER PENALTY OF PERJURY. If you make a false DMCA claim then you are committing perjury, according to Wikipedia the penalty for perjury in the US is up to five years in prison [5]. Sure any idiot can write up DMCA take-down requests for random stuff on the net and get them acted on (here’s an example of a 15yo idiot who did just that [6]). But if you want to stay out of jail you have to avoid making such false claims. Jerry expresses a total lack of sympathy for Cory Doctorow and other people who have been victims of slander of title [7]. I wonder how he would react if someone started making public statements under penalty of perjury claiming that he didn’t own the title to some of his work. I suspect that he would desire something similar to what he desires to be done to people associated with 9-11 [8]. Finally one thing that I suggest doing to make some additional money from writing sci-fi is to release T-shirts. A basic T from cafepress.com was $7 last time I checked. $11 for a shirt based on a sci-fi book is not overly expensive and gives $4 profit for the author (more than twice what most authors make from a book sale). Shirt sales are unlikely to make as much money as book sales due to lower volumes, but the effort involved in creating a shirt design is not so great. A publishing company may deny an author (or their estate) future revenue by refraining from printing further copies, but unless they also own the trademarks related to the book and deny the author (or their estate) the right to use them then it should still be possible to make money from merchandise. Making money from merchandise is not as glamourous as making money from book royalties, but it can be effective as demonstrated by xkcd.com.

Mike Hommey: Dead battery

A little while ago, it started behaving strangely during charges, and the time the laptop would run on battery dropped significantly. Now, it seems to be just dead:

$ cat /proc/acpi/battery/BAT1/state
present: no
The sad thing is this battery is (only) 3 years old, while the battery in my other laptop, more than 6 years old, is still alive (though it would empty in half an hour).

22 September 2007

Clint Adams: And I answer quite frankly, when they stop building roads

This one is long and boring. You'll want to skip it entirely. A while ago, Ulrich Drepper made getaddrinfo() in GNU libc behave according to an IETF RFC. Sounds sane, right? Well, not entirely. The way RFC 3484 rules work for IPv4 is less than ideal. On the other hand, returning network address query results unsorted is also less than ideal. Imagine if getent passwd returned lines in a randomized order. It would be perfectly functional, but piss me off to no end until I conditioned myself to always sort them the way I wanted them. I digress. So, we shipped a stable release that behaved this new way. Nobody objected. I don't know if Ubuntu did or not. It would amuse me if they did, but I don't much care. Then all of a sudden, along comes bug #438179. The gist is that Kurt thinks that trying to make intelligent decisions based on network topology is a bad idea because it defeats the point of having multiple A-records in the first place. We'll come back to that in two minutes. James filed the analogous bug in Ubuntu. I keep mentioning Ubuntu for a reason. I'm not going to tell you what that reason is. The GNU libc maintainers were reluctant to change the default (which is how most other modern operating systems behave; MacOS X being a notable exception, though I heard that they were working on it), so Kurt escalated to the Technical Committee. Now nothing in our lovely and flawed Constitution says that the tech-ctte should be a technically-capable bastion of wisdom and patience; I just think it does because I don't waste my time reading Foundation Documents that don't accurately describe our governance structure. Now for a brief interlude while I vamp incoherently for some of my less technical readers who are not implementors of a DNS resolver libraries, past IETF participants, DNS administrators, someones who've followed some of the IPv6 transition work, or have invented the Internet lately: Round-robin DNS is a giant hack, a poor man's loadbalancer, as it were, something that only works due to a de facto standard that no standards bodies seem to have thought worth preserving. gethostbyname() has been marked obsolescent in POSIX and deprecate in GNU libc for what seems like forever, and the GNU libc implementation of it suffers from bugs that probably no one should ever fix, and as such, no one should ever use it. getaddrinfo() is not a drop-in replacement for gethostbyname(), and expecting it to behave the same is daft. If it were meant to behave the same, I would expect that it using it would be simply a matter of changing calls to gethostbyname() to getaddrinfo(), rather than the amount of code rewriting you need to do now to change the same effect. Furthermore, nothing guarantees the behavior of gethostbyname() except for years of observed consistent behavior and the expectation that should anyone implement a C or resolver library that sorted gethostbyname() results, there would be much loud screaming that it was the library that's broken, and not the applications or programmers for being na ve. I hope that was less than helpful. Let's move on with the plot. While the Technical Committee deliberated , and I use the quotation marks because several -ctte members don't seem to have participated at all, Ian Jackson jumped up and down like some kind of Rumpelstiltskin, screaming that he is Der Komissar and that voting is in order, and a few other things I won't mention. On the 20th of September, Ian Jackson called for a vote. On the 20th of September, Ian Jackson uploaded an Ubuntu version of glibc with the default changed. On the 20th of September, my mother had trouble sleeping, though I suspect she has no idea it was because of this debacle. This story has no ending. Let the rain come down.

21 September 2007

Yves-Alexis Perez: Deadlock in xfwm4

There's a problem between gtk 2.12 and xfwm 4.4.1-2 and before. A deadlock may occurs which renders the session completely useless. The mouse still moves, and you can Ctrl+Alt+Backspace, but nothing else works. It's a gtk 2.12 change which is fixed in xfwm4 4.4.1-3, uploaded this morning. If you encounter this behavior, upgrade your xfwm and it should be ok. All archs aren't built yet, but buildds are keeping up.

Julien Danjou: Is X.org 7.3 a sucking release?

I just upgraded my X server at work. Oh my god. I had a working configuration with multi-head (without Xinerama). I was happy. Oh yes I remember yesterday everything was so fine. And now it screwed everything up. I've got 3 LCD screens and 2 Matrox G450 PCI cards. After restarting X.Org 7.3, all I've got was two screens (connected on the first card) in clone mode. Very useful.... After 1 hour of googling I managed to use xrandr to setup a Xinerama display on this 2 screens.... I don't want Xinerama and I want my other Matrox card back. I don't know why but reading Brice Goglin post around, I understand that the old behaviour is no more available. GREAT, now I'm stuck with Xinerama that a lot of window managers don't handle correctly and I still don't know why my other Matrox card doesn't work. Is X.Org 7.3 a piece of shit or what?

18 September 2007

Daniel Stone: git and changelogs

Every time I see a post about changelogs (sorry Behdad, nothing personal), I die a little bit inside.

There are three problems here:

Jeff Bailey: Weddings and Ordinations, biking home

This past weekend I did the absolutely insane and attended a wedding and an ordination in Vancouver, without taking any time off of work. I've finished two weeks at the new job (and am loving it! I'll post more when I have something more than "done a bunch of classes, learned confidential pieces of Google knowledge, ate great food") and didn't want to go to my boss and ask for time off in the first month.

So, Friday night, 9pm, caught flight from SFO to SEA, rented car. We were sitting in Heather's room at 4am chatting away, slowly passing out. Next day, up at 9, go visit Jamu, sort out suit rental, go for lunch, back to his moms to get dressed. I hope to link to a wedding album sometime in here. He got married by the paperclip behind the Planetarium in Vanier park. There were 4 weddings that I saw there, all peacefully contending for the various views and trying to stay out of one another's photos. =) Saturday evening, the DJ was great. We tried an experiment to see if we could leave Leif with Sandy, and whether the solid foods would be enough for a few hours. He made it a couple of hours, and then joined us at the dance, being happier knowing that we were around. It turns out Leif likes dancing! I was a little worried about the volume, and at various times several of us asked the DJ to turn it down when the music was creeping louder. It was also fun to see a whole pile of friend that I haven't seen in something like 10 years and see how we've all changed. Thanks to Facebook, at least we didn't have to completely rehash the last decade. =)

I think we turned in at 1 or 2. The next day, up at 10:30 so that we could pickup the van, pickup Katy, pickup our mail, go to the Naam to meet Ernie, Janet, and Anika, drop off the suit, pick up a snack, go to MEC, drop off Katy, and then head to the Vancouver Unitarian Church to see Laura's ordination and meet Jon.

Laura's ordination was the most amazing that I've been to. Her ministry is centered around the Faithful Fools, and the people that she's touched and been mentored by were woven throughout the ceremony. I was invited to play the recorder, so I did the last part of the prelude, and played along with the choir for "Rise up, oh flame". People were wearing silly hats, there were stories, and tears, and another pile of people that I haven't seen in ages from when I was a member at that church. I'm also not sure that I've been to that church since getting married in it, so it was nice to be in that space again.

The reason for the visit to MEC was that my goal has been to start biking home. I'd acquired a bike, helmet, lights, and lock, but wasn't happy with my visibility in black clothing on a black bike. I got ankle reflectors and a vest for the backpack, and I biked home yesterday. I'm surprisingly not that sore for the 10 mile ride home. We'll see how I'm doing in a few days. ;)

17 September 2007

Eddy Petrișor: svn-buildpackage:development, RFH

Although slow, development on svn-buildpackage still continues. Sorry for the delays, but both myself and Eduard Bloch have been unable to assign more time to svn-buildpackage development in the last few months.

From the changelog of the trunk package (unreleased 0.6.22):
  [ Eddy Petri or ]
* IMPORTANT: changed default behaviour of saving the configuration in
.svn/deb-layout by default to avoid stale data to override the
configuration options that were updated in the repository.
(Closes: #414581)
As a consequence, a new option --svn-savecfg was added to allow a
mechanism for easily overriding options locally

BTW, did you know that svn-buildpackage is maintained in collab-maint and welcomes contributions and committers/reviewers (especially those)?

In case you want to help, this is the place to start from:

svn co svn+ssh://svn.debian.org/svn/collab-maint/deb-maint/svn-buildpackage/trunk

or

svn co svn://svn.debian.org/svn/collab-maint/deb-maint/svn-buildpackage/trunk

If you don't have commit access to collab-maint yet (just make a request on the alioth tracker and that will be fixed ;-) ).

16 September 2007

Russell Coker: iRiver H320 and Liquid

Recently my iRiver [1] H320 had some milk based drink spilt on it. I’m not sure what the drink was (I discovered it when my iRiver stopped working and the drink was dry) but it smelled like coffee or hot chocolate when I washed it off (I considered tasting it but decided that knowing exactly which drink had damaged my iRiver probably wouldn’t help me fix it). The initial problem was that no buttons other than the play button (which is also used to turn it on) worked. When I first discovered this I had no way of hitting the reset button so my iRiver played until the battery ran flat. I tried to disassemble it by removing the five tiny phillips-head screws from the sides, but that didn’t make any part of it loose. I tried using a small amount of force on the front piece of plastic and broke two of the clips that hold it in place while getting another two loose without breaking (but there were still at least four clips to go). Then I realised that the problem was that the keys were physically sticking and that maybe if I washed the keypad out I might get it to work. So I spent some time in a cycle of dripping water into my iRiver, pressing the buttons to get some of the nasty stuff dissolved, and then using a towel to soak up some of the water with milk or whatever. After repeating this for a while the buttons all seemed to work well apart from the play button which kept registering presses when I wasn’t touching it. This meant that it always automatically turned on and then played a song in a stuttering manner as the play button is also the pause button and it paused and played as rapidly as it could. Finally I left it in the sun to dry for a few hours, which seemed to do some good. The play button mostly works now. Also it seems quite easy to get water between the front layer of protective plastic and the layer behind (which actually houses the keypad). So I have several large drops of water spread out between the layers which move around as I squeeze it. I think that if I get that dried out before algae can grow then everything will be fine.

Theodore Ts'o: Whack the Gopher

I recently came across three very well written and very thoughtful blog postings by Rick Cook (author of the Wiz Zumwalt Wizardry series):
  1. Copyrights, Whack-the-Gopher, and SFWA — Why I Quit
  2. The Economics of Theft: Son of Whack the Gopher
  3. WHACK THE GOPHER III: The Return of the Mutant Grandson
The incident which kicked off these postings was an informal DMCA takedown notice posted by the Vice President of the Science Fiction Writers of America, Dr. Andrew Burt which was created by a process only slightly more sophisticated than using word search for “Asimov” and “Silverberg”. Unfortunately, this takedown notice erroneously included a junior high school teacher’s list of 300+ recommended books (which naturally contained the strings “Issac Asimov” and “Robert Silverberg”, an on-line published science-fiction magazine that referenced the science fiction author Isaac Asimov in a review, and a creative-commons licensed science fiction novel which had been deliberately published on the web for free distribution, and for which the author had explicitly forbidden the SFWA from taking any action on behalf of his books. The entire incident was wonderfully filled with irony — from the fact that an organization of writers who purport to write about what the future might bring given scientific and technological advances could so totally fail to get the Internet or understand that such a campaign might cause them to alienate their readers and fan base, to the the fact that Doctor Andrew Burt, Ph.D. is a professor in computer science at the University of Denver with a research interest in copyright and electronic piracy, could so incompetently foul up a DMCA takedown request and not understand that “grep” might result in false positives that would require human checking (”Andrew? Your alma mater is calling; they would like their degree back…”) One good thing that has come out of this whole mess is that it has been, as junior high school teacher Nick Singer put it, “a teachable moment”, and an opportunity for people to reflect about issues of copyright, the rights of authors, ebooks, and the Internet. This is a hard problem; I very strongly believe that (at the same time) “Art wants to be free; Artists want to be paid” (to use a phrased coined by a friend of mine, Jesse Vincent (blog here), to the point that I’ve been willing to put my money where my mouth is. So far the solutions for achieving this are nowhere near perfect, but they are certainly better than sending out shotgun DMCA takedown requests. In any case, Rick Cook’s thoughts on the subject are a worthy contribution to the subject. He says he’s going to do one more article on his blog proposing an economic solution to this problem; I can’t wait to see what he has to say on the subject.

15 September 2007

MJ Ray: US Satellite TV Worse Than Europe

Satellite TV commented:
"Wow, all that seems pretty complex to me. The U.S is so much more simple, we just chose Dish Network or DirecTV or some kind of cable and call it a day. Then again I don't know if thats a bad or a good thing."
That's a bad thing. Look at the situation: In the US, there seems to be very little free-to-air (FTA) satellite TV for most of the country, except PBS and religious channels. The main US FTA FAQ answers "Should I drop cable/Dish/DirecTV and switch to FTA?" with "Probably not." I'd say "Probably yes" to similar questions in Europe, as long as you aren't dependent on one of the few incompatible pay-TV channels. Channels like MTV, Nick, TVEi and DW are all pay-TV in the US, but FTA in Europe. But if you're in the US, look on the bright side: Canada seems even more behind on this. In Europe, you can still call whatever satellite broadcaster (such as Canal Satellite, Premiere or even Sky) and get a system installed if you choose, but you can also install your own. That's what my FAQ is about: giving people in "the land of the free TV" some starting info on how to do that. Some broadcaster-supplied systems only really work well with one broadcaster's "approved" channels (Sky are particularly bad for that), are more expensive to upgrade than standard systems and don't give viewers the equipment to repair it when it breaks, which encourages them to keep paying the broadcaster's agents. Some of those agents do some pretty dishonest tricks when installing dishes, such as putting them far higher up than necessary, to discourage viewers from fixing it themselves and to advertise satellite TV to the neighbours. It's pretty easy to install a standard satellite system... if you can put up a wall bracket and tune in a video, you can probably do it. Alternatively, there are independent installers who will do it for you, who might seem like they charge more than the broadcaster's agents, but remember that a good one won't keep charging you every month or try to sell stuff to you forevermore!

13 September 2007

Neil Williams: apt-cross moves to Cache::Apt:: and GPL-3 or later

Just completed the migration of the next version of apt-cross that is due to be uploaded once dpkg-cross pre2 can be uploaded to experimental. (This in turn is waiting for dpkg to support removal of the dpkg-cross diversions: #439979.)
AptCross:: has gone, replaced by Cache::Apt:: and the Cache.pm from NorthernCross is now called Lookup.pm for clarity.
This update solves a lot of niggles with the old apt-cross behaviour when dealing with non-standard repositories, CDROM archives, proxied mirrors and various other stuff that apt can cope with but which wget found difficult. (#440929, #442012)
Also, the entire package has migrated to GPL v3 or later - all the code was GPL v2 or later.
This means that emdebian-tools will also be migrating to GPL v3 or later when that is updated to use the new apt-cross and dpkg-cross code.
Sometime after Lenny, Cache::Apt:: will migrate into a source package of its own (on CPAN), allowing the apt-cross functionality to be merged into apt and the module to support other tasks in Emdebian.
In other news, gpe-cash is coming along and highlighting a few issues in libqof1, libqof-backend-sqlite and libqofexpensesobjects so there are improvements due there too. gpe-cash and gpe-expenses are also GPL v3 or later, as are deb-gview, quicklist (experimental) and pilot-qof now too.
Most have some machine-operable fields in debian/copyright and most have the new dpkg fields in debian/control.
Got a fix for gpe-bluetooth to upload tonight as well as (hopefully) the last go at getting homebank through NEW.

Eddy Petrișor: hmm, I was here before

I am stumbling again on the problem of not being able to install libgnome-dev and libsvn-dev side by side, namely bug #429025.

For some reason, I was under the impression that the bug was fixed... but apr-util is behind :-(.

12 September 2007

Uwe Hermann: I'm now getting Green Energy via Lichtblick

Since a few days I'm a happy customer of Lichtblick, the biggest electric utility (Stromanbieter) in Germany which provides 100% green energy (or kostrom as it's called in Germany). Why? I was getting tired of all those hypocrites and liars (a.k.a. politicians) who keep on talking about global warming and renewable energy, but fail to produce any real results since many, many years now. So I decided to do my (small) part to help reduce CO2 emissions, the greenhouse effect, and global warming. After measuring the energy consumption of all my power-sucking devices and replacing or turning off some of them, and after replacing all lightbulbs with highly efficient energy saving lightbulbs, changing the electric utility was the next logical step. First try (failed) As probably almost everyone in Munich, I was a customer of the Stadtwerke M nchen (SWM). According to the last electricity bill I got from them, their sources of energy are: 17% renewable energy, 83% fossil energy sources, 0% nuclear power. Well, at least they don't use nuclear power, that's a big plus IMO, but 83% polluting, fossil crap? Thanks, but no thanks. So I opted to use their kostrom M-Natur tariff, which (they claim) provides 100% renewable energy. They use the so-called Aufpreismodell (sorry, German only), i.e. you pay a few cents extra per kWh, and this extra money is invested in renewable energy sources (mostly small hydropower plants around Munich). As I found out a few hours later (d'oh!) this "Aufpreismodell" is not really ideal (you still pay a conventional electric utility instead of one with 100% renewable energy, for instance). In addition, I stubled over a petition for the city of Munich to stop investing in a new fossil fuel power plant (bituminous coal, to be more precise). Which I promptly signed (and which went to several local parties including the greens, the mayer of Munich, and others).
Now, this is what I call hypocritical behaviour — on the one side they claim/pretend to be environmentally friendly by promoting their "M-Natur" tariff, and at the same time they invest even more money in fossil fuels? WTF? Anyway, it seems the petition did have at least some impact, the aren't allowed to invest more money into that fossil fuel powerplant than they already did. For me that was more than enough reason to immediately revoke my M-Natur tariff, and what's more, I switched to a completely different company now, Lichtblick (see also the respective Wikipedia page). I'm not willing to support such energy policies/politics with my money anymore. Lichblick Lichtblick is an kostromanbieter in Germany, supposedly the biggest one.
Their "energy mix" is 100% renewable energy (which is correct, unlike with SWM, as they do not own any additional fossil fuel plants). 76% of that is hydropower, FWIW. Their prices may be a bit higher than those of conventional electric utilities, but not all that much; you might even pay less, depending on where you live and which tariff you have now. You can use their price calculator to find out. Btw, some other good choices in Germany are Greenpeace energy, Elektrizit tswerke Sch nau, and Naturstrom AG. How the switch went Easy. Grab the respective PDF, print it, fill in the required info, and send it to them. Alternatively, they also offer online registration. It'll take a few weeks until the switch is performed; they have to contact your current electric utility etc. In my case it took ca. 4 weeks. There are no additional costs for switching. There is no "downtime" whatsoever (not even a few seconds), German law requires that you always reliably get your electricity 24/7 (and it indeed worked just fine for me). So, that's that. From now on I'm happily using green energy all day (and night) long. I'm doing my part in Saving The Planet (tm) and I sleep a bit better at night... P.S. No, I'm not getting paid by Lichtblick (or anybody else) to write this.

11 September 2007

Eddy Petrișor: dpkg i18n going backwards?

Now in dpkg I found this:

dpkg: no, cannot proceed with %s (--auto-deconfigure will help):\n
%s

Before there was something like:

dpkg: no, cannot remove %s (--auto-deconfigure will help):\n
%s


This is going backwards wrt to i18n since one of the basic rules of i18n is to have complete sentences, while keeping the verb covered behind some parameter is not a good way of doing that.

10 September 2007

Joerg Jaspert: Stats pron

Joey started a stats pron meme, so lets join, with stats from packages.debian.org AKA puccini.debian.org, which I am the local-admin for. This machine has
2007
Unique visitors 4952207
Total visits 8572139
Total pageviews 43332086
Total bandwidth (apache only) 783.28 GB
Additional traffic due to robots 53328963 pageviews adding 265.73 GB traffic
Looking at the other statistics April and May had a few percent more visitors, but other than that its pretty stable with around 600k unique visitors per month. We do not resolve IPs to hostnames due to the huge amount of useless traffic and load this would generate, so no statistics about the countries. But we do have some other stats. Like a Robot/Spider statistic. It looks like we had about 151 different spiders on our site, a few listed below.
Yahoois the most active spider, making some 97.54 GB of traffic
Googlebotfollows on second place, responsible for 43.92 GB
MSNBotcaused about 21.52 GB traffic
Python-urllibis used by multiple bots and they all made up 43.29 GB traffic
Next interesting point is that of Operating systems.
Linuxis of course the most used one, 48.1% of our visitors told us they use it.
Windowsonly on place 2, with 40.5%.
MacOSall kinds of MacOS add up to 2.5%.
There are various others in the list, but none with more than 1%. Like Sun Solaris which was used for about 63k hits (compare it to Linux with 32 378 942 hits). 5423 users did want us to believe they use CPM, another 76 tried that with VMS. Of course we are interested in more details for the 48.1% Linux users, here they are:
Debian1539753722.8 %
Ubuntu905001413.4 %
Suse5426350.8 %
Red Hat1072400.1 %
Mandriva (or Mandrake)1665450.2 %
Fedora6232420.9 %
Centos699980.1 %
GNU Linux (Unknown or unspecified distribution)64217319.5 %
Windows is boring, more than 33% are using the XP crap, all BSD version together, including that GNU/kFreeBSD variant have 0.1% all together. Browsers? Of course people do use lots of different browsers. The main browsers, if you ignore all the various versions, are Firefox with 44.7%, (shudder) MSIE with 17.7% and Mozilla with 14.6%. Konqueror is far behind with only about 8.5%, other browsers like Opera (3.4%) and Epiphany (1.5%) are even less used. One browser identification is interesting, namely Debian APT, which seems to be the “Fetch Changelog” function of aptitude. It generated about 200k hits (0.1%). Next point - from where do we get most people to our site? That are people not having any kind of referer information, 65%. The second place here goes to - yes, direct links from various people. Of course our search interface has most hits here, the rest is from some 80k different pages linking to us. Most of those seem to be upstream pages telling their users where to get a Debian package from (most are named something that fits “/software/download” or “is like sf/freshmeat” schema). Interestingly the links the BTS provides in their package overview going to packages.debian.org aren’t used all that much. Only about 30k hits in the whole year 2007 with the BTS as referrer. Only after all those individual links we have search engines giving us hits. That may be partly due to the fact that we did use robots.txt to block them (at least those that are good net citizens) for a long time from indexing our site. Final words: YES, I do know that the stats are likely to be wrong in any size you want them to be wrong. Yes, one cant really trust the User-Agent string, its too easy to change it. Yes, its easy to filter out referer, etc, etc, etc, but IMO its still nice to look at such things, it gives at least a little feeling for what we do burn all those CPU cycles. These stats are based on about 4.5GB of compressed apache logs from the last few months, it took some 14 hours to process the logfiles. Luckily future updates now happen once an hour and take only a minute or two… Ohh, you say Joeys meme was about mail stats? Damn. Ok, short text: 305k mails rejected in the last 7 days while we allowed 1097 mails to pass. For the yearly overview that means some 9.3million rejected and 73k accepted mails (that rate should get better, decreasing the accepted count, with the new etch setup we have now). Of course this isn’t as impressing as lists.debian.org mailstats are. :)

Next.

Previous.