All posts by Yvan

No power

Note: This entry has been restored from old archives.

Woke up at 06:00, no power. Now 12:30… still no power.

Again! And they’re digging up the new Audi carpark. Again! Co-incidence? No!

Hargreaves Lansdown Funds by TER

Note: This entry has been restored from old archives.

Recently I had reason to rank the funds available via a Hargreaves Lansdown Vantage SIPP by their TER. Of course, it isn’t in HL’s best interests to make this easy so I ended up having to work it out the hard way. I’ve compiled a list that is correct as of around Friday August 1st, a portion of this is below. What I was looking for was a list of funds with a “real” TER of 1.1% or less. To get “real” I’m calculating the max of HL’s advertised TER and Annual Charge with their special magic additional charge factored in where it is applicable. HL add another 0.5%+VAT (0.5875%) to the AC for some funds, as far as I can see this mainly because they don’t like people investing in index-linked funds.

What’s the point? Comparing the HL SIPP to stakeholder/personal pensions. Why this criteria? Because the cheaper stakeholders and personal pensions are generally available at a flat/average annual charge <1% if acquired via a discount broker. Mostly these pensions offer only a small range of funds you can include in your pension portfolio. So, this list aids a like-for-like comparison of what is supposedly the cheapest SIPP (supposedly offering >2000 funds) on the market with market-leading non-SIPP pensions (typically offering from 10 to 300 funds.)

I chose 1.1% as within this range, with appropriate investment weightings, you could put together a fund portfolio with an average TER of <1%, thus somewhat competitive with the stakeholder/personal pension options. I’ve also filtered the results to include only accumulation funds, and to leave out any funds where the net initial charge is greater than 0.

My verdict? Given my filtering parameters the HL SIPP has about 60 investment options with which you could possibly put together a pension portfolio similar in overhead to good stakeholder or personal pensions. This typically has much more choice than a stakeholder, but less than many personals. However, it can be observed that the selection of investment choices mainly focus on local equities and bonds with a bit of money market thrown in. Notably this selection contains no property investment funds, which are generally considered an important part of a balanced portfolio (though how happy you’d be with that idea right at this moment is debatable!) I seems that the lowest TER property fund is the L&G General UK Property Trust with a TER of 1.29%, so if a small part of your portfolio it could be possible to include this and still average <1%.

Anyway, the list:

