They say you learn something new every day.

I’ve quoted Steve Makofsky’s description of his blog as “a backup of my brain – a permanent online record so I wouldn’t have to write everything down” before, but I really like it. I’ve realised it’s exactly what I’m trying to do here.

It’s surprising how often parts of my brain become corrupted and need to be restored from the backup!

When I went home at Christmas I found this book:

My Favourite Childhood Book

As a child this was one of my favourite books about cartooning (I wanted to be an illustrator, you see). I pored over it for ages. And in particular one picture:

My favourite childhood desk

I loved the look of this desk and wanted to have one like it day.

I’ve had this picture half in my mind for a long time (when I first left home I bought two massive pieces of wood from Ikea and put together a corner desk a bit like this). However, it was really nice to see the original again since it had meant so much to me when I was little.

It was also really good to recalibrate my interests. Sometimes, we’re so busy going through life that we forget what it is we actually want. It was useful to put myself back into my childhood state of mind to remind myself what I like doing, and what I want from life.

This leads me back to the purpose of this blog. One of the reasons I’m keeping it is so that I don’t forget things. And I don’t mean things like buying some milk or writing a thank you note to Aunt Mavis for the knitted gloves. I mean useful things. The interesting, useful things you learn and read but then forget.

This Guardian article about “waiting-for-lists” sums up the sort of problem I’m trying to solve:

[…] multiple times a day, at work or outside it, most of us make requests of people – underlings, superiors, friends, service providers – and simply assume they’ll follow through. Even non-managers like me, whose work involves no formal delegation, “delegate” like this all the time: that’s what’s happening when you order a book from Amazon, ask a colleague for a piece of information or email a friend about your weekend plans. Yet based on an unscientific survey of my acquaintances, what proportion of people have a systematic way to keep track of who they’re waiting to hear back from? Zero per cent, approximately. (I suspect the same problem infects entire organisations, too.) And though aficionados of David Allen’s book Getting Things Done will be familiar with this issue, the vast majority of “productivity systems” are no help at all: they’re fixated on helping you remember and prioritise your own tasks – even though, in truth, you’re far less likely to forget about those.

It turns out that keeping a “waiting-for” list is like being handed a pair of x-ray spectacles for peering inside your colleagues’ lives. Based on what does or doesn’t get crossed off the list, as people do or don’t get back to me, I’m pretty sure I now know who’s on top of things, and who’s inefficient or just lazy, their email inboxes backed up like clogged drains. (It’s possible, I realise, that it’s just me they’re not responding to, out of icy contempt. I hope not.) The only downside is wondering how many loose ends I must have let slip before keeping the list: how many mail-order items ordered and never received, how many plans suggested to friends then abandoned, just because it slipped my mind that I’d ever asked?

I’m shocked to think of all the interesting ideas I’ve read or thought, insightful quotes, fascinating websites, things I’ve learnt and then just forgotten.

I learn things and then I forget them again. Trying to get less stupid is like filling a bath with the plug out. You’re filling it, but at the same time, information is running away.

There’s a bit at the beginning of each of the Head First Labs books explaining why this happens:

[…] what does your brain do with all the routine, ordinary, normal things you encounter? Everything it can to stop them from interfering with the brain’s real job—recording things that matter. It doesn’t bother saving the boring things; they never make it past the “this is obviously not important” filter.

How does your brain know what’s important? Suppose you’re out for a day hike and a tiger jumps in front of you, what happens inside your head and body?

Neurons fire. Emotions crank up. Chemicals surge.

And that’s how your brain knows…
This must be important! Don’t forget it!

But imagine you’re at home, or in a library. It’s a safe, warm, tiger-free zone. You’re studying. Getting ready for an exam. Or trying to learn some tough technical topic your boss thinks will take a week, ten days at the most.

Just one problem. Your brain’s trying to do you a big favor. It’s trying to make sure that this obviously non-important content doesn’t clutter up scarce resources. Resources that are better spent storing the really big things. Like tigers. Like the danger of fire. Like how you should never have posted those “party” photos on your Facebook page.

I’m not convinced that’s fully how your brain works, but it’s close enough. And the end result is the same.

Writing things down is all very well, but as Samuel Johnson says, there’s two parts to learning:

Knowledge is of two kinds. We know a subject ourselves, or we know where we can find information upon it.

So today I reviewed my tagging of my posts. More importantly I added the “categories” bar to the side of this page.

At first, I was a little annoyed that Tumblr didn’t add a list of tags to the side of the blog automatically, like, say, Blogspot or WordPress. However, this has given me an opportunity to organise my tags a little better.

I want to keep this up to date, and regularly check that I haven’t inadvertently mistyped or created any new ones, and that’s where today’s script comes in.

set xmlhttp = CreateObject(“MSXML2.ServerXMLHTTP”) 
xmlhttp.open “GET”, Page, false
xmlhttp.send “”
Fetch = xmlhttp.responseText
set xmlhttp = nothing

I’ve written this vbscript function that downloads the contents of webpages into a string.

Luckily, on Tumblr, the complete post of each article is displayed in the summary page, so I can just work my way backwards through the pages until I get to the first article:

http://lessstupidthanyesterday.tumblr.com/page/1

http://lessstupidthanyesterday.tumblr.com/page/2

http://lessstupidthanyesterday.tumblr.com/page/3

etc…

All we need to do is hold some unique text from the first article I wrote. Something like the unique Disqus key (of course, I can’t post it in this article, or I’ll break my script!).

We end up with a script that looks a little like this:

DO UNTIL Done = “Done”

NewPage = Fetch(PageUrl & PageNumber)
PageContents = PageContents & NewPage
PageNumber = PageNumber + 1

IF INSTR(NewPage,EndContent) > 0 THEN
   Done = “Done”
END IF

LOOP

Now that I’ve got all the contents of my Tumblr articles in a string I can do some interesting things with them.

It’s actually a backup (although not the backup, as the proper one has to be automatic, and I’ve already solved that problem), but I can do stuff with it.

The first thing I did was this, so that I could pull out all the links:

Links  = Split(PageContents,”href=”“http”)

Then I looped over the array and removed all the junk data:

ThisLink = “http” & Left(link,INSTR(link,”“”“)-1)

To leave me with just the link name. Splitting the text string into an array may seem strange, but I think it’s the neatest way.

Now that I’ve got all the links I can pull out all the tags, check them against the current list on the website and just display new ones:

IF

// This checks if it’s a tag 

 INSTR(ThisLink,”tumblr.com/tagged/”) > 0

// This checks if it’s a duplicate 

 AND INSTR(TagList,Mid(ThisLink,50)) = 0

// This checks if it’s already on the site 

 AND INSTR(ExisitingLinks,ThisLink) = 0

THEN

TagList = TagList & “
” & Mid(ThisLink,50)

END IF

But what I can also do is run each proper link against this function:

set xmlhttp = CreateObject(“MSXML2.ServerXMLHTTP”)
xmlhttp.open “GET”, Page, false
xmlhttp.send “”
PageStatus = xmlhttp.status
set xmlhttp = nothing

And check that they work!

I know there are some link checking services out there:

Are the two that jump to mind. However, I find they tend to get a bit confused.

I ran my website through Xenu recently, and it spent the rest of the day trying links. Hundreds of thousands of them. Now I know I’m generous with my links, but not that generous. I think it must have got into a loop and was trying the same page multiple times.

I mean, even running the W3C Link Checker on this Tumblr site now, it seems to check the standard pages and then click into each article and check them as well.

I don’t blame them. There’s no way that they can know that the text of this article will be duplicated on the summary page and on it’s own individual page  – but since I’m getting the data anyway, I can run my own check, and it can do it customised to my exact requirements.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Tag Cloud

%d bloggers like this: