All posts by Yvan

LinkSys WAG54GS Is Crap

Note: This entry has been restored from old archives.

[Update 2007-03-19: LinkSys have finally released an official firmware update for the WAG54GS! It is available from the LinkSys site. The lying buggers have it dated “12/05/2005”. I have not had the opportunity to install the firmware and see if it makes the WAG54GS less crap!]

I’ve traditionally been a fan of LinkSys routers, especially those distinctive blue ones with devil-horn wireless antennae. But I must say, the WAG54GS Wireless-G ADSL Gateway has proven to be a little turd of a device.

I bought it when I got to the UK, it has the latest official firmware, it regularly (several times a day) stops routing packets. It really is quite remarkable that such a total piece of shite could have made it through QA. It just stops, the lights stop flashing (but all stay on), the web interface doesn’t respond, it usually wont even respond to pings when this happens (although sometimes it does).

I’ve read vague reports from others on the ‘net regarding similar behaviour so this doesn’t seem to be an isolated occurrence. There is talk of a “better firmware” that can be built from source; the little fecal box runs Linux apparently (just confirmed that, there are instructions for getting a shell prompt on the box out there). But roll-your-own firmware is just too much piss-farting around for a device that should “just work”, if I wanted that I’d have bought a dumb ADSL modem and a mini-itx machine for Linux! Some forums indicate that an unreleased firmware version (1.00.08) is available for download, maybe I’ll give that a go (but a post on that same forum says that 1.00.08 was a problem and 1.00.06 worked better). What I wonder is: if this “better” firmware has been around for so long why is the severely broken 1.00.06 version still the latest official one! Surely any bugfix is worth releasing properly; I suspect the unreleased version is unreleased for a reason.

The OpenLinksys site seems promising – but the lack of English is a bit of a barrier for me.

All in all my conclusion is that the WAG54GS is excremental in nature and it appears that LinkSys are in no hurry to do anything about it.

My recommendation: Don’t buy it! If it is from LinkSys and isn’t a little blue devil-horn box it isn’t worth the risk.

Note: To get a shell on the thing:

  • Hit http://192.168.1.1/setup.cgi?todo=debug
  • And telnet 192.168.1.1

Where ‘192.168.1.1’ is the IP address of your WAG54GS. Everyone seems to think the ‘adslctl info –stats‘ command is exciting. I’ll leave that one to the ADSL geeks – I’d just like the bloody thing to do its job!

Oh, it also has really shitty wireless range – another area where it is significantly defective when compared to the devil-horn versions.

Finally, some interesting stats from the device (with 1.00.06 firmware):

Linux Kernel: 2.6.8.1
"OS": BusyBox
Flash Size: 4096k
CPU: Broadcom BCM6348 V0.7 (bogomips: 253.44)
Memory: 13652 kB
Filesystem: cramfs
Interfaces: eth0, lo, ppp0, wl0, br0 (bridging eth0 and wl0)
Interesting Processes: 
 mini_httpd - The link is "I'm feeling lucky"
 udhcpd
 ntp
 crond
 scfgmgr
 atm_monitor
 cmd_agent_ap
 pb_ap
 wizd
 ses_update
 Pppd
 upnpd
 reaim
 utelnetd (presumably not normal)
iptables highlights (the full set is *large*):
--------------------------------------------
Chain INPUT (policy DROP)
target     prot opt source   destination
DROP       tcp  --  anywhere anywhere state NEW tcp flags:!SYN,RST,ACK/SYN
ACCEPT     all  --  anywhere anywhere state RELATED,ESTABLISHED
REAIM_IN   all  --  anywhere anywhere
INPUT_UDP  udp  --  anywhere anywhere
INPUT_TCP  tcp  --  anywhere anywhere
DOS        icmp --  anywhere anywhere icmp echo-request
ACCEPT     all  --  anywhere anywhere state NEW
--------------------------------------------
Chain DOS (6 references)
target  prot opt source   destination
RETURN  tcp  --  anywhere anywhere limit: avg 60/sec burst 120 tcp flags:SYN,RST,ACK/SYN
RETURN  udp  --  anywhere anywhere limit: avg 60/sec burst 120
RETURN  icmp --  anywhere anywhere icmp echo-request limit: avg 60/sec burst 120
LOG     all  --  anywhere anywhere limit: avg 10/sec burst 5 LOG level warning prefix `[Firewal l Log-DOS] '
DROP    all  --  anywhere anywhere
--------------------------------------------
Chain SCAN (2 references)
target prot opt source   destination
LOG    all  --  anywhere anywhere limit: avg 10/sec burst 5 LOG level warning prefix `[Firewal l Log-PORT SCAN]'
DROP   all  --  anywhere anywhere
--------------------------------------------
Chain DNS (1 references) (in nat)
target prot opt source   destination
DNAT   all  --  anywhere 192.168.1.1 random 50% to:213.208.106.213
DNAT   all  --  anywhere 192.168.1.1 to:213.208.106.212
--------------------------------------------

What a strange way to deal with DNS, it hands out its own IP address via DHCP but why not just hand out the external DNS IPs?

DNS Blacklists Suck

Note: This entry has been restored from old archives.

In a passive effort to “fight spam” I made some changes to my filtering. First I configured postfix to use a few reputable blacklists, four in total; second I started using several of the RulesDuJour SA rules.

This has worked fairly well, I’m not getting much spam hitting my main mailboxes now. But I’m now down to two blacklists, why? Because dnsbl.sorbs.net and bl.spamcop.net have had to be removed because they block important legitimate email. Mail from some family members who use Hotmail has been blocked by SORBS and mail from some online services that use Yahoo servers have been blocked. Causing Yahoo and Hotmail servers to be blocked is not good; I understand the argument that “if they allow spam to be sent they should be blocked” but I cannot agree with it in practice. It is just too inconvenient – and if you make things inconvenient people wont use them. While you may hope that it makes using Hotmail a pain in the arse and thus not used the truth is it’ll make use of your blacklist the PITA and it’ll be dropped well before people stop using one of the world’s most popular email services. (Just try explaining to a tech-illiterate Hotmail user that they should stop using Hotmail because your mail server blocks their email; watch their eyes glaze over when you attempt to argue that they’re supporting spam by using Hotmail and should stop. I can’t believe I used to actually think like that, Hotmail works for them and it works for their family and for all their friends and as far as they’re concerned you can just get back into your little geek hole and die.)

I can see the value in commercially maintained blacklists in this arena, a company that need to sell a blacklist is going to make sure that there is a balance between the effectiveness of their lists and the potential inconvenience caused. Ordered, well thought out and, ultimately, profit-margin driven goals can sometimes beat fanaticism. Unfortunately I can’t use their blacklists for free on my little server and life is expansive enough without paying for a list of numbers. It’d be nice for a company to make lists free for small users for “the good of the Internet”; but the big profits lie in the millions of small users who’ll pay a little and not the thousands of big users who’ll pay a lot.

What makes it sadder is that of the 143 emails blocked in the last 40 hours only one has been from a Yahoo server and it was legitimate. I’m forced to lose all the good entries in the SpamCop blacklist because of a minority of bad ones that make their services unusable.

No complaints about RulesDuJour by they way, I’m happy with that so far (almost all the spam that gets through the blacklists is caught and no false-positives so far, and the difference with a SpamAssassin rule as opposed to an MTA blacklist is that even if you do have an FP you still have the email in quarantine!). I’m still using SORBS and SpamCop but they’re in SpamAssassin now, they’ve lost their ‘very good spam indicator’ privileges.

The two remaining blacklists are DSBL and SpamHaus… we’ll see how long they last.

Team[less] Work

Note: This entry has been restored from old archives.

There is no i in team, but there is an i in exterminate… exterminate, Exterminate, EX-TER-MIN-ATE!