“real” TER TER Sector Size Type HL AC Name
0.27% 0.27% UK All Companies £671m OEIC HSBC FTSE All Share Index Fund Institutional A Accumulation Shares
0.50% 0.50% Money Market N/A Unit Trust Legal & General Cash Accumulation
0.52% 0.52% UK All Companies £3851m OEIC Legal & General UK Index Retail Accumulation Units
0.55% 0.55% Offshore £6206m OEIC JPMorgan Sterling Liquidity (Offshore) A Cap
0.60% 0.60% Global Bonds £35m Scottish Widows Overseas Fixed Interest Tracker Accumulation
0.67% 0.67% Japan £55m OEIC HSBC Japan Index Accumulation Units
0.75% N/a Offshore £214m OEIC INVESCO Sterling Bond A Accumulation
0.78% 0.78% North America £970m Unit Trust Legal & General US Index Retail Accumulation Units
0.79% 0.79% Japan £358m Unit Trust Legal & General Japan Index Retail Accumulation Units
0.79% 0.79% UK Corporate Bond £1201m Unit Trust Legal & General Fixed Interest Class R Accumulation Units
0.80% 0.80% Europe Excluding UK £1521m Unit Trust Legal & General European Index Retail Accumulation Units
0.80% 0.80% Europe Including UK N/A Unit Trust Prudential European Index Tracker Accumulation Units
0.81% 0.22% UK Index Linked Gilt £561m Unit Trust 0.59% Legal & General All Stocks Index-Linked Gilt Index Accumulation
0.81% 0.22% UK Gilt £988m Unit Trust 0.59% Legal & General All Stocks Gilt Index Trust Accumulation Units
0.83% 0.83% Asia Pacific Ex Japan £444m Unit Trust Legal & General Pacific Index Retail Accumulation Units
0.84% 0.84% UK All Companies £84m Unit Trust Legal & General UK 100 Index Trust Retail Accumulation
0.86% 0.27% UK All Companies £1074m 0.59% Scottish Widows UK All Share Tracker Accumulation Units
0.87% 0.28% UK All Companies £520m OEIC 0.59% Fidelity Moneybuilder UK Index Accumulation Units
0.89% 0.89% UK All Companies £82m OEIC HSBC FTSE 250 Index Accumulation Units
0.89% 0.89% UK Gilt £210m OEIC HSBC Gilt & Fixed Interest Accumulation Units
0.90% 0.90% Global Bonds £40m OEIC JPMorgan Global (Ex-uk) Bond Fund Accumulation Shares
0.90% 0.90% Balanced Managed £409m Unit Trust Schroder Managed Balanced Class H Accumulation
0.92% 0.92% UK Index Linked Gilt £70m OEIC AXA Sterling Index Linked Bond Retail Accumulation
0.92% 0.92% Global Growth N/A Unit Trust Legal & General International Index Trust Class R Acc
0.93% 0.93% UK Corporate Bond £132m OEIC Investec Sterling Bond Fund Accumulation Shares
0.99% 0.40% UK All Companies £361m OEIC 0.59% F & C FTSE All Share Tracker Fund Class 1 Accumulation Units
0.99% 0.99% Asia Pacific Ex Japan £44m OEIC HSBC Pacific Index Accumulation Units
1.00% 1.00% Technology & Telecoms £14m Unit Trust Legal & General Global Technology Index Retail Accumulation Units
1.00% 1.00% Global Growth £25m Unit Trust Legal & General Global 100 Index Retail Accumulation Units
1.00% 1.00% Specialist £27m Unit Trust Legal & General Global Healthcare & Pharmaceutical Retail Accumulation Units
1.00% 1.00% UK All Companies £34m OEIC F & C FTSE 100 Tracker Fund Class 1 Accumulation Units
1.00% 1.00% UK All Companies £128m Unit Trust Legal & General Ethical Trust Class R Accumulation Units
1.00% 1.00% UK All Companies £395m OEIC Scottish Widows UK Tracker Retail A Accumulation Units
1.00% 1.00% UK Other Bond £583m OEIC Standard Life Higher Income Fund Retail Accumulation
1.00% 1.00% UK Other Bond £1576m Unit Trust Legal & General High Income Trust Retail Accumulation Units
1.01% 1.01% UK Corporate Bond £407m OEIC Standard Life Corporate Bond Fund Retail Accumulation Units
1.01% 1.01% Unclassified £496m OEIC SWIP Sterling Index-Linked Bond Accumulation
1.01% 1.01% Offshore $121m OEIC Investec GSF Managed Currency A Accumulation USD
1.02% 1.02% UK Corporate Bond £152m OEIC Standard Life Select Income Retail Accumulation
1.02% 1.02% Unclassified £567m OEIC SWIP Gilt Plus Accumulation
1.02% 1.02% Unclassified £617m OEIC SWIP Defensive Gilt Accumulation
1.02% 1.02% Unclassified £1706m OEIC SWIP Corporate Bond Plus Accumulation
1.03% 1.03% UK Gilt £43m OEIC Standard Life UK Gilt Fund Retail Accumulation Units
1.03% 1.03% UK Corporate Bond £364m OEIC Norwich Union Monthly Income Plus Class 1 Accumulation Units
1.04% 1.04% Unclassified £13m OEIC SWIP Global Bond Plus Accumulation
1.04% 1.04% UK All Companies £454m Unit Trust Legal & General Equity Trust Class R Accumulation Units
1.05% 0.46% UK All Companies £343m OEIC 0.59% M & G Index Tracker Fund Class A Accumulation Units
1.05% 1.05% UK Corporate Bond £56m Unit Trust Legal & General Managed Monthly Income Retail Accumulation Units
1.06% 1.06% Global Bonds £157m OEIC Standard Life Global Indexed Linked Bond Retail Accumulation
1.07% 1.07% UK Corporate Bond £145m OEIC AXA Sterling Corporate Bond Class R Accumulation
1.08% 1.08% UK Corporate Bond £200m OEIC Standard Life AAA Income Retail Accumulation
1.09% 0.50% UK All Companies N/A Unit Trust 0.59% Prudential UK Index Tracker Accumulation
1.09% 1.09% Global Bonds £28m OEIC UBS Absolute Return Bond A Shares Accumulation
1.09% 1.09% Global Bonds £76m Unit Trust BlackRock Global Bond Accumulation Units
1.09% 1.09% UK Corporate Bond £81m OEIC Aberdeen Corporate Bond Class A Accumulation
1.09% 1.09% UK Other Bond N/A OEIC Cazenove Strategic Bond Class B Accumulation
1.10% 1.10% UK Corporate Bond £2m OEIC Franklin Corporate Bond Accumulation
1.10% 1.10% Unclassified £51m OEIC SWIP Sterling Bond Plus Accumulation
1.10% 1.10% UK Gilt £87m OEIC Baillie Gifford Gilt Class A Accumulation
1.10% 1.10% Offshore N/A OEIC Nomura Enovara Global Emerging Mkts 80% £GBP

