Search Results: "rul"

22 February 2009

Antti-Juhani Kaijanaho: grep-dctrl is ten years old

My message Intent to package a Debian control file grepper to WNPP and debian-devel is today a decade old. Apparently, the message predates the invention of the acronym ITP for Intent to Package (the first instance I can find is from May 1999). The changelog reveals that the first upload was on March 1st, 1999. There is unfortunately no record of when the package hit unstable the first time, since dinstall did not send Installed (or even the later Accepted) mails to an archived mailing list at that time. I suppose I might have it in some old private email archive, but more likely it s just gone. Similarly, the first fixed bug (#35527) predates BTS archiving and is now lost. The grep-dctrl program came out of repeated awkward grepping of the dpkg available and status files. Eventually I decided there must be a better way, and failed to find any canned solutions (I was later pointed to sgrep, which didn t look useful enough, and even later to dpkg-awk, but I had already committed to my own solution by then). I wrote a simple C program that processed these files as a sequence of records and did simple substring searches in each record. I rapidly added support for field selection, regular expressions and output field selection. By version 1.3a of March 2000 (which was released with Debian 2.2 potato ), the program was as good as it was going to get with one exception. Make disjunctive searches possible, said my TODO file those days. Conjunctive searches (that is, AND-searches) were possible even then by using more than one grep-dctrl command in a pipeline. Disjunctive (OR) was not possible. The problem was not so much that it would be hard to program (although the program s internal structure wasn t very good, to be honest, making extensive changes difficult), it was more a problem of coming up with a good command line syntax. Another thing that bothered me with the old grep-dctrl was how to implement Ben Armstrong s feature request. Again, the programming part wasn t the problem, the problem was coming up with a good, clean semantics for the feature. It was finally the appearance of ara in 2003 that got me moving again. Ara s author proudly compared eir program to grep-dctrl, claiming that my program did not do disjunctive searches while ara does. Competition being good for the soul, I took it as a challenge. In April 2003 I announced a complete rewrite of grep-dctrl, which was completed in January 2004 (the 2.0 release). The rewrite changed the way the command line was handled even though the usual Unix switch style is still used, the command line is regarded as a language with a parser (first an operator-precedence parser, then a recursive-descent one). The command line is transformed into an interpreted stack-based language which drives the actual grepping. The rewrite also generalised the internal data structures into an internal library which could be used to write other tools. The first such tool was sort-dctrl (introcuded in 2.7, June 2005), which was soon followed by tbl-dctrl (2.8, July 2005). The later appearance of join-dctrl (2.11, August 2007) finally allowed me to close Ben Armstrong s longstanding feature request mentioned above. The unpronounceable part of the names, dctrl , is an abbreviation for Debian control , which I decided to call the file format used by dpkg. Some people call it a RFC-822 format, but that really is a misnomer, since the differences between dctrl and RFC-822 outweigh the mainly superficial similarities (and the historical connection). I did consider calling my program dpkg-grep, but I didn t feel like I had the right to invade the dpkg namespace. The later rename to dctrl-tools reflects the fact that there are now several tools, grep-dctrl being just the oldest. I have several plans for the dctrl-tools suite, but my time and energy are mostly claimed by other responsibilities. The suite is currently team-maintained, but unfortunately the team is not very active. I would love it if I weren t the most active one with my busy schedule! Feel free to pop in on the dctrl-tools-devel mailing list, and to look at the Git repository and the todo list. If you decide to participate, please follow the rules.

21 February 2009

Pablo Lorenzzoni: Git basics: reversing the 'git sucks' effect

I ve been using git this last few days and I am still working on a workflow for my projects. Unfortunately, as others have noticed, git violates POLS is so many ways, it ends up being hard to get. Creating a remote repository seems to be the first thing to bite a developer switching to git (mainly if coming from a centralized SCM). I have not decided which is the best way of doing it, but I ve been using git-daemon via inetd and a path in my remote hosting holding all my repositories for public pulling, and ssh for pushing. Here is how to create it:

local$ ssh spectra@remotehost
remotehost$ mkdir /var/git/myproject.git
remotehost$ cd /var/git/myproject.git
remotehost$ git --bare init 
remotehost$ logout
local$ cd myproject
local$ git remote add remotehost spectra@remotehost:/var/git/myproject.git
local$ git push remotehost master
...
otherlocal$ git clone git://remotelocal/myproject.git
otherlocal$ cd myproject
otherlocal$ git remote add remotehost spectra@remotehost:/var/git/myproject.git
(hack hack hack)
otherlocal$ git push remotehost master
Now everybody can pull your repository at git://remotehost/myproject.git and you can push and pull to it via ssh. Note that you have to setup git-daemon, which is pretty straight forward. I am using it as an inetd daemon, but you can use it as a standalone one. Debian has a package which does just that. Now, some people think logging in a remote server just to create an empty repository is too much. Well repositories are just .git directories. It happens that you can push for the first time by rsyncing your .git with a remote host:

local$ cd myproject
local$ rsync -a .git/ spectra@remotehost:/var/git/myproject.git
local$ git remote add remotehost spectra@remotehost:/var/git/myproject.git
(hack hack hack)
local$ git push remotehost master
(Apparently you can push using rsync every time, but it s regarded as wiser to keep your probably crappy local repository commits separated from the public repository otherwise commit messages like Please, don t use this code are likely to pop up everywhere :) ). Now, I don t know if this have side effects, but it works :-) Another thing to notice is that git is more directed at pulling than pushing. This may be because of its designer: the way Linus works is by pulling changes from others repositories and not by letting others push em into his one. And this is another violation of POLS for most of the people, who is used to commit their changes into some remote repository. Rather than that, people using git would expose their own repositories in order to have it pulled by others. I also agree with most of the git critics wrt git commands There s a lot of examples and I am not going deeper in this but I think it was a bad choice calling checkout what git does when told to checkout , for instance. Yes, I know different tools, different ways of seeing it but everyone was already used to what centralized SCMs call their operations, and I think it would only help git adopting same names for the same operations, and inventing new ones for those proper of decentralized operations. Anyway, once you get it (and I have not completely got it yet), it seems all flow as expected. If this adaptation fails, there s still Easy Git to the rescue! One last thing that I think contribute to the git sucks effect: git-svn. This is a great tool, but it was built from git s point of view Given it s intended as a glue for Subversion newcomers, it would benefit more from being built from svn s point of view. This was mentioned by a colleague developer in my company, when he just couldn t understand why one have to git svn rebase instead of a simple update. So git-svn also suffers of the bad command naming habit git do. Of course, that given that you came from this environment (I am sure git and git-svn makes perfect sense for Linus & cia :-) ). I have not tried yet, but yap seems to be targeted on providing an alternative to git-svn.

