Reading about dancing about architecture

Ages ago I asked on Twitter if anyone could recommend music blogs to read, because I felt a bit out of touch. A few people suggested sites and I meant to summarise the advice. And here we all are.

  • Pitchfork — I’ve heard Pitchfork referred to off-handedly as if it’s too popular to be credible and so, being afflicted with terrible reverse snobbery, I didn’t even read this one. Although I do find their Spotify app handy for ideas of new albums to try.

  • The Quietus — I have no frame of reference for these things. Is this like a less popular Pitchfork? Should I like it? What does it like? I ended up unsubscribing from it as the RSS feed only has brief summaries of each post.

  • Wondering Sound — Again, I’m not quite sure how this differs from the previous two but I quite like it. The RSS feed contains full articles, the design is nice, and I even found myself enjoying some of the writing, which is more than I hoped for. I’m still subscribed.

  • Popjustice — I used to subscribe to an RSS feed from here which was quite fun but I unsubbed because a lot of the posts assumed too much existing knowledge. It was like overhearing someone else’s in-jokes.

  • No Rock and Roll Fun — I’m still subscribed to this one. Fun, brief, a good old blog like they used to be.

(Apologies to the people who recommended these; I can’t remember who suggested which sites now. But thanks.)

It’s tricky though, this. These sites churn out loads of posts and I wasn’t interested enough to click on most of them to read further. I only want to read the posts about musicians I like, or ones I find interesting, or ones that I don’t know yet but might like.

But there’s no way of doing this except by going through everything. Even with a nice RSS reader, and only subscribed to two of those sites above, this feels more of a tedious task than if I was skimming through a paper magazine. My heart sinks as I see 35 new posts and I have to decide which to try reading and which to mark as read. It’s more of a chore than flipping paper pages until something catches my eye.

I think, also, I was hoping to recapture something from when I last regularly read any music press. But that’s like wishing I could grow back the hair I had at the time, and just as unlikely.

When I was 18 and reading Melody Maker in the library my horizons were narrow (or short? or close?). I loosely felt like I was in some kind of club. It was for me. The music news felt precious and rare. I could get interested in, say, Suede’s apparently amazing debut singles even though I’d never even heard them. I knew too much about the Scene That Celebrates Itself. I liked Mr Angry. I’d read overly long interviews with scruffy guitar bands that went nowhere. I would read reviews of albums and singles by people I hadn’t heard of just in case they sounded interesting.

Decades later my horizons are wider (longer? further?). I’m interested in more types of music, but less passionately. There are many, many more ways of reading about music. I’m not part of a particular scene or club. I can, if I want, easily submerge myself in more music news and reviews than I could ever read, and yet none of it feels like it’s just for me now. So maybe it doesn’t matter if I feel out of touch, and no longer know all of the backstories. So long as I can, somehow, keep finding new music, I can just listen to it, rather than read about it.

In Music on 30 January 2015. Permalink

Tech’s tunnel vision

A couple of days ago I linked to this post by Tim Maly which is full of interesting thoughts sparked by attending the XOXO conference. I wrote then: “Makes me want an at least partly explicit socialist / social democratic tech conference.”

Yesterday a friend asked me what I meant by that, so I had to spend longer thinking about it than the few seconds it had taken me to write the sentence.

While I frequently roll my eyes at the more extreme examples of the tech industry’s Randian selfishness and California Ideology thoughtleading, the homogeneity of the mainstream ideas seems just as alarming. Free market capitalism, to one degree or another, is the default setting and it’s hard to imagine alternatives.

In part, these are the times we’re living in (in “the West” at least). In the UK the three main political parties offer variations on a theme rather than drastic alternatives. I’m in my 40s and have no adult memory of a time before the 1980s, and haven’t lived in any countries that offer an even slightly different society (e.g., maybe the Nordic model). I find it really hard to imagine a different kind of economy and society; my brain has, by now, been wired to accept free-market capitalism, with slight variations on the amount of social saftey-net, as the default and only possibility.

The tech industry takes this tunnel vision even further, with its standard economic behaviours being more extreme and showing less variety than in business as a whole. Not all tech companies are funded by venture capital, growing as rapidly as possible, concentrating on growth over profit, and caring little about wider society, but enough of them that this is the default. You can do things differently, but it almost seems peculiar. You need a very good reason.

None of that should be a revelation of course, but I’m trying to explain why thinking of different ways of doing things is so difficult. The default stories are so strong, so ingrained, that even imagining viable alternatives is hard. But there must be alternatives; there always are. And the tech industry loves alternatives! Let’s disrupt!

Trying to imagine a tech conference that would embody an alternative viewpoint — a more “socialist / social democratic” alternative — actually seems like a good way in. I don’t have to imagine a whole new society and economic model, but only try to imagine what kinds of topics might be talked about at a conference along those lines. Some topics I quickly wrote down:

  • Different models for start-ups. Co-operatives. Employee ownership. Normal, slowly-growing, profit-making businesses.

  • Ruricomp — technology for people who don’t live in cities.

  • Technology for people who don’t live in the first world. (There’s a lot of them and they have a lot of technology, but most of us know nothing about it.)

  • What governments can do, should do, and are doing.

  • Websites that make the whole Web better. (To quote Tom Coates (PDF).)

  • New services that work fine on technology that’s been around for years.

  • Innovative ideas for improving genuinely public transportation (rather than private transportation or very expensive “public” transportation).

  • The benefits of unions, and how to start or join one.

  • Services designed for people who have little money.

  • Services designed for people who aren’t fully able.

  • Models for keeping services running over the long-term. (What happens when your company closes, or to your personal projects when you die?)

  • The state of technology and digital services in the NHS.

  • How to treat low-paid workers as humans rather than interchangeable meat robots.

This is a very mixed bag. You may be able to come up with more and better ideas. And I suspect a conference that included some or all of these topics could be utterly unbearable and full of tedious bleating people like me wanting to make the world a better place. I make me sick.

But I’ve realised that I spend a lot of time getting annoyed about things in this industry that annoy me, and I’m worried I increasingly define myself by the things that I don’t believe in. Not all of tech is terrible. There are plenty of decent people doing worthwhile things, whether traditionally “worthy” or not. I need to start noticing the things and ideas I do believe in, that I want to emulate, help or achieve.

I’m still fascinated by new technology and ideas and problems but the frame within which those are set is important. The default worldview of the tech industry feels constraining rather than liberating, and restricts the kinds of technology, ideas and problems that we think about. There are alternative viewpoints, even if they’re hard to imagine.

In Misc on 23 September 2014. Permalink

Booking reference

After the previous post’s long sequence of service design failures, here’s one little thing that should be easy to get right, and which causes incredible frustration at exactly the wrong moment.

When buying a train ticket online in the UK, in advance, you can choose to collect the ticket from a machine at the train station. You receive an email containing all the relevant details.

When you get to the station the machine offers this screen:

Photo of the screen

It asks:

Please enter your booking reference:

You check the email you’ve kept handy on your phone and look for the “booking reference”:

Email screenshot 1

There it is, near the bottom:

Your booking reference is 2106902679.

You type it in to the machine, although the input field is the wrong length, which is odd.

The machine rejects your booking reference.

You try again, because you must, but no joy.

In desperation you scroll through the rest of the email because you don’t know what else to do and your train leaves in a few minutes:

Email screenshot 2

Hmm. What’s this?

Collection reference: R2T4KB9C

But the screen wants the “booking reference”, which was the first number.

It’s worth a try…

Ah, this “collection reference” is the right length…

And, yes, the machine starts printing your tickets!

So, what the collection machine calls a “booking reference”, the email calls a “collection reference” or (in the subject line) a “booking confirmation”. And the email contains a “booking reference” number which appears to have no purpose, even though it’s the first reference in the body of the email.