So, if you put a large weighting into the HSBC FTSE All-Share fund you could potentially bring down the average significantly (and several sources of advice do suggest having a sizable proportion of your portfolio in local equities, especially when 20+ years from retirement.)

I don’t know if all these funds are valid for investment in a SIPP, I do know that their minimum investment levels vary (some are 1000+.) This is, after all, a fairly rough assessment made by a total armature! It is also worth pointing out that several funds in HL’s index link to “fund not found” pages, I have no idea what’s up with that. Additionally, few of the funds are index based anyway, so for the majority the usual quality considerations for actively managed funds apply.

Finally, note I’m comparing an apple to oranges by taking into account just the parts of the apple that are orange-like. The important difference ignored here is that the HL SIPP allows equity investments with relatively cheap trading fees. If you want fully flexible trading within a SIPP then, from what I’ve heard, the HL SIPP is hard to beat. But my interest at the moment is comparing a SIPP to other options as purely a fund-container.

The above said, it should be noted that the HL SIPP’s trading capabilities can also have some relevance to holding funds! This is thanks to ETFs of course.

Complicated, no?

Based on this very, very rough consideration I think I’d prefer stakeholder or personal pensions over the HL SIPP if my investment focus was entirely on funds. I’d consider a strategy of beginning pension investments in one of these and holding that until it has a value high enough to consider the possibility of using a SIPP to provide access to ETFs. (Since HL’s dealing charges for larger transactions are reasonably good. That said, I haven’t got around to weighing up the pros and cons of ETFs in a SIPP wrapper. On the face of it you could invest in, for example, the iShares FTSE 250 ETF with its TER of 0.4% and only ever pay HL the initial trading fee. To have a better idea of this would require a survey of all the ETFs available.)

Disclaimer: this is not financial advice, I’m just thinking aloud (and am entirely unqualified to offer advice anyway!)

Piling misery?

Note: This entry has been restored from old archives.

British Gas has raised the price of gas by a massive 35%, piling misery on to millions of customers.

I know the media is no stranger to hyperbole, but really? In the time of “credit crunch” and “mortgage crisis” I’d expect to be immune (they may not be exaggerated terms themselves, but they sure spawn many words of doom and gloom.) It seems I’m not actually desensitized to financial melodramatics however, I had to shake my head at this one (I’m a BG customer, through laziness, as opposed to love of them.)

Piling misery onto millions of customers? That’s a lot of misery. I think BG supplies around 16 million households (~47% market-share), so “millions” does cover its customer base, but I suspect it is over the top on the “misery” front.

Our gas bill is £30 per month, the 35% rise adds another £10.5. This is below average for UK households, since there’s only two of us. The average annual gas bill is apparently a whopping £630, making the average monthly increase just over £18.

So, is £18 quid a month misery? Maybe for a few who’re already right on the line, but for millions? Are things in the UK that bad? It does make one wince when looked at over the whole year: £220. Another thing to remember is the regressive nature of energy costs, the utterly destitute get some financial breaks, but the majority on low incomes do not. If we earned half our salaries we’d pay the same gas bill, as we would if we earned twice.

To put the rise in some sort of context: £18 is equivalent to about 6 pints of beer, or a generous Indian take-away for two, or 3 20-packs of cigarettes (I had to look that one up of course!) Even if you double that to £36 it seems, while significant, unlikely to be a cause of misery for millions of BG customers.

All the same, maybe I should look into switching gas suppliers. Misery it may not be, but a £ is a £.

(All gas and electricity suppliers are upping their prices at the moment of course. Wholesale gas/oil/coal prices are way up, so no surprise. BG does tend to just rely on the entrenched customer-base though, thus they’re usually one of the worst on prices. The joys of business as a former government monopoly!)

Yvanny Fried Bunny

Note: This entry has been restored from old archives.

It’s been far too long since I made the time to write up a cooking entry. Today I was given the perfect excuse…

As I was walking out of the butcher, having just picked up some beef skirt, I off-handedly asked how the rabbit supply was going. “We got some in this morning, he had to clear a field.” The butcher, Allinghams in Hitchin, gets his rabbit from a guy who only snares and ferrets (no shot to worry about) but it is pretty early in the season for rabbit, so I wasn’t expecting anything. Now here was a conundrum, I have meat already but there’s supremely fresh rabbit on offer too. I gave in, and grabbed myself two bunnies. A little pricier than I’m used to, at £4 each, but they were excellent specimens and the butcher had already jointed them so less work for me.

I had no idea what I was going to do with my bunnies, no plan. Given they’re so fresh I absolutely had to serve one up for dinner tonight, and not as a slow cooked dish either. However, I’m really not certain about “fast cooking” rabbit so I did a little research. I came across a few shallow-fry recipes, preceded by various simmering times (from 5 minutes in Clarissa’s excellent The Game Cookbook through to an insane 90 minutes from some online log of a Jamie Oliver TV show.) With this vague sort of inspiration I went on my merry way.

The three recipe parts below can be executed in parallel, which is what I did. The separation is unnatural really, but hopefully clearer. This recipe provides two rather large serves and would feed three reasonably (you’re going to fight over who doesn’t get a rear leg though!)

Most of the ingredients
Most of the ingredients

Crumbs

  • 2 crusty white bread rolls
  • 1 sprig rosemary
  • 1 sprig sage
  • 2 sprigs lemon thyme
  • 1 tsp sea salt
  • 3 tsp ground pepper

I wanted breadcrumbs to get a nice crispy finish on the bits of bunny, but buying breadcrumbs is both silly and a rip-off. Alas, we rarely eat bread so didn’t have any around. However, rather that buying crappy crumbs for £1 I bought two crusty white Waitrose rolls for 32p each. (Ingredients complete with “flour conditioning agent”, WTF?)

When I got home I cut the rolls in half and placed them cut-side-up on racks in the oven. The oven I turned to 125C and, once the temperature was up there, I let the rolls crisp up for about 20 minutes (they should dry out, but don’t let them brown.) Then I turned off the oven but left the buns in there for a further half hour.

Crumbs!
Crumbs!

I tore up the crispy rolls and threw them in the food processor, and blasted them until quite fine (see photo.) The herbs were finely chopped before being put in with the crumbs along with the salt and pepper, this lot was then given 30 seconds on full-spin to mix it all up.

The crumbs were transferred to a bowl and put in a 125C oven for 30 minutes. I gave the crumbs a bit of a toss twice, at 10 minute intervals.

Simmer & Sauce

  • 1 jointed rabbit
  • 2 cups good chicken stock (even better: rabbit stock)
  • 1 cup good, rich, red wine
  • 1 cup water
  • 8 pepper corns
  • 2 dried bay leaves
  • 2 tbsp double cream
  • 1 tbsp tomato paste

Carefully check over the rabbit and make sure any spurious hair is removed. This can be a fiddly job, but is worth doing. Discard any flappy offcuts and bony parts, such as the belly flaps and the front of the ribcage (see photo of discarded bunny bits.) These offcuts can go into the freezer for stock making. (You could potentially use them, including the forelegs, to make the stock for the sauce in advance.)

It is very important that you use good stock and good wine here, the flavour of the final sauce will really depend on these two ingredients. If you’re using bought stock then buy a liquid one, preferably one from the refrigerator. Also, beware of salty stocks. If the stock is too salty try reducing to a third or quarter rather than fifth, otherwise the sauce will be awful. Taste the sauce occasionally while it is reducing to guard against this.

Simmered bunny bits
Simmered bunny bits

Dump everything except 2 tbsp of the cream and the rabbit into a 24cm (small) stockpot, mix well and bring to a boil. Put in the larger parts of the rabbit (rear legs and pieces of saddle) and reduce heat so that liquid is barely simmering. After 7 minutes add the forelegs, simmer for a further 6 minutes, then remove from the heat. (The forelegs are small and need less cooking, you could actually leave them out and put them aside with the other parts for making stock. They’re fun to eat though.)

Fish out the poached rabbit pieces and place in a colander to drain and cool, set aside. (Note: 15 minutes seems fine, the rabbit was cooked through but still very juicy and tender. A digital thermometer indicated an internal temperature of around 75C.)

Put the simmering juice back onto the stove on a high heat and reduce until a fifth of the original volume (200ml.) Strain through a sieve into a jug, stir in 2 tbsp of double cream and set aside.

Warm buttery lentil salad

Lentil salad (and oil)
Lentil salad (and oil)
  • Lentil salad (and oil)
  • 100g puy lentils
  • 40g unsalted butter
  • 2 small beetroot
  • 1 medium carrot
  • 1 small leek

Pre-soak the lentils for 2 hours, discard the water, and rinse briefly.

Bring a litre of water to the boil and add a large pinch of salt before adding the lentils. Tune the heat until the lentils are simmering, and simmer for 15 minutes.

Drain in a sieve and rinse with cold water.

Chopped leek
Chopped leek

Tail the leek and cut lengthways in quarters from where it turns green down to the base. Now working up from the base slice the leek at about 2mm intervals. Put the green part aside to use some other day (hopefully tomorrow!)

Add 20g of butter to a medium frying pan and melt before adding the chopped leek. Fry the leek until lightly browned before adding the lentils and stirring through until well coated with glistening butteriness. Turn off the heat.

