Search Results: "cas"

11 October 2009

Jeff Bailey: Karmic review

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

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

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

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

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

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

Nice job. =)

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

Martin Michlmayr: Upgrading SheevaPlug's U-Boot to version 3.4.19

Marvell made a new version of U-Boot for the SheevaPlug available last month. This version, 3.4.19, integrates SD card support and improves support for FAT32 USB partitions (although USB support in general is still a bit flaky). This page describes how to install this new version of U-Boot on your SheevaPlug. First of all, download the SheevaPlug U-Boot 3.4.19. Unpack the zip file and copy the file u-boot-3.4.19/u-boot-rd88f6281Sheevaplug_400db_nand.bin to your TFTP server. I suggest you call the file u-boot.bin. Then start your SheevaPlug and type the following:
setenv serverip 192.168.1.2 # IP of your TFTP server
setenv ipaddr 192.168.1.200
bubt u-boot.bin
The upgrade process will ask whether you want to change the environment:
**Warning**
If U-Boot Endiannes is going to change (LE->BE or BE->LE),
Then Env parameters should be overridden..
Override Env parameters? (y/n) n
Make sure to answer "n" here. We also need to make a small change to the u-boot configuration because this version of u-boot no longer accepts the console parameter we have been using. Thanks to Tom Rinehart for pointing this out. Instead of console, we'll therefore add a new bootargs_console and update bootcmd to make use of it:
setenv bootargs_console console=ttyS0,115200
printenv bootcmd
You'll see that bootcmd contains $(console). You have to set a new bootcmd and change the console parameter to $(bootargs_console). In my case, I'd type:
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x400000 0x0800000; reset'
Make sure you don't forget the quotes! Finally, save the environment and restart your machine:
saveenv
reset

David Pashley: mod_proxy or mod_jk

This entry was originally posted in slightly different form to Server Fault There are several ways to run Tomcat applications. You can either run tomcat direcly on port 80, or you can put a webserver in front of tomcat and proxy connections to it. I would highly recommend using Apache as a front end. The main reason for this suggestion is that Apache is more flexible than tomcat. Apache has many modules that would require you to code support yourself in Tomcat. For example, while Tomcat can do gzip compression, it's a single switch; enabled or disabled. Sadly you can not compress CSS or javascript for Internet Explorer 6. This is easy to support in Apache, but impossible to do in Tomcat. Things like caching are also easier to do in Apache. Having decided to use Apache to front Tomcat, you need to decide how to connect them. There are several choices: mod_proxy ( more accurately, mod_proxy_http in Apache 2.2, but I'll refer to this as mod_proxy), mod_jk and mod_jk2. Mod_jk2 is not under active development and should not be used. This leaves us with mod_proxy or mod_jk. Both methods forward requests from apache to tomcat. mod_proxy uses the HTTP that we all know an love. mod_jk uses a binary protocol AJP. The main advantages of mod_jk are: A slight disadvantage is that AJP is based on fixed sized chunks, and can break with long headers, particularly request URLs with long list of parameters, but you should rarely be in a position of having 8K of URL parameters. (It would suggest you were doing it wrong. :) ) It used to be the case that mod_jk provided basic load balancing between two tomcats, which mod_proxy couldn't do, but with the new mod_proxy_balancer in Apache 2.2, this is no longer a reason to choose between them. The position is slightly complicated by the existence of mod_proxy_ajp. Between them, mod_jk is the more mature of the two, but mod_proxy_ajp works in the same framework as the other mod_proxy modules. I have not yet used mod_proxy_ajp, but would consider doing so in the future, as mod_proxy_ajp is part of Apche and mod_jk involves additional configuration outside of Apache. Given a choice, I would prefer a AJP based connector, mostly due to my second stated advantage, more than the performance aspect. Of course, if your application vendor doesn't support anything other than mod_proxy_http, that does tie your hands somewhat. You could use an alternative webserver like lighttpd, which does have an AJP module. Sadly, my prefered lightweight HTTP server, nginx, does not support AJP and is unlike ever to do so, due to the design of its proxying system.
Read Comments (3)

10 October 2009

Dirk Eddelbuettel: R for system administration and scripting

On several occassions, R had suggested itself as a language for <it>systems scripting</it>. By this I mean random little adminstrative task such as (re-)moving or maybe renaming files or directories and the like. One of such cases just happened a few minutes ago. The aforementioned Garmin Forerunner 405 can cooperate quite nicely with Linux using the gant reader for the ant wireless communication protocol between the usb hardware dongle and the Garmin 405. (Sources for gant are both this file and this git archive.) I had meant to blog about this tool and the resulting files one of these days anyway, but today I just want to mention that the default filenames created by the program were somewhat horrid such as 20.09.2009 101112.TCX to denote the 20th of September of this year at 10:11h and 12 seconds. As we all know, filenames with spaces are bad for the environment as well as plain annoying. So I had made the simple change in the C sources to switch to a saner format such as 20090920-101112.TCX (and I see that the git archive now contains a similar fix). But that still left me with some 80+ files with the dreaded names. There are of course many ways to skin this cat and to rename the files in bulk. However, I found the following four lines to be fairly succinct
#!/usr/bin/r
files <- dir(".", pattern=".*\\.TCX$")
res <- lapply(files, function(f)  
    pt <- strptime(f, "%d.%m.%Y %H%M%S.TCX")  # parsed time
    ft <- strftime(pt, "%Y%m%d-%H%M%S.TCX")   # formatted time
    file.rename(f, ft)
 )
as they show, among other things, So about five lines and two minutes later, some eighty-ish files were renamed and sanity was restored. Hm, and I took me five times as long to blog this. Lastly, I do not mean to imply that Python or Perl or Ruby or (insert favourite tool here) cannot do it equally well. I simply meant to say that programmatically creating new filenames is definitely easier in R than it would have been in shell. And as an added bonus, we even get fully parsed time objects that I could have tested for. But then tests and documentation never get written on a Saturday.

Stefano Zacchiroli: RC bugs of the week - week 6

RCBW - week #6 RC bugs squashed this week by yours truly: This week I've cheated for at least two reasons:
  1. the first 4 entries in the list above are bugs of "mine", since within the Debian OCaml Maintainers team we migrated to a new package toolchain called dh_ocaml (with a lot of advantages I've anticipated before my summer break). The migration to that triggered (thanks, Lucas! :-) ) more than 30 FTBFSs which had to be dealt with. So, even if not cheating, it is at least breaking the NMU tradition of RCBW, but they were still RC bugs looking for a fix! All in all, I'm impressed by the fact that in about a week we dealt with most of them.
  2. the lxml fix above is severity "important" and as such, not RC. I attacked that because I intended to help out with the Python 2.6 transition which is still, at the time of writing, 41 bugs away from hitting unstable. I confess I did not find the task particularly fun (which is a requirement for me when I work on packages which are not mine) yet, we'll see next week ...
The feeling of the week I've to share is that I'm more and more impressed to not have received any complaint about my NMU activity, and I'm approaching the 50 NMUs. Actually I've received several "thank you" replies (you rock guys and you know who you are). On one hand this is probably a good indication that I haven't (yet) done any serious mistake; I do love peer-review! On the other hand, and more importantly, this is dispelling inside me the folklore / cultural block we have in Debian that "NMU is bad", while NMUing should become a way to help each other routinely. Really.

8 October 2009

Barry Hawkins: More Expensive and Complicated Equals Better: Carseats and Software

So I finally got around to checking out the TED site; I ve quickly become a fan. One of the first talks I watched was Steven Levitt s child carseats talk. Both the talk and the feedback comments on the TED site reminded me of things I see in software development. Here s the video if you haven t seen it.
<object height="326" width="334"><param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"><param name="allowFullScreen" value="true"><param name="wmode" value="transparent"><param name="bgColor" value="#ffffff"><param name="flashvars" value="vu=http://video.ted.com/talks/dynamic/StevenLevitt_2005G-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/StevenLevitt-2005G.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=30&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=steven_levitt_on_child_carseats;year=2005;theme=unconventional_explanations;theme=presentation_innovation;theme=how_the_mind_works;theme=not_business_as_usual;event=TEDGlobal+2005;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"><embed allowfullscreen="true" bgcolor="#ffffff" flashvars="vu=http://video.ted.com/talks/dynamic/StevenLevitt_2005G-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/StevenLevitt-2005G.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=30&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=steven_levitt_on_child_carseats;year=2005;theme=unconventional_explanations;theme=presentation_innovation;theme=how_the_mind_works;theme=not_business_as_usual;event=TEDGlobal+2005;" height="326" pluginspace="http://www.macromedia.com/go/getflashplayer" src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" type="application/x-shockwave-flash" width="334" wmode="transparent"></embed></object>
Steven Levitt shows in his talk how 30 years of data on car crash fatalities imply that carseats do not outperform regular seatbelts for children ages 2 and up. Anyone who has a child or grandchildren will probably bristle at hearing that; as the father of a pre-schooler, it certainly gave me pause. We spent no small amount of time and decent chunk of money in selecting carseats for our child, thinking we had done our best to ensure our child s safety. For that matter, it would be illegal for us not to have done so. To see a decent-sized data sample suggesting my child would be better off in a seatbelt at her age is rather unsettling. By the end of the talk, I took away these observations: So, software professionals, does any of that sound familiar? It reminds me of numerous initiatives over the years that have led us inexorably to the software productivity morass we have slogged through for years now. I suppose the most heinous case study in my own experience would be J2EE and the insistence that it was the solution that any reasonable business application would choose for a platform. (Before you .Net folks jump on that one, DCOM and later the .Net enterprise stack was much the same.) And who hasn t read a benchmark or white paper with seemingly incontrovertible data depicted in highly-polished graphics insisting that Product Y is the one solution to address them all? I noticed that there were comments below the video on its page at the TED site, largely because the negative verbiage of the topmost comment jumped out at me. I took the time to read through them all (there were 36 at the time of this writing), and to my amusement, I saw parallels between them and how people react to questioning and examining our existing practices and means of developing software. See if any of these strike a chord: In recent years I ve been greatly encouraged by the willingness of companies to question whether or not the heavyweight frameworks and technology stacks are what they should be using. Helping companies slough off high-ceremony processes in favor of right-sized process that focuses on delivering the right software in a timely manner has been some of the more rewarding work I ve done the past several years. I think we have an encouraging number of people in the industry who are challenging the more expensive and complicated always equals better mantra. For the brave individuals willing to put these questions to the community at large, I hope you find some comfort in knowing that the resistance and rejection you will encounter is a thing to be expected; you are not alone in that respect. Here s hoping we continue to be open to self-examination, no matter what emotional responses it might provoke or what fear of the future it may stir up within us.

7 October 2009

Adnan Hodzic: DebConf11 bid in Banja Luka?

Yesterday was a glorious day for DebConf11 bid in Bosnia and Herzegovina. I had a scheduled meeting with Banja Luka s mayor Dragoljub Davidovic. We met in his cabinet, where I presented him with the paper DebConf11 in Bosnia and Herzegovina in which I tried to explain what it all means. From what Debian is, over what DebConf is, to why is DebConf important. The thing I was most worried about was how am I going to explain all this in simple non-tech words Smile Either way, I was in middle of explaining what Debian is when mayor interrupted me I understand, I m electrical engineer myself you have no idea what relief came from these words! Grin Explaining what DebConf is and what kind of profiles attend one such event went smoothly as well, where mayor made some replicas on my story from the projects he worked on and so on. After my last case he also explained me how it s good that we meet, since Banja Luka was known as electronic city in ex-Yugoslavia.


Mayor and I
And this is where things start going just ballistic! He says something along the line this is a great idea and that we have his full support, I think you should talk to the prime minister (Milorad Dodik) about this as well! Shock I find my way to the government building, wait for brief period of time and I get called inside of the prime ministers cabinet. I tell him somewhat different story, in terms of more details, how we are competing with M nchen for this bid, and how I m actually planning if we win the bid, and if the bid is successful we d most likely change the whole city s infrastructure to Debian. He picks up the phone and calls for someone, person comes in and I m introduced to IT Center General Manager (Krsto Grujic). He tells me that they have few RedHat servers while he leads the way to his office where I m introduced to director of Agency for IT (Srdjan Rajcevic) where we even have this informal talk where Srdjan tells me he used GNU/Linux user himself and that he still manages two OpenBSD servers. We talk about various topics, in the end I tell them what we need for the conference, they write it all down and we exchange contact details, since I was called back up by the prime minister. Prime minister, asks me what I need from him to realize this project and I tell him that I d need everything I gave IT guys below, and binding papers that we d have full government and city support by the end of the month, and that I ll consult with people from Debian in case we need anything else. No problem were his words Grin
Prime minister and I
I walk out, really asking myself, what just happened, was that a Disney movie or what? Cool I d really like to use this opportunity to invite all Debian members to come and help us realize this bid. Help us put Bosnia and Herzegovina on map of the open source world! Stay tuned Wink

Patrick Schoenfeld: Living in a PC

I had a time in my life when I thought that computer modding is cool. After that I came to the conclusion, that it is just a waste of time. But this one is awesome. Really.

6 October 2009

Micha Lenk: pdfedit for Debian Etch

Just in case anybody is interested: I just built a backport of pdfedit for Debian Etch. The package is available from my personal package repository, which you can include in your /etc/apt/sources.list using following line:
  deb http://micha.lenk.info/debian etch/
Unfortunately it seems to be quite instabile, so be warned...

5 October 2009

Joerg Jaspert: Back from Taiwan

I m back from Taiwan since Thursday already. It was a nice trip, the whole week and I do like Taiwan. We had a transit stop in Bangkok, pretty annoying useless stop (I m sure the smokers disagree, seeing how fast they got into the smokers lounge :) ). One nice detail at Bangkok airport are the ramps down to the Gates. If you use a wheelchair, you might end up having some fun in case you ever lose control of it. Better don t. The ramp down directly ends in a set of stairs, with nothing between which would stop you. Makes too great a jump down, hehe. We arrived in Taipei Thursday (the 24th) evening and so got rid of our luggage and went out for Dinner. Which was the only time in Taiwan I wasn t happy about the food, only one of the dishes was ok, the rest not for me. But the rest of the group did like em, so maybe it was just me after a long flight. On Friday we had nothing planned, except for Dinner, so took a very relaxed day. Somewhere around noon we went out for food, after that a bit sightseeing around the hostel . There are two attributes that are always true for Taipei:
  1. It s a busy place, lots of people. No matter where.
  2. It has more scooters than you ever saw before. (True, there are two times more scooters than cars).
