Articles by admin

You are currently browsing admin’s articles.

Top Ten Grammar Peeves

I recently read one of those annoying graphics that are being ‘shared’ or passed-round Facebook.

What makes them annoying is not that they are faddy, inert, and positively dull, but that they are low resolution JPGs of plain text which have been resized to look like arse.

Anyway, the latest – which I simply couldn’t let lie – was this.

Top Ten Grammar Peeves

  1. It’s “I couldn’t care less.” “I could care less” means that you actually do care.
  2. An apostrophe is never used to form a plural.
  3. “Literally” means it actually happened, not that it figuratively happened.
  4. “Loose” and “lose” are two different words.
  5. “Your” and “you’re” are also two different words.
  6. “Their,” “there” and “they’re” are actually three different words.
  7. “nonplus” does not mean what you think it means.
  8. “Affect” is a verb. “Effect” is a noun.
  9. “It’s” is short for “it is” and “its” means “belonging to it.”
  10. “Irregardless” is not a word.

So I read this and thought “nothing gets up my hackles like a pedant who is wrong”.

Firstly the phrase “I could care less”, whilst a little American in tone, is perfectly acceptable. In fact it is rather subtle. It means “it may be possible for me to care less, in which case I might; however I do not”. Such linguistic subtlety has clearly passed-by the writer of this little ditty.

Secondly why has the writer consistently included punctuation marks not relevant to the sense within the quotation marks? Fowler’s A Dictionary Of Modern English Usage states that “all signs of punctuation used with words in quotation marks must be placed according to the sense”.

As for “literally” meaning “actually”, what rubbish. It means, “in a literal sense” or “pertaining to a literal”. In fact my dictionary says it is often used as an acknowledgement that something is NOT to be taken literally. Such is the flexibility and subtlety of the English language, and any true lover of language will appreciate this, rather than getting annoyed by it.

The word “affect” can be a noun as well as a verb, and in this form is synonymous with the word “emotion”.

Finally the word “irregardless” has an entry in my Concise Oxford English Dictionary, an edition from about 12 years ago. If that doesn’t make it a word in some official sense, I don’t know what does.

Tags: ,

The Pluralist Paradox

Deep down inside of me, there is a swing voter waiting to get out.

A true British I-don’t-really-know-what-I-think voter, someone who could go both ways. Hell, I could go three or four ways.

I know, dear imaginary reader, you are thinking, “but how can someone so … so – political – how can you not be true and loyal to a single party?”

Don’t get me wrong. The swinger inside of me is not the typical British non-thinker. Not the common man on the street who waits until there is a critical mass of others to think on their behalf so they can chime in at the last minute and back the winning party. Not the fickle man on the street who just loves to complain about whichever party is in power and backs the opposition because, “there’s no possible way we could have four more years of the same old [insert current governing party here]“.

No, my swinging tendencies come from much, much deeper within me. My struggle is thus:

On the one hand, surely our socio-economic outlook looks far prettiest when people are allowed to do what they want whilst not harming others; a liberal, pluralist society? What is wrong for you might not be wrong for me, and therefore we should agree not to legislate for what you consider to be wrong, because it would be unfair for me. Instead we should just hang out / do business with people who have similar views to our own.

Of course we should have high taxes and good quality public services. This isn’t a matter of politics, it’s a matter of economies of scale: pooling resources allows us to reduce overheads. (I’m talking theoretically, of course.)

But on the other hand – and please excuse my Newtonian worldview (blame my Christian parents) – given that humanity, if left unchecked, tends towards selfish and greedy behaviour, perhaps after all it doesn’t look that fabulous when people are allowed to do what they want.

Here I cite the global financial crisis as being caused by unfettered or poorly-regulated capitalism.

Or what about society and the family? It is horribly non-liberal to interfere with matters of the family: married couple tax breaks between man and woman, making it legally difficult and expensive to get a divorce, reducing benefits to single mothers and punishing walk-away fathers who don’t take responsibility.

Whilst the above may offend our sense of social liberalism, let us hypothesise what their long-term effect on society might be, and therefore the effect on our economy and, eventually, our wealth as a nation of individuals. In economic terms, those societies defined by people pulling together (be this around the traditional unit of the family, or otherwise) are the ones that generate wealth for their futures. Those societies that are fragmented and socially disorganised are the ones that get poorer.