Peel and grate the carrot and beetroots and put on the lentils along with the remaining butter. This can now be set aside until later.

Fry, fry, fry!

  • Plenty of sunflower oil (or similar)
  • A large egg, beaten
  • Some plain white flour with a little salt and pepper
  • Breadcrumbs from above
Bunny crumbing assembly line
Bunny crumbing assembly line

The above recipe parts can be completed in advance, you could even put the components into the fridge for a day I guess. However I’d worry that the rabbit would end up cold in the middle and be unpleasant, you could warm it a little (microwave? ick) if it is out of the fridge I guess. In my case, I finished the above steps about an hour in advance and just left the components on the bench or stove, covered over.

To prepare, put a couple of serving bowls or plates into a warm oven (bring the oven to 100C then turn it off.)

Yvan whisking
Yvan whisking

Put about a 4cm depth of oil into a small saucepan, at least big enough to hold two bits of rabbit at a time. The depth of the oil should be just enough to cover the thickest bit of bunny. Get this over the heat and bring to around 180C (a crumb dropped in should sizzle and slowly brown, a good digital kitchen thermometer is worth investing in.)

Meanwhile, the sauce can go into a small pan on the stove to be gently warmed. This may need an occasional whisking to work in any skin than forms.

Thoroughly coat the pieces of rabbit with plain flour, seasoned with a little salt and pepper. The entire surface should have a dusting of flour, then all excess flour should be thoroughly tapped off. Now coat, thoroughly again, with the egg. Immediately coat your eggy rabbit piece with crumbs, pressing firmly to get good coverage before tapping off loose crumbs. Place (very carefully) into the hot oil. I do this with my fingers, as tongs or chopsticks would dislodge crumbs – really be very careful though.

I fried two bits of rabbit at a time, letting them sizzle away for 90 seconds before turning over with a pair of tongs (the coating is nice and firm now so the tongs do no damage) and giving them another 90 seconds. The crumbs should be a rich golden-brown all over (see photo below.).

Place the fried bunny parts onto some paper towels before dealing with the next pair. You can put the fried bits into the warm oven so they don’t loose too much heat.

When all the bunny parts are fried get the heat going under the lentils and warm through. The lentil mixture should be evenly heated and just barely steaming.

Divide the warmed lentil mix between the warm bowls and place the bunny bits on top. Serve with the sauce alongside, a nice chunk of sourdough bread, and a glass of the wine used to make the sauce.

There you have it, I call it YFB. The colonel and his horrible chicken can just bugger right off.

Yvanny Fried Bunny
Yvanny Fried Bunny

This recipe worked brilliantly, especially for a first-timer. It’s all down to the rabbit though, young and fresh – certainly never frozen! These were killed last night, and on the table this evening. Rabbit is often somewhat dry, but in this case the flesh was wonderfully juicy and succulent, just like a deep-fried chicken thigh but much tastier.

If I were to change anything it’d be the amount of lentil mix, overall this meal was a little too filling. YFB would work well served with just some bread and a green salad.

Photos

I’ve been telling family we’d put up photos of our place for 2 months now and still haven’t! Well, here’s a start. Four different angles on the kitchen:

Rhythms of the World

Note: This entry has been restored from old archives.

Rhythmical Vibes

The Rhythms of the World is an annual music festival held in Hitchin, our new home town. Traditionally it has been free-for-all and held in the streets of the town centre. This year is was a walled-off experience held at a venue on the edge of the town centre and with a £5 entrance fee.

In a nutshell Rhythms is a huge selection of varied live music (and other performance art) across 6 stages and 11 hours for only £5. That’s our second 5 pound bargain in two weeks!

Beyond the music there was some delicious and inexpensive food around (but also a lot of crap, no surprise.) For the alcoholically inclined there were many bar stalls, but we didn’t bother with them. We did have a few halves of excellent Somerset scrumpy however, available for a reasonable £3 a pint. My favourite food for the day was provided by Spinach & Agushi, a Ghanaian food stall (apparently features on some BBC show.) They were so good I went back for more! A local lot providing some cajun food was also a good treat, how on Earth could I resist Goat Curry! I spoke with the guy here, who runs the Caribbean stall in Hitchin market, and he said the numbers weren’t working out too well for him. “Lucky to break even.” A phrase I’ve heard a few times now.

That aside, the music is the reason for the whole shebang. Man was it good to listen to live music again, it has been far too long. Mostly I collected my musical joy from ska/reggae groups. My list of highlights includes:

  • Kid iD … skankin’ ska (listen to Hassle in the Hessles and Up and Down)
  • No.1 Station … reggae getting back to ska (listen to Airstrip One, Bush War and maybe Friday Night)
  • En Fuego (on fire) … man, those horns!
  • Some old long haired dude who sang about being a rabbit, an LSD victim maybe. Alas, I know not who he was. “Being a rabbit!”

[[Update: It was “The Otters!” He’s strutting his crazy stuff down the road in a couple of weeks, ho ho! “Don’t call me bunny face.” “Being a rabbit, it’s getting to be a habit!” The crazy dude’s song is actually on the site.]]

I must observe that none of the above sound as good recorded as they did live. Kid iD suffers the most, the energy just isn’t there. 🙁 As an aside, lately I’m finding that the normalisation that myspace provides to the music comminity’s collective online presence is really very effective and efficient.

The venue, “The Priory“, seemed to work out rather well for the event. There was plenty of room around, with transit between the stages being clear (maybe a bad thing for the event financially?) We attended on the Saturday, complete with the rain, which seems to be entrenched for the summer here. There were some rather muddy areas around the grounds, but the grass did hold up rather well. If Sunday has been wet too it would have been an utter quagmire, as it turned out the lucky bastards who chose to go on Sunday got nothing but sun. Bah, no Glastonbury-style love for them.

Political Vibes

All on not well in our local World of the Rhythms.

Several locals we know boycotted the event, feeling that their traditional local festival had been turned into a money making scheme. It did feel a bit like this, fed the viewpoints of those who’ve lived with Rhythms over the years. This year you pay to get in and you also pay twice as much (only £2) to get a programme. The clincher is that once you’re in you can’t get out, unless you want to pay the entry fee over again (assuming their headcount quota isn’t exhausted for the day.) You could only take in one bottle of wine per head, or four cans of beer (remember, you’re likely to spend hours at the event.) So it is easy to feel like they’re trying to wring all the money they can from you. This was certainly a strong local current of thought.

Obviously, Kat and I decided to go regardless. And, fact is, it was great fun. We can’t compare and contrast to previous years, so can only weigh it up for how it was in its new incarnation. And that’s what I’ve done above. I can’t say I felt my pocket being rung dry, except by the exorbitant £2.50 charge for using the only on-site cash machine (my fault for forgetting to get a wad of cash before entering.) We heard that the beer was expensive, but didn’t drink beer ourselves.

That aside, there’s a definite impression that the new format “hurt” businesses in the town. Several had prepped up for whatever the traditional high-density of people was, and business didn’t go so well. I heard that it was a good weekend for some of the town-centre pubs, but nowhere near as good as previous years. (A couple of the pubs had licensed stands at the event so probably did well out of the weekend, but this was just a select few. We heard from one local pub owner that the “open” tender process for licenses was not well advertised.)

There is also a strong anti-festival element in the town. According to some people at the festival the council tried to shut it down, and all of the restrictions and issues this year were a result of that. They had to have it in an enclosed area, step up security, and follow strict licensing rules (thus the no-readmission policy, this, we are told, was council/police-imposed.) We overheard a group of locals in the Sunrunner lamenting the fact that they hadn’t managed to shut it down this year, that the town was full of “undesirables,” and crime for the weekend rife.

I have to say, the town didn’t seem full of undesirables and criminals to us. Sure, I expect there were more than usual of of both, whatever an “undesirable” is. You get that though, and live with it, it’s better to have a bit of interest than live in a sealed box. Surely? I hope the haters are in a minority, though it would certainly be one of those “loud minorities.” Frankly, the situation with large groups of late-night drunken mid-teens seemed little worse than most weekends. The existing local problems would appear to be worse than any briefly imported ones.

I have heard it said that “Rhythms of the World was the world’s biggest free world music festival… now it isn’t.”

Open Tech 2008

Note: This entry has been restored from old archives.

A couple of weekends back Kat and I went to the Open Tech 2008 one day conference in London. I had planned to write about some things I came across there in some depth, alas time is against me. It would be criminal for me to let it go completely unmentioned though.

There’s something amazing about OpenTech: it costs just £5 to attend. For the breadth of coverage, interesting speakers, things learned, and inspiration gained over the day this is an extreme bargain.

Giving myself a few minutes to note down a few points still in the top of my head 10 days later:

  • There was an overwhelming theme of “public good” running through the conference. From the projects devoted to this, such as mysociety.org, through to entrepreneurs and icons pushing to inspire everyone to follow their various leads. This is a great change from the usual case of “this tech is cool because, well, it is” – I loved to hear that tech was cool for the ways is was actually helping everyday people.
  • Further contrast between the geeks and the suits (generalisations, I know.) A few weeks back I went to a serious business-tech conference hosted by the 451 group, this was also good stuff but coming at security from a completely different angle (security was just one of several topics covered.) The contrast is all the more interesting because there’s a convergence. At the business conference we hear “security is difficult, we have to try harder, alas, some things may be impossible” at OpenTech we hear “security is impossible, but we can try harder and do better.” There’s far too much depth to this for me to go into right now, not that my own thoughts are in any good order. Suffice to say, studying the application of security from social and economic standpoints would be very interesting right now. There’s a lot of material out there, and people(/businesses) are speaking more openly about security issues these days I think.
  • More on/around security. People get very confused about identity versus reputation, especially when technical definitions of authentication are worked into the mix. People, even a room full of geeks, know very little about the history of currency, and banking in general (a cultural weakness in the geek horde?) Cryptographers are regarded as some sort of higher being… maybe they are! (Aside: I’ve just read Simon Singh’s Fermat’s Last Theorem – it lives up to its reputation, and man those number theorists are an insane bunch!)
  • Ubiquitous networking has changed the world, maybe those of us who’ve lived through the changes sometimes don’t appreciate how revolutionary the changes are (I have trouble seeing it sometimes, much older geeks seems to see it more clearly.) What’s scary, is that the field is still young and haphazard, what further refinement will bring is difficult to imagine.
  • The above is amazing, now how to we deliver this to the rest of the world. Can it actually help solve the terrible problems most of the world has? I’d like to think so.

Of the sessions I attended these are memorable:

  • Most entertaining: The Web is Agreement, Paul Downy. A talk/rant around current trends centred on Paul’s sketch of the same title. (The talk “Living on The Edge” from Danny O’Brien was also entertaining, and the only time I’ve seen a geek talk “flood” with what can only be called “groupies”, it was strange.)
  • Most inspiring: Digital Money, David Birch. This guy’s online presence seems to be a blog about digital money. In essence this was a short, angry rant about the fact that us geeks have not solved the problem of “digital money.” At the core of the rant was the idea that functional digital cash will make the world a better place, breaking down unnecessary barriers in the world of money (think of sending aid/donations right to where they’re needed, family members sending money home without the “Western Union” tax, etc.)
  • Most relevant (to me): Security Discussion with Ben Laurie and Friends. Four security/crypto geeks/experts talking about how much things are broken. Entertaining, enlightening, and (to some) challenging.
  • Most disappointing: Android and the Open Handset Alliance. It just wasn’t techie enough, more a marketing spiel from a “developer advocate.” I wa hoping for a crash “how stuff works” intro to Android.

On reflection… of the talks I saw there were a lot of “grumpy old(er) men.”

P-p-p-powerless Again!

Note: This entry has been restored from old archives.

So, I packed up in the café and headed home earlier, not long after writing about my lack of electrons. As luck would have it the power had been on for 30 minutes when I got here. Excellent. So I start setting up, re-instating all my SSH connections, desktops, et al. I get to it and 30 minutes later flicker pshewwwww

Nearly 3 hours without power! FFS!

Well, I got some cleaning and filing done at least.

It is still raining, hasn’t stopped for a moment all day.

Powerless 2 (or 3)

Note: This entry has been restored from old archives.

There seems to be issues with the stability of the electron supply in our new street. I wrote a little while ago about an episode of daytime power absence. Yesterday morning there was another one. Then last night, at midnight, the electrons stopped again, and they were still making themselves scarce at 07:00. Annoyingly, this seems to be a problem with our particular street. The flow of power looks like it is working fine on nearby streets.

To escalate the joy, today it is grey and rainy. Like most of yesterday, the day before that, … Summer? Bah.

To make my morning worse I just observed a new coffee making abomination. I’m guessing it is part of the official Nero “way it is done.” In the morning new coffee is ground, good so far. But it is ground on top of old ground coffee from yesterday. Then the girl clicked out a bunch of the old coffee grounds into a cup. Good! Uh, wait… Oh no! It gets tipped into the top of the ground coffee holder! So, in a rough kind of way, the first several heads of “fresh ground” coffee for the day contain some of yesterday’s not-so-fresh coffee. The horror.

I should get myself a Rancilio Silvia ndash; but the fact is that these days I mostly go out for coffee just to get out of the house.

xfig still state of the art?

Note: This entry has been restored from old archives.

From time to time I have to draw a diagram. This excites me, I enjoy diagrams. Back in university the way to draw a diagram for a report was either xfig or to marking it up directly in latex. But they’re oldskool there are groovy new ways to draw diagrams these days. The state of the GUI diagramming art seems to be either inkscape or dia.