Oh, and of course there are the same rules of the road than in Mexico: Something might be written on paper, but better don t count on that. Red traffic lights are followed (mostly), and then its whoever is stronger. But if everyone is following this, it does seem to work out. :) Friday evening we had Dinner in a place run by Taiwan aborigines where we met the other people attending the mini-DebConf. Oh, and as it was the third time I had to use them, I was slowly growing accustomed to chopsticks, a thing I was never able to get done before. (Ok, fine, if its the only way to get food and all the others are stealing your food if you can t handle them, now thats a good reason to learn to eat with chopsticks fast :) ). Saturday and Sunday we had the mini-DebConf as part of the ICOS. I took no pictures there, but a number of other people have, you can find them on gallery.debconf.org. It was a pretty nice event where I held one talk about the Debian archive and lead one discussion round about SPI and non-profit organizations behind OpenSource Projects. The slides for the archive talk are available (beware of the kittens!), the SPI stuff only had a small introduction, no slides here. Oh, before I forget it: Taiwan does feel very hot. And we found a nice notice in our hostel Monday til Wednesday was planned for just play the Tourist game and see stuff . There was a plan made to visit the Taipei 101. It turned out that Canonical has an office within that building, as well as Google. So people planned to visit their offices too. Just - what the hell would I want to visit a Canonical office? Or a Google one? Besides that it was much too early in the day and promised to be boring, so h01ger and myself skipped it. Luck did mean it good with us, we managed to get Sabrina as a local guide for the day and so went to the Taipei 101 later. The 101 is a pretty nice building, though I would have loved to be able to get up to the real top. And not just in the upper part. Anyways, we had been lucky and had a pretty nice view from it. Getting up from the 4th floor to the 89th is also an experience one has to take: The elevators go up with 1010m/min, which makes it a 37second trip only. Down is much slower, only 600m/min, pretty boring (though you do feel it more than enough in your stomach. I wouldn t want to do lift-boy job there). After the 101 we went and visited the Lungshan temple and in the evening a night market. As it was Monday the market was empty. (Where empty translates to enough people around that you never ever feel alone. Nor think its dead). Good that, I don t think I want to experience it during weekends when its busy We had a pretty good time there, with all the various little shops. Fun how many old-style game places there are. Like, playing basketball, throwing things at other things to win stuff, all those non-computer-using games. In a country where lots of the high tech comes from this is not exactly what you would expect. On Tuesday our trip continued as good as it started on Monday, as we had the pleasure to keep Sabrina as guide for Tuesday and Wednesday. So our Tuesday started out with a visit to the National Palace Museum. Which has a large enough collection that you can spend multiple days exploring it. We didn t have the time nor memory for all of that, so left it after half a day. Lunch we took in a Japanese restaurant and here it was the first and only time during my Taiwan visit that I used a fork. Well, none of the dishes would have worked otherwise. The afternoon we spent in the Yangming Park, so we actually saw a bit of nature near Taipei. Tuesday did end early for us, as we planned to attend the TOSSUG meeting, where I met some more people from debian.org.tw and had an interesting chat about non-profit organizations in Taiwan, their way of operation and what to think of when trying to create a new one. I ve also got a nice debian.org.tw shirt, but I won t ever be able to wear it. They didn t expect someone that large when producing them, oh well. (Hrr, people, if you make Debian shirts of any kind, always do some XXL too. There might be fat, large guys like me visiting. :) ) Anyway, they have another thing, one which I like very much. They created a map of usergroups of other open source projects in Taiwan. It s a foldable map style, titled FLOSS Community Manual , and a lot of different Projects/Usergroups/ are listed there. While its all written in Chinese and I can t read it, it does list them, then describes what they are/do (I think), gives contact information and further links. The backside of it also seem to list events happening there. You can find more information (so you can read it :) ) at their website. Does seem a very nice idea to take. Sometime during the evening I also managed to pick up a Chinese name. Or better, Andrew did so for me. I don t even know how to type it, so copy&paste it has to be. :) There: . And that is: Wednesday was our last day in Taiwan, unfortunately. We went out of Taipei, visting the Golden Mountain City. Another nice place, with a market and a history, but as our Taxi was leaving at 1630 we didn t have much time for sightseeing. You could spend a lot there. Especially not as we still needed to buy postcards, something people left home always request from one. Tssk. I really enjoyed the time I had there. Not only was the organization of the conference we attended good (especially the mini-DebConf is what I saw. The event around it, while named International, was so much chinese spoken, that I couldn t make much of it), but the details around the whole stay had been nicely taken care off. And then people in general did appear very friendly. Now, it might have to do a bit with me not being exactly their height, but I dont think that is all of it. Even without such a conference as an opportunity I think I will visit the country again, but that time I will have much more time available. Like two or three weeks. And I certainly will see more than Taipei City then. Like the whole country. :) (And hope I am lucky again with local guides :) ). So thank you SLAT, Andrew, Arne, (Sabrina), Rita, (Candy) and all the people who worked for the event which names I forgot. Oh, if you didn t find it yet with all the links, a set of my pictures is available from here.

3 October 2009

Frans Pop: debmirror III

debmirror 2.3 should be hitting the mirrors about now. Main change is that it will now use the available diffs to update Contents files, which should give a nice bandwidth reduction for users who mirror those. With that the option --pdiff (for "package diff") no longer really covered its function, so I decided to change it to --diff. There's also a fix for mirroring archives that don't have a Release file. Question for users The option --add-dir has been marked as deprecated (for quite some time now I suspect). I'm considering to remove it in the next release as I cannot see any use cases for it, but it's quite possible I'm missing something and there are still people using it. If you would like that option preserved, then please mail me at debmirror@packages.d.o with an explanation of why and how you use it. Managing the size of a local mirror The archive has grown a lot over the past Debian releases and keeping even a partial local mirror can require quite some disk space. Luckily debmirror offers quite a few options to tune what is mirrored. My own mirror covers testing and unstable 'main' for 6 architectures (i386, amd64, armel, hppa, sparc and s390), no source, no D-I images. It uses only 61G. I say "only" as that's about 33GB less than it could have been without tuning. In other words, I'm saving a bit more than one third! Here are the options I added to achieve this:
--exclude-deb-section='^debug$'
--exclude='/(xen-)?linux-[a-z]+-2\.6[.0-9]*-[-[:alnum:]]*(openvz vserver xen)[-[:alnum:]]*_'
--exclude='(k/kde g/gnome o/openoffice\.org).*/.*_(armel hppa s390)\.deb'
--exclude='(a/axiom/ d/debian-edu-doc/ e/ember( -media)/ e/eclipse(/ -))'
--exclude='(e/erlang g/(gcl(cvs)? ghc6)/ l/llvm(/ -) p/paraview/ o/openturns/)'
--exclude='(s/scalapack(-doc)?/ f/festvox- g/gcc-snapshot/)'
--exclude='(/acl2-books_ /digikam-doc_ /fluid-soundfont-gm_ /deal.ii-doc_)'
--exclude='(/libxmpp4r-ruby-doc_ /lilypond-doc_ /qt4-doc_ /vtk-doc_)'
--exclude='/i18n/Translation-.*\.bz2' --include='/i18n/Translation-(nl de)\.bz2'
And the explanation is: Obviously I have nothing against any of the packages that I exclude. It's just that I don't need them.

Andrew McMillan: I still know where it came from...

I publish my photos on the internet. Well, I do when I get around to updating it, anyway. When I do so, I include some information about licensing them. I say to people "I'm very open to people wanting to use these pictures for something else, and will be happy to release photos into the public domain on request." so when I discover one of my photos abused by a travel website I do wonder why I didn't hear about it. Well it seems I also upload a lot of photos to the Burning Well public domain photo repository or to Wikimedia Commons where I also mostly mark them as PD-self. Still, you don't expect a photo of Cuilapan Monastery near Zaachila, Oaxtepec, Mexico to appear on a page about Edinburgh Castle, but really. Am I just being picky? Is this the norm? Are there really people all over the intawebs taking this little care about what photos they use for this sort of thing? I realise there isn't much sunshine in my photos of Scotland, and my photos of Edinburgh Castle, but really. Scotland is renowned for it's preponderance of rain over sunshine and it is considerably glossing the reality of a visit to the real Edinburgh Castle to even suggest the sun might appear. On closer examination I see that the site is actually talking about some weird nutter's home in Jamaica. Nothing to do with anywhere I've ever been, though if I ever visit Jamaica I probably would actually visit the place they're talking about. Now that I know about it, anyway, and especially if I was with Max who claims his favourite castles are Craigmillar & Tolquhon because most of the others aren't at quite the right stage of ruination. Oh well. I guess by putting the photo into the public domain I gave up responsibility for them, and it does seem that it might be hard to find real photos of the ruin in question (let alone free ones). On the other hand I do feel obliged to point and laugh, because that photo isn't Jamaica by a considerable distance, and just because I PD a photo I should still be well within my rights to have a good old giggle when I see a Mexican monastery linked to a Scottish castle. Even one in Jamaica.

Olivier Berger: First webcast of a demonstrator of our bug ontology s use

We have setup, as part of our work in Helios, a very early demonstrator of a database of RDF facts about bugs in several distributions (currently Debian and Mandriva), in order to try and validate the Ontology describing bugs that we develop. Here s a pointer to the first webcast on fetchbugs4.me s blog, with more details.

2 October 2009

Barry Hawkins: Just When a Wizard Would Have Been Most Useful: Coaching versus Contracting

Then they stopped, and Thorin muttered something about supper, and where shall we get a dry patch to sleep on? Not until then did they notice Gandalf was missing. So far he had come all the way with them, never saying if he was in the adventure or merely keeping them company for a while. He had eaten most, talked most, and laughed most. But now he simply was not there at all! Just when a wizard would have been most useful, too, groaned Dori and Nori (who shared the hobbit s views about regular meals, plenty and often).

- J.R.R. Tokien, The Hobbit

I am very fond of the works of J.R.R. Tolkien; it would not surprise me to find that many of you recognize these words from the second chapter of The Hobbit titled Roast Mutton . It occurred to me recently that there are parallels between Gandalf s role in The Hobbit and that of an Agile coach. Now, before my fellow Tolkien enthusiasts leap on their keyboards, bear with me on this. Know that I am not saying an Agile coach is on par with a wizard (OK, with one of the Istari sent by the Valar, but let s table that so as not to scare off the normal folk, alright?); that should be enough to calm you down. In the excerpt from The Hobbit at the top of the page, Bilbo and the dwarves have run into their first predicament. Note that it s not a particularly difficult situation; they just need to find shelter and partake of some food. Fire would be nice, too, if it could be managed. (Mind you, it s the first day of their journey; they set off mere hours ago fully provisioned and riding on ponies.) It isn t very long before the fledgling group finds itself not only without shelter and food, but in the hands of three rather nasty trolls who are deciding how best to eat the entire group. Gandalf returns once things have gotten out of control, and with some subtle adjustments to the situation, the crisis is averted. Could Gandalf have come back sooner and spared them this entire experience? Perhaps, but in their struggle a few key things happened. First, the group had to work out how to assess tasks at hand and appropriately delegate. To their credit, that effort was partially successful. The most skilled firestarters were assigned to that task, one of the keen-eyed dwarves was assigned to be the lookout. Second, they gathered some field experience that led to the establishment of improved practices, i.e. don t leave the ponies laden with packs when you make camp, particularly if it s all your food. (They lost most of their food that night when the pony carrying it bolted and ran straight into a nearby river later that night.) Third, Bilbo Baggins was called upon to perform his first task as burglar, albeit a fool s errand that landed them in the troll predicament. While Bilbo was wildly under-equipped for his job, he managed to work through it. That experience began a developmental journey that would prepare him for the great things that would be expected of him later on. This was not Gandalf s first adventure, nor was it the first group of people he needed to equip and challenge in order to develop them to a point that they could accomplish their goal. At this point, he s been in Middle-Earth just shy of 2,000 years. He would have been more than capable of walking them through their entire journey, but to what end? Agile coaching is a discipline that aims to help teams develop their own use of methodologies like Scrum and cross-methodology practices like testing, user stories, etc. This means equipping teams with just enough information to strike out on their own for a bit, then letting them run with it rather than dazzle them with one s own mastery so as to appear like the indispensable demigod. Until people struggle with the terse maxims of Agile Software Development, they cannot internalize them. And when the wizard is always around, why bother struggling? One of my greatest frustrations as an Agile coach is how few companies are willing to take a coaching approach with their Agile adoption. They want you to come in and be the demigod as a full-time contractor. Sure, there are fiscal, political, and seemingly practical reasons that they will cite; I chalk most of them up to being excuses for a lack of willingness to embrace what it would take to face the hard task of nurturing what you have. It s seemingly easier to just throw more money at more bodies and hope that somehow things will all work out, and surely if you can stumble upon some superstar to wrangle the mess, you ll eventually be able to browbeat them into becoming a full-time employee. Don t get me wrong; in some ways, I benefit from this dysfunction. From a selfish business standpoint, having a single full-time client is certainly easier than juggling multiple concurrent clients and their schedules. As far as actually accomplishing the aim of my business, however, I think it hinders the mission. One of my aims in working with companies is to be a coach despite being brought in as a contractor. It s certainly possible, though it is more challenging. There s not that natural separation of the coach from the team that forces them to take up the mantle on their own. Few things in my work are more rewarding than having a developer come to me and say, I wasn t really sure this Agile stuff could work, but now, after going through all this, I wouldn t want to go back to the old way of doing things. Much later in the journey of the hobbit and his dwarf companions, Bilbo is again called upon for a challenging task. His response makes me think Gandalf s approach has worked:
Perhaps I have begun to trust my luck more than I used to in the old days he meant last spring before he left his own house, but it seemed centuries ago but anyway I think I will go and have a peep at once and get it over. Now who is coming with me?

- J.R.R. Tokien, The Hobbit

Here s hoping more people will be willing to embrace the challenging, messy, and altogether beneficial task of equipping teams and allowing them to struggle when necessary, even if it means the occasional scuffle with trolls.

1 October 2009

Gunnar Wolf: Strange scanning on my server?

Humm... Has anybody else seen a pattern like this? I am getting a flurry of root login attempts at my main server at the University since yesterday 7:30AM (GMT-5). Now, from the machines I run in the 132.248.0.0/16 network (UNAM), only two listen to the world with ssh at port 22 And yes, it is a very large network, but I am only getting this pattern on one of them (they are on different subnets, quite far apart). They are all attempting to log in as root, with a frequency that varies wildly, but is consistently over three times a minute right now. This is a sample of what I get in my logs: [update] Logs omitted from blog post, as it is too wide and breaks displays for most users. You can download the log file instead. Anyway This comes from all over the world, and all the attempts are made as root (no attempts from unprivileged users). Of course, I have PermitRootLogin to no in /etc/ssh/sshd_config, but I want to understand this as much as possible. Initially it struck me that most of the attempts appeared to come from Europe (quite atypical for the usual botnet distribution), so I passed my logs through:
  1. #!/usr/bin/perl
  2. use Geo::IP;
  3. use IO::File;
  4. use strict;
  5. my ($geoip, $fh, %by_ip, %by_ctry);
  6. $fh = IO::File->new('/tmp/sshd_log');
  7. $geoip=Geo::IP->new(GEOIP_STANDARD);
  8. while (my $lin = <$fh>) next unless $lin =~ /rhost=(\S+)/; $by_ip $1 ++ ;
  9. print " Incidence by IP:\n", "Num Ctry IP\n", ('='x60),"\n";
  10. for my $ip ( sort $by_ip $a <=> $by_ip $b keys %by_ip)
  11. my $ctry = ($ip =~ /^[\d\.]+$/) ?
  12. $geoip->country_code_by_addr($ip) :
  13. $geoip->country_code_by_name($ip);
  14. $by_ctry $ctry ++;
  15. printf "%3d %3s %s\n", $by_ip $ip , $ctry, $ip;
  16. print " Incidence by country:\n", "Num Country\n", "============\n";
  17. map printf "%3d %s\n", $by_ctry $_ , $_
  18. sort $by_ctry $b <=> $by_ctry $a
  19. keys(%by_ctry);
The top countries (where the number of attempts 5) are:
  1. 104 CN
  2. 78 US
  3. 58 BR
  4. 49 DE
  5. 43 PL
  6. 20 ES
  7. 20 IN
  8. 19 RU
  9. 17 CO
  10. 17 UA
  11. 16 IT
  12. 13 AR
  13. 12 ZA
  14. 10 CA
  15. 10 CH
  16. 8 GB
  17. 8 AT
  18. 8 JP
  19. 8 FR
  20. 7 KR
  21. 7 HK
  22. 7 PE
  23. 7 ID
  24. 6 PT
  25. 5 CZ
  26. 5 AU
  27. 5 BE
  28. 5 SE
  29. 5 RO
  30. 5 MX
I am attaching to this post the relevant log (filtering out all the information I could regarding legitimate users) as well as the full output. In case somebody has seen this kind of wormish botnetish behaviour lately please comment. [Update] I have tried getting some data regarding the attacking machines, running a simple nmap -O -vv against a random sample (five machines, I hope I am not being too agressive in anybody's eyes). They all seem to be running some flavor of Linux (according to the OS fingerprinting), but the list of open ports varies wildly I have seen the following:
  1. Not shown: 979 closed ports
  2. PORT STATE SERVICE
  3. 21/tcp open ftp
  4. 22/tcp open ssh
  5. 23/tcp open telnet
  6. 111/tcp open rpcbind
  7. 135/tcp filtered msrpc
  8. 139/tcp filtered netbios-ssn
  9. 445/tcp filtered microsoft-ds
  10. 593/tcp filtered http-rpc-epmap
  11. 992/tcp open telnets
  12. 1025/tcp filtered NFS-or-IIS
  13. 1080/tcp filtered socks
  14. 1433/tcp filtered ms-sql-s
  15. 1434/tcp filtered ms-sql-m
  16. 2049/tcp open nfs
  17. 4242/tcp filtered unknown
  18. 4444/tcp filtered krb524
  19. 6346/tcp filtered gnutella
  20. 6881/tcp filtered bittorrent-tracker
  21. 8888/tcp filtered sun-answerbook
  22. 10000/tcp open snet-sensor-mgmt
  23. 45100/tcp filtered unknown
  24. Device type: general purpose WAP PBX
  25. Running (JUST GUESSING) : Linux 2.6.X 2.4.X (96%), ( )
  26. Not shown: 993 filtered ports
  27. PORT STATE SERVICE
  28. 22/tcp open ssh
  29. 25/tcp open smtp
  30. 80/tcp open http
  31. 443/tcp open https
  32. 444/tcp open snpp
  33. 3389/tcp open ms-term-serv
  34. 4125/tcp closed rww
  35. Device type: general purpose phone WAP router
  36. Running (JUST GUESSING) : Linux 2.6.X (91%), ( )
  37. Not shown: 994 filtered ports
  38. PORT STATE SERVICE
  39. 22/tcp open ssh
  40. 25/tcp closed smtp
  41. 53/tcp closed domain
  42. 80/tcp open http
  43. 113/tcp closed auth
  44. 443/tcp closed https
  45. Device type: general purpose
  46. Running (JUST GUESSING) : Linux 2.6.X (90%)
  47. OS fingerprint not ideal because: Didn't receive UDP response. Please try again with -sSU
  48. Aggressive OS guesses: Linux 2.6.15 - 2.6.26 (90%), Linux 2.6.23 (89%), ( )
  49. Not shown: 982 closed ports
  50. PORT STATE SERVICE
  51. 21/tcp open ftp
  52. 22/tcp open ssh
  53. 37/tcp open time
  54. 80/tcp open http
  55. 113/tcp open auth
  56. 135/tcp filtered msrpc
  57. 139/tcp filtered netbios-ssn
  58. 445/tcp filtered microsoft-ds
  59. 1025/tcp filtered NFS-or-IIS
  60. 1080/tcp filtered socks
  61. 1433/tcp filtered ms-sql-s
  62. 1434/tcp filtered ms-sql-m
  63. 4242/tcp filtered unknown
  64. 4444/tcp filtered krb524
  65. 6346/tcp filtered gnutella
  66. 6881/tcp filtered bittorrent-tracker
  67. 8888/tcp filtered sun-answerbook
  68. 45100/tcp filtered unknown
  69. Device type: general purpose WAP broadband router
  70. Running (JUST GUESSING) : Linux 2.6.X 2.4.X (95%), ( )
  71. Not shown: 994 filtered ports
  72. PORT STATE SERVICE
  73. 22/tcp open ssh
  74. 25/tcp open smtp
  75. 53/tcp open domain
  76. 80/tcp open http
  77. 110/tcp open pop3
  78. 3389/tcp open ms-term-serv
  79. Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
  80. Device type: firewall general purpose
  81. Running: Linux 2.6.X
  82. OS details: Smoothwall firewall (Linux 2.6.16.53), Linux 2.6.13 - 2.6.24, Linux 2.6.16
Of course, it strikes me that several among said machines seem to be Linuxes, but (appear to) run Microsoft services. Oh, and they also have P2P clients.
AttachmentSize
Results of parsing the logs21.58 KB
Relevant portion of the logs1.05 MB

Gerfried Fuchs: Times Are Changing

Since I returned from this year's debconf quite a lot things have changed in my life. One thing I knew way before debconf already, I switched jobs. I was working for a pretty long time (and also through great times) for Silver Server, for well over 6 years. Let's see what I can do in and for my new job. I'm still only pretty short there yet and I being to understand what's going on (and what could need improvements in some workflows) but it's too early to see that more precisely. On a small side-note, the job change also required me to switch my mobile phone number because the old one was a company's number. I now have a private one that I don't fear of losing anymore. If you subtract the number 3933309527644 from my old one you have my new one. On the other hand you can always ask me for it in case you had my old one and wonder. ;) Besides my mobile phone number other smaller things have changed over time too. Most of you noticed that I'm neither using my @ist.org nor my @debian.org address anymore because they did carry the wrong nick. And given that everyone was switching their gnupg keys I did so too. Like before I again created separate keys for private usage and for Debian usage. I'm not really following the procedure of sending out signing requests to people who have signed my old key(s), personally I don't follow them myself so I don't expect others to do. They are though cross-signed with the old ones just to be on the save side to keep the WoT not losing connections. Also I finally got around to set up my own ejabberd server and did create my a new jabber ID that I also plan to keep. It is the same as my private mailaddress as you can see linked above in the key for private usage. ;) One of the reasons for the server is by the way also a testbed for the packaging of ejabberd which will get moved into team maintenance with the next upload which will be the next upstream version, 2.1. But the biggest and most important change in my life is that I will have to rethink my spare time spending quite a lot because there will be something demanding a lot of time starting in about march next year. An extremely fortunate change and almost as happy one even though it means that I won't be able to attend next year's debconf in NY, but I hope the people whom I told that I will be there aren't too disappointed by this announcement. Sorry! :)

Christian Perrier: Developers per country

About two months after Alex calculated the Debian developers ratio per country in a followup to a post of mine where I was happy that we KTA of UK developers in terms of numbers......I felt the need for an update. Indeed, thanks to the amazing work of the NM team, several people became DD recently and I though numbers might need an update. So, here they are, sorted by the ratio of *active* developers per million population for each country.
'Code'	'Pop'		'Act'	'Dev'	'Act'	'Dev'
'fi'	5340093		21	28	3,93	5,24
'ch'	7725200		20	22	2,59	2,85
'se'	9283722		24	35	2,59	3,77
'nz'	4317300		10	14	2,32	3,24
'no'	4828000		11	13	2,28	2,69
'at'	8356707		18	23	2,15	2,75
'de'	82060000	172	208	2,1	2,53
'lu'	491700		1	1	2,03	2,03
'au'	21807000	35	56	1,6	2,57
'be'	10741000	15	15	1,4	1,4
'nl'	16524463	23	38	1,39	2,3
'fr'	65073482	90	108	1,38	1,66
'ie'	4422100		6	9	1,36	2,04
'uk'	61612300	72	101	1,17	1,64
'ca'	33726000	38	56	1,13	1,66
'es'	46661950	44	52	0,94	1,11
'dk'	5475791		5	8	0,91	1,46
'hu'	9930915		7	11	0,7	1,11
'us'	305683227	214	353	0,7	1,15
'hr'	4491543		3	3	0,67	0,67
'cz'	10220911	6	6	0,59	0,59
'uy'	3477778		2	2	0,58	0,58
'it'	59619290	34	41	0,57	0,69
'il'	7282000		4	6	0,55	0,82
'bg'	7582000		4	4	0,53	0,53
'lv'	2245423		1	1	0,45	0,45
'pt'	10627250	3	4	0,28	0,38
'lt'	3565205		1	1	0,28	0,28
'pl'	38500696	10	13	0,26	0,34
'jp'	127288419	32	42	0,25	0,33
'cr'	4195914		1	1	0,24	0,24
'sk'	5455407		1	1	0,18	0,18
'gr'	11260000	2	3	0,18	0,27
'ar'	40677348	6	7	0,15	0,17
'by'	9685768		1	1	0,1	0,1
'br'	191043661	18	19	0,09	0,1
'tw'	22548009	2	2	0,09	0,09
'za'	49052489	4	8	0,08	0,16
'kr'	49232844	4	6	0,08	0,12
've'	28199822	2	2	0,07	0,07
'co'	44760630	3	3	0,07	0,07
'cl'	16454143	1	1	0,06	0,06
'ru'	141800000	8	8	0,06	0,06
'mg'	20042551	1	1	0,05	0,05
'ro'	22246862	1	2	0,04	0,09
'pe'	29180899	1	1	0,03	0,03
'tr'	71517100	2	2	0,03	0,03
'ua'	45994287	1	1	0,02	0,02
'mx'	106682500	2	2	0,02	0,02
'th'	65493298	1	2	0,02	0,03
'eg'	81713517	1	2	0,01	0,02
'in'	1145587234	6	6	0,01	0,01
'cn'	1360445010	5	9	0	0,01
A few interesting facts:

