Archive for the 'Opinion' Category

Facebook IPO Fail?

May 23 2012 Published by under Opinion

This is really starting to bug me. Nearly a week after Facebook’s IPO and the papers are still saying that it was a failure. It wasn’t, or at least, whether or not is was depends on who you are. And I suspect you prefer the winner to the so-called losers.

Let’s start with the basics. What is an IPO? It’s simple: a company sells a part of itself in exchange for cash. In the physical world, that’s the same as me making something and selling it to you. For the sake of this example, let’s say that I sell it to you for £1.

And what’s the share price? Well, once the IPO has completed, someone else can buy a share from you. The share price is basically just the price that you can agree on. Maybe you could sell it for £1.20. In this scenario, you just made 20%. Well done you.

And what about me? Well, I’ve made nothing more.

Let’s apply that back to Facebook. The initial price was $38. That’s the amount that Facebook got for each share. Let’s say that, as many expected, the share price rocketed to $50. Who benefits? From my example above, it should be clear that it would mostly be the people who bought the shares. The banks, the speculators. In short: not Facebook.

It doesn’t take a lot of thought to realise why the share price would rise so rapidly on the first day. Is it because the value of the stock increases rapidly in only a few hours? Or is it because the stock was originally underpriced? Contrary to what you read in a lot of papers, a rapid rise on the day of the IPO really means that the banks did a poor job of pricing the shares and that the company made far less money than they should have.

(To be clear, Facebook benefits from having a higher share price over time. I’m just talking here about the price rocketing on day one.)

Facebook wanted to get the most money possible out of the shares that they were offering. It turns out that the did an excellent job. They sold them for $38 and by the end of the day the market pretty much agreed. They left very little money on the table.

So unless you feel sorry for the banks or the speculators who failed to make a quick buck, the Facebook IPO was actually pretty successful.

No responses yet

Blocks, both technical and mental

May 05 2012 Published by under Opinion

Blocking content from the Internet is getting a lot of press of late. The last couple of weeks has seen the Pirate Bay being blocked by a number of large ISPs and debate over whether the blocking of “adult” content should be opt-in or opt-out.

Unfortunately the enthusiasm to “protect the children” and “protect the copyright holders” seems to have pushed aside much of the debate of whether we should be doing this at all or whether it’s practical.

Whether we should be doing it or not is political. I have my opinions1 but what I want to concentrate on here is whether or not blocking such content is actually possible.

There are a number of different ways of vetting content. They’re not necessarily mutually exclusive, but they’re all deeply flawed.

First, a common one from politicians: the Internet is just like TV and cinema:

Perry said that she has been accused of censorship over the campaign, but argued that the internet was no different to TV and radio and should be regulated accordingly.

No, no it isn’t. There are a handful of TV channels, even taking cable and satellite into account, and a relatively small number of movies released every week. It’s practical to rate movies. TV programmes are distributed centrally, so pressure can be placed on a small number of UK-based commercial entities when they do naughty things.

The Internet is very different. Firstly, counting the number of web pages is rather harder. This is what Wikipedia has to say:

As of March 2009, the indexable web contains at least 25.21 billion pages.[79] On July 25, 2008, Google software engineers Jesse Alpert and Nissan Hajaj announced that Google Search had discovered one trillion unique URLs.

Note that even the smaller number is from three years ago. I’d bet that it’s not smaller now. Clearly the same system of rating an regulation clearly isn’t going to work on that scale. And even if it was possible to rate each of these sites, the UK government has little leverage over foreign websites.

There are basically three ways to automate the process: white list, black list and keyword scanning.

A white list says “you can visit these websites.” Even assuming no new websites are ever added and no new content is ever created, rating those 25 billion pages is not practical. I don’t think we want an official approved reading list.

A black list is the opposite: “you can visit anything except these pages.” We have the same scale problem as with white lists and a few more. Much of the Internet is “user contributed” and it’s not hard to create new sites. If my site is blocked, I can create a new one with the same content very, very quickly. Basically, there’s just no way to keep on top of new content.

Keyword scanning is exactly as it sounds. Your internet traffic is scanned and if certain keywords are spotted, the page is blocked. It’s automated and dynamic, but what keywords do you look for? “Sex”? Well, do you want to block “sex education” websites? “Porn”? That would block anti-porn discussion as well as the real thing.