When starting a project, and throughout its life, it’s important to ensure everyone involved calls things by the same names. I’m guessing that in this case different teams, or even companies, built the software that sends the emails and the software that runs the collection machines. Due to a mismatch of internal vocabularies the single piece of information the user needs at the most crucial part of the process has been muddled.

It’s probably a nightmare of laborious and expensive change request processes to fix this simple piece of wording, which has already been wrong for months, if not years. But that’s another issue.

In Misc on 12 August 2014. Permalink

Visit your nearest branch

Last week I spent a frustrating morning trying to open a business bank account. I assumed banks would make it as easy as possible and so I was surprised how frustrating it was. I’m easily put off by small but easily-avoidable annoyances and I found plenty of those.

I had no idea how to choose a bank and bank account. I don’t have any obscure requirements: let people pay me; let me transfer money; a debit/ATM card; online banking. Charges for business current accounts vary, but not enough to make a wild difference. I had few good reasons to choose one bank over another.


A couple of friends recommended Barclays, mainly because it can integrate with FreeAgent without going through a third-party service. It sounded pretty broken — one friend registered for both online and mobile banking, and with “data services”, but still needed to separately request a “phone banking PIN” to enable a feed into FreeAgent. But, once that was navigated, it apparently worked well.

Barclays logo

I wasn’t wild about Barclays. I don’t like their shade of blue, I don’t like their now insipid eagle/shield logo, and I still associate them with closing my first ever bank account in the 1980s over their support of apartheid in South Africa. But these days it’s just another bank, I guess.

You can start an application online but, for a limited company, you will subsequently have to book an appointment in a branch anyway. So, given the website said this:

Part of the Barclays site saying you can visit your local branch to apply for an account

at 9am I was in my local branch, Moorgate. “If they can’t open business accounts in the City of London, there’s no hope!” I thought to myself. They can’t, there wasn’t.

A polite man insisted that I would have to call a central Barclays phone number to book an appointment at the branch in which I was standing. I couldn’t speak to anyone at the branch, not even to arrange when to come in later. But it says “visit your nearest branch”! Why does it say that?! I was amazed and annoyed and walked out.

I still don’t understand. Even if I could have made an appointment in the branch, to see someone in that same branch later, why tell me to visit the branch to do so? Only tell me to visit the branch to apply for an account if I can apply for an account when I get there!


In the 1980s, when I closed my Barclays account, I walked up the high street into NatWest and opened one there. So I’m slightly more fond of it than most anonymous international banking corporations. Plus, out of all the banks, I like their logo the most:

NatWest logo

Despite their current credit card advertising campaign which emphasises simplicity, fairness and transparency, finding their business banking charges wasn’t simple or transparent, being buried in a PDF and not listed in any navigation. But still, two years’ free banking was at least fair.

(Incidentally, that URL for NatWest’s “Start-up package” is 780 characters long. Which is an improvement on the 1,126 it had when I looked last week.)

NatWest screenshot

If I read this correctly, applying online means waiting five working days for a further discussion. Or I could call them or visit a branch. Having been bitten by Barclay’s branch-visiting, I called the number helpfully displayed on the right.

But, ha ha, despite being displayed in a box headed “Apply now” on a business banking page, that number is not the number to call if you want to apply for a business bank account. The woman who answered gave me the number to call (she couldn’t transfer me).

I pressed on, and called the new number. Before we could get started on the application process, the next woman had to read some standard stuff out to me in the “I am reading this” voice. The first of these was that in 2016 my account would move to a new bank, Williams & Glyn. Oh. I’ve just made the arbitrary decision to bank with NatWest and now you’re telling me I can’t. Hmm.

Unable to make snap decisions on the phone, I thanked her and hung up. Next!

Metro Bank

A couple of friends said they’d walked into branches of Metro Bank and opened up accounts on the spot. This sounded good and in line with Metro Bank’s aims of shaking up the system, gently.

