Hacker News new | comments | ask | show | jobs | submit login
Was Joel wrong?
29 points by spicavigo on May 6, 2013 | hide | past | web | favorite | 65 comments
I read the Architecture astronauts article by Joel Spolsky again recently (http://www.joelonsoftware.com/items/2008/05/01.html). In it he mentions the various "File Synchronization" platforms and says "Nobody cared then and nobody cares now, because synchronizing files is just not a killer application."

With the massive success of Dropbox and the way Box.com is getting the mindshare amongst users, would it be right to say "Joel, you got it wrong"?




I'd say he got the broader point right.

Prior to DropBox, no one did care about file synchronization, because the solutions presented thus far were largely "architecture astronaut" solutions. Rather than providing a simple, straightforward way to synchronize files (such as what DropBox provided), technologies like Hailstorm always focused on way too broad a feature set - it wasn't about "your files are always available", it was about pervasive cloud architectures that revolutionized the way you use your computer.

It wasn't until DropBox simplified the problem to "put files in this folder, and then they're synched" that file synchronization tools took off in any significant way.

Joel isn't complaining about file synchronization per se, he's arguing that the Microsoft approach of attempting to revolutionize computing every year with yet another failed omnipresent platform.


I would say that this kind of explanation could be used to justify every wrong statement.

In the end if someone claims something it is usually true until someone proves it wrong. I think that in this case Dropbox popularity has proven Joel's statement wrong. And this is also why Drobox is successful. It hid the complexity and provided some simple and intuitive mechanism for file synchronisation. Joel's argument was simply based on the previous unsuccessful attempts...


I don't think Joel got it right in a way that matters. What he said, with emphasis added:

"Nobody cared then and nobody cares now, because synchronizing files is just not a killer application."

The first part of the sentence is about the fact that no one cares about such architecture astronaut solutions. He may have gotten that statement right, but it's not the interesting part. The second part is the mistake: he's assuming it's because no one cares about file synchronization. But it's clear from Dropbox and even Apple's cloud solutions that people do care.


Many of the attempts that had been made, especially at Microsoft, were also just new versions of existing apps with some kind of syncing built in and a higher price. Office Groove is an example. Office doesn't need to have a DropBox built into it, it just needs to be Office. But if you've got an architecture astronaut in charge of the project, then they are going to want to use the position to build a reputation for being an innovator rather than just getting things done.


So is architecture astronaut a perojative that we can just fling at people who come up with innovative features when really we want office 2013 to be the same as office 2011 and so on?

What's the point of revving office if there is no innovation allowed?


I believe the key sentence was "Office doesn't need to have a DropBox built into it, it just needs to be Office."

Embeddeing a featureless chunk of DropBox in Office that only works in Office that only works on Office files is the opposite of innovation, where you have a great idea but can only see it through the lens of your existing interests. Pulling features that don't belong in Office into Office isn't innovation, it's just poor product management.


It's still there in skydrive pro. Sometimes the idea is ok, the realization just takes awhile. Sharing documents in office is something that the enterprise users want to do even if we don't get it.


I'm not saying that trying to innovate on a successful product team is bad. I am saying that when someone's motivation for innovating is to further their own career and not to solve the customer's problems, then their ideas are going to be bad most of the time. That's when they're an architecture astronaut. They care more about getting their ideas implemented so that they can so "look at that smart thing I did". Meanwhile other engineers are doing things like fixing bugs and implementing features that actual users have asked for.


Sounds like a conspiracy theory. How do you begin to tell the difference between an innovator and a career whore? You mean, because their motivations are wrong, their ideas will be toxic if seductive also? Is it really so easy to judge?


An architecture astronaut embeds the browser in the operating system in a way that the user can not easily use other browser.

It also embeds the cloud storage service in office in a way that the user can not easily use a competing cloud storage alternative.

I'm all about new features, but without the politics of corporate market share tactics.


That's not the point. Office is not a file syncing app.


What's the point of revving office

So you people at Microsoft can sell the same software to the same customer multiple times.

And if it takes "innovation", by golly "innovation" will happen - even if it means putting in then taking out that stupid dancing menacing cartoon paperclip.


Ah clippy, how do we miss thee!

I hardly work in product development but from what I've seen, innovation is very focused and extremely thought out within the company. The "rogue innovator" in it for career points would hardly survive very long.


No, I'm accusing the whole damn company of being the rogue innovator. Personally I find Office impossible because the UI keeps "revving" so I can never find the features I want and which I was using happily 10 years ago.

On another note, I thought you might find this amusing:

http://vigor.sourceforge.net/


Live Mesh was a Microsoft syncing service, it worked well, it was free.... and it got dropped.

Otherwise, SkyDrive (which is the Microsoft equivalent of Dropbox) has had a free Office built into it ;-)


