Linux.conf.au (part 1)

By | January 31, 2006

Last week I spent Monday through to Saturday at linux.conf.au, which was a very good conference on Linux stuff. I hoped to write about things as they happened, but lacking a laptop, I was only able to spend an hour or so per day using a computer and so it didn’t happen. So now I’ll go through and write about it. Given this is a few days later, I’ll probably not include as much detail as I would have if I did it closer to the time.

Monday, 23rd Jan

This day was devoted to the miniconferences. None of them was especially exciting to me, so I went to the Damian Conway one, which was him doing a talk on presentation skills in the morning, and Perl 6 in the afternoon. He is a very good speaker, and so the presentation skills one was well worth it, and the Perl 6 one was also. There’s a lot of good stuff coming into that. I’m thinking I might have to follow the development a bit, or perhaps even get involved.

If you ever have the chance to see Conway talk, do. It’s quite an experience. It was also pretty nice, as I’d previously done the presentation skills one, so seeing the Perl 6 one pointed out a lot of the things he’d been talking about.

Tuesday, 24th Jan

On Tuesday, I went to the Debian miniconf, which was less interesting. Given I’m not really involved in the Debian development or anything, this is probably to be expected. There was a few things that were worth seeing however.

Wednesday, 25th Jan

This day the conference proper started. The talk I went to in the morning was A whirlwind tour of changes in the Linux 2.6.x system call API. It covered a few of things that I’d heard about, but didn’t really know the details of. Now I think I’m going to have to play with some of them a bit. I already have an idea for something I’m going to do with this. As soon as I can make something using inotify compile on 2.6.12.

After lunch was Tridge’s Samba 4 Status Report, which demonstrated how good samba 4 is looking. It can now replace a Windows PDC with a few clicks and 30 seconds, which (as I understand it) is better than Windows can actually do. Oh, and they’re also going to have support for the network filesystem in Windows Vista before Vista actually comes out, which is really quite funny. It’s a bit of a pity I don’t do anything much with Samba, except for using it share files from my machine to Windows ones, so none of these advancements are any use to me. But I can see them being really good for anyone who has a sizable network.

The final talk of the day was From New Zealand to Bolivia, the Koha Library system flies. This one is about a New Zealand developed, open sourced library catalogue system. It covered more the social and background side of things, rather than the technical side, which was good. It described the kinds of organisation that have been using it, and the kind of work that has been done on it.

Later that evening was the keysigning. That had around 50 people at it, so hopefully some more of those people hurry up and do the actual signing thing. My current key can be found online, it already has a fair few new signatures.

More later…

7 thoughts on “Linux.conf.au (part 1)

  1. tikitu

    > There’s a lot of good stuff coming into that.

    what?

    > There was a few things that were worth seeing however.

    what?

    > It covered a few of things that I’d heard about, but didn’t really know the
    > details of. Now I think I’m going to have to play with some of them a bit.

    what?

    *shrug* So I’m feeling contrary this evening. It’s probably envy.

  2. robin Post author

    Hmm, fair points. I wrote them in a bit of a rush, and wasn’t spending time calling up details. For example:

    • Perl 6:
      • Quantum superpositions in the langauge. Known as conjunctions, these let you say (in the simple form): if ($a == 1|3|5) and it does what you expect from saying it allowed. A more advanced form:
        $z = any(1,3,5);
        if ($a == $z) { # true if $a is 1, 3 or 5

        Or how about (and I haven’t seen this, but I assume it works):
        $z = all(5,7,11);
        if ($a % $z == 0) { # true iff $z is a multiple of 5, 7 and 11
      • Oh and the sigils are changing to easier to use behaviour:
        @a=(1,2,3);
        say @a[1]; # prints '2'

      There’s plenty more, too. I’m just not going to go into it here 🙂

    • Debian:
      • Nothing too exciting, just a talk on what is contained in .deb files, and another one on selinux in Debian.
    • Kernel:
      • inotify: watch for filesystem changes in a sensible, sane way.
      • epoll: monitor many many file descriptors (incl network sockets) with virtually no slowdown, and certainly not the linear slowdown of the other methods
      • extended attributes: add arbitrary data to files (e.g. tags:)

      There was more kernel stuff too, it’s all on the wiki page.

  3. tikitu

    The quantum superpositions look great. There’s a bunch of syntactically similar constructions that modern languages are starting to handle that seem absolutely essential, once you’ve used them a bit. (eg: python iirc, if (0 < $i <= 10), assuming python has $-initial vars which it probably doesn't...) I'd be a bit scared about possible misuses though -- what if you start with $a = 2|3|5; $b = 2|4|6; then go on to if ($c == ($b/$a))? And presumably there will be a way to generate the alternatives programmatically, which raises *horrible* possibilities. I'm rubbing my hands already... Kernal support for arbitrary meta-data sounds cool too. Of course it all comes down to how (and how efficiently) it's accessible, but still interested.

  4. robin Post author

    Oh, addendum to the Perl stuff: they’re not keeping backwards compatibility. They are stripping out everything except the principles of the language, and rebuilding it in a more organised fashion. Removing some of the organicness of it.

  5. tikitu

    Regarding backward-incompatibility: mixed feelings. It’s *great* for the language, could be *shit* for the users and user base (which means longer-term shit for the language, since it gets dropped). But in terms of design, by *far* the best way to go.

  6. robin Post author

    Addendum to the Perl stuff, part duex: The conjunctions work in parallel. If you do:
    $z = any(1,2,3,4,5,6,7);
    $a = mysub($z);
    mysub() will be called once for each entry in $z, until the result is true for one of the executions. However, if you have parallel processors, it will do it using them.

  7. robin Post author

    Oh, the backwards compatibility isn’t that bad. You can still use Perl 5. It’s just you don’t get the benefits of Perl 6. They can share libraries and so on still.

    As for the if ($c == ($b/$a)) thing. Yes. Yes you can. See my other post about conjunctions.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.