Sorry, a spot of randomness there; I don’t think the James simulation unit is quite up to scratch. One of the hardest things about being exiled to the UK is suddenly being very isolated. The last big move was to Sydney, but that was into Uni which is an entirely different situation. Over here it just Kathlene and myself – and almost everyone else has comes under the loving wing of the term “business relationship”. We have one friend here outside of work links, and that is a blessing; fact is that meeting people who don’t annoy me is very hard.

All in all it’s not too bad, I am a fairly reclusive person by nature although I do enjoy occasional “events” and I really miss having friends over for a good feeding.

You should never underestimate the important of working with friends; which is what I have done ever since first year Uni up until this whole UK lark. I get along well with many of the people I work with at the moment; but it is different. One can work with excellent people, people with whom you get along very well and maybe even have an occasional drink – but it is a whole different world to working with people you’d call “friends” before calling “colleagues”.

Above all, the hardest thing is not working with a team. Working on projects as a sole developer is difficult because there is nobody else following the thread and thus nobody to discuss developments with and no peer driven motivation and interest. It really is terribly difficult! I report to a VP in another country and most of my internal company interaction is with a “sales guy”! I’m just thankful that both have an engineering background; the guy I report to still writes code for internal projects. Don’t get me wrong, I’m not saying that management/sales is bad – just that as a developer I find having non-developers as primary contacts strange and not having other developers to work with is rather isolated. Piled on top of that is the general sense of externality when dealing with core development teams, the feeling that you’re now an outsider in the eyes of (what was formerly) your own group.

In many ways some level of logical separation is necessary, for example from a legal standpoint there sometimes have to be boundaries – such as “Chinese Wall” situations. I really believe that this must be kept to a minimum, after all (in this instance) some of us who’ve been exported have been involved since the early days before the first customer, before we went up in the world (literally;), before sliced bread back when the world was still flat and beaver was the other white meat. They really didn’t perform secret lobotomies on us, I swear.

Hmmm. It might sound like it but I am not saying that things are bad, there is room for improvement and no doubt this comes with time and practise, in fact things are generally good. With a peppering of the occasional hiccups that make life interesting. Working solo is something I’ve done a lot of and can do well; it may not be my favourite situation and it has its uninspiring moments but it is hardly hell-on-Earth.

There is no i in electroencephalographs, but there is an i in counterrevolutionaries!

Spinach Pasta

Note: This entry has been restored from old archives.

Making pasta is easy and fun; fresh pasta leaves packages stuff for dead. I bought a large bag of spinach last weekend and simply couldn’t use it all, so today (2006-08-20) I salvaged what leaves I could and set out to make some spinach pasta!

Spinach Pasta: Ingredients
Ingredients

Ingredients:

  • Pile of Spinach (about 2-3rds cup after cooking)
  • Strong Plain Flour (around 1.8 cups I guess)
  • 1 large egg
  • 1 tsp of salt
  • 1 tbsp extra virgin olive oil
  1. Boil plenty of water and salt it a little; throw in the spinach for only a few seconds, leave it in too long and all the flavour will end up in the water! When the spinach looks nicely softened scoop out and squeeze out as much water as you can (I use a wooden spoon and a sieve for this). Place the spinach into a food processor (keep the boiling water for boiling pasta later if that is your plan).
  2. Put the flour, salt and olive oil into the food processor and process until spinach is completely blended with the flour (see photo on right).
    Spinach Pasta: In the food processor
    In the food processor
  3. Drop the egg into the food processor (preferably minus the shell) while on a slow speed – the mixture should fairly quickly start to ball up (if not you may need to add a little more egg from another egg, or water – if too sticky adjust with some more flour).
  4. Relocate from food processor onto a floured surface and kneed until dough is evenly blended and nicely elastic.
  5. Break dough ball into manageable portions and roll very thin on a floured surface.
  6. With a sharp knife cut into fettucini.
  7. Put aside for later cooking, if not cooking today you can hang it to dry a little and use it in the near future (you could probably refrigerate or freeze it without drying, but I”m not familiar with doing this).
    Spinach Pasta: Dryish
    Spinach Pasta: Dryish

When you want to cook it just treat as you would any other pasta, put into plenty of salted boiling water and drain when it is done!

Spinach Pasta: Ready to eat!
Ready to eat!

I threw together a very simple sauce to go with this, just a tin of tomatoes, onion, garlic, green olives, capers and anchovies – done in less than 10 minutes.

Benchgraffiti

Note: This entry has been restored from old archives.

Oh how I hate benchmarking! You run a few benchmarks, get some results, and then people start thinking you’re making conclusions! No! They’re just a bunch of numbers in a spreadsheet! I think I’m going to have to write some sort of Excel/VBScript type macro-thingo that displays an EULA to the reader and makes them confirm that they’ll treat all benchmarking figures as the product of a collection of vague assumptions with appropriate error values. Wouldn’t help of course. Anyway, benchmarking is over – long live porting Python self-compiling binary parser modules to Win32.

I have a picture stuck to my computer of a war-axe smashing through a wooden bench – I hope this doesn’t intimidate anyone (well any more so that already achieved by growling at my computer like an enraged bear).

Normally when consuming my lunch I read blogs and news, but it seems to be a bad week for both. Blog people (friends, not randoms) aren’t writing much and the news is getting ever more tiresome – people tried to kill us, yay – we killed people in the middle east, yay – some more western soldiers have died in the middle east, yay – Israel killed people, yay – people killed Israelis, yay – Muslims are killing Muslims, yay. Kill, kill, kill, KILL, KILL. And that is the news. Aside from that we have politicians being fuckwads, as usual (and mostly related to killing people anyway); the environment getting fucked over, as usual; and boring famous people doing boring things, as usual.

Look at the way things are, “we” means UK/USA/Western-Powers(laughingly inclusive of little old Australia). Muslim groups want to kill Israelis because Israelis are killing Muslims. Israelis want to kill Muslims because Muslims are killing Israelis. We want to kill Muslims because Muslims are killing us. Muslims want to kill us because we are killing Muslims. (I’ll leave out all the other groups in the world who are killing each other since the media doesn’t care about them. Africa? Who cares, don’t they just have, like, desert and lions and stuff.)

I don’t think I’m being over dramatic with “want to kill” – wherever things started out be it the rightful removal of an evil dictator, revenge for a terrible terrorist act, border protection, plain old religious or racial hatred, reclaiming stolen land or some conspiracy over control of the world’s oil supply in the end it is all about killing. You drop bombs on people if you want them dead. Sure, you can claim that you just want one of them dead and the deaths of 20 children are an unfortunate side-effect but ultimately your wanting of that one target dead resulted in you wanting the 20 children dead as part of the deal. If you actually didn’t want the children dead then you wouldn’t drop the bloody bomb.

Yes, there are counter-arguments. “We didn’t want them dead; it is unfortunate but they were in the way.” That simply doesn’t work for me. “It was a mistake, I swear!” Oh, that’s okay then – I feel sooo sorry for you, the burden on your soul must be so heavy. I wish there was a hell, because then I could say: Hah, you poor bastards are all going to hell, enjoy!

The supposedly terrorist groups are a step above all of this, at least those evil, fucked-up, shitheads are willing to say “we bomb you because we want you dead”. The rest of the world needs to come clean. Shout it out and be proud.

You are not us! You must die!

And when the last man is left standing he can look around himself; a peaceful scorched earth – free from all dissent and strife. He can sigh, smile and be happy for at last the story of death and hatred, the story of humanity, is over.

Yes, benchmarking puts me in a bad mood.

Sod off and die already.

Lime Poached Chicken

Note: This entry has been restored from old archives.

Here’s a little something I cooked up on Monday (2006-07-23) night for dinner. It’s poached chicken served with rice and steamed veggies, the procedure made a good dinner for two with a pair of breasts left over for making lunch the next day. The prevalent flavours here are lime and coriander, I came up with this when wondering what to do with the large bunch of coriander I was left with after thinning out the pots on the balcony.

For a bit of organisation I’ve split the recipe up into four parts, the poached breasts, sauce, mayonnaise and rice; each stage uses outputs from earlier stages.

Poached Breasts

  • 4 Medium Chicken Breasts
  • 2 Limes
  • 1 Brown Onion
  • 1 Carrot
  • 2 Cloves of Garlic
  • Knob Of Ginger (ping-pong ball volume)
  • Two Large Handfuls of Coriander (whole plant)
  • Heaped tsp of Green Peppercorns
  • 1 tsp of Chili Powder
  • 2 Bay Leaves
  • 1 tsp Ground Coriander Seed
  • A Few Grinds of Pepper
  • 1 Chicken Stock Cube
  1. Throw it all in a pot!
  2. More concise: Grate rind off both limes and juice, reserve 1 tbsp of juice and rind of one lemon for later, place the rest in a pot including the lime-halves (best size pot is one large enough for the four chicken breasts to sit comfortable side-by-side). Chop up the coriander and throw it in the pot, reserving about 3 tbsp of leaves for later. Roughly grate the ginger and place it and any other herbs and spices into the pot. Put the chicken into the pot and toss with all the flavourings. Roughly chop up the onion, carrot and garlic (crush it a bit) and throw it in the pot, skin and all!
  3. Fill the pot with water until it is about ½cm higher than the chicken. Bring to the boil and then turn to a low simmer. Simmer until the chicken is done, this typically means less than 15 minutes for medium sized chicken breasts. The typical test is to stab the breast in its fleshiest part, if the juices “run clear” then the chicken wont kill you. If the sizes of your breasts vary you may want to remove the more petite ones first. Some prefer to ensure that their chicken is dead, dead, dead; they simmer it for an hour – I don’t approve, this may be the way to go if you have tough old granny chicken breasts though.
  4. The poached breasts should be placed aside, snug in a smaller container with some of the poaching juice (about 150ml say). They’ll cool a little now, beware of this in warm weather though – you may want to place in a large freezer bag and put the lot into a bath of cold water.
  5. Remove the lime shells from the breast juice (squeezing out any liquid) and place back onto the stove and bring to a boil. Boil down to half volume then turn to a simmer and put the lid back on. Simmer until the carrot chunks are done like your granny does ’em – bleached of flavour and on the brink of mush.

Lime and Coriander Mayonnaise

  • 1 tbsp of Lime Juice (left over from above)
  • Grated Rind of 1 Lime (left over from above)
  • 2 tbsp of Chopped Coriander Leaves (left over from above)
  • 4 tbsp of Good Mayonnaise (make it yourself if you have the time!)
  1. Place half the lime rind and 1 tsp of the chopped coriander into a small
  2. container.
  3. Put the rest of the lime rind and coriander into a pestle and mortar with the lime juice and grind to a paste then place it also into the small container.
  4. Put the mayonnaise into the container and mix well.
Tip: If the rice sticks to the bottom of your rice cooker like it does in ours then I suggest following this procedure: mix the rice often with a flat edged wooden scraper (be nice to your carcinogenic non-stick surface), as soon as the rice starts to stick turn off the rice cooker and leave rice covered for 15 minutes, it’ll sit and absorb the remaining moisture without turning into a large baked rice cake.

Flavoured Rice

  • 1 Cup of Basmati Rice
  • 1 tbsp of chopped coriander (left over from above)
  1. Pour the liquid from the cooled chicken breasts into your rice cooker and make up the volume to that appropriate for the amount of rice you want to cook (typically 1.5 cups total liquid for 1 cup of basmati rice).
  2. Add the rice (washed if required) and turn on the cooker.

Simple!

The Sauce

  1. Take the reduced and simmered poaching liquid and push through a sieve into a bowl. Resulting liquid should be cloudy and slightly thickened. Place back into the pot, put on the stove and bring back to a simmer (at this point reduce further if you feel it is needed).
  2. Dissolve 1bsp of cornflour into water then stir into the simmering liquid.
  3. Continue to stir rapidly (with a whisk is best) until thickened.
  4. Season to taste and possibly passed through a strainer one final time (in case there are any lumps).

Beware of this sauce, I made the mistake of leaving the lime shells in for too long and it ended up quite bitter. I cut it by adding about half a cup of orange juice and a little honey – even then it was a bit too bitter to use in large amounts. Aside form the bitterness the flavour was excellent.

The Meal

  1. Dish out rice into two shallow bowls.
  2. Slice two chicken breasts into 1cm thick pieces and place onto a 1 tbsp dollop of the mayonnaise on the rice.
  3. Generously dollop with sauce (though I was more sparing with the sauce due to the bitterness mentioned above).
  4. Garnish with a crisscrossing of green mayo.
  5. I recommend serving with some steamed vegetables. I steamed the veges in a strainer in the top of the simmering poaching juice.

Battery Workers

Note: This entry has been restored from old archives.

Reading a story from BBC:

How much higher density? Maybe a third less space, but it also quotes an unnamed firm in the Thames Valley where 1,200 staff have about half the previous average floor space allowed per person.

Suddenly it seemed that using the metaphor of ‘battery hens’ was right on the dollar… I was churning that over trying to work out just how big someone’s office would have had to have been to now be fitting 1,200 people into just half of it? Did they take half the CEO’s office and put a call centre into it?

After re-reading a couple of times I worked out that they actually mean… heh, must be the heat.

Portobello Produce

Note: This entry has been restored from old archives.

Today we went for a trip into London. This involved about 40 minutes of train travelling, from here to Baker Street and then onto Paddington. Paddington is one of the stations close to the company office in Notting Hill (closest station is Notting Hill Gate, but that would involve another train change). In the end the primary purpose of the trip turned out to be a dud, as I couldn’t get into the office thanks to a new security system; score security: 1, Yvan: 0. The secondary purpose was somewhat more successful, Kathlene saw a GP (which wasn’t much more expensive than Sydney for just a prescription re-issue) and we discovered that “The Pill” costs less here than it does in Sydney (not much less mind you) – same brand.

Along the way we discovered two new quests for the day; the first was sushi. There is a sushi “train” in Paddington station, conveniently close to the GP office that Kat choose (coincidence? I think not). I wont say much about this one, the sushi was disappointing – it wasn’t even close to as good as the lowest class of sushi train in Sydney and it cost more then the best one. Poor Kathlene is now resigned to having to wait to gorge herself on sushi on a yearly sushi pilgrimage back to Sydney. Come February next year Sydney’s sushi industry better be prepared as they will face a ravenous beast with a Godzilla like, fury-driven appetite for their fishy delights.

The second quest, also of a culinary nature, was somewhat more successful. We wandered to the street where the riches of ages are stowed to hunt produce, less endowed in the “ages” one hopes. While there we visited the best coffee place in the known England: the Coffee Plant (the owner of this fine coffee establishment believes that the US government blew up the WTO buildings… and wrote a book about it).

Also, while in the area, we visited a nearby Oxfam bookshop and bought a few books:

All for the tidy sum of £9.97. I haven’t looked at the bonsai book yet and the Japanese cooking one is a bit on the simple side (we knew that before we bought it). The French cooking book is well written and contains some interesting recipes, I especially like the way that the recipes all seem to have a story to go with them.

With books in hand we then did a trawl of the produce stalls, there are around three decent length blocks worth of the things – vegetables galore. Sold by a variety of people with a variety of accents – I wonder if some of them have driven across from the continent for the could of days of trading. There is some absolutely excellent stuff available there for very reasonable prices.

Our bag for the day was: four large and excellent Haas avocados (£1), two large and firm aubergines (£1.20) and four sweet and aromatic red peppers (£1.20). All significantly better than the stuff we can get in the local supermarkets and at a combined cost that is lower than the avocados would have cost us anywhere else (for comparison we saw Haas avocados at Tesco today which were almost as good but sold for 80p each!). Ouch! The red peppers were really especially fine, I didn’t pick them out for their looks – I smelt them as I walked past. I’m so used to sniffing the produce in the supermarkets and wondering if things have been substituted with wax versions.

If only it wasn’t a £4.80-each round trip to get in there 🙁 certainly the place to buy some vegies if we happen to be in London for other reasons anyway, but not quite worth it as a motivation in its self (if just one of us went in then the total cost would have been about the same as buying the same stuff from Tesco and thus probably worthwhile as a weekly trip (made borderline by the ~1.5 hours total train travel).

One aubergine and two red peppers were made into an excellent dinner. The remainder has been roasted up for use in this weeks sandwiches (saving significantly on buying roast eggplant and red pepper), the same fate awaits the avocados.

No, I wouldn’t normally use the names “aubergine” and “red pepper” – trying to pick up the local customs and all 😉

BaaBaaEggplant Baa Eggplant

Note: This entry has been restored from old archives.

 title=
BaaBaa Eggplant – Dinner is served
After picking up some beautiful vegies from the Portobello Road markets I decided to turn some of them into dinner. The nice plump aubergines (eggplants) looked just perfect for a good stuffing, and our herbs have got to the point where they would be of some use. On returning home we wandered out to the shops; discovering that the local M&S has the completely retarded Saturday closing time of 18:00 we continued on to good old Tesco which is open until the rather more sensible hour of 22:00. Initially my intention was to get some pork mince for the stuffing, but on seeing some excellent looking “organic” lamb mince I changed the plan a little. When I cook nothing is ever really laid out neatly in advance – the food just sort of evolves through the cooking process into whatever comes out the other end. By the end of the process these are the ingredients that would have contributed to the final meal:

 title=
Ingredients
  • 400g lean, medium-grind lamb mince
  • 1 large aubergine (eggplant)
  • 1 large brown onion
  • 2 medium sweet red peppers (capsicum)
  • 3 cloves of garlic (crushed)
  • 1 tbsp chopped fresh sage
  • ½ tbsp chopped fresh rosemary
  • 1 tsp fresh ground pepper
  • 1 tsp cumin seeds
  • ½ tsp cardamom seeds
  • 1 tsp chili powder
  • ½ tsp ground coriander seed
  • 500g tinned chopped tomato
  • 1 tbsp tomato paste
  • (Or 500g of a good plain pasta sauce to replace both of the above)
  • ½ tbsp of honey
  • 100ml of sweet mead (or a girlie-wine, such as verdhello)
  • A light textured natural yogurt
  • Cheese (cheddar/tasty for more flavour or mozzarella)

And the process to go from all of that to dinner:

 title=
Grilled
  1. Put garlic, sage, rosemary, cinnamom and pepper into a mortar and grind to a rough paste. Massage this paste through the lamb mince, cover and put in the fridge.
  2. Slice the aubergine in half lengthwise, cut (angled inwards) a boundary about ½ an inch from the edge then score the internal space. Hollow out the eggplant halves with a spoon leaving a shell about ½ an inch thick. Salt shells and innards and leave to drain in a colander (cut side down for shells). Let them have a good 20 to 30 minutes to drain.
  3. Finely dice the red pepper (roughly 3mm cubes) and the brown onion.
  4. Place the cumin and cardamom seeds into a dry saucepan and toast until aromatic, then put in the chili and coriander powders and toast for a little longer until slightly discoloured. Sprinkle toasted spiced over the chopped red pepper.
  5. Rinse and then pat dry the aubergine shells and innards. Lightly oil shells and place under grill, slightly brown both sides (okay, so you can’t really “brown” the skin – crisp it up a little) while continuing with the following steps. Chop the innards to roughly 5mm cubes.
  6. Place a little oil into the saucepan previously used to toast the spices, heat oil then fry chopped onion until translucent. Take lamb and crumble into the saucepan, add chopped eggplant and continue to fry until lamb browns. Add the mead and honey and keep on heat until most liquid evaporated. Now throw in the chopped aubergine innards and tomato (tinned+paste or pasta sauce). Continue to cook, the consistency should and think and chunky – be careful not to add too much tomato and thus make it too runny.
  7. Take the browned aubergine halves and place cut-side-up into an oven pan (it may help to secure them in position with some lightly rolled aluminium foil. Generously pack the halves with the lamb mixture, heaping as much above the eggplant as seems safe. If, as in my case, you have too much lamb mixture take the second red pepper, halve, clean, put into pan and fill just like the aubergine halves. Still got some leftover? Try to pack it in – else take a spoon and enjoy it.
  8. Lightly coat with natural yogurt and generously sprinkle with grated cheese.
  9. Place into oven preheated to about 200°C and bake until looks good and smells great (cheese on top should have just started to brown).
  10. EAT! We enjoyed this drizzled with natural yogurt and served on a bed of basmati rice and a glass of metheglin.

Half of this recipe was enough for a large dinner for two, with half left in the fridge for dinner some other night (also good cold for lunch).

Sidetracked

Note: This entry has been restored from old archives.

SVG, CSS and Web Browsers

I’ve been sidetracked on an update I started two weeks ago but still haven’t finished. It involves some photos and along the way updating my CSS/etc knowledge and learning SVG. The capability if web browsers has really come a long way since I last seriously explored “web design”! That was years ago, about four maybe, Firefox and IE7 beta sometime soon and see how it is, I’ve heard some good reports on it as well as some less flattering, and you can never tell by what you read since people are so damn religious about these things.

On IE7 the most interesting item has been a Firefox
dude interview
, where he makes the point that IE7 is just a catch-up and that by the time it is out it’ll probably be behind already. The real test is going to be in ongoing effort to improve standards coverage, will they make the effort? They surely have the ability to do a great job of it (we can only hope that it is without magic IE extensions to the standards), but such things are likely to be subject to ‘business case’ justification, so who knows?

Anyway, my main point of interest in all of this is that SVG is great to play with, I can make images in vim! It’s a dream come true 😉

I would say that we have the makings of a Flash killer here, if only MS would get IE supporting the right standards. Opera has done a very good job with version 9! And Opera doesn’t have the ad-bar anymore, which is great. I hope they’re making enough revenue elsewhere to keep going at it (embedded platforms?). The SVG support has some layering/focus bugs when it comes to DOM manipulation with embedded script, rendering is excellent though. Firefox has good rendering (I think Opera’s SVG rendering looks just a little better) and I haven’t hit any bugs in scripting SVGs in it yet. SVG has all the potential to be just as annoying as Flash!

What have we been up to?

In brief, two weeks ago we went on a nice 3 hour walk down the Grand Union Canal then back up through the countryside, took some photos and made some notes. I’ll have a funky photo widget posted for that soon. It’s a little impractical and unwieldy, but I’m no web designer! More an exercise in exploring what can be done than anything else.

Also went on a five hour walk up the river Chess to Chorleywood Common (map: where we had our afternoon tea) then back into Rickmansworth along the train-line, have some photos for that one too.

Not a lot else, been busy. Also been wasting some free time with Oblivion, when I tried playing it when I bought it (in month 4 of my 6 month tour of duty in the UK) I lost interest after about six hours. This time I seem to have gotten into it a bit more. Can’t say that that is a good thing, given my hate for time-wasting. There are more useful things I could be doing in my free time.

Kat is still job-hunting, she should probably try for less permanent looking positions as the Working Holiday thing is a definite blocker. Contract based positions are more likely, but we can’t work out head or tail of the details regarding tax/NI/etc if contracting in IT while on a WH visa. Meanwhile she’s got some contract work with her former employer back in Sydney at a pretty good rate, so she wont get too rusty :-p