18 February 2009

Julian Andres Klode: Python modules, licenses, and more


Today, I want to present you some things I have asked myself and some ideas about them. You should not expect the information to be correct. Therefore, if you find mistakes, please leave a comment. Copyright statements / Comments MIT license: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - If you had a python module released under the MIT license, and this is in the comment of the module and you somehow ship only pyc or pyo files, you would be violating the license by not including the copyright notice, because these files do not contain the modules. This is also true for many other licenses, but this seems to be the best example. If you include this in the docstrings, you would only violate such license terms if you distribute bytecode created with the -OO option. This also does not apply if the code is a program which prints the license (eg. via a commandline license option). GPL vs LGPL Is there any difference at all? The LGPL requires you to publish all changes you make to the code, while the GPL also requires you to publish source files you have created. This also means that you can t link a non-free program to a GPL library, but you can link it to a LGPL library. Because Python modules are not linked to each other, everything you do is normally considered a use of the module. Therefore, if there is a module G released under the GPL, and a module X released under a different, incompatible license X, you would still be able to use the facilities provided by the module G. This also effects subclassing classes of G in X. Due to the enormous flexibility provided by Python you can easily break the intented rules of the GPL. Instead of editing the class definition you subclass the class and edit it. You can also replace stuff inside the module G during run-time, simply by setting the relevant attributes. In summary, Python makes it very easy to work around the restrictions of the GPL, therefore, using the LGPL instead of the GPL makes no sense. You can t give others more rights than they already have. You would just make it easier for others in case they want to write new code and want to copy some of yours. What about the AGPL? The AGPL exposes (compared to the GPL3) further restrictions on using the software on eg. websites. It is intended for programs which may be used by SaaS providers. Like with the GPL, the enormous flexibility of Python compensates most of the restrictions the license. BTW, which license to choose? I normally choose to release my programs and modules, etc. under the terms of the GNU General Public License, version 3 (or at your option) any later version. But it also depends on the size of the project. When I work on small scripts, like hardlink, I generally choose the MIT license. This is also somehow related to the fact that I don t want to have a license which takes more than 50% of the size of my project. This is actually a bit different to what Bruce Perens does. Bruce recommends 3 types of licenses. The first one is what he calls the gift license. He recommends the Apache License 2.0, because it provides better protection from software patent lawsuites . The MIT license is another example for this type of license. While not providing the patent protection, this is not that critical for persons like me who live in Germany. Furthermore, the number of patents possibly infringed by the code is proportional to the amount of code. The second type he recommends is a sharing-with-rules license, like the GPL 3. Like him, I mostly use this license for my code. Sometimes I also use the GPL 2, but only when I am required to do so, or because of tradition. In generally, I only upgrade software from GPL-2+ to GPL-3+ when I introduce new features, not for bug fixes or similar. The third type he describes is the in-between license , like the LGPL. As I pointed out above, this type of license is not much different than the GPL, at least if applied to Python modules. Therefore, I never release any Python module under such a license. Things may be different for C libraries (and others), but I never released one. Documentation, etc. Well, I license all my documentation under the same license as the software. This makes it easier for the user because he does not need to read yet another license (at least if he reads all the licenses of the software he uses). If I distribute non-code content independent of code, I generally choose a Creative Commons License (CC-BY-SA 3.0, CC-BY 3.0), Germany. This also has an effect on this blog. From now on, all content (ever) provided by me via this blog is licensed under the terms of the Creative Commons Attribution-Share Alike 3.0 Germany, unless a different license information is included as part of the post. The design and comments from other persons are not included. Why I wrote this Really, I don t know. Maybe I just want to write something, maybe I want to write these things down, so I can read them. Anyway, please tell me if I my conclusions/ideas are wrong. Update 1: There was a mistake should expect the information to be correct , fixed now: should not expect [...] . I may be wrong with the GPL vs. LGPL thing, have not completely checked this. (2009-02-18 19:18 CET) Update 2: Seems the GPL vs LGPL thing is not correct, as written by Anonymous and Bruce. (2009-02-18 19:26 CET) Posted in General