I routed round an initial hiccup — the link Google displayed for Metro’s business banking was a 404 — and checked that I should be able to open a business account by walking into a branch. Yes! “Please visit your local store to apply for this account.”

I walked to the Cheapside branch around 10am and entered their small, quiet replica of a Reno casino. Unfortunately, a helpful woman told me that the “CSR” was busy at the moment and I’d have to wait for 90 minutes. Oh. This is the downside of inviting people to just walk in: you need the capacity to handle them. There seemed to be more staff than customers but they must have been the wrong kind of “CSR”s. So I left.

The day was far too hot already and I was getting nowhere, with something I thought would be simple. I couldn’t believe it was so difficult.

Falling Down starring Victor Meldrew

Cater Allen

A couple of friends said they were with the Cater Allen private bank, but their business bank account page didn’t really encourage me to simply open an account. A lot of text, talk of “an Application Pack for your client”, a lot of documents to download, and a ten day processing time.

I moved on. I really wanted a bank to sell itself to me, simply, and make it as easy as possible for me to become their customer.


Someone suggested Triodos, who I’d forgotten all about, despite having had a savings account with them for a while. They’re an ethical bank, who do good things, and have a business current account. You don’t get a credit or debit card but I was past caring, and figured I could get a credit card elsewhere.

To apply for an account you have to call to make sure your business is suitable, which is fair enough. I called, had a chat (“Well, I’m not planning on making websites for arms dealers, ha ha!”) and was emailed a link to the application form.

For some reason this link, at the end of a long email, wasn’t clickable. But, undeterred, I worked out how to get to the form. This is, however, as far as I got. The form wanted to know “the main activities of your Organisation” and “your main sources of income”. The first field needed at least 50 words (or, as the error message put it, 200 characters), and the second needed at least 25 words (or 150 characters). It’s just not that complicated. I design and make websites, people pay me money to do so. At this point, and given the limitations of the account, I was beyond making up nonsense to please a form’s validation algorithms and closed the tab.


Belatedly, I remembered another friend saying Santander had been quick to set up their business account. So, despite disliking their stagey, awkward adverts featuring sports people, and their renaming of the combined Abbey National and Bradford & Bingley, I just wanted a bank account.

Ignoring the forest of stock photography showing industrious white people, I quickly found their current account for new businesses, for which I could apply online, with a nice clear list of requirements. The form was simple, with a minimum of onerous questions, and it was soon completed.

Within 24 hours I received an email telling me my new account was open! Easy! The email said:

We’re pleased to let you know that we’ve opened a Santander Business Bank Account for you and you can start using your account straightaway.


Your account is now open and ready for use…


Except there was no account number or sort code, and the details for accessing online, mobile and telephone banking would be sent in two letters within 7 to 10 days.

So the account is only “open and ready for use” in the sense that it exists as an entry in a database somewhere. And I can only “start using your account” in the sense of… I don’t know. That just doesn’t make any sense.


Still, it’s done. Or soon will be.

A lot of the above is going to seem petty. And, yes, it is. I could easily have ignored many of these little difficulties and applied for an account a few hours sooner than I did. But no one should have to encounter these difficulties.

They’re mostly easy things to get right if you want to make it easy for people to use your service. Putting the correct phone number on the page. Giving people the correct instructions. Making it easy to find information and fill in forms. It’s not just making good websites, it’s about making the whole company and service work how someone would expect.

Banks seem to be like electricity suppliers or mobile phone companies. They’re desperate to seem special but for many customers they’re simply interchangeable utilities. But we have to use at least one of them. There’s a huge barrier to new companies entering the market and doing things in new ways. Consequently we have to put up with the above petty silliness, clunky online banking, Verified By Visa, and everything else that could be done so much better if only the services focused on the people who use them. Or want to use them.

Further reading

In Misc on 30 July 2014. Permalink

Mappiness development

In the previous post I wrote about the chart for analysing Mappiness app data I made. In this post I’ll write about the process of making it. It’s like a director’s commentary!

As I wrote, I started this as another way to get better at using D3.js but it turned out that the bulk of the work was nothing to do with D3. I don’t know how long I spent on the whole thing, from initial idea to launch, but I’m guessing it would add up to maybe six full-time weeks? Eight? Wild guesses. But, looking at the thing it seems like way too long.


Near the beginning I remember thinking, “Ah, I see: when doing some kind of data visualisation, a large chunk of the work is in preparing the data, rather than working on the display of it.” That thought made sense early on because, even though the data was in decent shape I did spent what seemed like a long time working out what to do with it and how best to use it with D3.

But from this end of the project, with it finished, that data-wrangling seems like a small proportion of the overall project. Even displaying the data on a chart doesn’t seem like a major part of the work. Designing and developing everything around the chart — the descriptions of the lines beneath, the controls to show/delete/edit/duplicate them, and the editing process — must have taken at least half of the time. Which is annoying. Given I was aiming to improve my D3 skills, I’ve spent an awful lot of time laying out forms, processing submitted data, updating HTML, tweaking the interface design, etc.


On the plus side, I am definitely more comfortable with D3 than I was last time around. Admittedly, another line chart isn’t stretching my skills hugely after the previous one, but there were a number of tricky (for me) issues I managed to figure out without resorting to asking on Stack Overflow. This is definitely progress.

One of the nicest things about the chart is the small “brush” chart that lets you select a focus area for the large chart. I can’t claim much credit for this because it’s a built-in D3 component, but it does highlight one of the things I find odd about D3. If I’d wanted to build something like that from scratch I’d barely know where to begin. But because the component existed I could follow the example, read a couple of blog posts, tweak a few things, and there we go! There’s a big gap between being able to adapt an existing example and creating an element, or an entire form of visualisation, from scratch.

Similarly, because examples and tutorials are usually simple in order to explain a single idea they rarely take account of issues that crop up in real world usage. Even if you’re able to adapt an existing example, working out how to handle edge cases is another matter.

For example, although I got the brush to work fine initially, changing the data displayed (i.e., if the user adds or removes a line, or edits the criteria used to generate one) caused problems: the top chart would ignore the selected focus and redraw the whole chart; and if the new data changed the range of the x-axis, the selected area would no longer be in the right place or the selected area might move off the end of the small chart. All of this was solvable but there’s a huge difference between being able to adapt a D3 example and understanding enough to handle your real world usage. I’m getting better at the latter — I don’t feel entirely lost — but I have a long way to go.


It seems crazy to me that I spent so long on this thing that is going to be of use to a very small number of people. If any. If it was purely for my own use I could have made something that was Good Enough much, much quicker. But there’s something satisfying, to me, about trying to make something of a higher quality, that’s more presentable and useful. (This is the same reason I spent way, way too long on the unused Twelescreen.)

I’m always frustrated with how long graphic/UI design (as opposed to technical/code design) takes, and it’s no different if you’re doing the design with code rather than, say, Photoshop. For example, figuring out exactly how the show/delete/edit/duplicate controls should function and present themselves, and managing that nicely in the code, took many iterations and corrections beyond the point at which I had some rough, uglier controls “working”. But that polish, working out the UI logic (both visible and behind-the-scenes), is enormously satisfying, even while it’s frustratingly time-consuming.

And then there are entirely unplanned chunks of work that only seem necessary as the project goes on. It was only when I’d nearly finished that I realised only Mappiness users would be able to even see this thing I’d spent weeks on. So I decided to provide an option to have a go with random data. This ended up being a couple of days fiddling with code to generate data that, while random, was mostly believable. It’s a persona, a fake individual who is less happy at work than at home, who enjoys being with their partner and kids, who is a little more tired early and late in the day, who eats at meal times… this unexpected bit of work was good fun, a nice thing to crop up near the end of the project.


But there were many points where I wondered, “Why on Earth am I plodding on with this very work-like project when I could be sitting outside in the sun?” But I concluded that this is what many hobbies are like. A man in his shed making a cathedral out of matchsticks isn’t solving any important problems, and only a few people will ever see the thing, but while the process is sometimes tedious, overall it’s satisfying.

Similarly, I enjoy the doing of programming, improving skills, doing a good job, making a thing, even if it’s of little actual use. If this had been a client project it would have been finished more quickly, with more compromises. But with no client, no budget, and no deadlines, I could take as long as I wanted and get pleasure from the process of deciding how best to do everything, to keep trying things until I was satisfied, and to simply enjoy the process.

Having said that, this was very much a “work” project as opposed to a “fun” one. The initial aim was to improve my D3 skills and I only worked on it during conventional working hours. There are other projects I’d prefer to be working on which somehow seem “less worky” and so I feel guilty spending time on them unless it’s evenings and weekends.

I’m not sure I’ve got this right. I don’t subscribe to the “Just do what you love!” mantra as a recipe for life or career success but I sometimes wonder if I’ve got the balance wrong. Sometimes there’s too much time-consuming frustration compared to satisfaction. Maybe I’m trying too much? Maybe I need to know when to stop something sooner (or at all)? Maybe next time.

In Projects, Web Development on 24 July 2014. Permalink

Mappiness chart

Mappiness is a free iPhone app that helps you manually track your happiness, relaxedness and awakeness in different situations over time. I’ve made a tool that helps users examine their data more closely (or you can try it out with random data).

The Mappiness app itself shows a series of graphs of your data but these don’t allow for detailed analysis of the data. And, once you’ve been using the app for a long time, there’s too much data to see clearly on phone-sized charts. However, the app gives each user a code that allows them to download their data in a variety of formats from the web, so I decided, as another exercise in using D3.js, to make my own chart.

If you use Mappiness you can enter your personal code and, if you’re patient, your data will be downloaded and displayed. Alternatively, if you just want to see what the chart looks like, it can generate some semi-random data to play with. (The data isn’t entirely random, but tries to emulate a possibly-believable person.)

Screenshot of chart

You can duplicate lines and edit them, to change either what’s displayed (happiness, relaxedness or awakeness) or the criteria used to choose which points are shown. This is based on the data entered with each response in the app, and lets you filter by the people you were with, the kind of location (e.g., indoors, at work, etc.), the activities you were doing at the time, and any text notes added:

Screenshot of chart with two lines

To see more detail in the large chart, you can use the small “brush” or “scrubber” chart below to select a region to zoom into. Very useful when you’ve accumulated a lot of data; this chart shows a year’s worth of data, but I have nearly four.

Screenshot of zoomed in

The screen to edit a line’s criteria hopefully makes some sense to people who are familiar with Mappiness — all the terms used are identical to those in the app. But even so, as simple and clear as I tried to make it, I’m sure it’s a little baffling:

Screenshot of the edit screen

But still, this does provide for much, much more fine-grained analysis of one’s data, which is surely the point of “life-logging” tools like Mappiness. There’s no point collecting all this data without reflecting on it in aggregate. Am I more happy at work or home or elsewhere? When listening to music or not? Do I actually enjoy watching TV?

Of course, we have to be careful not to confuse cause and effect — maybe I only watch TV when I’m fed up, rather than TV making me fed up. And the fact that one of my most happy-making activities is apparently drinking alcohol is more a factor of the occasions in which I do it: when chatting with friends.

So, if you use Mappiness, or are just intrigued, give it a whirl.

I’ve also written more about the process of building this.

In Projects on 24 July 2014. Permalink

Famous exes updated

Thanks to some suggestions, I’ve added a few more songs to yesterday’s post about songs written from the point of view of someone whose once-girl/boyfriend is now famous. You can jump straight to the new songs here.

In Music on 2 July 2014. Permalink

Recent comments on writing

Writing archives by category