Given humanity tends towards greed and ultimately destruction (we agree on this, do we not?), and given in my example of the family above this would mean men will love women then walk away from them unless there is a compelling financial reason not to, perhaps a liberal society with fewer rules is a less successful, inferior one?

I used the construct of family to make my point, but this could equally apply to other constructs.

And this is the crux of my indecision. Conservative rule is too socially prescriptive. Labour rule causes too much fragmentation of society to allow for growth or progress. Liberal Democrat rule… well, our party just gets laughed-out or shouted-at most of the time.

What is my problem with political loyalty? Why do I mistrust staunch Labour party members, staunch Conservative party members, or staunch Any party members?

Is it that my world view espoused above is essentially flawed? Is it that I’m merely a liberal mind trying to get out of a conservative body? Or is it because my politics derive too directly from the existential questions in my head? Or is this a common Paradox of Pluralism?

Tags: , , , ,

eBay – the final straw

This will be a short post, in point form. Because the subject of eBay is a damned boring one.

The history of eBay as per Mat:

  • 2003 – eBay seems cool, amazing way of getting a bargain
  • “Buy it now?” – surely that defeats the object of an auction?
  • Hmm, teaming up with evil Paypal. Paypal evil because they pretend to be bank. Paypal not real bank. Paypal not registered with FSA. Paypal naughty people with bad reputation for freezing people’s accounts and denying them access to their own funds.
  • Wait, I am required to offer Paypal? Two sets of fees. Kidding?!
  • Wait, I am now required only to use Paypal? But – *voice wells up with tears* – they still aren’t even registered with the FSA …

… three years later …

  • Hrmm, at least I can still use this thing as a buyer to consume disgustingly cheap electronic accessories from Korea or Japan
  • What’s that you say? A replacement battery for my camera that lasted 4 times as long as my original Canon one, costing less than a tenth in price including delivery from Taiwan?! A USB cable car charger thingy for £0.26 plus £0.85 postage? All hail the global free market! (Gah, I hope nobody was … like … tortured or abused during its production. Right?)
  • I find the security features of this site increasingly … draconian? Verify by SMS text message every time I log in? Automatically logged out after 10 seconds of inactivity? Purlease!

… final straw …

  • Ok I really need to sell something. Start writing auction. Craft the wording. Wait, I haven’t checked the fees in 7 years. Let me check the fees.
  • TEN PERCENT of final value? As in, TEN? 10%?
  • PLUS AN INSERTION FEE?
  • Plus other fees for screwing with my listing, allowing big photos, and making it purple and bold and shit?

It appears there are alternatives to the monolithic beast that is eBay. I shall be investigating those.

Maybe even one that allows me to interact in such a way with my customer so as to allow them to actually pay me with real money?

If Facebook wants to be the social ‘platform’ on which the web resides – a grand vision, but an attainable one – it had better start being nicer to web developers.

For years, Facebook has been a taker, not a giver. What other platform begs you to feed information into it in the form of personal user data, communications, shared web content (and its corresponding metadata), provides proprietary mechanisms for you to identify your own independently-hosted web content to Facebook, and then refuses to let you feed anything out again except by using a tiny suite of ‘widget’ style, iframe-based pieces of javascript: unstylable, uncool, and uncooperative. God forbid you should try to scrape anything to create your own feeds from these stubborn widgets – or from anywhere else – lest you put your own Facebook account in jeopardy for violating their terms.

And should you ever try to interpret the meaning of anything that isn’t ‘being a friend’ – for example you need to engage users with your company – you really must let Facebook call the shots on these interactions, too. It was only a year ago Facebook decided you would rather “Like” an entity than “Become a fan” of it. And now – subscribe? Is that the same as like? Is it similar to what you do with an RSS feed? I don’t have a problem with the evolution of change, but it’s frustrating seeing businesses having to tweak their social media paradigm just because Facebook didn’t get it right first time.

Facebook has taken a lot of unfair flack in the last decade, mainly because of their refusal to be pigeonholed into either a platform for private data (e.g. email) or one for public data (e.g. blogs). Despite a number of iterations in its privacy interface (ranging from the bizarre/arcane to the really-quite-sensible), Facebook still struggles to convince its users that controlling the privacy of their data is not exactly rocket science. It was solely because of its popularity, and the fact it became lowest-common-denominator for personal communications online (read: “it attracted stupid people”) that Facebook suffered an exponential amount of bad press regarding its ‘security issues’. I shudder even writing those words, for one thing Facebook has not had major PR problems within its lifetime, at least as compared with any other social network you care to mention, is security – in the technical sense. It’s merely the media’s interpretation of the word I’m using here.

Of course, Facebook was absolutely right to keep strong tabs on its data and interface early-on. I’m sure it wasn’t as much a branding reason as the fact Zuckerberg didn’t want to get sucked in to the same issues MySpace did, where users were encouraged to ‘personalise’ their pages, ultimately resulting in a social network that was unusable for all.

But surely the time to open-out (I’m not talking about styling one’s profile page) came and went about three years ago? Instead, at this time, Facebook was buttoning-down its strategy so as to retain as much data as possible whilst making it slightly more interactive with the rest of the web. And so was launched the adoption of the “Social Graph” model.

I’m hoping that any changes taking place over the coming months may involve Facebook adopting an open standard. Not the kind of “open” mentioned in Zuckerberg’s blog post from a year ago, but a real kind of “open”.

Tags: , , , , ,

Amazing Robocopy

There was a time when my home server was a large computer with RAID drives and loud fans that stayed on 24/7. Gladly that time is no longer, and I’ve moved to a more power-friendly netbook-based thing which generates hardly any heat and can therefore be left in a small cupboard without airflow concerns. The disk performance is, naturally, horrific, but it serves files up fast enough for me to stream music around the house.

I now do pretty much all my photo editing work on my laptop, which I take around with me.

As I still have the requirement for archiving large volumes of data to the desktop PC with hardware mirrored drives, unfortunately this machine has to stay. But I can keep it turned-off for 95% of the time, and only turn it on to copy / archive my data to it when needed. As well as saving energy, this should increase the lifespan of my disks by a long way too.

My netbook also acts as a web server from which I am hosting a simple ASP.net application to send WOL (wake on LAN) magic packets to my desktop PC. This is secured using Basic Authentication over SSL. It is therefore now possible for me to securely start my computer up when I’m away from home, then log on remotely using RDP (or establish a VPN connection). However – this is unrelated to my post.

I tend to do the large file transfers when at home, and given the regularity of these transfers, I’ve set up a directory on my main laptop into which I can dump everything ready for transferring, then run a robocopy batch file to move this data across.

Cue: “Amazing Robocopy“. (This is a super batch file which runs the robocopy routine and does a load more. I may have wasted an entire evening writing this batch file.) Hopefully the above gives you the context you need to fully appreciate why I need such a thing.

“Amazing Robocopy” does the following:

  • Checks if the remote machine is on. If not, send a WOL Magic Packet
  • Keeps pinging the remote machine until it responds, then attempts to check the fileshare (CIFS) visibility
  • Verifies some level of stability to the network connection before continuing
  • Run the robocopy and log to a file.
  • Provide the prompt at the very beginning as to whether user wants to shutdown machine when done
  • Provide feedback throughout the process
  • All timeouts and response limits set using variables
The screencap says it all:

 

Amazing Robocopy goes something like this.

It may be best to paste this into notepad before attempting to read.

Notes: download Depicus Wake On LAN for command line, and put it somewhere in your PATH. You’ll need to set the WOL arguments manually, as they can’t be configured with variables.

Also you’ll need to set the robocopy parameters to suit you.

 

: This script does a basic robocopy, but also it does the following:
: - test connectivity to the machine (ping). Send WOL Magic Packet if it doesn't respond.
: - after WOL, wait until the machine appears on the network
: - regardless of whether or not we got the machine up using WOL, we still verify a level of ping response consistency before continuing
: - verify the network path is visible before continuing
: - prompt at the start whether you want to shutdown the machine when finished
: - no further prompts during the process

@ECHO OFF

: SET THE FOLLOWING VARIABLES

: Set robocopy destination into two variables. They are used individually to test CIFS and PING connectivity then combined to insert into robocopy command
: We'll strip quotes from the outsides of these, so feel free to use quotes around each varilable - or not.
Set remotemachine=mat-pc
Set copytoshare="f$\transfer\in"

: Time to wait after sending wol packet, before bothering to try to do anything else (approx startup time of remote machine)
Set timetowol=30

: If, after sending wol and waiting, there's still no response, we'll wait 1 second and try again.
: This is the total number of tries. TBH, may as well set this really high and Ctrl-C if you get bored.
Set pingfaillimit=25

: What do you consider is a good number of ping receipts to get back before deeming your connection to remote machine is stable? 1 = impatient. 10000 = paranoid. 10 = normal.
Set stabilitysatisfaction=10

: Once stability, by the definition of how many pings specified, is attained, we check the copy-to network path is available
: Frankly, if it isn't, it probably won't become available. And you'll have to figure out the problem separately.
: But this gives us the option to keep trying x number of times before continuing.
: Note: this number doesn't correspond to an amount of time. Windows is unpredictable when trying to check fileshares.
Set filesharefaillimit=15

: NO MORE VARIABLES TO SET NOW

CHOICE /M "Shutdown when done?
IF ERRORLEVEL 1 SET copyshutdown=1
IF ERRORLEVEL 2 SET copyshutdown=0

Set consecutivepingcheckcount=1
Set consecutivepingfailcount=1
Set filesharetestcount=1

:pingandcheck

ping /n 2 %remotemachine% | find "TTL=" >nul
if %errorlevel% == 0 goto reply

@echo No Reply on that IP! Tried %consecutivepingfailcount% of %pingfaillimit% times

IF %consecutivepingfailcount% == 1 (
@echo Let's try to WOL...

wolcmd.exe 001320164898 192.168.0.5 255.255.255.0 9
@echo OK ... WOL Magic Packet was sent. Let's wait for %timetowol% odd seconds then try to ping again...
ping 127.0.0.1 -n %timetowol% >null
@echo Fine - let's try to connect now.
Set consecutivepingfailcount=1
)

Set consecutivepingcheckcount=1
Set /A consecutivepingfailcount+=1

IF %consecutivepingfailcount% == %pingfaillimit% (
@echo We didn't get very far did we?
@echo I sent a WOL, waited, but nothing!
@echo Increase the pingfaillimit variable?
GOTO fin
)
goto pingandcheck

:reply
@echo IP Replied! Checking connection stability... %consecutivepingcheckcount% of %stabilitysatisfaction%
Set /A consecutivepingcheckcount+=1
IF %consecutivepingcheckcount% == %stabilitysatisfaction% (
@echo Connection appears stable!
GOTO checkfileshare
)
GOTO pingandcheck

:checkfileshare
@echo Now checking fileshare
IF EXIST \\%remotemachine%\%copytoshare% (
@echo Fileshare is visible. Good to go. Starting copying.
GOTO docopy
)
@echo Couldn't find fileshare - tried %filesharetestcount% of %filesharefaillimit% times.
Set /A filesharetestcount+=1
ping 127.0.0.1 -n 2 >null
IF %filesharetestcount% == %filesharefaillimit% (
@echo Failed to find the fileshare. Oh no!
@echo Maybe verify the fileshare is accessible yourself?
GOTO fin
)
goto checkfileshare

:docopy
:first three lines strip quotes if found then combine the machine name and share to give path
for /f "useback tokens=*" %%a in ('%remotemachine%') do set remotemachine=%%~a
for /f "useback tokens=*" %%a in ('%copytoshare%') do set copytoshare=%%~a
Set destination=\\%remotemachine%\%copytoshare%
ECHO on
robocopy f:\transfer\out\ "%destination%" /E /R:20 /W:10 /MOVE /NP /LOG+:logfile.log /TEE /XF *.bat *.log

IF %copyshutdown%==1 (
ECHO off
shutdown /m \\mat-pc /s /f /t 0
)

:fin

Tags: , , , , , , , ,

I just had a phone call that went something like this:

Man: “Hello, can I speak to the person who makes the decisions in your organisation?”

Me: [attempting to conceal sarcastic tone] “Well if you tell me what decisions you are talking about maybe I can help?”

Man: “The decisions regarding IT purchasing”

Me: “I’m sure I can put you through. One quick question. Do you make decisions regarding IT purchasing in your organisation?”

Man: [pause] “er… no, but … that’s not really relevant …”