17 February 2009

Matthew Palmer: Depressing, yet Inspiring

If you're not reading The Daily WTF, today's soapbox article, Programming Sucks! Or At Least, It Ought To is a good reason to at least give it a glance now and then. Essentially, it's a wake-up call to all those programmers who think that their working life isn't complete unless every project is implemented in a new language, with a new framework, or at the very least using a bunch of the latest whizz-bang techniques that they read about on the back of their weeties blog this morning. My favourite rule, and one that I really need to re-learn myself, is:
Serve the Business. Every tradesman wants to use the latest, greatest, and most powerful tools, but rarely are they appropriate for the job. Likewise, there's hardly ever a business case to immediately upgrade all platforms/libraries/languages. That 10-year old "Classic ASP" code hasn't gotten worn out, just much less fun to maintain.
The rest of his rules are also useful, and should probably be printed out and stuck up around the offices of every IS development shop.

16 February 2009

Joey Hess: debhelper dh overrides

This is a followup to the earlier design of dh. After converting many packages to minimal rules files using dh, I find that it works very well for the 3 line rules file case, which works for 80% of packages. But getting from there to a slightly more complex rules file that 20% of packages need can be non-obvious. So, let's make it obvious. Suppose I want to run dh_compress -Xsomefile. But my rules file as it currently stands doesn't offer an easy place to run that command:
#!/usr/bin/make -f
%:
    dh $@
To use dh in this situation you had to go look up rather a lot of boilerplate, and to insert an explicit version of the right target, with the right dependencies, that called dh before and after your command:
#!/usr/bin/make -f
%:
    dh $@
binary: binary-indep
binary-indep:
    dh $@ --before dh_compress
    dh_compress -Xsomefile
    dh $@ --after dh_compress
That took me half an hour to come up with, and I wrote this stuff! Also, if I want to override a second command, I have to do it in the right order. So, the full flexability of debhelper is there, but it's too hard to get at. Here's the new new thing.
#!/usr/bin/make -f
%:
    dh $@
override_dh_compress:
        dh_compress -Xsomefile
What this does should be obvious. These override targets can be written for any debhelper command that you need to change the default behavior of, or even avoid running at all.
override_dh_auto_configure:
    ./configure --with-kitchen-sink
override_dh_auto_test:
    # The test suite for this package is busted on s390.
    if [ $DEB_BUILD_ARCH != s390 ]; then dh_auto_test; fi
The overrides can also be used to run additional stuff before, or after any debhelper command:
override_dh_clean:
    dh_clean
    rm -rf build_dir
So, I think that's beautiful. Simple, clean, no boilerplate, and intuitively obvious if you are familiar with debhelper.
FWIW, the implementation, which will be in the next debhelper release unless someone screams loudly, is not beautiful. Mostly because I sorta shot myself in the foot with the cute implicit "%:" rules. But, I got around it. :-)

Martin-Éric Racine: Roadmap to a better FreeDesktop: ridding us of the Firefox filth

Lately, I've been pondering how to solve one annoying aspect of the FreeDesktop, namely how to eject the piece of bloat called Firefox from the picture and get myself a fast web browser that I can rely on and that yet offers a similar UI experience based upon native GTK2 widgets rather than XUL components. Just to investigate possible options, I tested Epiphany, Galeon and Konqueror. My conclusions were than a Gecko-based Epiphany or Gaelon is incredibly fast and that Konqueror offers a similarily efficient experience albeit using QT, rather than GTK2 widgets. Why is Firefox so bloody bloated then, if it uses the same Gecko engine as Epiphany and Galeon? The only possible conclusion I could come up with is that its crappy XUL implementation, rather than leverage existing native GTK2 or QT widgets, tries to reinvent the wheel with its own UI toolkit running as a gigantic RAM blackhole. One option that I wanted to investigate but found too deficient was a Webkit-based port of Epiphany. Unfortunately, at its current stage, the GTK2 port of Webkit simply isn't mature enough to consider, although the fact that Webkit has been succesfully ported to a number of platforms and constitutes the basis for Safari on Mac OS suggests that the potential is significant. That only leaves one single aspect on which Firefox wins hands-down: its UI concept; it just works well, whereas Epiphany simply has a UI concept that is utterly inadequate, because it is too crude, lacking basic necessities such as a session saving feature that also works when purposely unloading the application, rather than only as a crash recovery measure. Simply put, Epiphany's premise that a browser should never be closed and thus ought to always remain open in the background of a desktop session is utterly flawed; it doesn't work like that in real life and Firefox acknowledges this, while Epiphany stubbornly doesn't because someone wreaked Havoc in our desktop paradigm. Anyhow, to me the solution is clear: regardless of which rendering engine it uses, Epiphany's UI concept needs to become more like Firefox, before it can truly gain acceptance as the default browser among Linux distributions.

15 February 2009

Michael Prokop: Debian GNU/Linux 5.0 codename Lenny - News for sysadmins

Alright, Debian GNU/Linux 5.0 AKA as Lenny has been released. Time for a Debian unstable unfreeze party! 8-) What does the new stable release bring for system administrators? I ll give an overview what news you might expect when upgrading from Debian GNU/Linux 4.0, codename Etch (released on 8th April 2007) to the current version Debian GNU/Linux 5.0, codename Lenny (released on 14th February 2009). I try to avoid duplicated information so make sure to read the release announcement and the official release notes for Lenny beforehand. Noteworthy Changes Virtualisation Virtualisation related new tools: Desktop oriented packages like virtualbox and qemu are available as well of course. Noteworthy Updates This is a (selective) list of some noteworthy updates: New packages Lenny ships over 7000 new packages. Lists of new/removed/replaced packages are available online. I ll name 238 sysadmin related packages that might be worth a look. (Note: I don t list addon stuff like optional server-modules, docs-only and kernel-source related packages. I plan to present some of the following packages in more detail in separate blog entries.) Further Ressources

12 February 2009

Martin-Éric Racine: Here's hoping for the best...

Life sometimes has extreme ways of waking people up and making them realize what matters for them. I'm going through such a phase right now in my romantic life. I won't discuss what happened here, but suffice it to say that I haven't felt so depressed in a long, long, long, long time. The good news is that life has proven to me once again how having good friends who truly care for me makes a whole world of difference. The big slap in the face that life gave me over these last few days was a harsh lesson, but I think that it was worth it. Of course, it helps that people like Gilles, Jaana, Henni, Pia, Linda, Arno and Sailesh beleived in me enough to support me through this rough spot in my life. Although their advices were vastly different, they all pointed in a very positive direction and gave me the strenght to carry on. I also must thank my beloved Anastassija; what she did was cruel beyond beleif and yet, if her few SMS from the last 24 hours are any indication, there's still hope after the storm. I'll be seeing her tonight again, after a few days of separation and I prepared her a truly romantic evening. It ain't much, but I hope that it truly succeeds in bringing the point accross that Love is stronger than everything and that even the unforgivable can be forgiven, over time, if everyone involved has enough faith in each other's future as a couple. Tonight, I truly could use the prayers of a million voices to support me and Anastassija in this difficult time. Life slapped me hard and I got the message... I think... and whatever happens after tonight, I need to know that I gave it my best shot and that, whatever her and I decide, Life can only take a turn for the better from now on.

10 February 2009

Matthew Palmer: Look Ma, I'm in the paper!

