jack: (Default)
There's a stuffed toy hanging from a telephone wire across Chesterton High Street. Is it worth seeing if BT care? I asked the council and they say it's not their problem and to phone BT, but if it doesn't harm the wire I don't see why BT would care.
jack: (Default)
I didn't want to think about it before, but following Liv's excellent example last year, I want to join a gym in Cambridge. I know a couple of you have, where did you join? Are you happy with it?

I also want to get Liv some home weights for xmas. Cardio exercise is probably more important, but that probably wants more variety, but if she continues to go to the gym, she can do some weights on other days, and do more cardio when she's in the gym. Does that make sense?

And does anyone have any experience or suggestions for what to buy?
jack: (Default)
When someone says "easy to use", a high proportion of the time they're talking about a different use cases to the one you're thinking of. It's an easy mistake to make, as often one's usage pattern is representative, but also, often it isn't. And if it isn't, it's easy to forget that someone else might be talking about how easy it is to do something else -- either something so basic you'd forgotten it was necessary, or something so complicated you simply never needed to use it.

Classic example: 3.5 ed DnD Forums. Essentially every conversation on the forum[1] went something like this:

Beginner: Which class is [most powerful/easiest to play effectively/most fun]?
Expert: Oh, that's easy. Everyone knows the best class is [wizard/cleric/non-core prestige class X]
Other beginner: What? I tried that and [I was eviscerated by a Kobold in the first encounter because I started the game with -57 hit points[1]]. What are you smoking?
Expert: NEWB!
Beginner: DICK!

Etc, etc.

The same applies to unspoken differences in GMing style, which can make social skills overwhelmingly broken, or near-useless; or make time to prepare spells before combat into an assumed right, or a rare luxury; or make finding a highly enchanted weapon suited to your skills a certainty, or an unheard of stroke of luck.

But the same applies to all sorts of other things. I recently saw a thread asking "is [version control A] [more powerful/easier to use] than [version control B]" and it turns out that whether or not it's clear what the answer is, it depends whether you mean "for going from 'never used it' to 'first check in'" or "for editing the history in creative ways", and it's easy to dismiss the other person as wrong, when "not relevant to me and so I assumed that wasn't relevant to anyone" would have been more accurate.

[1] Mild exaggeration
jack: (Default)
Q. People used to think the moon was knocked out of hole in the earth, leaving behind the Pacific Ocean. At any rate, it would just fit. If you put it down there really, really gently, would we be ok living on an earth with a moon balanced on it?

A. No. The surface of the crust is nowhere near enough to support a protrusion on the surface a large fraction of the size of the planet. It would settle. Having a density similar to that of magma, it would not plunge straight to the centre of the earth, possibly ejecting large fractions of the earth into an escape velocity in a gigantic "splash", but would certainly become immersed, engendering a massive rise in magma levels.

You probably know the massive destruction a large Tsunami can wreak on coastal (and not so coastal) cities, forests, stuff, etc. A largest tsunami is less than a mile high, and might kill hundreds of thousands of people and scour hundreds of square miles of land.

Now imagine a a tidal wave several thousand miles high which is made of hot lava. This is not a human survival positive indicated event. I'm not sure even the cockroaches are going to like this one. I mean, I'm sure some of the bacteria may survive, but I don't know if they'll survive on Earth, or only by having previously escaped the Earth and drifting in interstellar space, hoping to waft into another hospitable planet. There are some bacteria that might survive being frozen to near absolute zero[1], but not, I think, vaporisation.[2]

Ah, you say, but what about humans, or bacteria, buried safely at the bottom of a disused mine-shaft, under a mountain? Well, there are two problems with this: (1) a few isolated bacteria and no other biota in existence may, upon resumption of a decent environment, be able to recolonise from scratch. Humans, not so much. (2) the in-a-mineshaft plan depends heavily on the mineshaft being buried safely just below the surface of the earth's crust, and as I think I indicated previously, I strongly suspect the entirety of the earth's crust to be the front-line casualty in a moon-magma-plop scenario.

