Syntactic sugar in s-expression languages (by )

S-expression based languages (eg, Lisps, and by a broader definition of s-expression, things like Prolog) use a single regular syntax to represent the parse tree of code, rather than having parsing rules for each syntactic construct in the language. Read more »

Paul Graham (by )

I like this guy's thinking on programming language design. It aligns pretty closely with my own ideas, and has some good ideas on syntax that I might borrow for CHROME...

And the way he implemented Viaweb is pretty similar to how I might have.

I think I'm more a fan of object orientation than he is, but this might just be a matter of terminology. I'm more of a fan of generic functions and Haskell-style classes than Java's OO.

MPLS (by )

One technology I'd really quite like to play with is Multiprotocol Label Switching.

It's a network protocol, but one that doesn't entirely fit right in with the standard ISO model stack; it's a low-level packet switching protocol like IP, but it doesn't have a transport layer (TCP, etc) on top of it. It's just used to tunnel other protocols like IP and Ethernet over. Read more »

Pros and Cons (by )

The downside of this morning:

Jean woke up about at 2:30am, when I was just drifting off after unwinding with a good book after a late night working, and wailed. I went and picked her up, and she quietened instantly, then fell asleep on my chest as I sat with her. I slipped her back into her cot, substituted her teddy bear for myself in her arms, and went to bed.

About half an hour later, I was starting to drift off again, when she started to wail again.

Repeat this a few times.

Then after a while, she stopped falling asleep on my chest, and instead was playful. But then screamed if I left her alone. Brought her into my room to see if she'd fall asleep being hugged, but just ended up being poked in the face by a curious baby. So we set a DVD playing to keep her entertained in her room, and tried to get to sleep again.

But the DVD finished, so she started crying. I went back and made it play again. This time, she started crying before it was finished.

Tried getting her to sleep in the bed with us again, no cigar.

Eventually, she drops off at about 6am or so. I'd never quite made it to sleep, but I managed to at about 6:30am. Slept clean through the 7:30am and 8:00am alarms to wake up in time to take Jean into nursery and woke up at about 11:30am, feeling a bit grotty. At the time of writing (3pm), Jean is still sleeping happily in her cot (thankfully...).

That's the bad news.

The good news is that the electricity bill came today!

Now, last winter, when we'd just moved in, Sarah was cold, and Jean was cold, and all we had to heat things with were electrical heating and the single coal fire at one end of the (long, thin) building, so we used a LOAD of electricity. Out here in the sticks there's no gas pipeline, and we don't have gas or oil tanks; electricity heats our water, cooks our food, and (apart from the coal fire) heats the house.

The bill for that quarter was based on an estimate. An under estimate. When they got a reading last summer, we ended up with a wopping huge bill, that they said we could pay off in installments, along with our predicted next bill, based on the new estimate of our usage.

So for six months, we've been paying £300 a month in electricity bills; half paying off the winter before, half paying for this winter.

So it's a good thing that the bill has come, because it means this period is over. The bill was for fifty pounds; their estimate of our usage, minus what we paid in direct debits. And since we now have draught-reducing and convection-limiting thick curtains over all the windows, have figured out how to convert the coal fire into a blast furnace, and have portable gas heaters, when we send them our meter readings, we're hoping they'll have found they overestimated our usage and pay us back money...

Which will be welcome, as things are still rather tight!

Social engineering (by )

Bruce Schneier's blog as an article on a recent diamon heist carried out purely through social engineering. No high-tech descending on wires through skylights, gymnastic climbing through nets of laser beams, or reprogramming advanced electronic locks. Nope, the perpetrator just earnt the trust of the staff by appearing to be a nice harmless guy.

No amount of snazzy technology can prevent this kind of thing. Sure, you can make it harder in some ways, but people will still be the weakest link.

My suggested solution to this kind of crime is to make it everybody's civic duty to test security systems. Teach social engineering at school. If somebody is caught in an attempted non-violent non-property-damaging security breach attempt, congratulate them. If they manage to pull one off and get away with it but then fail to report the fact, throw 'em in jail - but if they DO report it and turn the goods back in, they get congratulated and a reward from the victim's insurance company.

Sure, this makes an actual malicious robbery slightly less risky (as long as you don't damage anything or anyone during the attempt, which is clearly against the rules of a good-natured security probe), since if you get caught in the act you can say it was just for fun and you'd have handed in the winnings if you'd not been caught, but actual successful robberies at that level are rare. And with a segment of the population worrying at any possible security hole in search of a finder's bounty, there'll be less security holes to exploit, and the staff will be a lot less trusting of nice folks...

WordPress Themes

Creative Commons Attribution-NonCommercial-ShareAlike 2.0 UK: England & Wales
Creative Commons Attribution-NonCommercial-ShareAlike 2.0 UK: England & Wales