Recently in Humor Category

Change I Can Believe In

|

Damned Whippersnappers

|

Remember being a teenager*?

Teenagerititude is the state of believing that everyone else in the world is phenomenally stupid — that the solution to every problem is blatantly obvious, and that everyone would be much better off if they'd just shut up and do as you say.

The interesting thing about being a teenager is that you don't actually outgrow it.

At some point a light goes on in your mind, the scales drop from your eyes, the metaphor similes upon you, whatever, and you realize you've been a teenager and you stop. You congratulate yourself on being so adult and on owning up to your past bad acts and you move on with your life.

And then a few years later you realize that you were mistaken, that you were actually still a very-slightly-more-evolved form of teenager despite that revelation, and the scales drop from your lights and you eye what you metaphor and you move on with your life.

Until it happens again.

Eventually you reach a degree of meta-awareness — you recognize that Socrates kinda had a point about the whole 'knowing you know nothing' schtick. That's when you ascend to a higher plane of existence! Then you help Teal'c and MacGuyver out a few times, and eventually you return to the show with your tail between your legs because it turns out your landlord won't accept 'art' in lieu of money. But hey, higher power. You got that going for you.

Until, damn it, it happens again.

Meta ain't enough, nor is meta-meta. Maybe there's some omega-meta state where you stop realizing that you're an idiot, and you get to draw a Batman logo on Anthro's cave wall just to reassure the idiots who didn't figure out the pattern based on Kal and Hal and whatnot. But I can't be sure of that. I think any form of personal growth boils down to suddenly recognizing what a jackass you've been and thus becoming an exciting new form of jackass.

...

So what's the moral of the story? The moral is that I'm stupid, you're stupid, he's stupid, she's stupid, and the primary differentiating point between us is our awareness of our own incompetence. So when something looks dumb to you, remember that it either is dumb, or it's smart in a way you haven't thought yet deciphered — and prudence dictates that you assume the latter until you've assembled reasonable support for the former. And even if something turns out to be legitimately dumb, don't draw conclusions from that, because oftentimes there's more to the story. It's not uncommon to find clever implementations of a piss-poor design; that may be a sign of abstractional schizophrenia, or it may be a sign of the blind leading the brilliant.


*If you currently are a teenager, shut up and get the hell off my lawn. Damned kids.

taxes.png

Just Chatting

| | Comments (1)
MCK_Feminist.png

iPhone 3GS

|
The 'S' stands for 'Stupidname'.

I look at that name, and immediately it brings to mind the Apple IIGS (which stank).  That then makes me think of the Apple III, which stank to high heaven.  It's like somebody at Apple said, "hey, I know, let's give it a name evocative of our greatest corporate failures!"

Seriously, the only worse name would've been the "iPhone Performanewton: Centris Edition".  They could pair it with an eWorld membership and give it a built-in GeoPort Telecom Adapter.  

Maybe bundle an AAUI transceiver.

Okay, I'm done.
For a long time I've semi-seriously joked about writing a humorous non-theoretical book about computer science that isn't a total crock.  I think I've finally decided that the easiest thing to do is break the entire field down into a random series of blog posts that will in all likelihood never actually be collected into a book.  So here's the preamble.

So what is programming?  Programming a computer is all about explaining to a computer how to do things.  The big secret all programmers share is that computers are dumb.  Really dumb.  But -- and this is why we keep them around -- infallibly obedient and really, really good at math.  Have you ever called a tech support or customer service line and had to put up with a dolt who can't do anything but follow the script in the big-honking-binder his supervisor gave him on his first day?  Now imagine that guy with a calculator, and you're imagining someone maybe ten or twenty times smarter than a computer.  The job of the programmer is to write that big-honking-binder.

So if you're writing a big-honking-binder for your new friend the phone drone, what kind of instructions can you put in there?  If your employees were intelligent and informed, you wouldn't need much: just a single sheet of paper that says 'handle customer issues' at the top, and voila, you're done!  But remember, the computer you're programming here is stupid, and he's not going to understand high-level instructions like that.  You need to break it down:

  1. Ask the caller whether he or she currently owns a product.
    1. If the caller says 'yes', go to step 2.
    2. If the caller says 'no', go to step 5.
  2. Ask the caller what is wrong with the product.
    1. If the caller says 'it will not turn on', go to step 3.
    2. If the caller says 'it will not turn off', go to step 4.
  3. Tell the caller how to turn the product on. Hang up.
  4. Tell the caller how to turn the product off. Hang up.
  5. Tell the caller where to buy the product. Hang up.