From the local paper, yesterday, in a larger article about the bushfires roaming hither and yon:
While arsonists are allegedly responsible for the fatal fires in Victoria, it was "idiots" who laid the groundwork for a potential blaze in the Royal National park near Helensburgh yesterday. Rural Fire Service Illawarra manager Richard Cotterill said that despite a total fire ban being in effect for the Illawarra and most of southern NSW, weekend bushwalkers in the park lit a campfire and then left it to smoulder. Mr Cotterill said two trucks with about 10 firefighters tended to the bushfire hazard just before 1pm, after being alerted to the smoking logs by a resident. "Obviously someone has not taken the fire ban rules into account and we are just lucky that we haven't had any significant wind conditions being as hot as it is," Mr Cotterill said. "Something like that is obviously potentially very, very dangerous. You get a wind blowing embers into the bush and it is downhill from there. "It's a very stupid thing to do and obviously people don't realise just how dangerous it can be."
I like Richard. Nice bloke, works hard for the local area, speaks straight and doesn't mince words. "Idiots" indeed. Several thousand homes are threatened if the Royal National Park burns. We've got easier evacuation paths than a lot of the people down in Victoria had, but it still could have been pretty bad. Meanwhile, the weather up here has turned grey and cold, which will be a mixed blessing for the firefighters working up at Peats Ridge and Singleton, and down around Bega. It's a lot nicer to fight a fire at 24 degrees celsius rather than 40, but the misty rain we've had around home would be enough to make backburning impossible, whilst not being enough to really knock down the fire. The winds we got on Sunday night would have made life far more exciting than is comfortable, too.

7 February 2009

Julien Valroff: My new xorg.conf

~$ [ -s /etc/X11/xorg.conf ] ; echo $?
1
Yes, it is an empty file! I have just upgraded xorg to the experimental packages. hal does its job, and all devices are automatically detected and configured.
This is actually a great improvement, especially for those who had to fight against the XFree86 configuration file just to get a graphical session working, back in the late 90 s.

The only thing I had to do is creating an /etc/hal/fdi/policy/10-keymap.fdi file with the following contents, so that GDM has a correct keyboard layout (French in my case):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keymap">
      <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
    </match>
 
    <match key="info.capabilities" contains="input.keys">
      <merge key="input.xkb.rules" type="string">base</merge>
 
      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>
 
      <merge key="input.xkb.layout" type="string">fr</merge>
      <merge key="input.xkb.variant" type="string">latin9</merge>
      <merge key="input.xkb.options" type="string">compose:lwin</merge>
  </match>
  </device>
</deviceinfo>

Pablo Lorenzzoni: Alright! I surrender: Git rules!

Everybody seems to be using git these days I am not very found of hypes , as I told you before, but there s been some time I ve been evaluating git. I was happy with svk for quite a long time Lately, though, I ve been developing and extending a lot of ruby libraries, and all of them seem to be hosted at GitHub and using git So, why not give it a serious try? I chose a simple task on my TODO-list: to extend xmpp4r-simple to support XMPP PubSub, so I could use it in an internal project at my company. So I cloned its git repo and started developing. Not a really hard task, since all I had to do was use the underlying library (xmpp4r not surprisingly also in GitHub) and mimic what Blaine s done for the callbacks and it was ready (and working although I still need to put more time on the test suite). I am still exploring It will take some time to migrate my stuff (and maybe a lot will remain in my company s Subversion), but that s what git-svn is for, isn t it? Right now I am looking for ways to work with git-buildpackage and Debian git tools Do you have some advice on that?

6 February 2009

Clint Adams: The plagiar, the plagiar. You can play shortstop.

The maddog did one reconnaissance. He did it in his midnight-blue Thunderbird.

3 February 2009

Gregory Colpart: Delete facsimileTelephoneNumber attribute

ldapvi is so wonderful. No Java/Python/PHP for browsing LDAP trees and the power of vi for LDAP administration. Nevertheless, today I had difficulty for deleting a facsimileTelephoneNumber attribute:
$ ldapvi
Action? [yYqQvVebB*rsf+?] y
ldap_modify: Inappropriate matching (18)
additional info: modify/delete: facsimileTelephoneNumber: no equality matching rule
Here is the LDIF change tried by ldapvi:
dn: uid=foo,ou=people,dc=evolix,dc=net
changetype: modify
delete: facsimileTelephoneNumber
facsimileTelephoneNumber: 0000
After a little search on the web, I find the reason on openldap-bugs list archives:
Since the schema definition of facsimileTelephoneNumber has no matching rule
defined, the only modifications you can make are Replace or Delete w/ no
values.
facsimileTelephone attribute actually doesn t have SYNTAX definition. See in core.ldif file:
Number olcAttributeTypes: ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
  DESC 'RFC2256: Facsimile (Fax) Telephone Number'
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )
By default, ldapvi tries to delete a specific value (even if there is only one value) for an attribute. But according documentation, it s impossible to delete only one of values for facsimileTelephoneNumber attribute! Note: for deleting all values of facsimileTelephoneNumber attribute, the LDIF change must be:
dn: uid=foo,ou=people,dc=evolix,dc=net
changetype: modify
delete: facsimileTelephoneNumber

Gustavo R. Montesino: libgda3 3.0.2-4

This new Debian release of libgda moves gtk-doc and related packages back to build-depends-indep, and add some makefile logic on debian/rules to detect if gtk-doc is installed (looking for gtk-doc.pc) and enable or not documentation (re)generation on-the-fly. Of course, I've also been bitten by the sha1 checksums on the changes files, as I had a new version of dpkg-dev and an old devscripts/debsign installed. It took me some time to figure how to fix this one.

Aigars Mahinovs: Superbowl 2009

It has become a hidden tradition for me to watch Superbowl every year, despite disappointment in the game and coverage quality in the years before. It started as before: pre-game show, pre-pre-game show, coin toss show and kick-off show It is clear that the show is planned by and for advertisers and not for the viewers. That is a shame and a disgrace - the viewer must be the master of the TV programming and NOT the advertisers. In soccer the program starts, you see the captains exchange a handshake, you see the referee throw a coin and 10-15 seconds later the game is going full steam. Why do you need 3 ad breaks and 2 songs before the game is beyond me - get to the game! The camera work and NBC commentary is MUCH better than last year - stable shots with good close-ups and explanations that actually make sense even to people that are not American football experts. Oh and they actually use units - saying they won x out of y games this season and not they are x in y this season , mostly at least. The game had more fun than usual in the beginning, but the legal things slow it up again - it is weird that a guy got over the line but was called beck because of the knee touching and then a penalty for a false start ? Too much rules and regulations. Soon you ll have a team of lawyers on the sidelines and lawyer drafts will be more important than player drafts. And then again holding and chopping - isn t that what the blockers are supposed to do? Is that some kind of sissy sport? Maybe not. 100 yard interception return run I am speechless. Now that was a great, great play. That episode alone made watchig this thing worth it. Not the best sport thing I ve seen, but the best American football moment for sure. I like the basis of the game, it is a good game, but there is way too much fluff on it. That game needs to be cut down - less rules, less breaks, less interruption, less advertisements, less time to think and relax for the players. 10 seconds of play and 5 minutes of players chatting is not a sport, even curling has more action. The whole Superbowl should be over in 1 hour real time. If the TV transmission starts at 17:00, it should be done before 18:00. There is no content there to justify anything longer than that. Why is there a limited number of challenges? Do the referees make only a limited number of mistakes per game? No. Illogical. And when I though it was done and sealed, Arizona does a great drive and get a great touchdown. One more drive like that and the game could go either way. Now that is a good game. But again penalties spoil the whole game Fitsgerald gets a touchdown, another great play to turn the game around, but only because of the holding penalty giving Arizona safety score. Not deserving in my opinion. And the Steelers drive back AMAZING game! Now this is actually close to the best sports game that I have ever seen. I sure was not expecting that. And Arizona tries to drive back again. I was sleepy when I started to watch this, no sleep now. That was a great game. Despite all the commercialization, it is still a great game and it is very watchable if you download it from the Internet or watch it with TiVo and can skip the adds and the slow parts.

2 February 2009

Obey Arthur Liu: Debian Summer of Code 08 : Where are they now (part 3/3)