As a comparison (in the tradition of the awesome demonstration in The Core), consider an orange filled with boiling-hot jello[3]. Put some ants on the surface. Now smash the orange with a hammer (to simulate the splash) and whack all the bits of peel a few more times (to simulate the effect of very high G on human anatomy). Then scoop it all back together again, mixing the bits of peel with the surface of boiling jello. Examine the ants. Did any survive?

Of course, this is unfair. Suppose the moon is immersed carefully in the magma. This would merely cause the earth's surface to expand a bit, leading to massive tectonic upheaval, but life perched carefully in the middle of relatively stable continental plates may be ok. Or suppose it's levitated carefully to just touch the bottom of the ocean but not fall any further. Assuming the moon is stable under its own gravity to hold together enough that no bits fall off in the Earth's gravity (which would result in a mess similar to scenario #1) This will merely cause a lot of nearby water and possibly mountains to fall sideways off the earth and onto the moon, causing more traditional world-wise Tsunamis that may be made of water rather than lava. In both cases, primitive biota and mammals cosying in mine shafts may be ok.

[1] And viruses, but bacteria need water and some useful chemicals to come back to life. Viruses need bacteria.

[2] I use the term "Tidal wave" despite the "tidal" being considered a misnomer. Despite the name, these waves are typically not being caused by the moon, which causes many pedants to prefer the more euphonious "Tsunami". However, as I have been at quite unnecessary pains to explain, the wave I'm discussing here IS caused by the moon. So I'm going to say the not-quite-correct "Tidal wave" in the hopes that bad pedants will be annoyed and good pedants will think it's funny.

[3] I have no justification for choosing the American proprietary term "Jello" rather than the British generic term "Jelly", but did so PURELY to annoy pedants. However, it occurred to me because it (1) sounds funnier and (2) suggests clearly that I'm referring to desert jelly, rather than royal jelly, petroleum jelly, gelignite, American-made jam, or any other anatomic, biological, lubricating or industrial substance which wobbles or has a similar technical name and picked up the descriptor "Jelly" somewhere along the line.
jack: (Default)
Tip: Don't name the last episode of your TV show after any common DVD menu navigation features :)
jack: (Default)
1. Make an 'A' with 2000 unicode combining underlines
2. Paste into Microsoft Word
3. Restart Microsoft Word without document autorecovery

So, my other question is, if I have a programming language which specifies programs of the form "One single capital latin 'A', followed by some number N of unicode combining underlines" and processes them according to "Interpret N as a binary expression, and reinterpret it as an encoding of a perl/brainfuck program, then run it", does this mean that for the purposes of code golf writing-a-program-in-the-minimum-number-of-characters, every program will count as having only one character?

You could have a somewhat more efficient encoding by using different characters to encode more information.

I agree the idea of comparing fewest-number-of-character programs between languages is not a priori meaningful, but I think it often produces interesting results. (And the observation that there's always some imaginary language where the program you want is one or zero characters is correct, and good to make once, but does NOT invalidate the idea that it's interesting to compare different langugaes.)

This has the advantage that although the language is degenerate/isoteric, it will be the same language admitting different programs, just one-character programs, rather than only meaningful for one particular code gold challenge.

I highly advise not trying to write A-Underline code by hand, though :)

The only language I can imagine better at code gold would be the hypothetical JFGI language, which would accept programs of zero length and compile them to a program which accepts input on stdin, googles for it, and returns whatever follows on the top hit web page. That won't always work (it won't work on programs which aren't supposed to have an input), but it will work sometimes, and without all the tedious steps of _writing_ a program.
jack: (Default)
OK, this is going to be massively oversimplified and riddled with inaccuracies, and the networking gurus on my friendslist are probably more prominent than the Jewish ones, so expect a number of corrections in the comments, but for the benefit of Liv and anyone else interested, a very brief overview.

An ethernet packet