Totally agree with you. I take exception with the statement "Nobody cared then and nobody cares now, because synchronizing files is just not a killer application."


Would you call "the killer app" something that everybody needs/uses? Because file sync is a GREAT feature, but many people have 1 computer, and wouldnt understand syncing with a smart phone via an app anyway.

Also, I would say while the sync is awesome, some of the other dropbox features are actually why I use the product instead of other more private options. (instantly link to anyone anything in the folders you have? very nice. +constant free space via different referral games.)


Reality check:

Prior to DropBox, I had used LiveDrive, which was featured in HN, for about six months, but I don't really remember for how long. It was a beta, and the free plan was over once the beta was over. But it was a great and fully functional implementation of the concept.

For the first months of DropBox, it was known as 'a LiveDrive alternative'.

The only real innovation of DropBox over LiveDrive was the free plan. Which I'm still using for free.


I remember back in Windows 95, Microsoft had the "Briefcase" icon on the desktop, which could easily sync files across non-networked computers via a floppy disk.

I never used it because back then I was too young to have more than one (still very expensive) computer, but it sounded nifty. Not sure why they killed it off.


They still do! Right click desktop, new > briefcase. When you delete it, its description is "synchronizes files when you use two computers". No idea how it works now, but it's there.

EDIT: Windows 7, not sure about 8.


I think Joel's larger point is that most programmers are actually arrogant assholes who aren't as good as they think they are, so when they start these massive, architecturally complex projects, they get themselves in way over their heads and it ultimately fails. Actually-good programmers are humble enough to not try to arbitrarily force their white-whale architectures on their project mates and can engage in much more reasoned discussion that results in appropriate, incremental change.

Incidentally, that's what my handle is about: I remind myself everyday I'm just a moron who puts his britches on one leg at a time like everyone else. It's helped me stop caring about code and start caring about my customers' needs. The code I write is what is necessary and sufficient for the task at hand, and as soon as it is no longer necessary or sufficient, it gets deleted or augmented without argument.

And I do catch myself, "but I like this code", and I remember the handle. "Just a moron for hire". Yep, delete the code, it's nothing.

I've had people on message boards reply, "it's hard to take you seriously with your name...". Yeah, no shit. Quit taking people on the Internets so seriously, mostly because they have no impact on your life and you shouldn't let them rise to the level of giving a shit about them.


Depends on how you sync it. bt sync is really awesome, and i'm really waiting to see all computing done in p2p, which is not the same thing than in "the cloud". The cloud is still centralized so that they can control the content in some way.

I really wish I could have the skill, time and motivation to work on p2p techs like the ones bittorrent is working on. But defining what you want to do on p2p is really hard and is unexplored.

Every geek nerd investor/programmer you-name-it will join the current mainstream herd and tell you to make facebook apps, iphone apps, android apps, and advise you to auth your blog comments with twitter or openid.

I don't know what this joel guy is always saying that can attract so much attention, all I know is that I want to bury the web2.0 remains into the ground, forget about internet browsers and focus on sharing mechanisms that actually work. The web was designed to make static pages, not dynamic pages. So please, kill that SPDY thing right now, close those huge, innefficient data centers and try to work on decentralized techs.

The web currently works in a centralized fashion, so there is no way developers can join in and add value. Facebook is a fortress.

And if the CIA knocks and tells you they need to monitor your stuff, let them do it. Nobody really cares except journalists, who are professionnals.

I know it sounds unreal, but I'm so convinced people could share more information if the platforms were not owned and regulated by websites, but instead by people, even if there is are security and spamming risks. I'll sound crazy but the internet has always been an opportunity to have a better local economy, and that's a shame it's not happening.


The bandwidth in the centre of the network is way higher than the bandwidth in the access network, because to increase the bandwidth in the access network you have to do very expensive stuff like digging up the road to lay optical fibres.

Result: The internet will always be centralized. Deal with it.


First, you're talking about websites, which will always require bandwidth. Why ? Because websites are narcissistic, expensive, and not designed for a dynamic experience. Websites are synchronous: the server generates a 500kB text blob file each time you want to communicate, it's zipped, unzipped, and parsed again, it's totally inefficient. Why ? because a webpage is just a string blob.

I live in france, and here, youtube is barely usable anymore, because everybody uses it. Streaming sucks, because video on demand is the worst pitfall of the internet architecture.

Websites are great for static pages. It's also great to advertise things, because html is easy, and quickly doable. But for other things, I don't believe it's really worth it. I dare you to find a html5, lightweight internet browser that can do optimized javascript, for what, checking your gmail, and connect to the facebook server farm? Why not using a mail application instead ? And then come up with SPDY, which is not so fast anyway.

Not everybody wants websites. People also like to share files, do video conferences, which are not possible with a centralized network, or really painful and expensive. Think about skype and bittorrent.

Those are economic alternatives because access network are not only expensive, they're not technologically viable.

Saying p2p is not viable because it is slow is a joke, because the way we use the network to make websites is already slow and require tremendous amounts of bandwidth. You're comparing airplanes and bicycles.


Also, talking about facebook, facebook is totally inefficient and not economically viable.

Seriously, a mainstream website to share photos and comments, have you seen their datacenters ? And facebook is not even a search engine. So what's google then ? Barely an assisted regex search.

You won't meet new people on facebook, you won't gather for new activities with strangers, it won't list available jobs opportunities or actually make relevant stats to tell people what jobs are needed, you won't find local businesses unless all of them subscribe to facebook, you won't post ads for something you neighbor could need.

So what is facebook for then ? Just to tell people you know, that you're making... a party. Or to advertise about your hyped bar.

Facebook is this huge device you connect to but can't use the data, because it's a trade secret. It's plain useless. That's because it use the star network pattern, instead of the mesh pattern.

I guess the main, elephant-in-the-room excuse, is because people are afraid of sex offenders.


Let's say you want to send a multimedia collection from your co-lo to someone in a different continent, via a relay.

You might be able to relay it via (someone like) me, because I get megabits per second download, but I get much less upload, so your target is in for a tedious wait.

But, if you send it via Amazon web services, you might be able to direct connect to their hosting centre near you. From there, you could get a gigabit per second over Amazon's own network to a centre near your target where he/she can download from - instantaneous.

And we're not even talking about Amazon's datacentre internal networks, where you might be able to arrange for 10 gigabits.

Centralized beats decentralized by orders of magnitude. Sorry.


You're saying this like nobody uses bittorrent. Decentralized completely solves your upload problem.

You're comparing planes and bicycles. Many people are content with bicycles, and that's why they are popular, but very few people actually need and use airplanes.


> multimedia collection

How many people really want to do that ? You just better send it through mail honestly.

Most people care about text data, which is very small if you handle it well.


How many? I don't know, but I do know that Grandma wants to send the photos from last night's birthday party to Aunt Tillie back in the old country. And neither is on bittorrent.

I think the mistake you are making is that you think "most people" = you, whereas in reality "most people" = Grandma.

If you are the guy responsible for building some internet service for Grandma to use, you will always go centralized, because that's where the bandwidth is.

p2p only wins in some weird edge cases - in file sharing it's in part not to enable copyright holders to shut the system down through legal action against single points of failure.


> I think the mistake you are making is that you think "most people" = you, whereas in reality "most people" = Grandma.

I'm trying to make you understand p2p techs can go mainstream, I'm not trying to argue about making a tech only for tech aware people. Bittorrent is already used in a mainstream way. Please don't argue about a tech that appears too complex it can't suit old people. Very few people understand kernels, yet many use computers everyday without minding.

With that mindset, p2p will never become mainstream. If you want innovation to suit 95% of what people want, you're screwed, because people don't know what technologies can do for them. Sometimes you should let engineers or tech-savvy marketers propose a little more that what people will always want to try. There are many people out there who like to be surprised with technologies, and that's also a market.