Welcome back for the last part of the reviews. You may want to look at the previous parts : part 1 and part 2. Jigdo-ivory, a JavaScript Jigdo client Presentation Debian CDs and DVDs take up a huge mount of space on download servers. Using jigdo to download those images can significantly reduce the amount of bandwidth and space needed on the central servers. Unfortunately, jigdo currently needs special client software to be downloaded/installed first. Adding support directly into a browser-based application could potentially make a very big difference for first-time users here. Jigdo was created in 2001. It allowed to create ISOs from .debs grabbed from regular mirrors. It eliminated the need to duplicate the entire contents of the package repository into ISO files for each release, or even more importantly, for weekly snapshots of testing/unstable/whatever. You may find the complete proposal from the student here. The original idea originated from the Debian-CD people, who wanted to explore ideas about creating a light web client. The project was mentored by Steve McIntyre, who developed a new version of the Jigdo tools, jigit, which is much more efficient. Student Dustin Rayner was a 5th year senior undergraduate student at the Oklahoma Christian University in Oklahoma City, Oklahoma. I studied Computer Engineering for 3 years as a Computer Engineering student before deciding to pursue a Mathematics and Computer Science degree. Result This project was unsuccessful due to numerous issues. First, because of an inadequate technical preparation of the original proposal. The Debian-CD people were too optimistic with the possibilities of Javascript. In the end, the copying and checksumming part of the Jigdo process were implemented but the checksumming (with a Javascript implementation of md5) was so slow that it was unusable (think 50kb/s on a regular laptop at full CPU charge). The student did the right thing to investigate Java and ActiveX but it was too late unfortunately and he ultimately lacked the experience and knowledge in the relevant technologies. If the proposal is tried again, the student would be requested to have much more experience with Java (and possibly ActiveX). Those would be much more efficient for the task, as they are the most used technologies among on-line anti-virus scanners, which have a workload somewhat similar to Jigdo. I could not find further public involvement of Dustin Rayner within Debian. Aptitude-gtk, usability and GTK+ GUI for the Aptitude package manager Presentation A GTK+ GUI for Aptitude that will work alongside improved current ncurses and command-line interfaces. This will offer an alternative to Synaptic with an interface design geared toward usability and advanced functionality. Debian currently supports multiple non-command-line package managers, the most used being Synaptic and Aptitude. Synaptic uses a GTK+ interface but offers no command-line mode. Aptitude offers a command-line mode but no X interface, although it offers a ncurses interface.
Comparing the interfaces of Synaptic and Aptitude reveal many design differences. Although Synaptic may be more accessible to beginners, Aptitude offers many interface behaviors and functions that are useful to the regular to advanced users : fully hyperlinked tabbed navigation between packages and versions of packages, mostly modeless interface, interactive dependency conflict resolver The proposal was introduced by the student in coordination with Daniel Burrows, the mentor and developer of Aptitude. Student Obey Arthur Liu was a 22 year old french student of Computer Science and Applied Mathematics at Grenoble Institute of Technology - ENSIMAG, in France. Did I mention that he s also yours truly ? If you want to know more, you might be interested in my previous post. Result This project was successful. The interface was mostly done and functional by the end of the summer. Daniel merged the code into the main post-lenny branch. Development is still ongoing and packages are released into Experimental. For further information, just read the rest of my blog. I could find some further public involvements of Obey Arthur Liu within Debian. Doh! Lintian for fuller automated setups Presentation lintian, the Debian package checker, at the moment presents possible problems in three categories: errors, warnings and informational messages. This leads to several problems, most importantly that the severity and certainty of a check can t be expressed separately. In the course of this project, the student should design and implement in lintian an improvement of the current situation, for example by using a two-letter code (one for certainty, one for severity). This project would make lintian errors much more fine-grained and help in maintaining pertinent quantitative analysis of package quality. The project was mentored by Marc Brockschmidt. The project proposal was commonly introduced by the Lintian team. Student UPDATED: Jord Polo Bard s has done a lot of work with translation in Catalan, his native tongue. He can usually be found on #debian-catalan. He also maintains a few packages as a DM. Result This project was successful. The classification was entirely done. Jord also helped with the new lintian.debian.org website. The Lintian team was very satisfied with the revamped errors list and new website. They have an immediate impact on packages quality reporting. Jord is still active within Debian, helping package a few games. Debexpo, a generic web-based package repository Presentation mentors.debian.net is currently a very specialized web-based repository that allows everybody to contribute software packages to Debian without the need to be a Debian Developer (or Debian Maintainer). It has successfully helped simplifying the sponsoring process in the last years. However it needs to be refactored and in the process should be turned into a generic piece of software that can be used for other Debian source/binary package repositories, too. Mentors is a very good initiative to recruit new packages maintainers (and needs your help!) and the software underlying it could be reused for many different purposes (think PPA). The project was mentored by Christoph Haas. The project proposal was commonly introduced by the mentors team. Student Jonny Lamb was a Computer Science student in the United Kingdom. He was already quite involved within Debian, maintaining a lot of significant packages. Result This project was successful. The whole proposal was perfectly executed. Jonny now continues to develop debexpo, with the mailing-lists and commit logs showing interesting activity. Of course, help for debexpo is appreciated to get it into full shape. Jonny has since become a Debian Developer (here is his AM report). Congratulations to him. It s nice to end on a nice note isn t it ? Now that we re done with the individual reports, I m going to write down my recommendations report. Hopefully it will help with next year s Summer of Code.

1 February 2009

Cyril Brulebois: I love it when a plan comes together

Of course I m still waiting for the FrontDesk to check whether I did something wrong, but at first glance, I m quite happy:
Application Manager assigned              Assigned on 2008-12-31
Application Manager recommends to DAM     Approved on 2009-02-01
Evgeni, it s been a pleasure.

Andrew Pollock: [tech] Oh the irony

Content analysis details:   (5.9 points, 3.8 required)                          
                                                                                
 pts rule name              description                                         
---- ---------------------- --------------------------------------------------  
 1.0 NO_REAL_NAME           From: does not include a real name                  
 1.0 HTML_MESSAGE           BODY: HTML included in message                      
 0.0 BAYES_50               BODY: Bayesian spam probability is 40 to 60%        
                            [score: 0.4956]                                     
 1.4 HTML_10_20             BODY: Message is 10% to 20% HTML                    
 1.5 MIME_HTML_ONLY         BODY: Message only has text/html MIME parts         
 1.1 HTML_MIME_NO_HTML_TAG  HTML-only message, but there is no HTML tag         
That's the registration verification email from the National Do Not Call Registry.

28 January 2009

MJ Ray: World Economic Forum 2009 in Davos

The World Economic Forum opens today (28 Jan) and runs until the weekend. This year most of the high-power planning sessions and feel-good corporate social responsibility whitewash has been replaced by sessions such as What Happened to the Global Economy? (Er, it broke because you bet more money than existed in the world?) There s a report from France24 and a programme of sessions. Like WEF in previous years, selected sessions are broadcast on SFinfo in German and Original Languages (often English) on Hotbird at 13east. Additionally, this year, there are webcasts (maybe the podcast version will play on free software) but it seems that none of the computing sessions are up for broadcast. Economics rules the airwaves for 2009. My main reason for posting here is to boggle at the WEF myspace competition. Isn t Myspace about the least appropriate of the big social networks for an economics forum? I suspect some payment or benefits from the network that Rupert Murdoch s company bought. There s also @davos which seems to be talking much more than listening seems appropriate for WEF, no?

Wouter Verhelst: FOSDEM and Novell

Sigh. I'm not part of the FOSDEM organisation team, and this is by choice. I know that I wouldn't find the time to help organize a conference of the scale of FOSDEM, since I'm rather liable to forget to do important things at times. Having said that, I happen to run a company together with Philip Paeps, who is now one of the main FOSDEM organizers; apart from that, I've also managed the Debian presence there for the past few years (lost count how many exactly), and arranged the key signing party for a few years with Joost Van Baal taking over for me starting this year. As such, I'd like to believe that although I'm not exactly in to all their secrets, I do have a front-row seat when it comes to how things are going there. FOSDEM is the "Free and Open Source Developers' European Meeting". It has been that since 2001, and will always remain so. Yes, originally it was called "OSDEM", because frankly, the organisation of the original OSDEM was done by a group of people who like Open Source, without necessarily subscribing to the Free Software ideals. The core group of the organisation is a rather diverse group; for instance, Philip has been known to be rather... negative... about Ubuntu, while Mark (one of the press contacts) has done some activism and translation work for Ubuntu. The change of name from OSDEM to FOSDEM was done not because the organisation's ideas about software were changed overnight by a mail from Richard Stallman or anyone else from the FSF; but rather, because they were open-minded enough to understand that having a name which only says 'Open Source' would be excluding a considerable part of the community that encompasses both Free and Open Source people. This is why the name wasn't changed in FSDEM; it is FOSDEM. I'm quite sure that the fact that FOSDEM is so open-minded about many of the controversial issues that have separated our community over the years not just Open Source vs Free Software, but so many other things as well is one of the main reasons why FOSDEM is so popular today: because everyone, and I truly mean everyone, will find something that he or she likes. That is why I'm so saddened that some people seem to find it necessary to not only whine, but also boycott a conference, because they believe that FOSDEM should not take money from a big Free Software/Open Source contributor, just because they also happen to be a company, and as such make business deals with Microsoft. Note that I'm not either defending or condemning Novell's attitude here; but it is a fact that not everyone in the larger Free and Open Source community feels the same way about the whole Novell/Microsoft deal (else there wouldn't be an openSUSE anymore), and as such they still deserve a place on FOSDEM. Over the history of the organisation of FOSDEM, it's always been a place where everyone could get their opinion out; whether it be the opinion that "Free Software Must Rule The World", or that "It's All About The Way You Do Things"; as long as your opinion is shared by a large enough number of people in the larger FLOSS community, it is welcome. I feel that blocking one organization from sponsoring the event, just because they have made some deals which a significant group of people, one which nevertheless does not encompass the whole of the FLOSS community, disapprove of, would set a dangerous precendent that might jeopardize the very core of what makes FOSDEM so great: its impartiality. Thank god that didn't happen.

Next.

Previous.