Really? Well… I don’t think so. While both are good in an attractive sort of way, they also both suck. On my Ubuntu “hardy” machine I get SEGVs out of inkscape every few minutes, not sure why and have no time to investigate. As for dia, it is just plain lacking. In inkscape I can group objects and resize the group, in dia a group of objects (even just rectangles) isn’t scalable! (Even xfig can do that.) So I have one option that breaks and is unusable, and another that lacks essential features and is unusable! All I want to do is draw some boxes with words in them, and maybe make them look pretty.

So, I’m using xfig now. Clearly, it is the state of the art in Linux diagramming. (And I’m oh so tempted to boot over to Windows and use Visio sometimes.)

What else is there? If I want to draw some class diagrams, boxes and lines, maybe even UML shudder, what do I use? A few apt-cache searches bring up some candidates, but I just don’t have time to play with them. I’ve got a bloody diagram to draw! Go go xfig!

Inkscape is extremely promising, I’ll maybe try it again in another year.

std::endl

Note: This entry has been restored from old archives.

All these years I’ve been making regular use of good old std::endl without realising that it is a templated function! We live in a crazy world. Somewhere in the back of my head I guess I’d just assumed it was simply platform-dependant constant… not quite.

I came across this merry discovery when implementing a logger, since re-inventing the wheel is always so much fun. It isn’t as bad as it seems, the “logger” is basically just a matter of encapsulating the relevant utility code, weighing in at less than 500 lines of which more than half are API comments.

Anyway, I’d like my logger to act like a std::ostream, although I don’t want it to be a std::ostream really (preferring to avoid inheriting from such beasts without a really good reason.) The functionality is simple, it wraps a set of std::ostreams to send the output to. The important part is that it implements log levels and and log message classes (which you can register and name if you wish.) At any one time there is a log threshold and a set of active classes. To keep things really simple it has a single output method that takes only a std::string ref.

Now I want to use it with good old << since that is comfortable and not unexpected so I implement:

template <typename T>
Log& operator<<(Log & log, T const & t) {
    std::ostringstream oss;
    oss << t;
    log.output(oss.str());
    return log;
}

This seems to work swimmingly until I try the likes of log << std::endl, then it fails to compile. Eh, what on earth is std::endl that the template won’t catch it? A peak into the ostream C++ header tells us it is a function pointer:

  template<typename _CharT, typename _Traits>
    inline basic_ostream<_CharT, _Traits>&.
    endl(basic_ostream<_CharT, _Traits>& __os)
    { return flush(__os.put(__os.widen('n'))); }

Egads! So I implement this (bear with me):

Log& Ephedrine::operator<<(Log & log, std::ostream& (*fn)(std::ostream&)) {
    std::ostringstream oss;
    fn(oss);
    log.output(oss.str());
    return log;
}

And now I can do this:

g_log << Log::NORMAL << "Normal log output.  A number is " << 2.123 << std::endl;
g_log << Log::VERBOSE << "Verbose log output." << std::endl;

Joy.

But there’s more than one worm in this can. Note that in the definition above it calls flush on the ostream. In the doxygen comments it notes “This manipulator is often mistakenly used when a simple newline is desired, leading to poor buffering performance.” On checking the standard there it is too, this is std::endl by definition. I’ve never used ostreams, thus never std::endl, in performance critical code but I’ll have to keep this in mind if I ever do! In all of the C++ books I’ve read, a fairly large number, I don’t recall ever seeing this noted anywhere.

This brings into mind a question of design. I’ve avoided being an std::ostream yet gone and used std::endl, and std::endl is supposed to flush the stream (by definition, it’s in the standard, see section 27.6.2.7.) My current implementation doesn’t flush the streams, so what should I do?

  • A) Not care.
  • B) Reimplement as Log::endl (which will ultimately call std::endl and thus end up flushing the streams!)
  • C) Create a special case specifically for std::endl.

I don’t like the first option, not my way of doing things by preference (alas, it has been known to happen.) The second option is easy to implement but will feel unnatural to the user (a moot point, I’m the sole user!) The third option smells “wrong,” but I already decided to do it didn’t I, and I went one step worse and broke the guarantee for std::endl (albeit probably mostly unknown.)

Is C really enough though? No, it turns out. Aside from breaking the flush guarantee it also doesn’t go quite far enough. Think about std::hex and similar modifiers. By converting them to a string (an empty string) before writing to the underlying std::ostreams their meaning is lost. My original implementation above is, in essence, an abomination.

In the end I settled on E: templates. What I should have done in the first place, but avoided since I was hung up on pimpl at the time (templates and pimpl don’t mix well.)

template <typename T>
void Log::output(T const & t) {
    ... /prep/
        BOOST_FOREACH(std::ostream & os, m_osList) {
            os << t;
        }
    ...
}