The scanners can be a lot more sophisticated than this but the fundamental problem remains: there’s no way to be sure that they are blocking the correct content. Both good and bad sites are blocked, and still with no guarantee that nothing untoward gets through.

In all cases, if children can still access “adult” content with relative ease — both deliberately and accidentally — what’s the point?

Of course I’m not in favour of taking content without paying for it or exposing children to inappropriate material. But, to use a cliche, the genie is out the bottle. Like the reaction to WikiLeaks there is little point in pretending that nothing has changed or that the same techniques and tools can be used to fight them.

Instead, if you’re a publisher you need to make your content legally available and easier to access than the alternative. iTunes has showed that people are willing to pay. So far, you’ve mostly shown that you’d rather treat paying customers as criminals. That’s not helping.

As for protecting children, it all comes back to being a responsible parent. Put the computer in the living room. Talk to them. Sure, use white or black lists or filtering, just be aware that it can never be 100% effective and that not everyone has children that need protecting. Whatever the Daily Mail and your technically unaware MP says, you can’t say the connection is being checked, problem solved.

  1. I’m basically anti-censorship and in favour of personal responsibility. There are already laws covering the distribution obscene materials, why should there be restrictions on legal materials? []

No responses yet

Instapaper versus Pocket

Apr 28 2012 Published by under Opinion

Instapaper

  • The save page bookmark works with Google Reader. That is, it saves the link I’m reading rather than the Google Reader web page.
  • Page turn. Rather than display the page as a long, scrollable single page, Instapaper paginates the document. You can “turn” the page much as you do in iBook or the Kindle app.
  • Progress indicators. I like that it shows roughly how long a document is and how much has been read.
  • Clean, minimal interface.
  • The trick of reading the current page to make site like NYTimes (with page view restrictions) or LWN (pay walls) is a great idea but not completely reliable.
  • Recent updates have been less stable. Going from day to night mode — an otherwise nice idea — almost always crashes. Putting the app into the background often loses the current location (it returns to the end of an archived article).

Pocket

  • Brighter, prettier interface. Much nicer to use than Read It Later, at least the last version that I used.
  • Less app support.
  • Syncing articles is (subjectively) faster.
  • Stable.

Despite the longer list in favour of Instapaper I’ve been using Pocket more in the last couple of weeks. It’s the last bullet in both lists that’s the killer. The paywall-swerve, expensive fonts and even the Google Reader cleverness are all well and good, but if the app isn’t ready when I want to read it’s all for nothing.

No responses yet

Spectrum

Apr 23 2012 Published by under Opinion

You’ve probably seen that it’s the Sinclair Spectrum’s thirtieth birthday today. There are lots of great retrospectives — this is probably the best single source I read — so I’m not going to rehash all that. But I thought it might be worth a few words of my own.

Like many Brits my age, the Spectrum was my first computer. Technically it was the family computer, but after a few weeks I was pretty much the only one who used it.

I remember some of the first few hours using it. I remember, for example, ignoring most of the preamble in the manual and diving straight into typing in a programming example. Those who have used a Spectrum will realise that you can’t just type in code; you need to use special keyboard combinations to get the keywords to appear on screen. I didn’t know about that.

After a while I managed to persuade to let me type in the code. The computer didn’t really understand it and I didn’t know why. I can’t remember whether I found the right section in the manual before having to go to bed but even in my confusion I knew that I was hooked.

And really that was the start of my career in IT. I started really wanting to play games but I ended up spending more and more time programming and less and less loading Bomb Jack. Usually I saw something neat in a program and though “How do they do that?” Then I’d try to figure out what they’d done. I was quite proud of making some text slowly fade into view and then gradually disappear again. Obviously that was after the obligatory:

10 PRINT "Stephen was here!"
20 GO TO 10

I remember all that surprisingly well. Which makes the following line all the more shocking:

It may have been startlingly modern once, but at 30, the Sinclair Spectrum is as close in time to the world’s first commercial computers of the 50s as it is to the latest iPad.

The first commercial computers where created in the early fifties. The first computers — at least computers you’d kind of recognise as computers — were only built a few years before that. Computers are so powerful and connected these days that it’s difficult for me to remember what I even did with them. I wonder what we’ll make of the iPad in a few decades? I’m sure it’ll look just as dated.

