Search Results: "nma"

27 September 2006

MJ Ray: BT's bad marketing, 2006 edition

You may remember that I've had trouble with BT's junk mail (twice) following leaving them in 2004. As mentioned in "A note on phone numbers and forms" recently, BT seems to have delayed my line from the Phone Coop to the new house (waiting for BT engineers to fix some problem at the exchange). Today I got a postcard saying "There's never been a better time to make savings with BT. [...] Come on, come back to BT's best ever offer and start saving." Where did they get my details from? I suspect it's the engineering request from the Phone Coop. I think I'll try to do some damage to BT now and make this bad practice more expensive for them. I can't believe this isn't abuse of a dominant market position. BT owns the only telephone network here and is the largest retail telco, despite having IMO the worst service.

4 September 2006

Isaac Jones: Announcing Haskell'

let haskell' = succ haskell98 in
Announcing the Haskell' ("Haskell-Prime") process.  A short time ago,
I asked for volunteers to help with the next Haskell standard.  A
brave group has spoken up, and we've organized ourselves into a
committee in order to coordinate the community's work.  It will be the
committee's task to bring together the very best ideas and work of the
broader community in an "open-source" way, and to fill in any gaps in
order to make Haskell' as coherent and elegant as Haskell 98.
Our task is broadly defined by our mission statement:
    The Haskell programming language is more-or-less divided into two
    "branches".  The Haskell 98 standard is the "stable" branch of the
    language, and that has been a big success.  A lot of progress has been
    made over the last few years in the "research" branch of the Haskell
    language.  It is constantly advancing, and we feel that it is time for
    a new standard which reflects those advancements.
    Haskell' will be a conservative refinement of Haskell 98. It will
    be the work of this committee to adopt a set of language
    extensions and modifications and to standardize a new set of
    libraries.
    We will strive to only include tried-and-true language features,
    and to define them at least as rigorously as Haskell 98 was
    defined. This standard will reflect the realities of developing
    practical applications in the Haskell language. We will work closely
    with the rest of the Haskell community to create this standard.
Your Haskell' Committee is as follows (slightly munged email addresses
follow):
 * Manuel M T Chakravarty <chak at cse.unsw.edu.au>
 * John Goerzen <jgoerzen at complete.org>
 * Bastiaan Heeren <bastiaan at cs.uu.nl>
 * Isaac Jones <ijones at galois.com>
 * John Launchbury <john at galois.com>
 * Andres Loeh <loeh at iai.uni-bonn.de>
 * Simon Marlow <simonmar at microsoft.com>
 * John Meacham <john at repetae.net>
 * Ravi Nanavati <ravi at bluespec.com>
 * Henrik Nilsson <nhn at cs.nott.ac.uk>
 * Ross Paterson <ross at soi.city.ac.uk>
 * Simon Peyton-Jones <simonpj at microsoft.com>
 * Don Stewart <dons at cse.unsw.edu.au>
 * Audrey Tang <autrijus at gmail.com>
 * Simon J. Thompson <S.J.Thompson at kent.ac.uk>
 * Malcolm Wallace <Malcolm.Wallace at cs.york.ac.uk>
 * Stephanie Weirich <sweirich at cis.upenn.edu>
The editors are Isaac Jones and John Launchbury.
Feel free to contact any of us with any concerns or questions.  If you
don't know who to direct your questions to, email Isaac Jones
ijones at syntaxpolice.org.
Community involvement is vital to our task, and there will be a way
for members of the community to make formal proposals.  In the opening
phases, please use these more informal resources to help us coordinate
Haskell':
 * The haskell-prime mailing list.  All technical discussion will take
   place here, or (if other meetings take place) be reported here.  Anyone
   can subscribe, and any subscriber can post questions and comments,
   and participate in discussions.  Anyone can read the list archives.
   http://haskell.org/mailman/listinfo/haskell-prime
 * A wiki / issue tracking system to document consensus and to track
   ongoing tasks.  This system is publicly readable, but only
   committee writable so that we may present it as the "official"
   output of the committee.  If you ever feel that the wiki is not
   accurate as to the consensus, please alert the committee!
   http://hackage.haskell.org/trac/haskell-prime
 * A darcs code repository for experiments, proposed libraries,and
   complex examples.  darcs is a decentralized system, so anyone can use
   it, but patches should be sent to Isaac Jones:
   http://hackage.haskell.org/trac/haskell-prime/wiki/SourceCode
Please join us in making Haskell' a success.

Isaac Jones: How to get involved in Free Software (the bug method)

Are you a software developer? Are you graduating soon? Maybe you should get involved in free software projects! There are any number of reasons people get involved, from altruistic reasons to selfish reasons. Let's approach it from a "selfish" point of view. I assert that involvement in free software projects looks really good on a resume, and is an excellent way to "network". Networking isn't all about schmoozing at job fairs; it's about building a reputation with professionals in your field. There are very few fields where a huge number of professionals are so very accessible. Software developers are very lucky in this sense. Common wisdom seems to indicate that the job market for software developers is very competitive, and it's going to continue to be competitive for a while yet. Any edge you can get over your classmates is going to help. There is plenty of opportunity to contribute, no matter what your skill level. There is documentation to write and there are translations to perform. There are bugs to fix, and packages to create. Of course there are projects that need more "serious" development as well. You don't have to start your own open-source project, and you don't have to learn to hack on the Linux kernel to add something very attractive to your resume. When people ask me how to get involved in free software, I usually recommend that they start out reporting bugs in the open-source software they use frequently. You might install a version of GNU/Linux, or if you want to stick with Windows or MacOS, you should browse around to find out what free software is available. I think you'll be pleasantly surprised. Let's use "Gaim", a multi-protocol IM client, as an example of how this might proceed. Gaim runs on Windows, GNU/Linux variants, and I'd expect MacOS X, and Unix. It's open source and free: http://gaim.sourceforge.net/. Download Gaim and the Gaim source code. Build it for your machine if you want. Notice what language it's written in. Do you know this language? If not, can you understand it (if you know Java, you can probably understand a lot of C, for instance). Try out Gaim, set up your AOL Instant Messenger and your IRC channels. Visit some open source channels. See any problems? Check the bug reports to see if anyone else has seen that problem. If not, report it as a bug (you might want to google for "how to report a bug" first). Now check out the "bug reports" for Gaim. Pick a bug and try to reproduce it. Why are bug reports the first step in improving your resume?
  • Reporting a bug is a half-hour task.
  • Fixing a bug is often (not always) a small, weekend-sized task.
  • Bugs introduce you to the source code on a level where you don't have to understand everything (hopefully).
  • You will build familiarity with debugging tools which are invaluable for a developer.
  • You will start to build a reputation with the authors of the software, and in the free software community.
  • And because developers are always very happy to get bug fixes that they didn't have to work on themselves. Let's take a look at the bug list for Gaim again. Different ways to contribute to fixing a bug:
  • If you can reproduce the bug, you might add more information to the bug report: What steps did take to reproduce it? Is there a unique combination of features you need to be using to cause the bug?
  • If you can't reproduce the bug, maybe it's fixed in the version you're using! Maybe you should add that to the report (better read and understand it very carefully first). Pick another bug, repeat.
  • Depending on your skill level, you might try to fix this bug, or at least isolate where the bug came from. If you manage to fix it, read about the "diff" and "patch" utilities. Send the author a patch, or attach the patch to the bug report. Here is a bug that looks pretty easy, and it doesn't look like the developer is particularly thrilled to spend time on it: "Buddy Pounce does not get removed when user is deleted". I'm going to take a wild stab at how you might fix this bug: most probably, there's a "list" of "pounces" that has a data-structure which contains both the buddy's name, and the pounce action, whatever that is. Find the code where the buddy is deleted from the buddy list (a different list). Add code to search through the "pounces" list to delete that buddy from the pounces list as well. Compile, test, and run diff to create a patch, attach it to the bug report, take a bow. Now add this to your resume. You are now 50% more interesting to me, as someone who reads resumes, than your classmates who have never taken on a project outside of school. You've shown initiative, skill, and maybe even teamwork. Higher levels of commitment If there's a piece of software that you love, that you think is really important, then you might try adding features to that software and joining the development effort. Lots of projects have a page dedicated to information about how to help out. Here is one for the Mozilla project, for instance. If you want to lead a development project, you might adopt one that has been orphaned. Many people recommend against starting your own project off the bat. I've presented you with a method to increase your skill and reputation, and to add something interesting to your resume. Try it out. You might find out why so many software professionals work on free software projects. It's tons of fun! Feel free to send me comments on this document, or to tell me whether this advice has effected you.
  • 3 September 2006

    Marc 'Zugschlus' Haber: Looking for useable CA software

    To support my experiments with OpenVPN, I have been trying to evaluate different CA software packages in Debian. With devastating results.I tried pycaProsConstinycaprosconseasy-rsaprosconsopencaopenxpkiconclusionAll software sucks. Does Debian have CA software that is actually useable?

    25 August 2006

    Julien Danjou: DeFuBu contest #2

    Bug Welcome to this 2nd issue of the DeFuBu contest, the monthly championship of the funniest bug reported to the Debian BTS. The challengers How the vote has been done Five Debian related people voted for these bugs: Roland Mas, Alexis Sukrieh, Cl ment Stenac, kolter and Yves-Alexis Perez. Full ranking Bugs Challengers The winners Notes To participate, simply drop me an email with a bug number. About DeFuBu

    24 August 2006

    Uwe Hermann: Unmaintained Free Software is no longer... um... unmaintained

    Just when I was thinking that the Unmaintained Free Software wiki was finally dead, Joey Hess mentioned it in his blog (thanks!), which (it seems) has resulted in a few new contributors (thanks!). In addition, I got motivated to work on it again; I had neglected the wiki for quite a while, partly because I was busy with tons of other projects (which I always am, so I guess that doesn't count), and partly also because it was a one-man project for a long time. Even after being mentioned on Slashdot, Newsforge and a bunch of other sites it never reached a state of halfway constant contributions from other people. But, it somehow survived while one or two similar projects I was aware of died away. As it's the only project of its kind which exists at the moment (to the best of my knowledge) and I really think it's a worthwhile cause, I'll continue searching and adding more projects , in the hope that some interested programmers take over maintainance of one or the other... Any help and contributions are of course very welcome! Joey: As for Xgalaga, it was not yet re-added after I switched from a custom-made CMS to a wiki, but it's there now. That'll hopefully increase it's chances to find a new maintainer ;)

    23 August 2006

    Joey Hess: rpm: consequences of the software ecosystem

    LWN has an article up about how RPM is forked, with no single agreed-upon upstream and lots of distros going off and patching it on their own:
    Fedora currently ships version 4.4.2, and even the Fedora development repository has not gone beyond that. SUSE remains at 4.4.2, and the current RHEL offerings have rather older versions.
    (And Debian's at 4.4.1+a year of patches.) rpm is not the only peice of software that is a major component of many linux distributions but has no agreed-upon upstream maintainer, and thus effectively one fork per distro. Another such peice of software is cron. Vixie cron was last released in '93. In many distributions it's still used, but in eg, Debian, the package is the result of 13 years of patches on top of that release. The debian version number is 3.0pl1-96. That's ninty-six versions based on 3.0pl1. The Red Hat sub-version is in the fourtys. There's no standard version anymore, just this pile of patches, and other piles of patches in other distributions. If we're lucky, they at least share the same security fixes. Another example is makedev, which was had its last upstream release in '98 and is at patchlevel 82 in Debian. Or netcat, last released in '96, patchlevel 32 in Debian, and a fork/rewrite at netcat.sourceforge.net. Or xgalaga, whose upstream author has fallen off the net and last released it in '98. The Debian package, which I maintain, is at patchlevel 37, and seeme to be the only place a lot of people can find to send patches to. But I don't want to be its upstream maintainer. This is the kind of thing that makes me gibber in horror when people at Ubuntu talk about Debian and other distros being part of an "ecosystem of software". I don't want to be part of an ecosystem; I'd rather be part of something that works not something that muddles through via massive trial-and-error and redundancy. Biomass is another word for "shit". But I digress.. The most productive thing I've seen done to try to address this general problem is the Unmaintained Free Software wiki, which tries to track this software and find new maintainers. That has managed to match up some software with interested people (though it failed with xgalaga), but I think it actually works less well for big and important software that ends up forked and maintained separately by the major linux distributions. I, myself, am beginning to use the degree of divergence from upstream as an indicator of how well a distribution maintains a given peice of software, with more divergence == bad. A distro that's doing a good job will a) get their patches integrated upstream and b) should work with other distros to find a new developer if upstream goes missing or insane. This is the inverse of what people might naively consider a good metric of how much work a distro is doing, but I think it leads to better software in the long run.

    Evan Prodromou: 6 Fructidor CCXIV

    Argh... trying to get caught up on this journal in the wee hours of the morning here in wt:Odense. I've had pretty bad jet lag this trip -- I've never been particularly good with time changes, and the North-America-to-Europe switcheroo really throws me off. So by 2PM I'm falling down on my feet, but at 4AM I'm rarin' to go. Odense has been a particularly nice place to visit. We got into wt:Copenhagen a few days ago, and crashed at the Airport Hilton there. It's actually attached to the airport -- you can just walk right in. Maj got a good deal on a room, and we figured it would make sense to sleep with the baby right there, rather than fight the train system to find another hotel in the city centre. After a free brunch including many different kinds of pickled fish, and a looong nap, we took the train into the Central Station in Copenhagen, right by Tivoli Gardens. There were lines around the block for the amusement park, but we skirted them and headed into the pedestrian area near City Hall. Based on a recommendation in Wikitravel, we went to the line of caf s and restaurants off of Nyhavn, a sliver of water poking into the heart of the town. It was a great walk, and we had a casual sidewalk dinner at a place called Carl's Corner. The canal was lined with boats that had been converted to restaurants -- we may try one when we go back to Copenhagen this week. tags:

    Wikisym The next morning I got up at dawn and got on a train to Odense for Wikisym. I missed my connection at the Central Station, and all the trains were running late, so I got real confused about where to go. The fact that I was carrying all of our luggage didn't help matters. But a few false starts later, I managed to get myself oriented and on my way. The train ride was beautiful -- wt:Denmark is a very pretty country, with rolling grassy hills and clusters of small, peak-rooved houses by the tracks. The trip from Copenhagen to Odense takes you from wt:Zealand to wt:Funen, across a long rail bridge. Very impressive. Once I'd landed in Odense and got myself organized, I slipped into the back of the room for Wikisym to catch the last few minutes of Angela Beesley's keynote address. Angela might be the hardest-working person in Wikidom -- she's a tireless community organizer not only for the Wikimedia Foundation sites like Wikipedia but also for Wikia's sites. After her talk, we did an wp:Open Space session, which continued throughout the day, interlaced with the academic presentations. I'm getting to be a big fan of Open Space; it was really effective for RecentChangesCamp, and I think it works well for organizing a conference. Ted Ernst led the sessions, with the help of Gerard Muller of the Danish Open Space Institute. Probably the most productive Open Space session for me was the one about non-text wikis -- using wiki techniques for video, audio, image and visual language editing. I'm fascinated by this stuff, and it's great to hear that some people are working with SVG and SMIL to do in-browser multimedia editing. The consensus is that the technologies Aren't There Yet but are around the corner. The other major thing I think I picked up from this session was Eugene Eric Kim's discussion of Wiki Ohana. Ohana is the Hawaiian word for family; the Wiki Ohana is a project to develop some interoperability and a transmission of our Wiki principles to new members of the family. I think it's a great idea and I'm going to try to get involved further. tags:

    Odense We had a great walk around Odense's core pedestrian area. It's not exceptional for Northern European towns -- it reminds me of the Netherlands, and Maj of Switzerland -- but the car-free cobble-stone walking areas are a real relief after years in North America. We have some pedestrian areas in Montreal, of course, but not in the same way. Odense is the childhood home of wp:Hans Christian Anderson, and the city is decorated with statues of HCA, and of characters from his stories (the Tin Soldier, Thumbelina, etc.) It gives a kind of fairy-tale air to the town. I'm not sure they should feel so proud of being Anderson's childhood home, though -- from everything I've read, his childhood was nightmarishly cruel, and his abysmally poor family was harshly treated by the society here. But, of course, that's in the past. Now, we had a real nice time walking around. Amita June likes tottering along on the cobblestones, and shouting really loud in the small streets to hear the echos. We ended up having dinner in a place called the Cuckoo Caf -- great food under a spreading tree in a little square. This morning -- no, yesterday morning -- Maj got up and took the first sessions, and Amita June and I slept in. We went off into town again to find a bakery, and shared a chunk of brunsviger, a sugary pastry that will probably rot out her tiny teeth. I had a cup of tea, which was less than satisfying. I've been trying to cut caffeine out of my life, so we've been having decaf at home, but they don't seem to serve it in caf s here. I'm a creature of habit, and I like the taste of coffee even if it doesn't have the caffeine oomph. tags:

    CAPS LOCK SUCKS In response to Lars's defense of CAPS LOCK: Lars, you ignorant slut. Caps lock has been the bane of online culture since the invention of mixed case in the late 1960s. It is a hallmark of clueless newbie-ism for people who are too analphabetic to remember the exceedingly simple English capitalization rules. The only legitimate purpose for CAPS LOCK is for doing C macros and defines, but hey, who writes in C any more? Anyways, that's just lazy programming. A real programmer would write a macro to capitalize the names of other macros where used. That's just good programming practice. Another important point is that CAPS LOCK is Eurocentric and imperialistic. What value does CAPS LOCK have for someone writing in Eritrean, Malayalam or Ojibwa? None at all. Yet dead white males like Lars Wirzenius want to force their CAPS LOCK cultural hegemony on an increasingly global culture. For shame. The worst thing about CAPS LOCK is that it squats in the middle of the most important letters on the keyboard, like a rat trap waiting to spring. Big and ugly, it always catches your left pinky when you're reaching for Ctl or Shift or Tab or A or whatever. Key-chording is here to stay, and CAPS LOCK not only ignores this important UI development but actively interferes with it. Modal interfaces are rightfully extinct, and CAPS LOCK needs to go the way of the dinosaur. It's time to eliminate this obsolete key once and for all. (This message brought to you by The Taxpayers Against Caps Lock Coalition. I, Evan Prodromou, endorse this message.) tags:

    21 August 2006

    Gustavo Franco: Theo did it again

    "<span style="">I will say it here -- if an OpenSSH hole is found that applies to SunSSH, Sun will not be informed. Or maybe that has happened already." -- Theo de Raadt</span>. Well, the fact is that he doesn't need to inform Sun about a hole, but the whole community and i think he does, no?<br /><br />By the way, for the second time (to say the least) i think that Theo is right and raised some good points but close <a href="http://os.newsforge.com/article.pl?sid=06/03/20/2050223&amp;from=rss">his last interview</a> with a weird phrase. Well, let me comment about what i think is Debian related in that interview:<br /><span style=""></span><span style=""><br /></span><span style="">"We often run into vendors who have signed NDA agreements with Linux developers, who will then happily write a Linux driver filled with magic numbers, which only one developer in the world understands. Having signed the NDA ensured that Linux got a working driver, sure, but the internals are indistinguishable from magic. It cannot be fixed by anyone else, because it is full of secrets. It is a source code version of a blob."</span><br /><span style=""><br /></span><span style="">It push us into the blob business again. I think we should team up with OpenBSD folks, and tell them that some Linux people care about free software as a whole. If upstream (read Linus) doesn't care about unmaintanable drivers that are written by one person under a NDA we should. Does anyone have or wants to prepare a list of these drivers ? If some of them are already in a cleaner form into the OpenBSD kernel we should prepare a new list and a linux kernel hacker with free time could redo the drivers in a cleaner way, no ?<br /><br />It's need to point out that Theo said many Asian vendors are more documentation friendly than the Americans. Are you surprised?</span><br /><br />Closing, if you feel lost in this post probably you will understand me when you buy your next laptop cointaining a cool, new wireless chipset made by a american company.

    Gunnar Wolf: Caps Lock becomes useful again! / Is this a farewell, my dear Window Maker?

    I have always hated and despised the Caps Lock key. Not only it is useless to anybody who works writing code, sysadmining, or plainly writing real text, but its mere existence has degraded the work quality of millions of people's work. Suddenly, IT GETS NORMAL TO WRITE LIKE THIS - It's just a magic spell that allows you to get rid of those old-fashioned rules about the language, about where to write in which case. Even worse, in Spanish some people tend to think that uppercase letters do not carry accents, so they produce text that is, um... Lets say it is readable, but that's often an overstatement.
    [switch context]
    I have been a happy and loyal user of Window Maker since 1997, when Juan Pablo Romero pointed me to it (BTW, I found Juan Pablo's homepage after searching for some links to post here and finding his, very old and probably unmaintained, WindowMaker page), back in the time where one of my favorite webpages was Window managers for X - clear sign that I didn't really like anything I had been using. And with WMaker, I was happy for (WOW) almost ten years. I still am. But after last week's ugly XFS corruption episode, I decided to follow the trend among some Debian people, and installed ion3.
    My impression so far, with two and a half days of usage? I LOVE IT. It is the only WM I've met that really comes from a different point of view, stating that what most so-called modern WMs offer is just counter-productive. It just stays out of your way, not providing any visual distractions, and limiting to providing screens and frames to organize your windows. It acknowledges that its target audience (in my life I'd never set up ion3 for my mother ;-) ) usually hates using the mouse if unneeded, and that there is little point in wasting screen real estate with docks and desktops with functionality. It just sits there waiting for you to command its working via the keyboard - of course, the mouse is also an option, but not the natural one.
    Anyway, I won't discuss the beauty of ion3 here - mostly because I have only scratched the surface so far. I have loved it, let me tell you. A little more on this in a couple of lines... Just for my Spanish-prefering friends, I found this piece of text explaining what ion3 is about: Ion3: Rompiendo con los entornos gr ficos convencionales
    [merge contexts]
    My only grudge is that in its default configuration, ion3 becomes the 0wn3r of Meta. What is Meta? What some people call "the Alt key". That key that is not Ctrl, but has become a controlling key. And I'm a heavy Meta user - Remember that my favorite way of interacting with the computer is Emacs. Yup, the nice OS without a decent editor, nicknamed after "Escape-Meta-Alt-Ctrl-Shift". Rob me of my Meta, and the gained productivity might as well go down the drain.
    Here comes the link to my first paragraph: Ion3 is very configurable. No, it's not configurable - it's programmable. The configuration files are pieces of Lua, a full programming language. Of course, this means you can do mostly anything with it... But you have to do it in the end. Editing ion3's behaviour is not just clicking on selectors - You can take a dive to get the feeling. It looks quite easy, but I yet have to get around it and start poking the configuration.
    After mourning my lack of Meta, I came across a very useful post in Gregor Hermann's blog. Gregor, I owe you a beer or three - You not only gave me back my productivity, you also gave use to the most despised key in my keyboard. Two lines into XModmap, one line into a couple of Ion3 files (I have yet to be sure it is needed in all of them), and I now have a perfectly useful CapsLock key, which is the key I will manage my WM with. It just rocks! It stands in nobody's way, and I am sure I'll very soon grow used to it.

    19 August 2006

    Evan Prodromou: 1 Fructidor CCXIV

    We had an active day around here getting ready to fly off to wt:Odense in wt:Denmark for Wikisym. I finally debugged the last testing error with the MediaWiki 1.7.1 upgrade for Wikitravel, so I did a rollout this morning, and things seem to be working great. The Wikimedia team's rollout schedule -- they run the Subversion trunk version on e.g. Wikipedia and make quarterly stable drops -- has worked out pretty well. It's interesting to see the Free Software world moving away from "It'll be done when it's done" to "Here's what we have since the last 6 months, and it more or less works". It doesn't seem to be damaging the quality of the software released or the willingness to innovate -- more the opposite. And users seem to really appreciate not having to decide between "stable" and "up-to-date". Having a bleeding edge that everyone can afford to be on makes things a little less bloody. tags:

    Burn I also started the insurance process for our Montreal local Burning Man event in September. All Burning Man regional events have to be fully insured, which is pretty annoying when you are paying for it and pretty calming when you've got a big bonfire going. Next up: toilets. This is the glamour of Burning Man, folks. tags:

    Baby carriers Maj, Amita June and I took a trip to nearby B b Dep t on Christophe Colombe and St. Zotique -- yes, non-wt:Montreal-residents, those are real street names -- to get some baby carrying units. Baby carrying is serious technology. A week before Amita June was born, we got this 12-foot-long elastic cloth that you're supposed to wrap around your body 4 times and the baby ends up in one or more of the various folds. It seemed like a good idea at the time, but trying to get a newborn into it turned out to be a real hassle. So, a few days after we came home from the hospital, I ran out to Bummie's on Mont Royal and got a black Heart-to-Heart shoulder sling. It's been absolutely fantastic -- the real workhorse of our baby-carrying needs. But as Amita got bigger, it got harder to go for long walks with her in the sling. So when we were at 2006 SxSW Interactive I ran out early one morning to the Walmart near our hotel and got a $12.99 umbrella stroller. Amita loves it -- go figure -- but the thing is about 6 inches too short for me, so I've developed a real hunch pushing it around. For our trip to Europe, we decided to shell out some serious dough -- far into the double digits -- to get major technology for our baby-carrying needs. We got a really nice stroller from Chicco with a canopy and comfy handles that reach up just about to where I need them, which is very nice. And we got a baby backpack -- porte-b b sac- -dos -- that Amita can sit in while I carry her on my back. That's by far the most fun for me so far. She cried like the dickens when we put her in, but pretty soon she was cooing like a dove. It was really comfortable for me, too. We're taking the backpack and not the stroller to Europe... we're both trepidatious about the choice and I hope it turns out well. tags:

    16 August 2006

    Mario Iseli: Begin of the 3. semester, 2 important birthdays, baking

    try Today was a quite exciting day, first of all I had to stand up early in the morning, fortunately i reached the train on time. At 7.30 the school began and we had 3 lessons “ABU”, this was the most interesting part because later we had 2 hours of english. I mean, I don’t speak really good english yet, but I would like to learn it better, and the only thing we learned today was that “must not” doesnt mean “not have to” as most native german speakers would think. But yeah, I already learned it in the second month in the 8. schoolyear which is now nearly 3 years ago. The afternoon was also a little bit a horror, first we had programming, the topic was “Exceptionhandling in Java”. I think it’s a quite interesting subject, but the teacher was so boring, I mean, the examples didn’t “fix” a problem during runtime, they only printed out “there was an error!” or whatever useless. :-( Then we had theory about servers and a little bit networking, I mean, most IT-students administrate some servers in their office and we learned today “A server provides a service in a network”, very interesting! Yes, so I will better forget this day! catch(ExceptionMarioDemotivated md) There are also reasons to celebrate! Today are 2 birthdays which are quite important to me. First Kerim, one of my best friends, became 17 and has now only to wait one year anymore until he’s “adult” here in Switzerland, ok, “to be adult” is relative anyway. Kerim, I wish you a lot of luck and love and whatever for your future! Stay as you are and I’m already glad to go to Zurich with you again (I’ll pay the next Frappu) The other important birthday belongs to the Debian project which is now 13 years young. Thanks to the whole community. For example I’m writing now this blog (and serve it) with Debian, so it’s time to say all “members” THANK YOU to make it possible! I’m thinking again about the future, what will be actual in 13 years in the IT? Will we win “the war” against software patents and all the other problems? At least our success with the ODF is motivating for the next 13 years! Ok, I’m quite busy now with baking some Debian-bread, I will offer a little brunch tomorrow in the office. Details, pictures and recipe will follow tomorrow.

    15 August 2006

    Marc 'Zugschlus' Haber: upstream version numbers and uscan

    I have just experienced a nightmare with a watch file. The phpmyadmin upstream dumps all released files onto a single web page, and they use version numbering a.b.c-foon, which foo being beta, rc, or pl, and of couse a.b.c for a release version.This has resulted in the following (probably incorrect) watch file version=3 opts= uversionmangle=s/0\.tar/0-5.tar/;s/beta/0./;s/rc/1./;s/pl/9./,dversionmangle=s/0\.tar/0-5.tar/;s/beta/0./;s/rc/1./;s/pl/9./ http://prdownloads.sourceforge.net/phpmyadmin/ (?:.*/)?phpMyAdmin-([-0-9\.a-z]+)\.tar.gz$ 2.7.0-pl2 uupdateAs Germans say: Gesundheit

    14 August 2006

    Neil McGovern: How to set fire to your hard drive

    I was off searching for stock photos today on a site called istockphoto when I found my machine grinding to a halt. Thanks to the system load plugin in XFCE, I was able to tell that about half of my 515Mb of swap was being used. This laptop has 256Meg ram in it already, so what could possibly be using up that much memory?

    Well, the answer was simple. Firefox. More precisely, the flash plugin for firefox. istockphoto uses a system called sIFR, which replaces text, mostly titles, with little embedded flash objects. More details about this technique can be found at Mike Davidson's blog. Now, it seems that this particular site is titling EVERY headline with a flash object, which is causing firefox to use up about 300Mb of ram. So, I installed Flashblock to remove this memory hogging flash from my web pages. It did indeed free up the memory, and stopped the flash from displaying.

    Interestingly, Firefox did not free up the memory it was using until I shut the thing down and started it again. It was suggested that this may be due to the way that firefox has a built in memory cache of pages loaded. After a quick look in about:config, I discover that there is an option, browser.cache.memory.enable that's set to 'true'. However, setting this to false causes work's web page to fail to load at all. Having a look with ethereal, the request goes out, and the text comes back. It just displays about:blank.

    So, in summary, if you need to reduce memory requirements, don't use firefox. This would be the favoured option for me, if there was a good alternative that has the Web Developer Toolbar, but unfortunately, there isn't.

    5 August 2006

    Steve Kemp: The foulest stench is in the air

    I received a few interesting comments on my last post about mailing list software so I’m going to summerise my current thoughts. Before covering the available software I’ll say what I personally need from a mailing list manager: When it comes to the handling of spam I mostly don’t care. Messages are filtered via the mailserver at SMTP time (ditto for viruses) and although moderation is generally useful I prefer to either bounce or eat the messages which are not forwarded. (Either case is fine so long as logs are available). This simplifies things significantly since the pedning messages don’t need to be stored/queued. Here is a list of all the mailing list software which is available to users of Debian’s Sarge release along with some of my thoughts/comments/impressions. (Some of these details may be wrong, I’d happily be educated …):
    ecartis
    The Ecartis package for Debian GNU/Linux is mostly broken. In sid the package is essentially unmaintained, and that is a worrying sign. Ignoring that for the moment the software works reasonably well. It allows most of the kind of control I desire but the significant downside is that it is severaly broken with regard to character sets and encoding issues. For a cromulent example see this message.
    enemies-of-carlotta
    This software wins double-plus bonus points for a most excellent name. Naming software is hard, and although the relationship between the film and the purpose of the software is random I like it! eoc suffers from a virtually non-existant set of documentation. Whilst it might be simple to use I it isn’t documented except in a single manpage. I seem to recall I had difficulty getting my Exim4 configuration to pass relevent environment variables ($SENDER + $RECIPIENT) passed into the script properly. The lack of documentation just made this more irritating.
    fml
    There is a lot of documentation for this, which is half in English and half in Japanese. I admit I mostly didn’t explore this software - although my impression is that it doesn’t have support for virtual hosts.
    mailman
    Mailman is big, popular, and I dislike it with a passion. The admin interface has a billion configuration options, but even if you know they exist finding the damn things are an impossible job. The system requires about five python processes running even when it is “idle”. In my mind a mailing list software doesn’t need a daemon componant - just a program to spawn when a message “comes in”. The whole password system is broken and gains you zero additional security. Again to rail against mailman: it has integrated message archival, something i think should be distinct. (eg. mhonarc). Virtual hosting is possible, but I believe that mailing list names must be distinct regardless of domain name. That may not be correct honestly I’ve detested the softwware with a passion which suprises me and I may not be 100% objective here.
    mlmmj
    Looks nice. Looks clean. doesn’t look particularly joyful. (The name mlmmj means “mailing list managing made joyful”.) It doesn’t appear to support virtual hosting, and it doesn’t appear to support enough different list types.
    quickml
    Listens upon a network port (10025 by default) and not support different list types or virtual hosting.
    smartlist
    Complex. Icky.
    sympa
    Seems very featureful, but it is yet another system which has an integrated web-component like mailman == bad. It doesn’t support having the same named mailing list in multiple virtual hosts, although it appears to do everything else I desire.
    In summery: There are several available packages, but none are good, and many are actively bad. I still believe that creating another list server would be a useful thing to do. I’ve written a brief design overview elsewhere which I will post for comment later. I’d like to support a couple of “advanced” features such as allowing the mailing list software to only accept GPG signed messages, or to act as a remailer such that messages posted to the list will be automatically GPG signed prior to delivery to all users. Looking around I think most of the individual bits of code are available (in Perl). eg. Mail::Message, Mail::GPG, etc. Its just a matter of gluing the bits together in a modular fashion.

    4 August 2006

    Enrico Zini: addis-tasks-and-skills

    Addis course Tasks & Skills questions

    31 July 2006

    Rob Bradford: Lots of laughs (and not so many)

    This weekend was quite a social razzmatazz. On Saturday night myself and two of the other interns I share an office with went to see the Laugh Olympics (they don’t appear to have a website) an English speaking improvisation show. In which the “Eastside” compete against their “Westside” counterparts in a series of improvisation sketches. The referee seeks various suggestions from the audience that are then incorporated into the act, all vaguely reminiscent of Radio 4 panel games. It was a fantastic experience (and very good value too, just 5), I intend to insist on taking everyone who comes to visit me to see it. It is on every Saturday, 9pm just off Rosenthaler Str. Full details can be found in the July edition of New Berlin Magazine. On Sunday we went to see Pirates of the Carribean at the Sony Center at Potsdamer Platz. It was rubbish. Don’t bother. It was just a setup for the third movie, very Matrixesque. After the film I cheered myself up by eating a Teutonic D ner, much much nicer than the British variety. And much much cheaper too ( 1.30- 2.80).

    Enrico Zini: tenth-day-in-addis

    Tenth day in Addis Procedure to check if all the services of Dream University are up and running If a machine blocks pings, use arping instead.
    1. Test DHCP:
      $ sudo ifdown eth0
      $ sudo ifup eth0
      $ ifconfig
      
    2. Test the DNS:
      # See if the DNS machine is on
      # The network
      $ ping -n 192.168.0.1
      # See if the DNS resolves names
      $ host www.dream.edu.et
      
    3. Test the gateway:
      # Ping the gateway
      $ ping gateway
      # Ping an outside host
      $ ping -n 10.4.15.6
      
    4. Test the proxy:
      # Ping the proxy
      $ ping proxy
      # Open a web page and see if it displays
      # See if it caches
      http_proxy=http://proxy.dream.edu.et:3030/ wget -S -O/dev/null http://www.enricozini.org  2>&1   grep X-Cache
      
    5. Test the mail server:
      $ ping smtp
      $ nmap smtp -p 25  grep 25/tcp
      $ if nmap gateway -p 25  grep 25/tcp   grep -q open ; then echo "It works"; fi
      $ send a mail and see if you receive it
      
    To do more advanced network and service monitoring, try nagios: New useful tools seen today
    wget - The non-interactive network downloader.
    
    Special devices Example uses:
    wget -O/dev/null http://www.example.org
    dd if=/dev/zero of=testdisk bs=1M count=50
    mke2fs testdisk
    sudo mount -o loop testdisk  /mnt
    
    Tiny little commands Example uses: Some more shell syntax Some people run commands ignoring the standard error: command 2> /dev/null this causes unexpected error messages to go unnoticed: please do not do it. What to check if a machine is very slow More VIM command mode Command mode allows to perform various text editing functions. You work by performing operations on selected blocks of text. Some common operations: Some common blocks: Examples: The best way to learn more vim is always to run vimtutor. Installing squirrelmail To install squirrelmail:
    1. apt-get install squirrelmail
    2. /usr/sbin/squirrelmail-config and configure IMAP and SMTP. In our case, since we use IMAPS, the IMAP server is imap.dream.edu.et, port 993, secure IMAP enabled and SMTP is smtp.dream.edu.et.
    3. Read /usr/share/doc/squirrelmail/README.Debian.gz (with zless) for how to proceed with setup. A short summary:
      • link /etc/squirrelmail/apache.conf into the apache conf.d directory
      • customise /etc/squirrelmail/apache.conf for example setting up the virtual hosts, or running it only on SSL
    To have different virtual hosts over HTTPS, you need to have a different IP for every virtual host: name based virtual hosts do not work on HTTPS. You can configure multiple IP addresses on the same computer: use network interfaces named: eth0:1, eth0:2, eth0:3... These are called interface aliases. You cannot setup interface aliases using the graphical network configuration and you need to add them in /etc/network/interfaces:
        iface eth0:1 inet static
              address 192.168.0.201
              netmask 255.255.255.0
              gateway 192.168.0.3
        auto eth0:1
    
    This is the trick commonly used to put different virtual HTTPS hosts on the same computer. Links squid documentation: Shell programming: Performance analysis: Setting up mail services:

    29 July 2006

    Steve Kemp: Hunting time is here again

    Tonight I shall be mostly playing dress-up games and weight training. Simultaneously. My intention is to wear my larger boots (2 x 2kg total) along with a nice chainmail top (1 x 5kg). Including beer (how much does that weight?) I’ll expect to be carrying about 10Kg / 1.5 Stones of extra weight .. whilst dancing. I’m going to be sore tomorrow but it will be worth it. Now to go shave my head before I get ready to go out ..

    27 July 2006

    Enrico Zini: Tenth day in Addis

    Procedure to check if all the services of Dream University are up and running If a machine blocks pings, use arping instead.
    1. Test DHCP:

      $ sudo ifdown eth0
      $ sudo ifup eth0
      $ ifconfig
      
    2. Test the DNS:

      # See if the DNS machine is on
      # The network
      $ ping -n 192.168.0.1
      # See if the DNS resolves names
      $ host www.dream.edu.et
      
    3. Test the gateway:

      # Ping the gateway
      $ ping gateway
      # Ping an outside host
      $ ping -n 10.4.15.6
      
    4. Test the proxy:

      # Ping the proxy
      $ ping proxy
      # Open a web page and see if it displays
      # See if it caches
      http_proxy=http://proxy.dream.edu.et:3030/ wget -S -O/dev/null http://www.enricozini.org  2>&1   grep X-Cache
      
    5. Test the mail server:

      $ ping smtp
      $ nmap smtp -p 25  grep 25/tcp
      $ if nmap gateway -p 25  grep 25/tcp   grep -q open ; then echo "It works"; fi
      $ send a mail and see if you receive it
      
    To do more advanced network and service monitoring, try nagios:
    New useful tools seen today:
    wget - The non-interactive network downloader.
    Special devices:
    • /dev/null:
      • On read, there is no data.
      • On write, discards data.
    • /dev/zero:
      • On read, reads an infininte amount of zero bits.
      • On write, discards data.
    • /dev/random, /dev/urandom
      • On read, reads random bits.
      • On write, discards data.
      • Difference: /dev/random is cryptographically secure, but it can hang waiting for system events
    Example uses:
    wget -O/dev/null http://www.example.org
    dd if=/dev/zero of=testdisk bs=1M count=50
    mke2fs testdisk
    sudo mount -o loop testdisk  /mnt
    
    Tiny little commands:
    • true - do nothing, successfully
    • false - do nothing, unsuccessfully
    • yes - output a string repeatedly until killed
    Example uses:
    while /bin/true; do echo ciao; done
    Using /bin/false as a shell
    yes   boring-tool-that-asks-lots-of-silly-questions
    
    Some more shell syntax:
    • 2>&1 Redirects the standard error in the standard output
    • 2> Redirects the standard error instead of the standard output
    Some people run commands ignoring the standard error:
    command 2> /dev/null
    
    This causes unexpected error messages to go unnoticed: please do not do it. What to check if a machine is very slow:
    • See if the ram is full:

      $ free
      
      If it is, you see what are the fattest programs using top, pressing M to sort by memory usage.
    • See if there are lots of programs competing for CPU:

      $ top
      
    • Check if you have I/O bottlenecks:

      $ vmstat
      
      (but I don't know how to read it)
    • For a desktop on older hardware, you can try xubuntu instead of ubuntu

    More VIM command mode Command mode allows to perform various text editing functions. You work by performing operations on selected blocks of text. Some common operations:
    • y: copy ("yank")
    • p: paste
    • P: paste before
    • d: cut ("delete")
    • c: change
    • i: insert
    • a: append
    • .: repeat last operation
    Some common blocks:
    • w: word
    • : paragraph
    • left and right arrow: one character left or right
    • up and down arrow: this line and the one on top or below
    • f letter: from the cursor until the given letter
    • v: selection
    • V: line selection
    • ^V: block selection
    Examples:
    • yw: copy word
    • dw: cut word
    • yy: copy line
    • dd: cut line
    • V (select lines) y: copy a selection of lines
    • V (select lines) d: cut a selection of lines
    • p: paste
    The best way to learn more vim is always to run vimtutor.
    Installing squirrelmail To install squirrelmail:
    1. apt-get install squirrelmail

    2. /usr/sbin/squirrelmail-config and configure IMAP and SMTP. In our case, since we use IMAPS, the IMAP server is imap.dream.edu.et, port 993, secure IMAP enabled and SMTP is smtp.dream.edu.et.

    3. Read /usr/share/doc/squirrelmail/README.Debian.gz (with zless) for how to proceed with setup. A short summary:

      • link /etc/squirrelmail/apache.conf into the apache conf.d directory
      • customise /etc/squirrelmail/apache.conf for example setting up the virtual hosts, or running it only on SSL
    To have different virtual hosts over HTTPS, you need to have a different IP for every virtual host: name based virtual hosts do not work on HTTPS. You can configure multiple IP addresses on the same computer: use network interfaces named: eth0:1, eth0:2, eth0:3... These are called interface aliases. You cannot setup interface aliases using the graphical network configuration and you need to add them in /etc/network/interfaces:
    iface eth0:1 inet static
          address 192.168.0.201
          netmask 255.255.255.0
          gateway 192.168.0.3
    auto eth0:1
    
    This is the trick commonly used to put different virtual HTTPS hosts on the same computer.

    Next.

    Previous.