Me: [impatient] “Well I am assuming you want to discuss the subject of making IT purchasing decisions in organisations, in which case I’m pretty sure the person who makes IT purchasing decisions in my organisation will only want to speak with someone who has similar experience in that area …”

Man: [pause. hangs up.]

Yes, I know. Utterly imbecilic of me. I was picked-on as a child …

p.s. this blog is now hosted on my new virtual server.

The Long Tail

I talked with the owner of my favourite pub in Cambridge last night. The pub shall remain nameless for reasons that will become apparent.

He refuses to sell Carling, Stella, Bulmers, etc. on tap. Instead he sells fine whiskeys and rums, real ale (offering 2 guest ales which change regularly), and decent ciders. His landlord and financial backing (brewery) insisted he sold the big brands, in order to have the pumps installed in his pub when they started. He agreed to the deal as he couldn’t afford to buy pumps himself, ordered a single barrel of Carling, didn’t connect it up to the pump, left it for a few months until the beer was out of date, and sent it back saying there was no market for it in his pub.

To this day he only sells decent, CAMRA-happy real ales.

In one sense, he was shooting himself in the foot. There is always a market for the lowest common denominator. To prove this, he sold Carling for one night for a trial, and apparently it sold far better than the other drinks put together.

But he then went on to say that he didn’t want that kind of person in his pub. Whilst you might think that’s a bit “Basil Fawlty”, it is now three years later and his pub is extremely popular. Instead of a television, they have live folk music and jazz nights, they sell the work of local painters and graphic artists, and the pub is very well-loved by locals. The locals in this neighbourhood are quite unique in that they consist of people like bow-makers, musicians, artists, and academics.

Although he still doesn’t make as much money as he would if he sold the popular brands, he also doesn’t have to deal with rude, drunken males (Stella), packs of abrasive middle-aged women (Barcadi), and the like. Instead, most of the people who turn up at 6pm are distinguished men and women who come with newspaper and conversation. Whatsmore they campaign on his behalf.

I’m not saying there is anything wrong with selling certain types of product to certain types of people. This pub is not at the very highest-end of the market in wine, for example. Nor does it shun the popular brands of bar snacks, as another example. It’s just that I was impressed by this pub owner’s vision. The fact that he saw this vision through means the local neighbourhood really benefits; localism has increased, people talk to each other more – which even has knock-on effects to crime prevention, and it makes accessible a sense of community that otherwise may not have been apparent. And community amongst the British middle classes – particularly in city life, is something that is so rare.

Of course it’s a well-known phenomenon that great businesses, however big or small, create their own market. However what impresses me is that in order to find your own market, part of this process is denying the existence of the market you don’t wish to serve. In a world that, given the chance, would rather drink Stella Artois, it takes a certain vision to carry-on with what you want instead of going with the economic flow.

It’s like the Radio 4 effect vs. the Radio 1 effect. Radio 4 caters for 5% of the radio-listening population (I made that figure up). But of those people, 100% would complain if the channel went off-air for a few minutes. Conversely, Radio 1 caters for 80% of the radio-listening population, but a far smaller proportion (2%?) would notice let alone complain if it were to go off-air.

I suppose in marketing terms, this effect is called the short tail vs. the long tail. I know where I’d rather be, in my life and in my work.

Tags: , , , , , ,

No2AV – more expensive

Doubtless you know the arguments for and against AV; I credit readers of this article with enough intelligence to understand the difference between AV and FPTP, as well as what it would mean in the bigger picture – how it would change politics over the course of a number of years, and over a number of terms and elections.

http://www.no2av.org/why-vote-no/

“AV is complicated and expensive”. Whilst the claim that AV might increase your council tax is something that technically could hold true, a little more probing shows that the cost of an election in its current form is negligible in comparison to the cost of many more meaningless things councils spend their money on. I don’t have figures for the 2010 election but for example, BBC cites that the 2005 general election cost more than £80m, whereas late last year Hertfordshire Council alone made savings of £150m to be had from an efficiency drive. (Source)

  • Cost of possible efficiency savings for one council: £150m
  • Cost of general election for whole country: £80m

Surely our national democracy is worth more than half the potential savings from a mere efficiency drive by one constituency in the home counties?

More to the point, democracy should have no price.

Cycling is for stupid people. My brief love affair with the humble bicycle officially ended tonight in Cambridge. There is something positively Darwinian about the concept of getting on a 30kg skeleton of poles and axles and thinking it’s somehow okay to share the same piece of tarmac with one-tonne lumps of steel travelling at 40mph (with Ordinary Human at its helm). It’s not. It’s a bloody stupid idea and I’ve learnt my lesson.

To the taxi driver on Mill Road who didn’t bother to pull out when overtaking me tonight, I really, really appreciate that you didn’t kill me, and it was good that you stopped and calmly wrote down your details for me as I was in shock, however driving into me in the first place, when there was absolutely no obstruction on the other side of the road, was stupid and careless in the extreme and you must be really damned stupid because I’ve never not given a cyclist a huge wide berth when driving in MY car and overtaking a cyclist.

And to the passenger of the taxi who got out to tell my girlfriend who was ahead of me on the bike, before I had even got up from the pavement, that my lights were obviously not powerful enough: you are a horrible insensitive woman and I hope our paths never cross in the future.

(To the nice girls who crossed the road and told me they saw what happened and gave me their numbers… thank you.)

Tags: , , , , ,

My background is music, my teens were spent in music lessons, music centre rehearsals, practising for gigs, listening to music, and my university studies were classical music.

My speciality is improvisation, and if you put me in front of a huge audience and gave me a grand piano and a song request of pretty much anything I could hum (especially something interesting like a jazz tune), I would confidently play the song without music, form my phrases correctly, play with the rhythms, and make a piece out of it. (A skill which is second nature to me, but seems to impress most non-musical people I know.) I am fearless when it comes to musical improvisation, and I know that small mistakes are sometimes what gives a piece character and spirit.

The same is not true of life.

Small mistakes – or forgotten thoughts – lead to lost sales, decreased efficiency, and generally adds to the feeling that there is something important that I haven’t thought of.

(A small example: having to go back to the supermarket because you bought all ingredients for an amazing recipe except the critical one.)

In reality the small mistakes don’t get in the way of my efficiency and rarely lead to lost sales.

It’s more that the fear of small mistakes, and I’m sure this is irrational, the fear of small mistakes is something that hovers over me like an impending huge mistake in itself, unless I have a mechanism to thwart it. Unless I have a tried and tested system.

GTD stands for “getting things done”, and the theory and tools are a very popular subject for discussion on websites such as lifehacker.org.

I have a strong suspicion that many people who place a little too much emphasis on searching for the perfect method of getting things done (rather than just… getting those things done!) have this same affliction.

To put it in a more positive light, I actually enjoy the process of recording tasks. It sounds ridiculous, but in the same way I get caught up with the intricate process of brewing my coffee, with the exact right brew ratios, water temperature, coffee age, pouring technique; I like to get a bit caught up in the process itself. Perhaps it’s because it gives me time to think about other things. Or perhaps it’s just how my brain is wired. I fought it for a while … futile.

By ‘caught up’ I mean that I sometimes stay up late reading the blogs of people who write various GTD (task list) applications, contributing to discussions, and the like.

I flip from one method to another. Windows application, iPhone application, application that syncs between Windows, iPhone, and ‘the cloud’, hosting own php task-list applications online, I even toyed with the “pen and paper” method, which is whereby you write a list on a bit of paper (or in a book) – magic I know.

(This didn’t work out for me as soon as I realised that I keep different writing books for different things, and that my Moleskine exists for me to brainstorm my life mid-week. It’s useful for drawing connections between notes, writing freestyle, and the like, but not appropriate for recording things in a running list whilst I am on a job, in bed, for good, in a searchable, archivable manner that you can come back to at any point.  Also I have this belief that paper should not be used for things that have to be properly recorded, due to their annoying habit of getting lost when you need them.)

I’m a GTD whore, and I often declare my allegiance to one application over another then change my mind.

I am currently using a sub-optimal solution on my iPhone that syncs with a cloud-based system that gives me access to my tasks on a laptop if I need. It’s extremely flexible, safe, and efficient, but sub-optimal for many reasons I won’t go into here.

I have compared tonnes of apps (for an idea of what I mean, see this list – I’ve looked in detail at every one of them myself, and spent many hours customising a number of them for my needs. Yes, I know. Not efficient).

I probably shouldn’t disclose here how many apps I have also purchased for this.

Confessions over.

« Older entries