The last thing I wanted to mention was about that weird, unique program entry system. In short, each key had a number of different keywords printed on it. The J key, for example, had LOAD (used to load a program from tape), VAL, VAL$ and the minus sign. When you entered code, the editor would be in one of a number of modes and, in addition to shift, there was a key called “Symbol Shift.”

I’ve never seen a sensible explanation for this. They all seem to say it was “easier” or a cue for users so they’d know all the valid keywords to Sinclair Basic. I never bought this. Is it really easier to remember a bunch of non-standard keyboard shortcuts rather than just type? Don’t think so.

And then when I was at university I did a course on compilers, the software that is used to turn human readable code into the binary gibberish that a computer can actually run.

The interesting bit was all around the grammars and recursive descent parsers and the mental challenge of writing a program that wrote other programs. But the first step of the process is called lexical analysis, which takes the jumble of letter that is your program and converts them into “words” that can be processed more easily, so PRINT is a keyword, 123.4 is a number and “Hello” is some text.

Given the resource limitations of writing a whole operating system and BASIC interpreter in 16k, my guess is that it was easier to write a strange keyboard entry system than a lexer.

Can anyone comment on the accuracy of this guess?

But back to nostalgia. From hazy memories, to university, to wild speculation and the iPad. We’ve come a long way. But it was the Sinclair Spectrum that started it all for me. Thank you Clive Sinclair!

No responses yet

Glitches

Mar 13 2012 Published by under Opinion

It started with this image. Or rather the glitch that you can see in the middle of the screen.

It’s one of the screens in a new app that I’ve been developing. There’s lots of hard stuff in there but this is the first problem that has really stumped me. What it appeared to be was this: a text view (UITextView) on a table (UITableView) showed a nasty glitch when you tried to place the curser in the text box.

First thoughts:

  • Transparency
  • Scrollview (UITextView) within a scrollview (UITableView)
  • Image background

So I switched off the transparency. (No effect.) I switched off scrolling while editing. (No effect.) I made the background boring. (No effect.)

I was stumped.

I showed it to some guys at the London iOS Developer Group meeting. They too were stumped. (This was a bit of a relief. It meant that I wasn’t doing anything completely stupid, which is always a risk.)

So I tried writing a question for Stack Overflow. And, as I often do, I stumbled across the solution.

Note that the text view has a small border and rounded corners? Yup, that’s the culprit. Or at least, some of that code is. Here are the two lines that do it:

self.layer.cornerRadius = 5;
self.layer.shadowOpacity = 0.5;

(There were quite a few other lines adjusting the layer too, which is what took the time to narrow down.)

It was nothing to do with the table view or the text view per se. It wasn’t even any of the visible transparency effects.

Of course, in the screen I have no need for a shadow, indeed you can’t even see one, so the solution was easy. Quite why this combination causes such a weird effect have no idea, but I’m glad that I found the solution.

(I raised a bug report with Apple: rdar://11041657.)

No responses yet

iTunes Match

Jan 09 2012 Published by under Opinion

It seems that there’s a large variation in people’s experience with iCloud and iTunes Match, Apple’s recently introduced service for making your entire music collection available across all your devices. At the risk of making things worse — since I have nothing conclusive to add — I thought that I’d add my anecdote to the collection.

Like most software — and especially Apples — it works best when you work in a particular way. It’s often difficult to tell how close your expectations are to the real thing until after you’ve handed over your credit card. But what I will say is that iTunes Match works pretty well if you want to do what I do. So if you read nothing else in this post, you should look at the next few paragraphs.

What do I want to use it for?

I have about six hundred albums, comprising over six thousand tracks. I mostly listen to a smaller subset but I often get an ear-worm and want to listen to a random track that I may not have heard for years. So on my iPhone I have a lot of music, but not all of it. Use case one for iTunes Match was therefore to be able to access all my music on my iPhone even though I don’t have the space for everything.

I typically don’t put any music at all on my iPad, since I use it more for movies than music. But when I’m travelling it’s occasionally nice to be able to rely on my iPads battery as well as my iPhones! So use case two is playing music on my iPad without explicitly copying any onto it.

(These last two are clearly variations on a theme, but the key point is that I don’t want to have to stream everything. When I’m at work I don’t always have internet access, but I can probably get WiFi access for a few minutes at lunchtime.)

Ten years ago I spent a lot of time ripping my CD collection. Most is in MP3 format at 160kbps, some is at 128kbps; the newer ones are reasonable quality AAC but, if I’m honest, there’s little consistency. Additionally, many tracks are of dubious quality, with dust and scratches contributing most of the glitches. So, use case three is upgrading my library to clean, high bit rate copies.

How does it work in practice?

The process is typically Apple, by which I mean works without very much user intervention and pretty smoothly.

It first scans your library, sees what’s already in the iTunes Store and then uploads any gaps. The scanning and matching is really quick. The upload depends on the speed of your broadband.

It matched around 5000 of my 6000 tracks, which is not bad going. However there were some oddities:

  • It was very inconsistent with spoken word tracks. I have a number of radio series — the Hitchhikers Guide and a bunch of Douglas Adams interviews, the Mighty Boosh — and some tracks were flagged as “Ineligible” while others were going to be uploaded
  • Some tracks that I purchased from iTunes a while ago were not matched
  • Some albums were only partially matched, despite the full album being available to purchase

The common element is that it’s not at all clear what criteria are used to make the match. Either Lala wasn’t quite as sophisticated as I thought or Apple have not fully integrated their software yet.

Whether these are problems or not depends entirely on what you want to do with the tracks. That the spoken word albums are (mostly) unavailable is slightly disappointing but not really a problem.

The iTunes tracks not being matched is, frankly, bizarre. Here you can see one track from an album “Purchased,” one “Duplicate” (it isn’t) and the rest were uploaded (i.e., not matched and a copy from my library uploaded to iCloud).

Still, neither of these issues stops all my music being available on all my devices — use cases one and two.

However the last point above is disappointing. Some albums match every track bar one or two. This means that it’s not possible for me to upgrade the whole album to a 256kbps AAC file. Not the end of the world but not exactly what I was promised.

In use

iTunes Match is mostly pretty seamless. You see all your music on all your devices. If the track hasn’t been downloaded, it appears with a cloud symbol next to the name. Click or press on the track and it plays, albeit with a short delay. iOS clients download rather than stream the content. The Apple TV just streams the music and videos.

Two surprisingly un-Apple-like glitches take the edge off the whole thing.

Firstly, not all the album art work makes it from my iTunes library to my iPad and iPhone. It’s a small point, but for a company that places so much emphasis on the aesthetics it’s unexpected.

Secondly, while it is possible to upgrade your low quality MP3 files it’s not entirely clear how to go about it. I guess I expected to see an “Upgrade track” or “Upgrade Library” or even a “Update to iTunes Match” menu option, but no.

I couldn’t see anything in the documentation either. I had to fall back on Google. The trick, it turns out, is to delete the file. Obvious, no? Then iTunes will show the same track but with a cloud icon to the right. Then you can download it.

Conclusions

So, overall, I like iTunes Match. It’s not without flaws, it’s undoubtedly a 1.0 release, but it’s already useful to me and I think it’s only going to get better. I guess the big question comes at the time next year. Will I renew the service?

No responses yet

RIP SPJ

Oct 06 2011 Published by under Opinion

Steve Jobs

It’s odd to feel a sense of loss for someone you never knew. The last time I can remember that this happened was when Douglas Adams died ten years ago. There are not many people like them.

What else can I add that has not already been said? Honestly, I’m not even going to try. Instead, here is a selection of links that I think hit the nail right on the head.

There are lots more, you could probably spend most of today reading them all if you tried, but those are probably the highlights of the stuff that I’ve read today.

One response so far

What’s wrong with Google+

Sep 27 2011 Published by under Opinion

I’ve been playing around with Google+ more-or-less since it launched, but I’m not sold on it yet. After a bit of thought, I think it’s because there’s a fundamental disconnect between the kinds of behaviour that it encourages and the kinds of behaviour that it’s actually good at. Or maybe I’m just using it wrong. Either way, I’ll explain my reasoning here.

First, I should describe my frame of reference. I use both Twitter and Facebook, but I like the former much more.

In Twitter, a message (tweet) is, to risk stating the obvious, a message. It’s text-only; multi-media is managed entirely by links. (They have started to implement their own media services, such as for pictures, though these are still, currently at least, just links to servers hosted by Twitter and are not special in any other way.) Replies are tagged — in that you can see which message it was a reply to — but they’re basically the same as any other tweet. Shared tweets — retweets — works in the same way: they’re tagged but otherwise appear just as another message. Relationships are one way, that is I can follow you but there is no obligation for you to follow me.

Facebook differs in both of these respects. First, not all messages are alike. It natively manages multimedia such a photographs, videos and links. Replies — comments — are also a special type of message and are displayed differently. Relationships are always reciprocal, which means that if I see your updates, you see mine. You don’t see posts from other users that you’re not connected to but you do see comments from them.

Facebook also has the concept of pages, which I’m going to ignore for the moment since it’s not how I normally use Facebook1. The gist is that while Twitter has one message type for everything, Facebook feels much more complicated.

Google+ tries to straddle the two with one-way relationships (like Twitter) and multi-media messages and comments (like Facebook).

To be clear, I don’t think that the Facebook or Twitter approach to relationships or messages is superior to the other. I think they’re geared towards different things.

I think it’s fair to say that the Twitter method encourages you to follow more people. The obvious reason for this is that relationships are only one way. I can follow a celebrity or a company that I am interested in but they don’t have to clutter their timeline with my comments about iPhone development or my life in London.

More subtle is that all the messages are about the same size. The advantage of this is that you can quickly skim large numbers of messages, only looking at the pictures and videos that promise to be the most interesting.

Google+ tries to straddle both, but I think that’s where it fails. Like Twitter, they encourage you to follow a lot of people but even following a fairly small number of users I find the flow of messages hard to keep up with. Since the whole message is displayed I, in some way, feel compelled to read posts that on Twitter I’d probably skip.

The screenshots below, from the Twitter and Google+ iPhone apps, illustrate what I mean.

Google+ iOS story view

This is the Google+ view. I see a single post and two out of nearly fifty comments. Of the people that I follow on Google+, this, I would say, is pretty typical.

Twitter iOS tweet view

And this is Twitter, where I see four tweets. This arrangement is not uncommon, though I often see more tweets than this.

And then after the posts there’s the comments. On Twitter I only see replies by people I already know. If I see a post by, say, Robert Scoble, do I really need to see a hundred comments by people I don’t know? Chances are good that I might want to see comments from people I know but probably not complete strangers.

Facebook solves the problem by reducing the probability that you’re going to have a few hundred comments on a post. If you “only” have a couple of hundred friends, it’s pretty unlikely that every one of them will comment! If you have a hundred thousand followers that does change the dynamics.

(A counter-argument would be that this is a good way to find new users to follow. However, I think the clever thing about Twitter is that these other comments are still public and can be viewed, it’s just that by default your message stream is not cluttered with them.)

In short, the simplicity of Twitter is often seen as a disadvantage but I think it works remarkably well. Facebook has a different goal — closer relationships with smaller numbers of users — but also seems to do pretty well on that front.

Google+, by trying to facilitate both uses cases, seems to do neither quite as well.

  1. Though you’re welcome to visit the pages for my apps, Yummy and www.cut. []

No responses yet

iOS Developer Program: from individual to company

Aug 30 2011 Published by under Opinion

I thought it was worth writing about my experience converting my iOS Developer Program account from an individual to a company since a lot of people on Twitter were taking an interest. I can’t claim objectivity or that my experience will mirror yours, but hopefully you can be better prepared than I was.

First things first. Can you even make the transfer? Despite claims to the contrary, it is possible. I think the process is often confused with the ability to move applications or whole accounts between companies (which isn’t currently possible).

It’s all covered in the FAQ which reads like this:

If I enroll as an Individual, can I change to a Company later?

To convert your iOS Developer Program Membership from an Individual to a Company please contact us. As part of the conversion process, you may be asked to submit business documents proving your company’s identity.

As the link in the FAQ requested, I send an email using the “Contact us” form. Just over two business days later they replied saying that I needed to give them a call. It’s not clear why they couldn’t have just said that in the FAQ!

The next morning I rang. They answered immediately but it was a poor line, though this could have been Skype. Despite that the call only took a couple of minutes.

He explained that the provisioning portal would not be available while the process was being completed and that I would not be able to upload new binaries, either updating existing applications or creating new ones. This could take anywhere from a few days to a few weeks.

Sure, fine, that’s what I was expecting. He said I would get an email in a few minutes; I should follow the instructions on that.

Knowing that I wouldn’t have access to the provisioning profile, I updated my certificates and was pretty confident that I wouldn’t need to make a new release for a few weeks.

The email came pretty much immediately. There’s some web form to fill in. Now I’m back full-circle. Why did I need to call if I need to go to a web page to start the process?!

The form requests the kind of information you’d expect: company name, address, names/addresses of the people with legal authority over the company. I was expecting to have to give the company number, but the didn’t ask for that at this stage. And I wasn’t expecting the company website URL to be a mandatory field, but it was. (I created a temporary Google Sites page for the purpose.)

Clicking submit, Apple now say that they will review the application.

They did not, however, tell me that I would effectively no longer be a paid member of the Developer Program. This meant that I could not access the iOS5 betas that had just started circulating. I had already installed beta two on my iPad and a matching version of the SDK on my MacBook, so it wasn’t too bad initially. I would revise this opinion later on.

A couple of days later, Apple requested information about my company. By fax. Here’s a company that thinks that DVD-writers are last years technology and it’s insisting that I use a fax machine to communicate with them!

Dilbert.com

I replied to their email, including their reference number, attaching an electronic copy of the documentation that they had requested. I offered to send a fax if that was not acceptable.

A couple of days later I received an acknowledgement from Apple, so I assumed that all was okay.

Weeks passed.

(Okay, that might be a little melodramatic.)

No access to iTunes Connect was a little inconvenient but things got worse at the beginning of August when iOS 5b2 expired meaning that my iPad was unusable.

I pinged an email to Apple asking about the progress of my application but received no reply.

I think that I was remarkably patient under the circumstances. I waited another three weeks before I sent another message. And then, poking around the parts of the Developer Support website that I could still access, I found that there was a ‘Contact us’ form with a specific ‘Let me know about the progress of my enrolment’ option, so I sent a message from there as well.

That was on a Friday evening. I’m still not sure what hours they work — whether the have local teams or only operate on US hours — so I wasn’t expecting anything to happen immediately.

On Monday, just before nine in the morning as I was heading into my day-job, I got a call from an unknown US number. It turned out to be Apple.

The good news was that my transfer had been approved. I would need to accept the Developer agreement again — last time it was for me as an individual, this time for me as a director of my company — and then I would be all set. There was no acknowledgement or apology of the amount of time it had taken and I didn’t feel like pushing the point. I assume that one of my messages prompted the call and the approval, but whether my virtual prod was actually required or not is anyones guess.

I accepted the developer agreement and immediately got some of my access rights back. I could access the Member Centre for example but it took until later the following day before the App Store showed my company name. Shortly after that I got full access to iTunes Connect again.

So, in short, the process is both possible and works. If I had to offer any advice, I would suggest assuming that the process could take a couple of months and that during that time you would have no access to anything currently covered by an NDA, including beta releases and iTunes Connect. If it goes quicker for you, great. If not, at least you’ll be better prepared than I was.

One response so far

Do Apple take 40% in the EU?

Jul 26 2011 Published by under Opinion

If you look at the sales reports from iTunes Connect, it seems that Apple are taking nearly 40% of the sale price for downloads made in Europe. Of course they claim to take 30% and, indeed, that’s exactly what you see in the US store.

So what’s going on?

The good news is that Apple are not screwing you over. The numbers do add up. The difference is that prices in the US App Store do not include sales tax (VAT) but those in Europe do. This means that before Apple take their 30% cut, they first take off the tax that needs to be paid. If that’s not clear, let’s work through an example.

I know that my app sells for £1.49 here in the UK. I also know that I get ninety-one pence from Apple for each sale.

If we take that £0.91 and add back the 30% that Apple take we get £1.30. Then we add VAT, which in the UK is 20%, and we get… £1.56.

Oh.

It turns out that downloads are billed from Luxembourg where the sales tax rate is 15%. Because both countries are in the EU there’s a reciprocal tax agreement which means we don’t have to add UK tax as well.

If we do the same calculation as before but with a 15% tax rate we get… £1.49. Phew.

So there you go. You do get 70% of the money that Apple gets for each sale.

No responses yet

Next »