Best file system for your USB external drive

USB driveIt’s not unusual these days to have computers, consoles and tablets in the house, all running different operating systems. If you want your external drive to be interoperable between them, you’ll need to think carefully about your choice of file system. I’ve broken down some popular options here so you can make the best choice for your drive. (Note – many Android phones support USB On The Go, which means you can plug USB drives right in via an adapter.)

Windows Mac Linux Android Chrome OS iPad Xbox 360 PS3
FAT32 Yes Yes Yes Yes Yes Sort of [1] Yes Yes
exFAT Yes [2] Yes No [3] Yes No No No No
ext3 Sort of [4] Sort of [5] Yes No [6] Yes No No No
NTFS Yes Sort of [7] Yes Sort of [8] Yes No No [9] No
HFS+ No [10] Yes Sort of [11] Sort of [8] Sort of [12] Sort of [1] No No

  1. iPads (not iPhones) can read FAT and HFS drives via the Camera Connection Kit, but only photos and some videos. If you’re looking to access an MP3 or a Word document, you’re out of luck.
  2. exFAT works on Vista / Windows 7 / Windows 8, but XP needs this update first.
  3. Not by default, but you can add FUSE and read and write as usual.
  4. Windows can read ext2 / ext3 / ext4 drives, but only using 3rd party software like explore2fs, Ext2Fsd or Ext2IFS.
  5. Not by default, but you can enable read/write using OSXFUSE with fuse-ext2, or buying Paragon.
  6. Not on a stock Galaxy S3, but some custom ROMs do support this.
  7. Macs can read NTFS drives by default. You can enable writing to NTFS using OSXFUSE with NTFS-3G, or buying software like Paragon or Tuxera.
  8. On Android, the Paragon app will enable access to NTFS and HFS.
  9. This might seem odd, but it’s true – NTFS is not supported on the Xbox 360.
  10. Not by default, but you can buy extra software to enable it.
  11. Works for every flavour except journaled HFS+, which is read only. (Unfortunately, journaled HFS+ is the default for drives formatted with a Mac.)
  12. Works, but read only for journaled HFS+.

FAT32

If you buy a smaller drive or USB stick, it’s probably formatted by default as FAT32 because it is the most compatible – pop a FAT32 disk into pretty much anything, and it will just work, including devices not listed here like TVs or cars. However, there are some important limitations which mean that it’s not always the best answer.

  • The volume has to be smaller than 2TB. If your drive is larger, e.g. 3TB, it will need to be split into two volumes before the full size can be accessed.
  • Files on the drive can only be 2GB or smaller. (Hence, large video files or databases are a problem.)
  • It is the least fault tolerant of these file systems, so not a great option for storing important data over a longer term.
  • FAT32 is not open source (if that matters to you).

exFAT

exFAT is made for external drives, just like FAT32. It’s a newer standard, so it’s not as widely compatible, and it’s also Microsoft proprietary. However, it can deal with volumes bigger than 4GB and files sizes larger than 2GB.

ext2, ext3 and ext4

These three file systems are closely related and native to Linux and the open source world. If you’re an Ubuntu or Chrome OS user, these are the best options for you – Ubuntu formats drives by default in ext4.

NTFS

NTFS has been the default file system on Windows machines for many years, and Linux based systems can work very well with them – however, it’s still tough to use on a Mac.

HFS and HFS+

Journaled HFS+ is the default format for drives on OS X, but it’s hard to use on other systems.

What is the best solution?

Most people will still use FAT32. If you buy a smaller USB data key, that’s probably what it’s formatted as by default, simply because it works with so many systems. However, it’s not ideal, and the demands of bigger drives or better security may leave you looking elsewhere.

First, there are two alternatives to using an external drive. One – upload your files to cloud storage like Google Drive / Dropbox / Skydrive, and use their app on Mac / Windows / Xbox or wherever you need. Two – keep your files in the house on a NAS and access this via DLNA, Samba or even a specialised application like Plex.

Given how many different systems many of us use at the same time, choosing a file system should be easy, but it’s surprisingly tricky. It’ll get easier – as our internet connections get faster and more ubiquitous, cloud storage access will become the best solution for more and more of us.

How to acquire customers for your mobile app

As an EIR, I spend a lot of time talking to startups about their problems and how to solve them. I sat down recently with one of the Oxygen Accelerator teams to discuss the the biggest problem by far for any startup – customer acquisition.

Here’s an example flow of users for a generic mobile application:

We get an email address from a mailing list, send an email with a link, that link goes to a landing page, the user clicks a download link, doesn’t uninstall straight away, and does something that brings revenue. That’s an ideal scenario. The reality is that at each step, you get some percentage of people who convert to the next step, and some percentage that drop off. For example, if we email an app download link out, and 95% ignore the email while 5% get to the next stage and download, then this stage has a 5% conversion rate. Putting all the stages together forms a funnel. Our objective is to drive as much revenue add possible, and we do that in two ways:

  • Improve the conversion rate at every stage
  • Put more items into the funnel

Improving conversion rates

Your most dangerous weapon as a non-coder is a spreadsheet, so let’s unsheathe and wave it around. Here’s some sample data for the flow above:

Nothing radical, but it’s very important to keep and maintain your understanding of this funnel – edit it up as things change over time. A common question – how do you choose which events to put in the funnel?

  • You have to be able to actually measure them. For example, you can’t measure views on your app’s page on iTunes, even though you might dearly love to.
  • You should measure events where you have the ability to improve the conversion rates between them. Sometimes the conversion is out of your control.
  • Pick the right level of detail for you. If you can handle email send -> email open -> images downloaded -> link clicked -> landing page opened, go for it – or you can keep it simple.

More users into the funnel

Ideally, users would just appear at the left side of the funnel, waiting to be sucked into your engine of revenue. This does happen – it’s called organic traffic. You put up a website – people search, find you, and pop on. You put up a mobile app – people search on the app store, find you, and ping! Users. There’s a bunch of things you can do to help (e.g. SEO) but we’ll leave that for another post.

Your other option is to pay to get users in.

There are hundreds of companies out there waiting to sell you ways to do this – your job is to pick the one that gives you the best return. How do you do that?

  • First, calculate your customer LifeTime Value (LTV). The simple way to think about it is – what will an average paying customer actually pay me? If you are selling an app for $0.99, it’s $0.99. If you have subscription model, say $5 per month and you estimate your customers will stick around for one year, it’s $5 x 12 = $60. (For you pedants out there, I am ignoring the time value of money.)
  • Second – and this is the fun bit – work backwards through your funnel to understand the value of a customer at each stage.

So let’s say your LTV is $60. It looks like you should be paying a maximum of $ for a download. But wait! There’s a rule of thumb here, which is that your marketing costs should be less than 50% of this figure. Therefore, you should aim for these as your marketing costs – 60 cents for a download, 1.5 cents for an email, and so on. Remember these are maximum costs – you should aim for the lowest cost possible that converts well.

Speaking of which …

This model is not perfect

One pretty model that solves the biggest problem your startup has? Not so fast! There are some problems to bear in mind which relegate this from “manna from heaven” to “useful tool” status.

Firstly, there is actually more than one funnel, because not all users are the same. Practically, this means that your conversion rates will differ for different types of campaigns. I’ll illustrate.

Let’s say you run a CPI campaign, where you are paying some amount (let’s say $1) for an actual install of your app. Think about the flow for those users – perhaps they’re in the middle of playing Dungeon Keeper, and the app asked them to install an app so they can get a free powerup in the game. Fact is, they’re not interested in the app, they are interested in the powerup so they can slay all sorts of grisly monsters. So the chance of them converting from a download to revenue is pretty slim.

Now let’s say you run another campaign where you go to a club for people who are all about the service your app provides, and install the app for them. (I know it sounds theoretical, but amazingly it’s not.) The chance of them converting from download to revenue is very high.

You can handle this by thinking hard about how similar your users are to each other for any particular campaign. If they are wildly different, you need to construct a new funnel for them and calculate using your new figures.

Second piece of bad news – in reality you’ll discover that the funnel isn’t exactly linear. For example, you can go from app download to revenue straight away, depending on how you are measuring retention. There’s no great solution to this – just try to keep your funnel as close to your understanding of the flow of real users as possible.

Finally, the funnel doesn’t take into account how things change over time. Many businesses are started by paying way over the odds for content or conversions (Yelp being a great example), with the understanding that acquisition costs decrease as the value of the service increases with scale.

Keeping an eye on your funnel is a critical activity for your business. Keep in mind the rough edges and you’ll find it essential for visibility of your business.

(Thanks to Jade at Sorted for a great discussion!)

Google Drive vs Google+ Photos vs Picasa Web

After the launch of Google Drive, I was excited to use it as a photo backup & sharing service. Unfortunately, the features for what I consider a good photo viewer are spread out over different Google products (Drive, Google+ photos, Picasa Web.)

I want to back up my photos online

This is easiest in Drive – drop your photos into the Drive folder, and you’re done.

You can’t do it on Google+. Yes, you can upload photos (including the neat Instant Upload function from your phone) but it won’t be an archive, because photos over 2048 pixels get resized from the original.

Picasa MacYou can’t do it easily on Picasa Web. You can let you upload your photos and preserve the size at least. However, if you want to download your photos again, you’ll need to install Picasa – you can’t do it from the web. The Picasa client application is a mess.

Let me qualify that last statement. Picasa is a mess because:

  • If you connect to Picasa Web, it doesn’t synchronise your online photos with the local store.
  • There’s no way to stop it scanning a bunch of areas on your hard drive on install.
  • The interface styling doesn’t follow either Google or Apple’s interface guidelines.
  • The “Import from Google+ photos” option is fairly confusing as this will be almost the same as Picasa Web, but not quite.
  • The “Back Up Pictures” is unnecessary – uploading to the cloud is the backup.
  • You can synchronise name tags with Google+ … which implies that name tag data in Picasa and Google+ are actually different.
  • Old features, like those for creating gift CDs, should now be removed.

I want to be able to view them online and on mobile in a decent interface

All three products have different photo viewers.

Google+ photos

Google+ photos

Picasa

Picasa

Google Drive photos

Google Drive

Google+ has the best viewer – there’s a grid of photos on the web and the Google+ mobile app, and a useful fan / zoom animation. Also, the background colour around the photo is black, which helps the photo itself be the focus.

Picasa is similar, but uses a white border, no animations, dated styling, and frames the photo in a smaller area.

Drive’s photo viewer doesn’t even resize a photo to fit into the browser height.

I want to be able to share photos easily

Google Drive sharing

Google Drive sharing

Picasa Web sharing

Picasa Web sharing

Google+ sharing

Google+ sharing

This is easiest in Drive. Click Share, click “anyone with the link can view”, and paste into an email / IM. You know for sure that they will be able to view it without being pestered to sign in or sign up to any services. You can also share to individuals by adding their email address.

In Picasa, you can’t share individual photos in this way without changing the visibility of the whole album. (You can share entire albums no problem.)

In Google+, you can share using Circles. Given that the only people I know who use Google+ are Google employees, I don’t want to share photos like this. Can I put an email address in that input box? Will it nag the target to sign up to Google+ before they can view the photo?

Making sense of it

Comparisons like this are a little convolved, because Google+ evolved from Picasa and the old service hasn’t been integrated properly yet, and Drive evolved from Docs which had a pretty different target segment. That said, it’s important that the offerings as they stand to the consumer today make sense, and right now they don’t.

Apple and Adidas

If you spend any time (as I do) on the number 51 bus, you may note the popularity of Adidas among a particular segment of consumers. They aren’t coming back from the gym – it’s just default clothing. They bought Adidas rather than the unbranded variety not because it’s cheaper or better quality. When consumers buy, the value they are getting comes from the way they feel, not from the clothing itself. Adidas is not a clothing manufacturer: it is a marketing company.

Consider now the foaming at the mouth that occurs when Apple releases a new product. You might argue that people buy iPhones to fulfil a need, like make a call, or play a game if they’re bored at a bus stop. In 2007, I would have agreed with you – the first iPhone did something that no competitor did. Today, the difference in functionality versus the common / garden variety is minimal. Yet, users are compelled to buy.

People buy because of the way Apple makes them feel. Stylish. Different, despite the fact that lots of other people bought it too – and this is the interesting challenge for Apple marketing. Dorfman probably has an iPhone. He does not embody the brand. Seeing him with an iPhone should diminish Apple in your eyes.

Same goes for Adidas. The brand is about athleticism and achievement. Many who wear it are not. How can this be fixed?

First, a famous failure.

Burberry

In 2005, Daniella Westbrook was photographed with her daughter wearing Burberry. She was a soap opera actress who the press claimed had addiction issues, and Burberry was supposed to be high fashion. The result was failure for the brand, as exactly the wrong segment of mass market consumers started wearing the easily recognisable Burberry check pattern. It took a long time for Burberry to regain a place in the fashion world.

This failure occurred because the target consumers saw the wrong people wearing Burberry. In the absence of any other messages, they defined the brand.

Prevention is better than cure

Both Apple and Adidas prevent this problem occurring in the same way – they shout louder than Dorfman. Apple stores everywhere, with just the right kind of friendly hipsters ready to tell you it’s easy and magical. TV ads. Outdoor. The right kind of celebrities showing off their iPads. Adidas does too – a whole host of stores, filled with impressively fit people. Ad campaigns. Footballers. Olympic sponsorships.

These ad campaigns don’t exist to remind you that the company exists, or even (really) how good the products are. They exist to tell you exactly how you should feel when you see the logo or step into the store. Most importantly, they shout loud enough to drown out Dorfman – a constant challenge for any mass market brand.

Mobile apps vs native apps

IMDB mobile app adThere’s a lot of guff around on the battle between mobile apps versus web apps. There is guff because companies have made investments one way or the other, and want to believe that they made the right choice.

So let’s be succinct. There are only two things to be concerned with:

  • Can a user find the application?
  • Does it work great?

Can a user find the application?

Unless you have a massive established brand (hello, Financial Times) you have to go to where users are looking for you.

  • They Google and find a website. If it’s very usable (so either the desktop version reflows well or there’s a mobile site) they’re done. If it sucks or the website advertises a mobile app (e.g. Meetup, IMDB, Yelp) they’ll go to the app store.
  • They search the app store directly and find an app. If it sucks they know it’s not going to get any better, so they’re done.

This behaviour is determined by the end user’s habits and the OS. The end user’s habits will vary by user, but is guided by their history. So many people use apps (especially in the US) that it’s going to be hard to train them out of searching app stores. The OS is also going to promote App store searches as long as apps appeal to users.

Does it work great?

Short answer – native apps work better than web apps. Web apps are getting better.

If a user downloads an app and uses it, they don’t care that you created an Android version as well. They don’t care that there’s feature parity. They just care that it works great on their device. That means fast UI response. Familiar widgets. If needed, access to device hardware (camera, GPS) and offline functionality. That’s all available with native apps – and somewhere between difficult and impossible on mobile web apps.

Here’s the only contentious point. Wouldn’t it be nice if we could produce web apps and not have to pay the Apple / Android tax? Only have to create once and have it run anywhere? Yes, it would be lovely – this is absolutely a better situation for app developers. This will only ever happen if:

  • Users quit searching app stores (because OSes stop promoting them, and because they know that websites work great on their mobiles anyway)
  • Mobile sites are just as smooth and functional as mobile apps.

But can you get away with it yet?

  • Can you drive enough users to come to you, if you’re not in the app store?
  • Does it bother you if users who DO search the app store end up looking at apps that are competitors or repackaged versions of your web content?
  • Will a mobile web application work well enough that shifting to native wouldn’t make a different experience?
  • Are all your developers humping HTML5 and thumbing their noses at Xcode and Eclipse?

Halfway houses

There are wrappers available that let you code once in web languages and run everywhere. The two big ones are Titanium and Phonegap. They kinda work, but you’ll be dealing with bugs and weirdnesses from not just one programming environment, but two.

TL;DR

Using mobile web apps will happen, but we’re still way off. Native apps will cost more to build and work better. Mobile web apps will cost less and work less well (although this will get better over time). Most people will want native apps right now, but evaluate your specific situation carefully. Only you can make the right choice for your business.

Testing for the user’s experience

Testing your product isn’t only about user interface – where a user gets confused, and so on. It’s also about uncovering niggly little problems like this:

They aren’t the only ones. Here’s Amazon, which has free super-saver delivery in the US for orders over $25:

This is an opportunity for an online store to delight users by saying, “You haven’t quite met the minimum spend for free delivery, but what the hell – we’ll give it to you anyway.” The sale goes through, users were pleased that you were nice to them, and they’re more inclined to come back next time.

Unsubscribe easily

I hit “unsubscribe”, only to see this:

Worse: completing it doesn’t get you a confirmation that you’re unsubscribed, or even that they’ll think about. I wanted to write “you smell like a week old fish” in each of the confirmation fields, but then I definitely wouldn’t be unsubscribed.

Original site

Microsoft Word replacements

Microsoft Word is on the way out. I’ll explain.

Every new tool for circulating information used a mental model similar to the previous one. Check it out:

  • The typewriter was a replacement for writing. Both output to paper, but typing was neater. Memos were created and paper was pushed from desk to desk.
  • The original computer + printer combination was a replacement for the typewriter. Both created typeset neat text onto paper, but computers allowed you to save and recall files at will. People still used the “memo” template in Word.
  • Email took over from the internal memo. You had an inbox and outbox, same as the physical boxes that used to sit on a desk. Most people emailed a short note and attached a Word file, in the same way they would with real paper – a cover sheet plus a document.1

For the non-dinosaurs amongst us, the paper model is obsolete, and we have a new mental model – the data was produced on a screen and will be consumed on a screen. Most people consume massive amounts of data from the web – that’s what we’re used to. By comparison, Microsoft Word is a poor tool for the job.

  • It pointlessly splits up a document into pages.2
  • It loads a document very slowly compared to a browser (which is probably already open.)
  • One can only consume information on computers with Word installed. Browsers are installed on almost every computer.
  • Smartphones are fairly bad at reflowing or even viewing text from a word document. However, they’re phenomenally good at doing this for a web page.
  • Extending a document with active elements (e.g. a stock quote) is unusual and hard, so Word documents are almost never used as an up-to-date reporting tool. On a web page it’s bread and butter.

A solution

What will replace Word? I’d argue that the wiki is a natural successor – a collection of web pages (instead of documents) that can interlink easily and be read anywhere using the same technology we use to read everything else.

Why hasn’t it happened yet?

  • Making a Word-like interface that creates documents is a hard problem – hard enough that noone has really solved it yet.3
  • It’s impossible to get off Word, because work gave you a copy, because you’re used to it, or because you’re expected to read / create .doc files.

These problems won’t exist forever. We will get closer to solving the rich text web editor problem – it just needs to be good enough. We will have fewer people to send .doc files to, as products like Huddle and Basecamp become more popular. Most of all, the size of the opportunity provides massive incentive to anyone who can solve this problem.

  1. In the mind of the user, the document attachment is where the information is. Ever seen emails where someone attached a screenshot that’s contained in a Word document? That’s this mental model in action. []
  2. It can however be useful as a reference, i.e. “it’s on page 4″. []
  3. Solutions like CKeditor exist, but they don’t work well enough. It looks lovely, but try living with it and you’ll see where the paint comes off. The only consistently good editors are very basic, like the text editor built into Basecamp. []

How to use pagination on your website

Splitting content up into pages is pretty common on the web – you might see it in articles, comments, search results, or other lists of data. Want to use pagination? Let’s take a look at the options available to you.

Option one: links to new page

Having separate web pages for each page of content is original flavour.

  • Pros: Gives you N pageviews instead on one (if you’re worried about that metric), works on non-JS browsers
  • Cons: Slow, as a whole new pageload is required

Here’s an example from Tom’s Hardware. This shows how many pages exist, and also what’s on each (so you can just skip to the conclusions page, for example.)

Option two: one page, AJAX changes the view

Here, all of the content is loaded in the initial pageview, but the pagination buttons switch what’s displayed to the user.

  • Pros: Faster than a new pageview
  • Cons: More complex to code (if you’re rolling your own)

Here’s an example from YouTube, but you’ll also find this all over the web on most large sites. Start watching the video, and click the page numbers at the bottom to get more comments. You don’t get another pageload – not only would that be slow, it would interrupt the 80s goodness you’re hearing.

Comments on YouTube

When designing these, there’s a problem. If your list of stuff is kinda short – great. But if you have a long list, you scroll down to the bottom, click the page 2 button … and you’re at the bottom of the second page, not the top. To put it another way, you’re reading item 1, item 2 … item 10, then click Page 2, and instead of looking at item 11, you’re looking at item 20.

There are some solutions to this – Disqus, which powers sites like Engadget, collapses the whole comments section and re-expands it so you’re looking at the top. Steam does some batshit-crazy scrolling of the page and list to get you back to the top.

Option three: Don’t use pagination

If you’re feeling bold, you can just let the whole page load with every list item.

  • Pros: Easy to code, easy to understand
  • Cons: Unworkably large pageloads for very long lists (e.g. user generated comments)

A hybrid solution is using a MORE link that appends the next page to the current one. The nice part is that the list now goes from item 1 to item 10, then item 11 to item 20, and so on – the list order is easy to interpret.

  • Pros: Easy to understand
  • Cons: Harder to create references to data (e.g. item X is on page N is now an invalid reference), your list can look weirdly long compared to the rest of the page

Quora pagination

You can see examples of this on Quora and other sites.

Which one should I use?

First – if you don’t need pagination, don’t use it. Nothing is as easy as having the whole page in front of you. Consider what your pageload times will be without it, both on desktop and mobile. If it’s too heavy – either right now, or in the future when a thousand people have created comments – consider the hybrid solution. Can you append items to the current list? Remember that from the user’s point of view, they are reading down a page of text – make it as easy as possible for them to continue that reading.