If you look at that script, you'll probably notice a few things (besides the fact that we're training our human computer to be unbearably rude).  What if the answer to step one is "I don't know"?  Different people (computers) might handle that differently.  Some might hang up; some might continue on to step two; some might ask question one over and over until the frustrated customer picks 'yes' or 'no' (we'd call that "undefined behavior", which basically means we don't know in advance what's going to happen; undefined behavior is a source of some pretty nasty bugs). What if there's something wrong with the product besides an inability to turn it on or off?  What if the product won't turn on because it's broken?

Those are all bugs in our program, and they all serve to show part of what makes programming difficult; decomposing a task ('make customers happy') into tiny little steps that a mindless automaton can follow is very difficult.  You can't count on a computer to make a value judgement; you can't count on a computer to recognize that 'yeah' or 'yup' also mean 'yes'; you can't count on a computer to do much of anything except for faithfully following whatever flawed or incomplete script you give it.  That and math.

Wikis Are Irish Roadsigns

|
My family has a running joke that the road signs in Ireland are there to remind you of things you already know rather than to direct you to places you've never been.  If you've never been to Ireland you'll think I'm exaggerating, but the signs really are just a step short of saying "the place where Mary brought that lovely jacket - 12 km".

It's even worse if you stop and ask for directions - "Oh, you'll be wantin' to take that lane just past Brian's house, you know, Brian with the dog!"  It takes about fifteen minutes to convince your erstwhile directioneer that you don't in fact know Brian, having spent the majority of your life on the other side of the Atlantic Ocean, and that you'll really need your instructions expressed in a format that doesn't presuppose knowledge of the local geography so intimate as to render directions unnecessary.  At which point you'll be given a confusing array of rights, lefts, and reverses, followed inevitably by "and then it's right up the road, you can't miss it!", which you'll dutifully follow in a large circle before returning, six hours later, to ask the exact same gentleman for directions.

In general he'll pretend to have never before made your acquaintance and eventually (after repeating the previously-rendered fifteen-minute protestation of your non-acquaintance with Brian's dog) give you an entirely new and completely dissimilar set of instructions that will culminate in your accidental arrival in Paris.

I'm not entirely sure how one manages to drive from Ireland to mainland Europe, but it happens, I swear.

But anyhoo, my point is that Irish road signs are designed to remind you of things you already know, or provide you with details about subjects on which you already have high-level understanding.  And Wikis are exactly the same way; they make excellent references, but they're largely terrible as first-order sources or methods of communicating information, primarily because of the structure they inspire - the same disaggregated, freeform organization that makes it possible to deep-dive into related matters as a reference makes it very difficult to arrange information in the sort of cohesive sequence necessary to teach people something new.

Learning something new is akin to recording every lecture in a college course and playing them back in a random sequence - even though every note may be hit, it's not precisely musical.

All of which means precisely nothing, except that I haven't posted in a while and this was the only interesting and non-proprietary thought in my head.

Now that they've shifted the release schedule back even further, I think they're going to need some new titles for the movies.

  • Harry Potter and the Rascal Mobility Scooter
  • Harry Potter and the Mystery of the Kids Blasting Their New-Fangled Rock and Roll Music
  • Harry Potter and the Lawn You Damned Kids Better Get Off Of
  • Harry Potter and the Colonscopy of Terror
  • Harry Potter and the Bottle of Lipitor
  • Harry Potter and the Order of the AARP
  • Harry Potter and the Cauldron of Prunes

Half of those are Hoggle's fault.  In fact, I'm going to blame them all on him.

Testing Image Uploads

| | Comments (2)

BSG Chat.png
Actually I just wanted still another demonstration of the sort of insanity that dominates my IM window.

Whoo, BSG!

Pages