- Has a header containing destination address, source address, type, data and a couple of other things
- The type is a number specifying what protocol is in the data. This is typically an IP ("Internet protocol") packet.
- The addresses are addresses of the physical network cards of the computers
- Which will (always?) be MAC addresses, ie. a six-byte number which every network card manufactured has a unique one.
- It is normally written in hexadecimal with semicolons, like 00:0E:78:5D:10:04
- It doesn't matter how they're assigned, except that each manufacturer has a different set of them to assign (sequentially or randomly) to network cards they manufacture
- These do not need to be unique across the whole world, they only need to be unique within one physical LAN or wireless network. But because you don't know which computers will be plugged together, they're ALL made unique
- If a computer has an ethernet cable and a wireless card, they will have different MAC (?)
- This is transmitted by the computer by physically changing the electric voltage on the wire, or by physically transmitting a short radio burst
- That means that the computers have to take turns transmitting and so on -- how to do that is what ethernet specifies
- This will be received by all computers on the wire or within range of the wireless, but ignored unless it has the appropriate destination address (and possibly appropriate content -- a computer not listening for IP traffic will just ignore any)
- There are special MAC addresses which mean "to everyone" which everyone receives (probably FF:FF:FF:FF:FF:FF but I can't remember). This is not used for normal TCP/IP traffic, but for some special network uses.

An IP packet

- Directly after the ethernet packet headers typically come IP packet headers
- Again, this is a source address, a destination address, and something indicating the content
- But this is coincidence, they're all different to the ethernet fields I discussed above
- The IP addresses are four bytes, typically written with dots like: 131.111.12.20
- Originally the idea was that each individual network would communicate by ethernet, and you'd connect them together by having some computers which were on two neighbouring networks
- And every computer would have an IP address assigned by some independent body somewhere (originally Job Postel, later ICANN)
- And computers would maintain routing tables, saying that "messages for THESE IP addresses should be passed to THOSE networks, and so on"
- Which is what IP does (routes packets between networks to a specific IP address, but does NOT, for instance, combine packets into a longer message or have an acknowledgement that they got there)
- Most IP addresses (in theory) could be anywhere on the internet, but some are reserved for small networks to use themselves, so many different small networks might use 192.169.anything.anything for the computers on it, so long as they don't accidentally send messages for those IP address out onto the internet. There are also some special IP addresses not assigned to any computer but that mean "this computer" or "all computers on this network"
- Nowadays it's much more common for a home network to connect to the internet via a router, and the router (may) have a real internet IP address (though not normally the same one every day) which it uses to talk to the internet, but another, eg. 192.168.0.1 which it uses on the local network, and whenever it sends packets between the networks it switches the addresses around so they go out, and come back to the router, and then it switches them over to go to the local IP address.
- On a small internal network IP addresses are either assigned manually (by just picking 192.168.anything and making sure they're different) or by DHCP (which is much the same, except whenever a computer turns on, it asks the router for a new IP address that's no-one's using,and the router keeps a list and hands out the next free one)

TCP

- The contents of an IP packet are typically a TCP packet
- IP does the "get this packet to the right computer" but TCP does "send a reply to make sure it gets there, number all the packets I send so the other end can check they all arrive in the right order, and stitch together lots of small packets into one big message, number them so I can (eg) stream music and download a webpage at the same time, and the right messages go to the right program etc"
- There are some other protocols which are similar to TCP and use IP, but are different, eg. UDP which does a similar thing but WITHOUT all the checking.

HTTP, FTP, etc, etc

- OK so, TCP sends a potentially long message. What is a message? Many, many different protocols use TCP/IP, typically used by different applications on the same computer
- For HTTP it might be something like "Hey computer? Do you have a file called index.html? Please send me a file called index.html!" and a webserver running on that computer would send an HTTP reply saying "404. That means I don't have it." or "200. That means, that file follows. OK, here goes. [lots of html/txt/jpg/etc]"
jack: (Default)
Most of us have "doh" moments, when something we normally do fine -- locking the door, reading an important letter without putting it down and losing it -- we completely fail to do. What I think is that once something like that is a habit, it will go fine -- unless it's interrupted, which is when mistakes happen. If someone speaks to you just as you're shutting the door, you then go into "I must remember to lock the door" mode. And most of us are much less reliable at "I must remember to do X" than in following an ingrained habit. (Some people are very good at remembering to do one-off tasks without making notes, but probably exhibit the same flaws elsewhere.)

My advice is, form the habit that when interrupted, you commit or roll-back the current task. So, if someone speaks to you when you're shutting the door -- open the door ajar again, and you will probably automatically shut and lock it. Or say "hold on a sec" and lock the door then. Don't wait paused in the middle of the door-locking activity, because you're much more likely to get distracted.

The thing is, locking the door goes fine 364 times out of 365. Which is very good, but to never, ever, get it wrong, you need it to be right every time in 20,000 I think competent, organised people are not those who never experience those little lapses (although that helps), because that only reduces the frequency, but those who ensure that when they do experience them, they recover well, either because (A) they have this habit or (B) they have another back-up, like leaving a key with a neighbour.
jack: (Default)
If you want to make someone sound pretentious go ahead and have them use lots of excessively long and obscure words. But if you want someone to sound intelligent or knowledgeable, then only use longer and more obscure words if they convey a greater or more concise meaning.

Sure, if the reader is less intelligent or knowledgeable, they won't be able to tell the difference between long words used to look clever and ones used to convey information. This confusion supports politics, con artists, and parts of soft science all over the world. But if you're trying to make someone seem smart to smart people, their words need to be concise, or clear, or technically detailed[1]. Fortunately, you have the advantage of time, you can probably prepare in five minutes something that would be terribly clever if your character talks like that all the time :)

[1] In fact, many people, notably me and many of my friends, are quite smart AND quite pretentious, and strive to be precise, both from clarity, and also because they think it's funny. It's quite likely they'll go together, but I still maintain there's a difference, especially if the character was previously dumb but tenacious and then is hit by an intelligence-ray for a short humorous interlude :)
jack: (Default)
http://macedoniaonline.eu/content/view/17081/48/

If you're very drunk, don't go swimming. And if you do anyway, don't jump straight into an unknown sea. And if you do anyway, make sure there haven't been a recent spate of shark attacks. And if you do anyway, at least look to make sure the shark isn't RIGHT THERE. But if you do anyway, make damn damn sure you brain it right between the eyes.
jack: (Default)
"RSVP" traditionally means exactly what it says: please respond. Whether or not you're able to come. Traditionally, not doing so is rude (assuming the invitation came from someone who had a genuine reason to invite you).

Now, a much better heuristic is: on invitations to big social events like weddings, "RSVP" retains the traditional usage. On casual social engagements, "RSVP" typically means "let me know if you're going to come" and non-response is treated like a "no". Although often positive responses are helpful even if not necessary, and often there is some flexibility to turn up at the last minute.

Unfortunately, this means that you can't really say it at all without a little bit of ambiguity. Normally the heuristic works fine, but it may be slightly better to specify what you actually mean, eg. "let me know if X, letting me know if Y would be helpful but not necessary" or "please let me know by DATE if you want to come or not, or what it depends on if still unsure". Or even to give people a little helping hand by asking them if they're probably coming, which many people can answer immediately, and is often sufficient for small social occasions, rather than if they're definitely coming, which puts many people into "let me check my diary for three months" mode.
jack: (Default)
If you're going to criticise someone for something, the first rule of irony says you will probably accidentally commit the same offence during your criticism. This is pretty unavoidable, but at least try to cover the basics, and let fate work for it's revenge. For instance: spell "gauche" correctly :)

(I assume I have done the same here.)
jack: (Default)
Don't make a theme park with robots who pretend to be cowboys. Or dinosaurs. Sure, it seems like an awesome idea. A really awesome idea. But it never ended well. Ever[1]. Just don't try.

[1] Counterexamples welcome.
jack: (Default)
Don't inject sodium pentathol into someone flying the helicopter.

Don't parachute out of a helicopter.
jack: (Default)
If you're ever in Stoke-on-Trent, go to Newcastle-under-lyme, and if you're ever in Newcastle-under-lyme go to the Hanging Mangoes restaurant, and if you're ever in the Hanging Mangoes restaurant, order the Mushroom Delight starter. It's incredible, and not just in a mushroom-and-paneer way, in a any-sort-of-food way.

If you play magic, get Agricola animal tokens to use as token creatures. They're ever so cute, and there's a small white one, a medium black one, and a large one. You can also use the sea serpents from Escape From Atlantis if you ever have five 5/5 sea serpent tokens in play at once, but that only ever happened once, and the game was pretty much over at that point.

Glee actress Dianna Agron says "I am trying to live my life with a sharpie marker approach. You can’t erase the strokes you’ve made, but each step is much bolder and more deliberate. I’m moving forward from this one, and after today, putting it to rest.[1]" I don't normally base my life around advice from actors in teen musical drama shows, but it looks like maybe I should.

[1] In response to the photo shoot for GQ she ended up participating in, which afterwards turned out very creepy :(
jack: (Default)
On the one hand

I started writing this this afternoon, after trying to articulate it for a while.

There is a great urge, if you realise that what you want to say may be incomplete or may be misinterpreted, to add more explanation. Often this is necessary (like adding scaffolding to a building, or explaining something which is too detailed to encapsulate in one sentence) but often it isn't (like using too much duct tape instead of building something right to start with, or trying to retroactively remove a bad connotation).

This leads to horrible conglomerations where someone tries to retract something in a sentence, which typically only draws attention to it, or at least takes up more effort.

A clarification is a useful thing if both (a) it clarifies and (b) it takes LESS EFFORT TO READ than spelling the whole thing out in full, either because it's available in some axillary way, or because it has a standard phrasing the eye can scan past. If it doesn't, then using a so-called clarification will be very little better than just adapting the sentence to include it, and if you want to be clear, you need to decide up-front if the small cost of everyone reading a possibly-unnescessary clarification is better or worse than people having a chance of misunderstanding something.

"Did you see any tits in your garden (birds[1], not women)," is often not as useful as "Did you see any tits at your bird feeder?"

"Is [blah blah] legal? I know it's different in different jurisdictions, I'm just wondering?" is often not as useful as "Is [blah blah] legal under UK law? Are there any regional variations?"

On the other hand

Being clear is work, sometimes a very very large amount of work. That's why producing well-written prose is part of many professions. Thus, if you WANT to be clear, the advice applies. And if you spend more time writing the clarification than deciding and changing the problematic content would take, it's probably wasted. But if you're writing a comment on the internet, it is often NOT worth the extra effort to polish your prose and reduce it down.

The above advice is how to write more clearly if you have the time. If you DON'T have the time, slapping an incomplete disclaimer, or otherwise posting a comment that could yet be improved, is eminently reasonable, and only a problem if it's SO unreadable any sensible conversation is overwhelmed. So I shouldn't get annoyed at people being superfluous (unless they wasted disporportionate effort to do so, or are for some reason held to a higher standard of prose.)

Ironic footnotes

[1] I realise "birds" can also mean "birds" or "women", but (a) it's not slang I'd typically use, and (b) as it's used in contrast to "women" it's unambiguous what it means[2].

[2] The previous footnote is deliberately an example of a superfluous clarification, since I could easily have said "avians" instead of "birds". But I retained it not because it's clearer but because I think it's funny. If you're trying to be clear spurious clarifications are to be guarded against. If you're trying to be funny I find that very very useful. (Because they often make me laugh.)
jack: (Default)
Really really fucking hot things are REALLY REALLY FUCKING hot.
jack: (Default)
If you want to seem competent, don't put a teabag in the cafeteire by mistake. And if you do, don't let on about it on the internet.
jack: (Default)
If you want to be taken seriously as a film:

* Do not call any chemical element "unobtainium" even if you think you have a good in-universe justification

If you want to be taken seriously as a long, cross-country highway:

* Have at least two lanes all the way along. Having a roundabout where two lanes have to squish into one at a roundabout, and two lanes in two different directions have to cross each other on a roundabout or slip road, with traffic lights does NOT count for "two lanes all the way along".

If you want to be taken seriously as a country:

* Do not do things that are evil AND don't work. To be honest, you're pushing it with EITHER of those, if you're doing things that are both, you're really fucking up.
jack: (Default)
If you're opening an oven, especially if you wear glasses, and unless you're sure that it won't, hold your head out of the way so you don't get a blast of steam in your face which fogs up your glasses.

If you're in the middle of doing something and get distracted, don't rely on your mental stack to recover it. If you're reading an important letter and get distracted, put it on your keyboard, not on a pile. If you're leaving the house and someone speaks to you, lock the door, or hold it open, don't close it and trust yourself to remember to come back and lock it later :)