Look, I have actually studied p2p. I'm sure you have not. I doubt, for example, that you could quote off-the-top-of-your-head the research papers relevant to p2p.

If you had done your homework, you'd realize that p2p has been around since the nineties, and its only successes have been some weird military-type applications, file sharing, file distribution and Skype.

So p2p is not a new, superior paradigm about to burst into the mainstream, only being held back because of Moaning Minnies like me not pushing it hard enough.

It is actually an old, tired, second-hand, inferior technology that has been failing to go mainstream for twenty years.

"Please don't argue about a tech that appears too complex it can't suit old people"

You actually have to read what I wrote.

Part 1: I explained to you how technology is deployed to suit people who can't deal with complexity: an engineer builds it into a product/service for them - making the service simple enough to use.

Part 2: I explained to you why said engineer would never use p2p for said service: because all the bandwidth is available in the centre.

You know, to make a p2p system that can even approach the ballpark performance of a centralized system, you have to deal with connection asymmetry, connection heterogeneity, overlay construction and churn tolerance. You'll have a devil of a time just deploying and testing the fucking thing, forget about development. And you still get a less performant system overall.

The tech doesn't "appear" complex, it IS complex. For Grandma to be able to use it, the poor sods in Engineering have to make it "appear" simple, which makes the complexity THEIR problem.

This is NOT something any sane engineer would want if he could avoid it by getting Grandma what she wants by using a simpler alternative. Like a central server, for example.


> ballpark performance of a centralized system

Performance in this case is overrated. You forget people want to have independent system which can't be shut down or controlled, that's the point of a network.

> You'll have a devil of a time just deploying and testing the fucking thing, forget about development.

Who cares about that ? Engineering is about results, not ease of work. Once you get results in engineering, you have them for life. Business wants easy solution, that's understandable, but the engineer's job is also to bring new products not done before. Consumers and businessmen rarely or never know about what can be done.

> This is NOT something any sane engineer would want if he could avoid it by getting Grandma what she wants by using a simpler alternative.

If the "simpler alternative" is now the majority, I can't understand how you can call this an alternative. At the beginning, networking was designed as in anybody can send to anybody. Most of the time engineers deliver solution to problems people are complaining about, but sometimes there are inherent problems only the engineers are aware of, in which the solution can actually create true value.


that's the point of a network.

Wrong. The point of the network is to transmit data.

Who cares about that ?

Who cares about most efficiently getting to systems that work? Grandma, Aunt Tillie, the engineer, his boss that pays his salary, his boss's boss, his boss's boss's investor, and everyone else who matters.

Who cares about p2p? You and a couple of other people who don't matter, don't pay anyone's salary and don't get to decide anything.

You sound like a teenager. Maybe you should try to learn how technology decisions are taken in real life. You could start by getting a job in a technology company, but first here is a reading list for you:

http://soloway.pbworks.com/w/file/fetch/46715502/Crossing-Th...

http://archive.org/details/TheInnovatorDilemma

http://it-ebooks.info/book/166/

http://www.jwz.org/doc/worse-is-better.html

http://www.dreamsongs.com/Files/PatternsOfSoftware.pdf


> Wrong. The point of the network is to transmit data.

Data is mostly transmitted one way with those access network you're talking about. It makes me think of a tv or radio or cable network. That's the reason p2p does not attract anyone, because the current network is designed for people to focus on download instead, because that's the simplest software model. It only consists of supplying data to the consumer, like watching a tv channel. Internet is a mesh network first. That's how data flows.

> Who cares about most efficiently getting to systems that work? Grandma, Aunt Tillie, the engineer, his boss that pays his salary, his boss's boss, his boss's boss's investor, and everyone else who matters.

I was talking about product research. Technology does not invent itself. The boss you're talking about had no clue he could sell those things, and he did. I'm talking about lab rats, the people you fuel and inspire to make new stuff, not just use technologies in a way that has been done and done again. Facebook is already using the mesh paradigm for friend, but it requires a very high amount of computing power, and only facebook can access the data the way they want. That's a waste of good data. Other than that, facebook has brought zero new things to the internet. And it should not stop there.

> Who cares about p2p? You and a couple of other people who don't matter, don't pay anyone's salary and don't get to decide anything.

>You sound like a teenager. Maybe you should try to learn how technology decisions are taken in real life. You could start by getting a job in a technology company, but first here is a reading list for you:

Yes, I don't have a phd, I don't have a well paid job at a silicon valley company, so that's the #1 reason I'm wrong. I mean everything's its right place, why are there websites to talk about stuff, right. Let's just watch what nerds are cooking, and when it's sellable and usable, buy it and never modify it again, and lock it.

No surprise there was a net bubble.


I was talking about product research.

No you weren't! You were talking about the later stage: "going mainstream", which means efficiency, testing and deployment. But when I mentioned testing and deployment, you said Who cares about that?

that's the #1 reason I'm wrong

The reasons why you are wrong are contained in the damn links I went to the trouble of assembling for you. Why don't you go read them and learn something, instead of hitting me with a comeback? Sheesh.


> You'll have a devil of a time just deploying and testing the fucking thing, forget about development.

That's what you said.

When I said "Who cares about that ? Engineering is about results, not ease of work.", I was answering about "devil of a time".

> The reasons why you are wrong are contained in the damn links I went to the trouble of assembling for you.

The links you talk about might have to do with the IT business and how things go down between engineers, investors and managers. This is such an ugly topic, I don't even want to even try to talk about it. It's just not interesting. You don't go forward innovation by asking marketers and consumers. Marketing is about how you sell stuff, not what you actually sell.

That's what I hate about business in general. Business wants to do stuff, but it has no idea what to do. That's the reason the soviets were the first to send sputnik and a man on the moon. The US just followed. That's how innovation is broken. But that's just another topic.

I could not let you tell me that "things are good the way they are, because if they're like that, it's because we explored the business of it, and that's what we found out."


I didn't tell you things are good the way they are, I told you that the internet will always be centralized and p2p will never go mainstream.

You don't go forward innovation

Innovation is irrelevant to p2p because p2p has already been invented. Nobody wants it, and nobody has wanted it for 20 years, that's its problem.

This is such an ugly topic, I don't even want to even try to talk about it. It's just not interesting.

That uninteresting ugliness decides which technologies go mainstream and which ones fail. If you want to stick your head in the sand, this conversation is over.


> I told you that the internet will always be centralized and p2p will never go mainstream.

You seem confident about the future. I already read stats that p2p is actually quite a big chunk of the internet traffic. I never said "bring the internet full p2p", I just meant that p2p can play a role in what facebook, forums, and mail techs are already doing. p2p is not just for file sharing, file sharing is the easiest part of p2p.

> Innovation is irrelevant to p2p because p2p has already been invented.

p2p only work with protocols, and there aren't many protocols around people can actually use. There's a difference between invention and having a working standard.

And what does 'invented' really means here ? You don't just invent technologies, p2p is a very broad concept, you need to precisely define how users can make use of a protocol, what is the purpose of a particular protocol, what are the security and abuse issues, what sort of resource can be saved by using it, etc.

> if you want to stick your head in the sand, this conversation is over.

I don't want to stick my head in the sand, I'm just quite disappointed about how investors play ball with lab rats. That's how I feel IT and research business is done. Look at tesla motors, I'm sure Musk is one of the few investors who is not saying "fuck you with your nerd fantasies", and who is actually trying to change the industry.


Just because someone is a professional online ranter it doesn't mean they are always right.


Likewise, just because some people (a lot of people?) like dropbox et al., that doesn't mean it's revolutionary or killer or whatever. It just means a lot of people like it.

I have a basic understanding of what dropbox is. I've never used it. Never even been to their website. I don't care about synchronizing files. I suspect I'm not in the minority.


They have over 100 million users, and then of course there is Google Drive, Microsoft Skydrive, etc. I've convinced several non-techie folks to use Dropbox once they realize it replaces the need for flash drives (which of course can get lost). So it's not so much "file synchronization" that was the killer app for some, but rather "accessing and storing/backing up files in the cloud."


http://www.forbes.com/fdc/welcome_mjx_mobile.html

100 million account (including me)

4 million paying customers.

Which means, almost none of MS's customers.


It his hard and unreliable to get G Drive to sync files. Google does backup from your PC to web, and it downloads bookmarks from web to PC.


