Search Results: "cas"

3 May 2007

Joerg Jaspert: LPI?

That mad duck writes about the LPI exams during DebConf and isnt sure if he should do them or not. Well, first a reply (in a blog, yeah, shudder) to one of his points - yes, Klaus had something to do with this LPI offer. He was my initial contact for LPI, getting the UK LPI people in the boat, and then also made the contact to the “Area Operation Manager” who was the one that offered the special pack in response to one of my requests. So yes, he had a lot to do with this. Second, the “What do I need LPI for?”. Good question. It really depends. Do you have a good job? Do you have a good track record with your work and is that enough for your (possible future) boss? Or is it likely you get one of those that don’t look at what you are actually able to do but instead look at some “certification” from $whoever? Or the company you work for does support for $some-other-big-company and those ask for certifications. Those are the cases when it (can) help to do those exams. If one just wants to do it “for my own fun/private stuff”, then I dont think its the right motivation. I personally don’t have any certification and dont think I need one. I only thought about doing such an exam for a minute as I had “the luck” to win 2 LPI vouchers during Cebit, so it would be free for me.

MJ Ray: Election Day

Like much of the UK, it's election day in Kewstoke. There's no vote for Kewstoke council because there weren't enough candidates to make a contest. 10 candidates for 11 posts, I think. I was approached by a couple of people and asked to run (quite strongly in one case) and I seriously considered it, but I only moved to this village six months ago, I don't know how things work yet and there are many other things I want to do in the next four years (the term of office AIUI). I was also approached by one person at a recent meeting and told that I should have stayed in Norfolk! Of course, that made me feel that I should run just to mix them up, but no, I'll stick to my decision. That comment did tickle me, as I only went to Norfolk to university - and stayed a bit too long. I'm not from round there. There is a vote today for North Somerset council and it's been interesting to compare the campaigning: no doorstepping or hustings from anyone (unlike in King's Lynn), three Conservatives leaflets, three Liberal Democrat leaflets but I didn't even find a web page for the Labour candidate. It's also been interesting to see the campaign coverage in the press: Weston and Worle News have been quite good, while the Mercury seems to prefer gibberish stories like the EU makes our post late. I'll go along, vote and watch for the results, but I suspect this green village of farms and tourism is safe Conservative Hold territory. Although there's been some new building of a largish house estate in the ward, which I suppose might change things. How's election day going elsewhere? I see Conservative Norwich City Councillor Antony Little has already posted the sort of partiality we all know and love...

Erich Schubert: Magic numbers

When reading this number
09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
I thought it was the fingerprint of a GPG key.The first time I came across it, it was encoded in a puzzle; not a particularly difficult one (what key is inbetween of F8 and F10 on your keyboard?).Turns out that this number can be used to decrypt most HD-DVDs produced so far.No, you can't really think you have a copyright on this number? You could have it as a registered trademark, I guess. But I think everybody will be using it to refer to you. :-)From a crypto point of view, it was just a matter of time until this number leaked out. And in fact, the HD-DVD encryption was designed to handle this cases (but it wasn't used correctly). Face it: cryptographers have been telling you right from the beginning that your encryption will be broken by it's very nature (remember: you are shipping decryption keys worldwide in your HD-DVD player devices).[Update: others thought it might be an IPv6 address maybe?][Update #2: Google thinks there are about 300k pages with this number. Maybe we can stop this meme now? :-)][Update #3: it was pointed out to me that nobody claimed to have copyright on this number, but that it is a device to cirumvent encryption and thus violates the DMCA. And that this is similar to distributing magic markers that could be used to 'crack' a famous CD protection used by Sony some time ago...]

2 May 2007

Biella Coleman: Share the Past, Create the Future, See a Bunch of Dudes Pontificate

I just received a fund raising email from Lawrence Lessig who is trying to raise money to support the isummit conference to be held in mid-June in Croatia. The goal is to raise $ 100,000 which will be matched by some anonymous donor. I hope that they are also trying to meet the challenge of getting a few ladies on board as keynote speakers because so far they don’t even have one and there are barely any as workshop organizers. Oh hey, but at least someone noticed on their website. Along with the cash, maybe they need to raise some “awareness.” I know I sound like a broken record when it comes to this issue, but the record is broken…

Anthony Towns: A conversation with jdub

A couple of months ago I was sitting in a north Sydney pub cradling a beer with the ineluctable jdub, the decidedly unparsimonious rusty and (if I’m accurately remembering who’d left and who hadn’t by this point) the irremediable mrd. As you might imagine, these sort of conditions are a perfect breeding ground for a particular type of discussion, and with Jeff’s departure from Canonical not that long beforehand accompanied by the then ongoing DPL elections, talk turned to the future of Debian, and in particular Jeff’s views on that future. Obviously more than a few weeks have passed since then, so please imagine this as a dream sequence with a stylish TV fade-in accompanied by appropriate fine print caveats about paraphrasing and the perfidy of memory. I think it’s fair to sum Jeff’s main point about the future of distros as one of “disintermediation” – that is removing, or at least minimising, the barriers between the authors and users of a piece of software, and in general getting closer and quicker collaboration between everyone involved and interested in developing and maintaining that software. Which means things like trying to remove the line between the Debian bug tracker and upstream bug trackers entirely, so that Debian users end up talking directly with the upstream maintainers, rather than having a Debian maintainer relaying information between the two. It also means making the path for updated packages to get to users quicker and smoother – so that as soon as a developer commits a new version of the software to version control, the next time users of that software “apt-get update” they see it, download it, and start using it. Or at least, they do if they’ve chosen to follow the bleeding edge. Jeff had a bunch more ideas in that vein – like not bothering with a central archive, but having users collect the packages they’re interested in from upstream sites all over the place, standardising, reducing or removing the “control” information for packages so that creating the correct packages for 80% of free software (that uses ./configure in the usual way, eg) was a complete no-brainer, and perhaps viewing distributions not so much as the gatekeepers and central players of the open source world, but perhaps more as systems of providing resources, assistance and opportunities to software authors who deal with their users directly – and in so doing have more of an opportunity for their users to actively participate in the project’s development, and have more feedback (and control) of how their project is perceived by its users. I’m not sure if I’m doing it justice – it’s a pretty radical notion, and as an upstream-type hacker, Rusty was pretty enthralled by it. As a distro-type hacker, on the other hand, I’d have to say I was daunted: getting rid of the middleman here means getting rid of Debian, which I must admit I have something of an attachment for… and yet, in principle at least, I can’t see anything but good sense in the idea – getting users and developers interacting more closely is important to improving the free software community, and while distros have historically been a force for making free software more accessible to people, it’s entirely possible we can now make it even more accessible now by, in some sense, doing away with distros. And if that’s the case, then we definitely should, because it’ll benefit both users and developers of free software, which is what we’re all about. On the other hand, distributions (at least currently) aren’t just about collecting and compiling software which could be automated; it’s also about integrating it, standardising interactions between software, and in some cases acting as a buffer between users who want to use a bit of software and developers who for one reason or another don’t actually want to deal with those users (perhaps due to lack of a shared language or political or philosophical disagreements). I think it’s also pretty interesting to view Gentoo through this light; that is, not so much as a distro that makes you compile everything from source, but rather as a distro that gives its users a system based on exactly what the developers produce, with the addition of only a comparably tiny amount of Gentoo-derived content. Maybe it’s just me, but Gentoo sounds a lot more interesting to me in that light. So is that a foretaste of the future of binary free software distributions too? There’s a lot of things that would stand in the way of Debian managing that, but so far all I can think of is a thousand problems that should probably be solved anyway, and not even one that can’t. I think, btw, that jdub had been reading Accelerando (also available as a Creative Commons licensed ebook) somewhat concurrently with thinking about this stuff, so perhaps it should be called “Distributions 2.0” or something. Accelerando’s a crazy-awesome near-future/singularity book by Charles Stross, who happens to live in the city that will host the forthcoming DebConf 7…

Amaya Rodrigo: The no impact man^Wfamily

If everybody on the whole planet decided to commit suicide, which in a way, they have, would it be the right thing to do to not join in? What s so great about trying to be right if it keeps you separate? It seems like there is something precious that has to do with holding yourself above or not just joining in and being part of. I don t know. I m suddenly realizing that this whole project could be pretty damn hard.

The No impact man is a family s project to try not to cause any environmental impact on the planet for one year. It involves a very radical change in their lifestyle, as they live in Manhattan. The blog describes their struggles as they gradually move from one goal to another, from reducing their trash generation to absolutely none, declaring war to tree-killing junk mail and plastic bags, only eating local produce, thus giving up coffee and sugar (which the wife specially resents), no cars, buses or elevators, being hit by a car while riding his second-hand new bike (no new purchases are allowed)... to composting their own waste and giving up all throwaway products, including toilet paper. All this in Manhattan, with a toddler!

While I completely relate to their goal, and being myself quite picky about the way I consume, having changed my most used light bulbs to low energy ones (even though I hate the resulting light colour and quality), turning off all electronics that have a led while not in use, not owning a car, avoiding public transportation in favour of walking as often as possible, and being obsessive about recycling, I keep a 24x7 powered on desktop and laptop, my lights are turned on much often than the average house (my place is very dark), I drink tea that comes all the way from Africa (Rooibos), I want to fly all over to Hamburg every weekend (but I can't afford to), and I have not gotten around to insulating my electrical water heater.

Yet, I live alone, in a small place, and my use of resources is still quite rational, for a geek. (Take a look at the WWF Footprint Calculator: I am living as if we had 2.52 planets to support us. Although I am below some of the world average figures, we obviously only have the one!).

It is both inspiring and off-putting to see this family s effort, as it looks like an interesting experiment that I am surely going to follow, but one I would myself not be able to attempt. Many people believe their small little efforts will not change anything, but I disagree. Every little effort makes a difference when you look at the global picture, still this problem is not easy at all.

In case you need some motivation to rethink the way you live, watch Who Killed the Electric Car?, An Inconvenient Truth, The End of Suburbia or Darwin's Nightmare.

To quote the no impact man in Deeper sickness, better cure: A psychiatrist friend, Stephan Quentzel, went so far as to suggest in conversation that environmentalism could be like a new religion that binds us together with a sense of common purpose and greater meaning .

Miriam Ruiz: [Gnash-dev] YouTube seems to be working now

A mail from strk to Gnash development mailing lists announces what many of us were waiting for. I’ve put some newer packages available, built against Etch, in case someone wants to try them. I’ve changed the renderer to AGG instead of OpenGL, which is preferable, and the media player to GStreamer instead of FFmpeg, because FFmpeg is still giving some problems. It seems that we’re closer to the next release!

Chris Lamb: April s search strings

This is clearly a meme now.

1 May 2007

Mike Hommey: Google Keywords - Apr 2007

“adding the iceweasel branding to firefox windows” - coming soon
“asa dotzler sucks” - Blake Ross again ?
“booh debian” - apt-get moo
“ca passe” - ou a casse
“dumb ass 2″ - the return
“fix fucked up partition table” - you should try parted
“good variables to test” - foo ? bar ?
“hate soccer” - me too
“i could not agree less” - can’t say disagree ?
“plus c’est gros mieux a passe” - this also applies to what Sarkozy says
“shaking laptop while in use” - not convenient to type
“us consumer protection versus firefox” - Stella award in progress ?

Ross Burton: For Sale: Discworld Novels

In order to make some space and a little cash, I'm selling my collection of Discworld novels. I have the first 24 in paperback, but sadly not Lords and Ladies. They are all in very good quality and I'm offering the lot for about £60. Reasonable offers accepted, and this is for collection or personal delivery if I'm feeling nice (say, you live in Cambridge). I can provide photographic evidence of the books if required, I just need to get them out from behind another pile of books. Anyone interested? If so, mail me. NP: Soulmates, Nobody

Joachim Breitner: A shelf for darcs

I recently did my first experiments with darcs: A friend of mine and I hacked on the same code, and by giving each other access to one s darcs repository, we could easily exchange our new code.One problem I had was that my friend recorded a patch that I did not want applied in my repository. Nothing else depended on it, so I could just say no everytime I use darcs pull , but it s still a hassle. Also, imagine that I m somewhere else and I suddently decide that I do want the patch?A similar problem would be if I created some patches that I temporarily don t want applied. I could branch, and then unpull them, but this is a bit too much work.In both cases a patch shelve would be handy. A seperate storage for patches in my repository that are available, but not applied. I d imagine that the darcs pull command would then allow me to pull and put on the shelf , and not offer me this patch again. There would also be put on shelf and get from shelf commands. So if anyone feels like hacking on darcs, this feature would be appreciated.Also filed as a withlist bug.

Russell Coker: more about Heartbeat

In a comment on my blog post “a Heartbeat developer comments on my blog post” Alan Robertson writes:


I got in a hurry on my math because of the emergency. So, there are even more assumptions (errors?) than I documented. In particular, the probability model I gave was for a particular node to fail. So the probability of either of two failing would be double that, and either of three failing would be triple that. Note that the probability of multiple simultaneous failures goes up as a power, but the probability of either of only goes up linearly. I really need to sit down and do the math carefully - but the idea of the simultaneous failures going up as a power is true. And the “any of” probability goes up linearly. That’s also true. This is why people can actually use larger HA clusters ;-). The 5 years figure is the industry standard quoted figure for an average Intel-based server to fail. The four hours to repair is a common high-quality of service response time from a hardware vendor. I admit that’s not the same as actual repair time, but if some “repairs” are just reboots, then it’s not a horrible number to start with - if your vendor has cached some spares nearby. I suppose I should sit down and do the math right, and make a spreadsheet of it. (I wonder if I remember that much math?) I assume disk failures are taken care of by hot swap disks, RAID, etc. and so in effect they “never fail” (at least not totally) so that these failures don’t have to be accounted for by the overall availability model. Here’s an intuitive way of thinking about it “from your gut”… If I took your whole data center and made a cluster out of it, what’s the chance that at least half of your servers would fail at once? Pretty darn small, is the short answer ;-). If it’s not pretty darn small, you need to buy better servers, and IBM has just the servers for you ;-). Or maybe they need to hire a better SysAdmin ;-) If you ask yourself “when is the last time at least half my machines in my data center couldn’t communicate with the other half”, then hopefully that’s also a “pretty darn small” chance too. If not, there are well-known methods for making networks highly reliable too. [I’m still ignoring “catastrophes” that you haven’t accounted for in your HA architecture]. I’m not saying this is free, and it can be pricey. One of my other favorite sayings is “Paranoia is an expensive hobby”. How much do you want to spend? You tell me how much you want to spend, and you can figure out how to spend it. I’ll make a separate comment on quorum models later. It’s getting late here.

My only comment in response to that is to say that I still believe the calculations of probability to be correct in my original post and I am interested to see someone prove otherwise. Another comment by Alan:


Data corruption, no doubt, is almost always much worse than loss of availability. And some kinds of data corruption are worse than others. For example, mounting a non-clustered shared disk filesystem twice simultaneously is usually much worse, than updating two replicas of the data simultaneously. In the first case, you have to restore to your previous backups and lose all data since then. In the second case, you only lose updates that were made to one of the sides, and you instantly have a working copy of the data which is nearly always much newer than your last backup (with the possibility of recovering them by significant effort). Typically you would only lose a few minutes of updates at worst - and depending on the kind of networking failure, you might not lose anything. Heartbeats certainly aren’t enough. You need to monitor the health of your servers and the health of your applications. Heartbeat monitors applications and can easily be informed of and act on the health of your servers (with release 2 style Linux-HA Heartbeat configurations).


Followed by:


Since data corruption is so serious, this is why cluster designers worry so much about split-brain, which is managed using the ideas of quorum and it’s sibling fencing. This is all about keeping bad things from happening. This post is really about quorum, since Russ had expressed interest in it. Quorum is the idea that you can uniquely choose a subcluster to represent the whole cluster in those cases where communication failure has caused the cluster to split into separate sub-clusters which cannot properly communicate with each other. In this way, only one of the subclusters continues on, and the others will sit on their hands and do nothing waiting for a person to fix things. Some of the kinds of quorum mentioned below are better than others. But, most importantly, they can be used in combination as described later. The most common kind of quorum is that Russ mentioned in his earlier post - the majority quorum. In this method, for a cluster of n nodes, you grant quorum to a sub-cluster which has more than INT(n/2) members. This means that if you have a 3-node cluster, you have to have two nodes to continue. If you have 4 nodes, you have to have 3 nodes to continue. For 5 nodes, you have to have 3 nodes, and so on. Other basic methods include disk reserve, so that you have reserve a disk to have quorum. In this case, if only one node survives and it can reserve the disk, it continues to run. However, the disk becomes a single point of failure. This may not be a problem if this single disk is required to run any of the cluster services, since they would fail without it anyway. [Heartbeat does not support this method]. An analagous method is to implement a software resource which grants quorum to one subcluster in a fashion analagous to the disk reserve method. This has the advantage of not requiring disk reserves, or a shared disk, but it has the same SPOF disadvantage as the disk reserve method. Heartbeat does support this method using the quorum daemon. It’s incredibly useful for those cases (like split-site clusters) where you cannot use fencing. Another method is to grant quorum to any subcluster which can ping a certain set of nodes, and not grant it to any which can’t access those nodes. This isn’t a wonderful method, and has obvious disadvantages with respect to uniqueness, and single points of failure. (Heartbeat doesn’t yet implement this one). Another method is to grant quorum to any node which is a member of a 2-node cluster. This is better than losing quorum and stopping when one node stops, but obviously completely ignores the uniqueness requirement of quorum. Another method is to ask a human being if you have quorum. This is hardly an ideal circumstance, but useful in some contexts as described below. (Heartbeat doesn’t yet implement this one). Perhaps you say, really the only one of these that’s really good is the first one - the majority vote method. And, I would generally agree with you. But, Heartbeat has the ability to use these in combination which makes some of those methods that seem flaky to be much more reasonable. Heartbeat has the ability to have multiple quorum modules declared, and they’re used in this way: Any module can return HAVEQUORUM, NOQUORUM, or TIE. If they return HAVEQUORUM or NOQUORUM, then no further quorum modules are consulted. However, if they return TIE, then the next quorum module is consulted for its opinion. If the last quorum module returns TIE, it is treated the same as NOQUORUM. This enables you to use one quorum module to break the tie declared by a previous quorum module. You could then use the quorumd to break the tie created by a voting module. Or you could use the quorumd instead of the “two-node” module. Or you could use the “pingable” module instead of the “two-node” module. Or you could at the end always tack on a “human” module, in case all else returns TIE. This is kind of cool, actually. My favorites for next implementation are the pingable and consult human modules. And, of course, if your cluster loses quorum due to real server failures failures, there are always ways to work around it, with a little human intervention. One method is to tell Heartbeat to ignore quorum. Another is to tell Heartbeat to remove certain nodes from the cluster, after you verify that they’re really dead. And, I’m sure that in a pinch, some new methods will be invented. And some of them might actually work ;-).


Regarding the quorumd, it seems that this is an extra server that will generally run on another machine separate from the rest of the cluster. So if we had a two-node cluster with a quorumd then it would effectively be a three-node cluster where one node is not configured to run any resources. It seems that the simpler approach in many cases would be to merely have a three-node cluster with resources not configured to run on one of the nodes. For example if I was running a mail server cluster for an ISP I might configure a three node cluster of the two mail server back-end machines and one other machine that is lightly loaded (EG a DNS server) and have it configured not to run MTA resoures on the DNS machine.

30 April 2007

Cord Beermann: Listmaster vs. Gmail

We get regular requests from Gmail-Users that don't receive their own mails back, when they post something on a mailinglist to which they are subscribed.

So if this happens to you, first check if your mail shows up in our mailarchive.

If it appears there (wait some time that the archive can catch up) your mail has been successfully posted to the list, and your copy has also been send and is most likely accepted by Gmail. But Gmail seems to drop that mail internally (or sort it in a spamdropbox?) maybe because From and Receipient-address are the same. (We get two or three requests of that kind per week, and everytime we investigated, we found this is the case)

If it doesn't appear in the Mailarchive and your mail has been accepted by our mailserver murphy.debian.org, you most likely have lost against our Spamfiltering. (Did you know that ControlExtension matches the string Rolex?).

Then feel free to report to listmaster@lists.debian.org and provide as much info about your lost mail as possible, helpful would be:



Keep flamemailing.

Russell Coker: comment spam

The war on comment-spam has now begun. It appears that Blogger might have some anti-spam measures of which I was unaware. Otherwise it s a strange coincidence that I get a huge number of comment spams for extremely hard-core porn from the Ukraine so soon after starting a Wordpress blog.

About 24 hours before the spam attack there was a strange blog comment that linked to google (with no offensive or spammy content). It appears that leaving it online was my mistake, when I left that online for a day the spammer decided that I might also leave porn spam online. I arrived home this evening to find almost 100 spams in the form of comments and track-backs, and more arriving by the minute. So I used iptables to block a /20 related to the spam and things are quiet now.

The moral of the story is to delete anything unusual ASAP in case it encourages the idiots.

I ve also tightened the anti-spam measures on my blog too.

Michal Čihař: Gammu test version 1.10.5

I just released new version of Gammu, you can download it from download server. The biggest reason for this release is compatibility with 2.6.21 kernel. Other changes are: I currently do not plan further testing release before next stable one, but in case some serious problem is found, this can change.

Russell Coker: comment spam

The war on comment-spam has now begun. It appears that Blogger might have some anti-spam measures of which I was unaware. Otherwise it’s a strange coincidence that I get a huge number of comment spams for extremely hard-core porn from the Ukraine so soon after starting a Wordpress blog. About 24 hours before the spam attack there was a strange blog comment that linked to google (with no offensive or spammy content). It appears that leaving it online was my mistake, when I left that online for a day the spammer decided that I might also leave porn spam online. I arrived home this evening to find almost 100 spams in the form of comments and track-backs, and more arriving by the minute. So I used iptables to block a /20 related to the spam and things are quiet now. The moral of the story is to delete anything unusual ASAP in case it encourages the idiots. I’ve also tightened the anti-spam measures on my blog too.

29 April 2007

Evan Prodromou: 9 Flor al CCXV

Ah, beautiful Sunday! This is the first day this week we've had a little peace around the house. It'll all go crazy on Monday, of course, but it's nice to have something like a day off. tags:

BarCampMontreal2 I had a great time yesterday at BarCampMontreal2. It was pretty fortunate that my parents are visiting this week, because it meant that both Maj and I could go to the event together. We also had our friend and fellow Wikitraveller Jani Patokallio visiting from Singapore, so we brought him along with us. Jani's a community and technology hacker and he's a lot of fun, too. This was our first event in the new BarCamp venue at the SAT, and it turned out to be a good one. The space is really big, with about 3 huge spaces. We used the back room, which is wide enough for a lot of video displays, to good advantage. The front area became an informal caf and it was really great for personal talks -- isolated from the main presentation area. Damian DiFede gave a great talk about his Ajax-based MUD, Mujax. I think it looks really cool -- I hope he can get the kind of participation and content to make it a more immersive space. I gave the second talk. I'd really wanted to do a talk about The Keiki Project, our upcoming venture, but it was too soon for a real hands-on demo. So I'd planned to do a presentation about RDF and our use of Wikitravel:Turtle RDF on Wikitravel, but I kind of got too busy by the end of the week. So I ended up recycling my talk about Commercialization of Wikis (see Talks/SXSW07), which got a lot of positive feedback. I liked seeing Sylvain Carle's presentation on what he'd learned in Silicon Valley. Sylvain is one of the best presenters at BarCampMontreal -- he's a big goofball who loves his work and communicates that passion with intelligence and sincerity. For example, he themed his talk with songs by Quebec rocker Robert Charlebois. Candid and ingenious. Also great was Hugh McGuire's talk about lessons learned in development of the cool podcasting platform Collectik. His talk came down to one great point: that you have to be able to communicate the purpose of your Web site (or other project) in one sentence. He didn't do that for Collectik, and now he's trying to figure out how to. It's great hearing people talk about their mistakes. Maj gave a great talk about Wikitravel Extra, the new personal-opinion and -experience platform that we've built to complement the objective, consensus information in Wikitravel. I keep forgetting what a good public speaker she is. She did a good job talking about the needs we were trying to fill, and she demo'd the platform (flawlessly). I think she's got a good presentation to take to other conferences now (lucky dog). Another talk I found fascinating was Chris Car's discussion of his past project, MeshCube. The MeshCube is a tiny mesh networking tool that Chris and a partner developed in Hamburg. Chris talked about what worked and what didn't work with that project, showed off some cool hacks (mesh network robots!) and was (like Hugh) open about mistakes. Sitting in the middle of about 8 WiFi networks (in my home office) as I type this, I'm really interested in mesh networking and I was glad to hear from Chris why it doesn't currently work and what can be done to make it work. Probably the most important talk, for me, was Martine Pag 's discussion of what we need to do to bring more women to technology conferences. She did a great, fair overview of the topic, and then opened the floor to discussion. We had a really great, frank talk about -- both men and women -- and a lot of diverse points of view were expressed. I'm really appreciative of Martine opening up this discussion, and I'm glad we're going to be more proactive in the Montreal technical community about being inclusive of the really great women working in technology in this city. There were some other good talks, of course: apenwarr gave a good talk about the new, new way to have a startup; the mysterious and elusive Madame Woo talked about traveling alone; and Australian visitor Moomlyn gave a great description of lucid dreaming. There were good demos of Cake Mail and My Carpool Station. All in all a great set of presentations. I also liked meeting up with some of the people there. Patrick Tanguay gave a great lunchtime standup symposium about the state of Montreal's coworking space and where we're going from here. I also liked talking with Tamu Townsend, who I hadn't met before. Probably my best talk was with Sylvain and Martine about what the boundaries of BarCamp are. Why do we have talks about solo travel, digital photography, and lucid dreaming? Sylvain had a great answer: BarCamp comes out of the hacker ethic: that spirit of curiosity, humor, passion and playfulness that makes working on computers so enjoyable for so many. If someone can communicate that same passion and intellectual captivation with another subject, it's going to go over well at BarCamp, no problem. Well said!

Pros and cons Here are some things I liked and didn't like about BarCampMontreal2. First, things I liked:
  • The people. Yet again, meeting up with my favourite technologists in Montreal. Many people I first met at BarCampMontreal1, and it was nice to see how our friendships have developed in the 6 months since then.
  • Diversity. I was really glad that there were many more women at this vent than at previous ones. My guess is somewhere around 20-25%, which isn't anywhere near where it should be but a big improvement over the 5-10% we had at BarCampMontreal1. Special props to Hugh, whose invite to women was, I think, pretty helpful. And of course to all the women who took the extra step to show up at a majority-male event.
  • The presentations. Almost uniformly really, really good. Some were just excellent.
  • Lunch. Simple and easy, didn't get in the way of socializing.
  • The Bar. I liked having the bar open at lunch. Having a beer with friends really changes the dynamic of the event; and SAT has a decent selection of brews and friendly barstaff.
  • The screens. A-V was great this time around -- good job by SAT on this.
  • The space. It was cool having the back room at SAT. It's a really nice place for this kind of event.
  • Powerpoint Karaoke. A great idea (people have to give 5-minute presentations based on off-topic slidesets they've never seen before), but I think the scheduling was off. It would have been great to spread these out between other sessions during the day for comic relief, rather than clumped all together at once.
Second, things I wasn't happy about:
  • Registration. It was really great being welcomed at BarCampMontreal1, and this was distinctly missing at our second event. We had a pile of nametags on the table by the door, and no other form of greeting. For a space like SAT, this just didn't work. I'm going to volunteer to help out with this step at future events, since it's so important.
  • Coffee. I realize I'm a coffeeholic, but it would have been nice to have a coffee table out. It's nice to have on a rainy Saturday, and it gives shy people something to do.
  • T-shirts. I think every BarCamp should be an event worthy of a t-shirt. Fred gave out some shirts left over from BarCampMontreal1, but it would have been nice to have new ones for this event, too.
  • Tables. I realize they're expensive to rent, but dang, they're really great to have if you've got your laptop and other techno doodads. It changes the event from being a show to being a symposium.
  • Schedule timing. The (very important) talk by Martine about women in tech conferences ran far over schedule and wiped a few talks off the board. I think that was a mistake. After it was done, the joke segment of Powerpoint Karaoke started. By the time it was finished, 60% of the audience was gone, even though there were 4 serious talks still to go. We need to do a better job with timing this kind of thing so we keep the energy going through the entire day.
  • Too much noise from the caf area. As people drifted off from the main presentation area, the caf filled up, making for lots of loud chatter that drowned out the presentations. We should probably figure out how to fix this problem; it would be nice to stimulate this casual conversation while still being respectful to the speakers. Maybe more breaks (one in the morning and one in the afternoon)?
  • <100% participation. It seemed like there were a lot of spectators this time around, which drags down the participative nature of the event. I think that asking registrants how they're going to participate when they come to the door is a great way to gently remind people that they're expected to be involved (we do this for Burning Man events sometimes). I think Powerpoint Karaoke and other exercises would be a great way to get better hands-on participation by people who didn't prepare talks. (I hope that MadameWoo does a talk in the future about how to do an ad-hoc talk at BarCamp.)
My net feeling about the event was extremely positive, and I'm making these notes not to criticize anyone but to remind myself to do something about them for the next BarCampMontreal. I think that we can continuously improve this event to be inclusive, stimulating, fun and exciting, and I hope we keep this great barcamp spirit going in this city for a long time. tags:

28 April 2007

Annabelle Tully: ipw2200

Why oh why does my X40 wifi card suck so much..
It will randomly drop while I’m doing something, so I have to reload the module again.
Sometimes it has a hard time associating properly. It gets IP, but can’t ping the gateway or anything. (The other devices are taken down) so I have to reload module again. It also generally gets very low signal strength.
And also, dmesg gives me strange output
eth1: NETDEV_TX_BUSY returned; driver should report queue full via ieee_device->is_queue_full. eth1: no IPv6 routers present eth1: no IPv6 routers present Update:
A friend of mine had a similiar problem, and he found that the wifi card at the bottom was slightly loose, so he opened the casing and pushed it a bit, and since then its been stable with no issues. Will try the same to see if it works once I can find it in my heart to turn the machine off. Shall update again if this seems to work.

27 April 2007

Martin F. Krafft: Moving in pieces, with and without morphine

As readers of my blog know, I moved to a new flat just after Easter. Unfortunately, on that Monday afternoon, just after we finished hauling most of the furniture (the heavy stuff at least) over to the new place, I slipped as I was leaping off the transporter vehicle, lost an argument against gravity and hit the asphalt more or less horizontally after a 1.5 metre fall. I landed on both wrists and my left knee, and while my consciousness never left, reality sort of blurred away, as I rolled over on the ground and waves of pain began rippling through my body. People started assembling around me and the adrenaline faded away, then I realised that this move of mine was not going to end as smoothly as it had begun. My body refused to bend my left wrist and knee and I knew I was injured, but it did not hurt so much for me to conclude anything serious. I remembered the ice packs in my freezer and had my cousin fetch them, then let two colleagues carry me to bed to regain my bearing, but the pain got worse and I started to accept that I would have to go to the hospital. Still optimistic ("it's just a contusion, it's just a sprain"), I crawled from my cousins car to the wheel chair, into the hospital and onto a bed to await the verdict. Still thinking about returning home tomorrow, I spent hours on the bed, being pushed between the x-ray, casting, and diagnostic rooms until finally I was told of my fate: multiple fractures of my left knee cap, broken ulna and radius on my left arm with splinters in the joints, and a fractured metacarpal bone on the right my pinky's tendon was supposed to snap, but it proved too strong and rather caused the part of the bone to which it was attached to rip off. They deciced to perform surgery on the two left limbs but to leave the metacarpal bone alone because of the complexity of the fracture and the proximity of all my hand's and fingers' nerves. Because everything was swollen like a balloon ready to burst, I had to wait three days for the surgery with casts and a splint on my leg. The surgery was scheduled for Thursday morning and even though I was actually looking forward to it all (especially the administration of the anesthetic), I was simply too tired in the early morning hours, and the Dormicum tablet they fed me did the rest: I was asleep when we entered the surgery room and woke up at noon with new casts and a morphine injection pumping a comparatively large dose of the drug into my veins every eight minutes apparently, my body was going through a lot of pain during the surgery, so the "pain management service" (in German, they're just called "Schmerzdienst" "pain service", actually) opted to pump it up. Here's what I looked liked shortly after the surgery: madduck post-surgery Meanwhile, Gian-marco, my future flat mate, had spent the day packing up everything that was left in my old flat, where I had left an utter mess. A colleague of mine was to sublet the place starting that Saturday, so there were roughly 48 hours left to empty and clean it, and to hand it over. There are more pleasant things in heaven and earth than to have someone else empty your flat for you. Morphine is a really crazy drug. Most people think of it as fuzzy and often joke about taking it if only they could get their hands on it. Having made the experience, I'd rather not take it again unless I have to. Watching television turned out to be impossible, even the weather report went too fast for me. Visitors appeared sort of blurry, I would often not follow the things they said, and it was definitely impossible to entertain thoughts for prolonged periods of time, or to engage in any sort of productive thinking. Organising a cleaning lady for my old flat and giving instructions to my cousin, who would hand over the flat took all my energy On Friday, I was to have an important business meeting with three people, so I organised a room in the hospital and asked the nurses to put me on optional morphine so I could be a bit more present during the meeting. As a consequence, I could press a button once every ten minutes for a dose of morphine, and with this new level of control, I began to reduce the drug amount in my blood gradually. The meeting did not take place in the end but I came to regret my choice to reduce the morphine at around midnight, when the pain in my knee became unbearable. I kept pressing the button for more morphine like a madman, but the device would only deliver a new shot every 10 minutes. The nurse was not authorised to change that and instead gave me other pain and sleep medication, but not even the combination of morphine, Tramal (an opiod), Novalgin, Mefenacid, and Paracetamol could dampen the level of pain, and so I spent almost three hours in real agony, biting the pillow with tears running down my cheeks, until finally the medication won, I became indifferent (thanks to Temesta) and drifted off into sleep. After breakfast the next morning, the morphine applicator suddenly had a fit, started beeping, and pumped more drug into my body than it should have. It took me about 20 minutes or maybe an hour (who knows ) to put my brain together, realise what had happened, and come up with a way to lift my finger to the button to call the nurse. Despite the horrible night, I told them to remove the morphine because I'd rather stand the pain than have my brain mushed like that, plus there are always plain morphine injections delivered by humans instead of machines. In fact, the next night I could feel the pain approaching and since it's easier to suppress pain than it is to remove it, I asked for a sleeping pill and a morphine injection. The injection did three things: first, it hurt so much that my knee immediately became pain-free while nerve central was occupied trying to figure out what the heck had just happened in my right thigh. Second, it did not take three minutes to kick in, and it kicked in so strongly that I just barely realised that my head was suboptimally positioned on the pillow and the lights still on, but failed to do anything about it. I did not wake once until breakfast. And third, I am glad to know that morphine does actually (still) work. Pain is complex, fascinating, useful, sometimes even pleasurable to some, but when you know the cause and you'd rather make it stop, it's comforting to know that there are ways the previous night had instilled some doubt in me. From then it was all downhill and I left the hospital after eleven days on Thursday, got by without pain medication the same day and off the sleeping pills the next night. Two days later I was already racing around town in my wheel chair: madduck racing in a wheel chair By now I can actually walk again, albeit slowly, and even though I still cannot lift heavy stuff or get my hands wet, my hands are a lot better; on 21 May, the casts shall be removed and I'll be able to bend my knee again, but it may take up to a year to return to sports, such as running, to which I had just become addicted. In fact, I can comfortably claim that I had just reached an acceptable level of fitness just before the injury. Tough luck. My mother has come to Zurich twice already to help unpack and with her invaluable help, as well as the help of Gian-marco and several others, we are actually almost done moving in. Ironically, it's actually quite annoying to sit and watch others do your work; I would have helped as well, had the roles been inverted, and yet I am still greatly indebted. Human relations tend to be funny like that. Let me end with two points: first, Zurich's university hospital probably ranks among the best hospitals in the world, and that makes Zurich even more attractive to me (even though I certainly don't plan my next hospital stay). I felt very comfortable throughout my stay, had the impression of being in very capable hands, and had most of my countless questions answered. In addition, the hospital is very nicely surrounded by a park and could not be more central, which makes it easier for visitors. And that brings me to my final thought: thanks to everyone who stopped by or called in to make my stay a lot more pleasant. I spent eleven days in the hospital and I got bored and annoyed for the first time on Wednesday, the day before my release. Most of the credit for those ten days of lack of boredom goes to everyone who supported me. It did help that I had Internet access via a convenient 2 /day GPRS flatrate (even though I could not really type), but it became crystal clear to me that visiting someone in the hospital, whether you're close to the patient or not, is one of the most beautiful gifts you can give. In the past I have neglected this opportunity occasionally; now I would want to make a special effort (even though I hope there won't be any need). And I would not be a geek if I did not end this post with a reference to Debian: I know of a case when one of our developers ended up in hospital and two others (or was it more?) drove hours to visit and check in on him/her. Now even more than before can I say that I am proud to be a member of a project in which such things happen. PS: this post took me about 4 hours to compose. Sucks to be typing one-handed.

Enrico Zini: tg-file-download

File downloads with TurboGears In TurboGears, I had to implement a file download method, but the file required access controls so it was put in a directory not exported by Apache. In #turbogears I've been pointed at: http://cherrypy.org/wiki/FileDownload and this is everything put together:
from cherrypy.lib.cptools import serveFile
# In cherrypy 3 it should be:
#from cherrypy.lib.static import serve_file
@expose()
def get(self, *args, **kw):
    """Access the file pointed by the given path"""
    pathname = check_auth_and_compute_pathname()
    return serveFile(pathname)
Then I needed to export some CSV:
@expose()
def getcsv(self, *args, **kw):
    """Get the data in CSV format"""
    rows = compute_data_rows()
    headers = compute_headers(rows)
    filename = compute_file_name()
    cherrypy.response.headers['Content-Type'] = "application/x-download"
    cherrypy.response.headers['Content-Disposition'] = 'attachment; filename="'+filename+'"'
    csvdata = StringIO.StringIO()
    writer = csv.writer(csvdata)
    writer.writerow(headers)
    writer.writerows(rows)
    return csvdata.getvalue()
In my case it's not an issue as I can only compute the headers after I computed all the data, but I still have to find out how to serve the CSV file while I'm generating it, instead of storing it all into a big string and returning the big string.

Next.

Previous.