30 September 2009

John Goerzen: Sen. Brownback s Visit

Since I asked for suggestions on the Brownback town hall, I figured I ought to report what happened. He was scheduled to spend about 30 minutes in it; he probably spent a total of 40 or 45. He arrived a few minutes early, went around the room shaking hands and asking each person their name (including me). It was polite on the one hand, and a little odd on the other, as he was occasionally reaching over chairs to reach people far away. Anyhow, he stood up front and had a little speech to start with. He spent the first 5-10 minutes talking about local sports teams. It might have been a nice icebreaker if it was 30-60 seconds, but it just felt weird by the time it was over. Everybody knew he was here to talk about other things and had very limited time. He then launched into the economy, talking about keeping taxes down and making sure they re low in Kansas for the recovery. He touched on energy, supporting wind energy (which led to his most memorable comment of the morning: This state blows, and it s got lots of wind, too. ) He also came out in favor of coal, oil, and gas. Basically he s pro-energy. Can t go wrong with that, eh? He rode our prototype all-electric ZTR mower, and praised it quite a bit. He touched on health care briefly, saying that he favors incremental changes to bring down costs. He thought health savings accounts and high-deductible health plans (such as one option at my employer with a $2500 deductible) were good innovations. He then opened it up for questions. There was a brief awkward moment when nobody raised their hand, so I did. I started by saying where I agreed with him. I told him I agreed that health care is way too expensive, that I agree that we need liability reform, and said that we pay almost as much each month in health care as we do in all federal taxes combined. I was going to continue, but he interrupted, and said, Are you serious? Yes. 80% as much in fact. Do you have an illness in your family? My wife has asthma, a thyroid disorder, and we had a baby this year. That s it. Wow. So I continued. I told him I was concerned about the 46 million uninsured Americans, that they weren t getting the care they needed. I pointed out that many of them wouldn t be able to afford that $2500 deductible in the HDHP, let alone regular doctor visits. And I said that it is our moral and even religious duty to take care of the least of these when it comes to health care. He answered by first saying that nobody goes without care that s the law because anybody can get care in any emergency room in the country. Then he spent several minutes describing how he thinks the government can t manage anything, and thus a single-payer system wasn t right for us. After a few minutes of this, he asked if that answered my question. I said that I don t care how the 46 million people get care, whether it s a public option or subsidies for private companies, just that they get it. I also acknowledged that ERs must provide necessary stabilizing care , but pointed out that 20,000 Americans die each year due to inadequate health care and reminded him that ERs are not required to provide diagnostic or preventative services, or long-term treatment of things like cancer. For the first, but not the last, time of the day, at that, he got really quiet, sort of hung his head, and said something like, Yeah, I agree. It is hard on the least of these. I wish we could do more. And moved on to the next question. At this point, it got weird. The next question was a guy that stood up, saying how we ve got to put God back into the constitution. He said he s lived long enough to see the moral decline in this country, and it s going to hell faster than we know. We need to be God-fearing again, he said. Brownback, in reply, again did the quiet hang-his-head thing and said, I agree. Then moved on. We then had a question about state s rights, nullification , and the 10th amendment. Though it was obvious some issue was underneath it, I couldn t figure out just what it was. Brownback, predictably, thinks that the federal government has grown way too powerful. (Ironic for someone that supported the Patriot Act, but hey.) Then one other question, and as he was going to wrap it up, a yelled question from the back: What s good about Kansas? Brownback was caught a bit off-guard, but launched into talking about aerospace, and how he hopes to lure wealthy retirees from California to settle here. All in all, an interesting experience. More respectful than I feared, more scary than I imagined, and about as genuine as I expected a politician at that level gets.

Joey Hess: fractal directory structures

I was thinking about how I often end up in a directory path where the names of one or more components repeat. It seemed there should be a name for when this happens.
/home/joey/src/ikiwiki/doc/ikiwiki/
/home/joey/src/pdmenu/src/
/home/joey/src/joeywiki/joey/
/lib/modules/2.6.26-2-686/kernel/lib/
/proc/1/task/1/
Then I realized there was a name already: Fractal. While directory structures are supposedly hierarchical, different levels in the hierarchy are self-similar, and so sometimes the same name is duplicated, with a subtly, or vastly different meaning, at different levels in the same directory path. I had wondered if we were doing something wrong, that this happens so often. It is occasionally confusing. But aside from using a deep, nominally hierarchical directory structure, and displaying a slice through it (as if talking about electron orbitals in a rock orbiting sol), I don't think we're doing anything wrong. Here is a oneliner that will find all such directories inside a specified start directory. You will probably find some amusing ones you've never noticed.
perl -MFile::Find -le 'find(sub   if (-d $_)   my %bits; foreach $bit (split "/", $File::Find::name)   if (++$bits lc($bit)  > 1)   print $File::Find::name; return         , shift   ".")'

Jon Dowland: FAC-1

This is my first attempt at homebrew. It's from a stout kit, purchased from the Elderberry Home Brew Centre, which you can find at 28 Station Road, Whitley Bay. The fellow there is very helpful and gave me lots of advice on starting out. I'd recommend anyone interested in beer or wine making in the Newcastle or North Tyneside area to make the journey. In honour of a period in modern British music I am really fond of, I've decided to call it "FAC-1". Thus, when the first stage is complete and I siphon off a sampler, I can call that "FAC-2".

Next.

Previous.