College students use Dropbox as a means of keeping backups, as an online thumb drive and sharing work with each other.

There was even a "college space race" to get more storage a while back, https://www.dropbox.com/spacerace


Incidentally I have a dropbox account and the daemon is always running in the background but it's kinda useless for me as I only have one machine. I don't access my dropbox from any other machine.


I bet you did not create StackOverflow nor have a successful company.


I would simply agreed with the article if I read it at that time.

On the topic, seems like Microsoft produced quite a lot of products that simply ahead of its time. Some of the product pitch and description quoted in the article may sounds stupid at the time, but now, it is simply is a necessity.


In other news, we have recently discover that all tech gurus are human too, hence fallible

We martians are infallible, and we are very surprised at this human weakness


I really like Joel, I think he has some very worthwhile articles to his name. That said, he's probably more often wrong than he is right and I disagree with him on many points regularly. Even when he's wrong though he's still worth reading because usually you'll find a few nuggets of wisdom buried in there even if the broad picture is wrong, or as in this case if it's the other way around.


Strictly, I don't think he did; Dropbox is a big thing but it is not a "killer application" as I'd define it, ie. an application that people would buy a particular platform just to get. In the way that, say, Office is for Windows, or Halo might be for Xbox (or so I hear).

Of course, it's kind of irrelevant to Dropbox; they don't have a horse in the platform race, so they're supporting all the major ones and doing very well, but they're not a killer app for any one of them. I don't think that proves that it couldn't ever have been a killer app, but it looks unlikely now that it'll be the case.


We make the future in the same way: We extrapolate as much as we can, and whenever we run out of imagination, we just shovel the present into the holes. That's why our pictures of the future always seem to resemble the present, only more so. -- Corey Doctorow [1]

Dropbox just happens to be a part of the future Spolsky didn't invent. Then again, neither did Alan Kay.

[1] http://www.informationweek.com/how-hollywood-congress-and-dr...


I wonder how many people use Dropbox for sync amongst multiple devices. For me it is mainly backup and sharing from my laptop.


I use it to synch files between my Windows gaming desktop, my Windows and OS X work laptops, and my personal Linux laptop, plus access from my phone... so that's 5 devices right there. So there's at least one data point right there.


"file synchronization is just not a killer application"

...is still true. Solving for the problems of not having having my files when I need them, on any device I'm using and without having to map drives and deal with complex, technical setup IS a killer application.

Customer experience and usability changes everything.


Did you read the date of the article?


Of course. Hence the title says "Was" and not "Is"


He wasn't wrong then. The world has changed. A user has far more computers now than she had then.


Why does this matter? Who cares?


Well, everyone is Wrong sometimes, so let's talk about Wrongulence, which is the matter of whether a person is consistently Wrong. Technically speaking, there's a lot of Wrongness on the Internet not because there is something wrong with the Internet, but because of the persisting Wrongulence of people who use it.

Back in 2008 I applied to Fog Creek and was rejected. I turned out to be awesome, not that one would have known that 5 years ago, because at the time I was a n00b with a capital zero and wrongulent about many technical things myself.

Add this to a noninformative prior of Beta(1, 1) and we get a posterior of Beta(1, 2) on the Wrongulence distribution.

If we interpret x < 0.5 as "Not Wrongulent" and x > 0.5 as "Wrongulent" then we get a 95-percent confidence interval of...

    [Not Wrongulent, Wrongulent]
Conclusion: hell if I know.


Pardon my language, but do we have to get this narcissistic shit from you in every thread? I know the "I'm awesome" stuff is supposed to be tongue-in-cheek and all, but still ...


Seriously. I avoid technical discussions on reddit because they're inevitably full of comments like the parent comment. It's disheartening to see them here now too.


I was making fun of the OP for the open-ended question. I thought that was more clear, but some people have a hard time with subtle tea.


Pardon my language and metaphor, but you are wasting the fire-breathing dragontits off of my goddamn time and I don't fucking appreciate it.

Your score: 3/10. I can give you heckling lessons and bring you up to a 7-- not good enough to take down a Steve Hofstetter, but good enough for the Internet-- but I'm booked until August and my rate's $275 an hour.


You might have a problem.


I'll use regular expressions.




Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: