Robert Collins: 14 Jun 2008
Rethinking annotate: I was recently reminded of Bonsai for
querying vcs history. GNOME runs a bonsai instance.
This got me thinking about 'bzr annotate', and more
generally about the problem of figuring out code.
It seems to me that 'bzr annotate', is, like all annotates
I've seen pretty poor at really understanding how things
came to be - you have to annotate several versions, cross
reference revision history and so on. 'bzr gannotate' is
helpful, but still not awesome.
I wondered whether searching might be a better metaphor for
getting some sort of handle on what is going on. Of course,
we don't have a fast enough search for bzr to make this
plausible.
So I wrote one: bzr-search in my
hobby time (my work time is entirely devoted to landing
shallow-branches for bzr, which will make a huge difference
to pushing new branches to hosting sites like Launchpad).
bzr-search is alpha quality at the moment (though there are
no bugs that I'm aware of). Its mainly missing optimisation,
features and capabilities that would be useful, like
meaningful phrase searching/stemming/optional case
insensitivity on individual searches.
That said, I've tried it on some fairly big projects - like
my copy of python here:
time bzr search socket inet_pton (about 30 hits, first one up in 1 second)... real 0m2.957s user 0m2.768s sys 0m0.180sThe index run takes some time (as you might expect, though like I noted - it hasn't been optimised as such). Once indexed, a branch will be kept up to date automatically on push/pull/commit operations. I realise search is a long slope to get good results on, but hey - I'm not trying to compete with Google :). I wanted something that had the following key characteristics: * Worked when offline * Simple to use * Easy to install Which I've achieved - I'm extremely happy with this plugin. Whats really cool though, is that other developers have picked it up and already integrated it into loggerhead and bzr-eclipse. I don't have a screen shot for loggerhead yet, but heres an old one. This old one does not show the path of a hit, nor the content summaries, which current bzr-search versions create.
Russ Nelson announces that the 


As I am one of those who have read “able” instead of “unable”, I had to find a really cheap flight. This may sound crazy, but an Iberia flight to Buenos Aires from Berlin costs far less than from Lyon (where I live) or even from Madrid: 781.12 EUR from Berlin instead over 1,200.00 EUR from Madrid and over 1,300.00 EUR from Lyon (in both cases with a change in Madrid Barajas).
I wonder if Iberia pays you 420,00 EUR if you flight from Berlin to Madrid…
Now I have to find a cheap way to go to Berlin from Lyon (probably an EasyJet flight). I plan to spend a few days of holiday in Berlin before flying to Argentina.
I have this IPv6 issue with my ADSL. It's kinda bizarre and I'd be
interested in whether anyone has any ideas or has seen anything similar
themselves.
Personally, I like Friday 13th.
It's usually been
pretty good for me. But for this one,
I won't be surprised if computer abusers
are planning some big attack tomorrow.
I've just spent a big chunk of my day
upgrading and securing some of the websites
that
In a perfect world, when we design some aspect of our infrastructure,
we'd get it right the first time, and would never have to change our design
once it had been deployed.
Back in this world, however, we regularly have to change things as we
expand our infrastructure. Sometimes we made a mistake originally, other
times new requirements pop up. In either case we will end up doing things
differently in the future than how it was done in the past.
The danger here is that if you only create your new machines or services
differently, you've got effectively two separate and different systems to
maintain. This may not sound like much, until it happens again... and
again... and again... and then suddenly you've got 18 different ways of
setting up backups, depending on how long ago you set it up and (if you're
really unlucky) who did it and what the phase of the moon was at the time.
If you've been here before, you probably remember the pain of having some
disaster happen and needing to fix it NOW NOW NOW, only to wade into the
setup and realise that it's been done in a way that (you thought) died out
six months ago -- and so you don't really remember how it works, and yeah,
the documentation's been updated so many times since then that it doesn't
mention the old way of doing things, and here comes your boss to ask how
long it's going to be until it's all working again...
If you haven't had this experience (yet?), you'll have to trust me when I
say that it's no fun to hit an older, out-of-date system. It's especially
painful because the most common reason you change things is because the
old way sucked. So you turn up at a critical moment to fix something in
a poorly documented and sub-optimally configured system.
Fun, fun, funnity fun.
There are only two ways to avoid this problem: never change the way you do
anything, or else plan your changes so that retrofitting is part
of the plan every time you're modifying an existing service.
Assuming that never changing anything isn't an option, you need to plan to
retrofit. When you're putting together the design for your system change
(you do design your changes, right?) you need to audit what's out
there, determine what's needed to bring it all up to date, and put
together a plan to make that happen. It's like documentation and testing
-- if you don't make an explicit effort to make it happen, it'll never get
done.
That sounds like a lot of work, and it is. Luckily, if you're already
working in a well-maintained infrastructure you should only really have one
existing config to upgrade, which shouldn't be too painful. However, if
you've got a lot of machines to change there's no way around the fact that
they've all got to be changed, and that can take time.
If you accept that you don't want configuration skew, you can start to
think about how to engineer your systems and processes to make it less of
a hassle to keep everything up to date. Putting some extra thought into
how you set things up in the first place so that it's easier to update is
at the heart of this. Automating deployment is an easy way to take some
of the pain away from rolling out new configs, but there's also plenty of
smaller decisions that help with updating configs: putting everything in
revision control, making extensive use of templating and pulling out
common config fragments, and making sure that you've got good notes and
records of what has been done where.
The more you automate your deployment and maintenance, the less pain you
feel when you need to retrofit. With something like
Yes, Manu Chao was really home yesterday in Paris Bercy. And he was obviously feeling like being home.
The concert began at 21:30 and ended up at 00:30. Yes...that makes 3 full hours concert. All that for 25 euros.
The crowd support, dance, participation was *amazing*. I often go to concerts in the Bercy arena and never saw the crowd in the upper rows being stood up all concert long.
Radio Bemba played their usual tracks first. As usual, the very Manu way to mix songs, themes from all his carreer and mix them up, distord them and make new songs from old ones. This is what always made Mano Negra, then Manu Chao oncerts unique experiences. Just imagine 20,000 people singing Clandestino a capella, most of us not knowing any damn word of Spanish...
After about 2 hours of magic without any stop, the very special moments came in. Manu, Gambit, Majiv (what a guitarist when playing rumbas de Barcelona!), Julio (de Barcelona!)...and all others were just feeling like being home with a few friends. So the encores lasted...and lasted...and lasted. They just didn't want to stop (Manu probably said about 3 or 4 times "c'est fini").
Then, they did something I never ever saw in a big 20,000 people concert since my first one back in....long time ago. Manu asked "do you have 5 more minutes?". So, they stopped for 5 minutes to get the guitars re-accorded(sp?)....the crowd just...waited...and the gig re-started again with songs from "Si Sib rie m' tait cont e", the special book-album he made with friends, inspired by the sad winters he spent in Paris in his early years. Soooooo special and, believe me, that *was* special. Seeing all roadies, crew, friends just dancing backstage and partying clearly showed this was not to always happen (this will probably happen again on today's concert).
He was just feeling like home. And so were we. Not wanting to leave and shut down the light.
Finally, at 00:30, all of us were dead tired and we just hugged around with Manu and left. Just like old friends.
I don't know if that will happen everywhere 
After thinking it over a couple of times, I did it.
Watched
We eventually released liquidsoap 0.3.7 !!
Lev t t pour tre frais et dispo pour la premi re s ance, je me suis pr par rapidement. La nuit a t assez courte, couch vers minuit pour finaliser le support de cours. Enfin, il est pr t. J'ai juste quelques ajustements y apporter et il partira pour l'impression. Mieux vaut tard que jamais ;)
J' tais donc pr t 7h30 pour un petit d jeuner ma foi agr able au bord de la piscine et accompagn de
Things in your computer that you do not have the source code for: