54 comments

[ 3.5 ms ] story [ 112 ms ] thread
I should qualify the question with a little more detail:

Are user-visible and user-manipulable file-systems on the way out?

Until there are ways to transmit documents from person to person, without a middle man, with offline hardware in-between, file systems will continue to exist.
Near the end the author asks a very pertinent question indeed: how should the free software community respond to the cloud?

Stallman's response seems to be just not to use it, to keep your own data locally and manage everything yourself, lest you forfeit control. Yet, Ubuntu created their own version of cloud services branded Ubuntu One.

I feel that one vision might be to provide a very low power, high storage always-on home server solution to users with all kinds of integration and synced as a personal cloud. I'm opposed to keeping my computer running 24/7 due to the huge waste of energy (I'm in Europe, energy is expensive), but I would happily use a couple of watts for a personal cloud device (or internet-enabled NAS).

How about something like Cassandra? You can stuff data into it, then access it both locally and off the cloud.

As long as you pick a good data model, syncing should be simple (famous last words).

Cassandra requires multiple good engineers to admin effectively, and 3x replication is a bit overkill for home storage.. RAID 5 would be good enough I'd think. Also, you really don't want to internet-expose an unauthenticated thrift server.
Tonido plug or similar device might be a good option? I'm considering getting one - mostly because (a) it's cool and (b) I have an at times irrational distrust of the cloud.
I investigated that option before building my own NAS, but decided against it. Plug computers offer no way to build RAID'ed systems, apart from maybe software raid over multiple external usb harddisks (I haven't tried it but I couldn't find anyone who did it, and I'm skeptical of performance of such a system). In the end I settled on a micro-atx board, a high performance power supply and lower energy use harddisks. I suspect (but have no data to prove it) that this uses less power than separate power supplies for each of the usb harddisks if one were to build a plug with those.
I'd concur. Especially since you can get actual barebones micro-atx servers for the cost of a nicer hard drive.
FYI: I saw a post about KDE's ownCloud.org effort yesterday that apparently has been going on for just over a year. It sounds like they're thinking in the correct direction. I've been wearing Gnome-blinders for the last few years so it was news to me.
amusingly, I've used KDE on my desktop for more than the last year and this is the first I'd heard of it. It's certainly not featured well with the software.
How about p2p cloud ? Where volunteers run p2p client on their desktop, which contributes space to p2p cloud and users can store data on p2p cloud.
My startup is working on that. Sign-up at http://degoo.com and we'll let you know when we have a beta ready. /Shameless plug.

I can e-mail you my Master's Thesis, which covers some of the theory behind it (although, it's in Swedish).

Might be worth writing a 2-5 pager in english summarizing some security features.. I'd sign up if I read something that made me feel safe putting my data on it.
Thanks for the input! Yeah, information about the security-features are very important. Right now we are focusing on actually making it secure. Once we have a client ready we will most probably improve the information.
That's exactly what I've been thinking about (I noodled on the idea earlier this week: http://blog.byjoemoon.com/post/6277876911/the-personal-cloud )!

I mean, with services like FIOS that offer upstream parity, I think this is a pretty appealing idea. There are some interesting points in the comments on that link, too.

One major hazard is consumer-grade Internet service that has onerous terms that prohibit running servers from a home connection, for any number of reasons. (Some would see this as cultural complicitness with “client/server as technosocial class division”, but the effect is similar regardless of how it's spun.) A related technical problem is the use of carrier NAT, which gets very tricky to traverse.

So actually getting devices to call home to the “personal cloud” seems like it would be harder to make happen, and more importantly, harder to make reliable, because you can't use economic power to force at least one side to act in a convenient manner. This would drain the life out of any attempt at “you don't have to think about it very much”.

That's a really interesting consideration that's more technical than I could talk about intelligently. It seems like something for which there would be a market solution, though, like a service tier between current consumer grades and commercial grades. I guess there's something of a chicken and egg problem there, though.
http://www.amahi.org/ is trying to get into this space now. It's a Linux distribution that from what I understand started off as something like a home convergence device. It runs on plug computers, too.
I'm not sure I would want to store my files on other peoples private computers.
I've just ordered a beagleboard-xm, and though I was initially looking for an ARM computer purely for the sake of owning one, it now seems like the perfect device for use as a personal 24/7 internet server. Should only draw 10-15 watts when operational, hope it works okay!
This reminds me of the feeling some had in the mid 1990s that command line interaction is on the way out, that everything would be GUI based. The answer is, um, no.

The link has a more interesting (and not so black and white) discussion about files, abstraction, and the cloud.

CLI is out. A large majority of people do not use it.

You can still ride horses (and for good reasons!). Doesn’t mean that horses are not out.

CLI is so not out. Perhaps among (l)users and Visual Studio types but not among the thousands of people who keep the internet running.
Exactly, thousands of people.

I don’t know how many users of computing devices there are in the world but I’m fairly certain that you would use billion in a description of them.

In absolute terms, there are probably more command-line users today than there were in the 1990's...
I hate to be snotty, but one experience Unix CLI user is worth at least 100 clicky clicky administrative assistants... just saying
There once was a time that if you used a computer, you used the command line. But that has not been the case for a long, long time. That's the meaning of "out" that was meant.
What people seem to forget while talking about how awesome iCloud is, is the fact that iCloud is only offering 5G of storage for free. It is cool and hype to have access to your data from everywhere, but this will unpersonnalize the computer. Since all you care about is your data. Your data is your computer. with iCloud, welcome to the era of the unpersonal computers, where a computer has nothing to do with it's user, except being, well, like a cable to connect to the cloud. An empty cable that a lot of people can use, but nobody really owns it. What I think people should do, if they are against this path, is to build a system where you can install a personal cloud, using an external hard drive. And be able to sync, automatically, all your data with all your devices. It is way cheaper to buy a hard drive than to buy storage on the cloud. Build your own iCloud.
But, I like the idea of an unpersonal computer. Right now the only thing that really makes my laptop different than my friend's laptop is the stickers on the cover and some MS Office shortcuts I set. My data is mostly unimportant, and already in Dropbox/Gmail so I can access it anywhere.

A majority of people are significantly helped by this strategy, not hurt.

Good point, as long as you trust your 'hoster', you have a speedy internet connection, and willing to buy online storage.
Filesystems are NOT on the way out. User-visible filesystems are. iOS has file systems. iCloud will still store the files as files on your Mac/PC.

The point is to reduce complexity for the end user. Think about Google Docs for a minute. I don't know if they are storing all my docs in a database or in a filesystem and it doesn't matter. I can still get to them right? When I download them on my Mac, they are on a filesystem that I can see.

End users (think parents, grandparents, etc.) should not have sysadmin their own machines. Removing the whole user visible filesystem is a step in that direction. Google gets this, Apple gets this, nerds don't.

People pay for convenience, not features. Dropping the user visible filesystem is convenient for the majority and that will make Apple money.

How can you eliminate even user-visible filesystems? At some point you're going to have different types of data and you're going to want to organize it in some way. I don't want my tax spreadsheets in the same grouping as my music files. I want them in some kind of separate container. No matter how much GUI you throw at this, that separate container is a file system that is visible to me.
Tagging is often better than hierarchies. You can organize by project (i.e. office fitout, web server upgrade) and other categories (i.e. budget related, list of people involved, plans) to make things easier to find when you switch contexts. Want to look at a single project, or all the budgets for the year?
Isn't that what Microsoft tried to do with Longhorn, and failed miserably at?
Microsoft tried to make the filesystem a database, as in, the filesystem was literally SQL Server or something. It didn't work. That is a completely different concept than simply changing the user-visible filesystem abstraction.
How would you make a tag-based filesystem without a database that wasn't literally SQL server or something?
I don't think it was really SQL Server. They could have made that work. I think it was more like they heard the XML buzz (this was some time ago), and tried to make a proprietary binary version of whatever it was XML was promising.
> I don't want my tax spreadsheets in the same grouping as my music files. I want them in some kind of separate container.

That's file centric thinking. Most normal people don't think about files, they think about apps and the data that's in them. iTunes holds my music, Word holds my documents, Excel has my spreedsheets; that's how people think when they don't grok files.

Files are important because they act as an interface (in the OO sense) to all of the different things that the author of this article talks about. The universality of that interface is, for now, key to interoperability.

I don't care how many times david pogue says otherwise, it's a lot easier to drag the audio files i want on my mp3 player from one window to another than to wrestle with itunes. Not only is it easier, but it's a skill I can apply again and again and again to lots of different tasks. If you do want to wrestle with some kind of crazy-ass music management system, the way that seems to work best to make it so that we can all use whatever we want is to have an underlying interface based on files.

Beyond interoperability, tech that's too specific to 'what people actually use their computers for' tends to make it harder to do things that the developers didn't think of; go far enough down that road and computers become about as interesting as TVs.

go far enough down that road and computers become about as interesting as TVs

This perfectly summarizes Apple's post-2007 business model.

I find it a lot easier to hit "Sync" than to look at my podcasts and think "I listened to that one, this one and that one, so I can delete them, and hey! there's a new one, so I should transfer it..."
Nothing bgruber said contradicts that. But instead of a magic "Sync" button that only works in one program on one type of file, the "sync" operation on files can be used over and over again. I only "sync" too, because it's way faster than literally copying things over... but I rsync. Granted, I'm a power user doing this on the command line, but absolutely nothing stops you from "Dropboxing" your music player. Potentially literally.
This requires setting up syncing, which seems complicated when I just want to copy some files.
It's a silly question. Is he suggesting computers will not have filesystems? No. He's saying users will not interact directly with files. Instead they will interact with "documents, music, pictures, videos, and downloads" without seeing them as files. Big deal. That's what desktop GUIs have been working toward ever since they started hiding file extensions, and they've succeeded to the point where many users don't understand that a song is probably a file on disk somewhere. My mother, among other people, noticed the change from consistent use of the word "file" to consistent use of the word "document" and thought it meant there was an important difference between the two. I've had to explain to her several times that even though Word calls her letter a "document" it is still stored in a file that she can attach to an e-mail, burn onto a CD, and do all the other things she knows how to do with a file.

When I helped my sister recover some corrupted email a few years ago, I expected her to be confused by the fact that each file contained an entire folder's worth of email, instead of a single email. She wasn't surprised. How it was stored never crossed her mind. I think that's true of many email users going all the way back to when everyone at my university read their mail using Pine on Unix servers. I don't think most of the English majors and history majors thought about how each email was represented on disk. Furthermore, web mail showed years ago that users are already so disconnected from the question of how their data is stored that they don't even blink when it moves from their hard drive to the internet.

tl;dr The "Huh? What's a file?" train left the station a long, long time ago.

PS/Edit: Come to think of it, how will the UI designer of an email program deal with the lack of a unifying concept for "documents, music, pictures, videos, and downloads?" Will you see an "Attach a document, some music, a picture, a video, or a download" button when you're writing an email? And will users feel all :-/ because they wanted to attach an e-book and there's no button for that?

Well, it's not just files. It's also folder hierarchies. Both have usability issues.

It's likely that folder hierarchies will be shown the door first. Actually, a lot of people already just save their documents to "My Documents". Then weep when they realize that this is a local folder, and their hard drive crash wiped out all their work, and IT support can only say "Next time put it on the NAS". Some defaults are just stupid.

What's old is new again... I'm sure other filesystems reflected this no-visible-filesystem OS mentality, but BFS of BeOS was the earliest one I recall (http://en.wikipedia.org/wiki/Be_File_System) that had metadata, indexing and querying built into the filesystem itself. Apple seems to be making a push to bury the view of the filesystem.

While the quick-search functionality of modern OSs is awesome, being able to arrange things in a hierarchy in the filesystem is also very useful. I guess the OS could go in the direction of tagging, but that seems pretty messy (I'm frightened to think of what would happen to our consulting firm's neatly organized and huge DropBox).

Ditto, the Apple Newton. Didn't have a file system, just a tagged and indexed object store.

I'm not sure how well it scales.

I do think that simple trees don't work well (and history argues for this: even early versions of Unix had links). A multigraph would be nice, though tough to delete from.

Multigraphs exacerbate the problem, not solve it. Now, not only can Mom not understand directory hierarchies, your average computer programmer doesn't actually understand them either, even though he thinks he does. Most programmers do not actually understand graphs, or know safe ways to deal with them....

... and in fact in many ways we already have multigraphs on filesystems, programmers already don't understand them nearly as well as they think they do, they are often nothing but trouble, and we don't see extensive use made of them in very "graphy" ways as a result.

I couldn't get the article, and finally I went to http://webcache.googleusercontent.com/search?q=cache:blogs.g... for Google's text-only cached version.

There is a very simple reason why this is true. Usability researchers have known and repeatedly verified for at least 20 years that regular users simply don't "get" directory trees. They don't understand the idea of directories within directories within directories with files scattered at all levels, and the same file possibly being in multiple places and each copy being potentially different.

We're not talking illiterates. We're talking about college graduates who have used computers for years but simply don't understand this basic concept. And if you try to explain it to them you'll hit a blank wall.

You can know one of these for a long time without noticing this lack of knowledge. They will successfully use files that are in a directory system. But when you dig deeper you realize that they have memorized actions. "I click on this icon, and search for my file." "Wouldn't it be nicer if you organized your files into folders?" "You can put folders into that icon???"

It is a surprise the first time you realize that someone you know, who is not an obvious moron, really doesn't understand the idea of a directory structure. And it is a surreal experience to try to explain it and fail. It is doubly surreal because everyone who actually works with software has to understand this point so you lose track of the fact that some don't. It can be hard to believe that these people exist. But they do and they are in the majority.

This is a huge problem for anyone writing consumer software. It may make your software more flexible, but as soon as you expose the filesystem to regular users, your software is not going to be user friendly. Therefore popular applications like iTunes go out of their way to hide the existence of the filesystem from users.

(And since everyone does that, people have no reason to learn to understand the filesystem, and the cycle repeats...)

I agree. It's time we (as "computer people") stopped putting the onus on the users to figure out "our way", and start taking some responsibility to build solutions that work without a scientific or engineering degree to understand.
I think that movement is well underway with the iphone, ipad, unity (ubuntu) and gnome3.
As someone who's taught educational technology as a sort-of TA in college, I've seen this, and something a bit similar: folders, but not well organized. If it's more than one deep, it's lost. Same thing with my parents.

But really, are they wrong? With spotlight on my Mac, and Google Desktop on my PC, I can move files to a "files" folder and search away, without all the "uber micro" that some nerds seem to require.