Hacker News new | past | comments | ask | show | jobs | submit login

Joel Spolsky said it best in his Mixergy interview:

basically, if you were a platform developer ... you're in a dangerous position. You are snatching nickels in front of an oncoming bulldozer.




Which is funny, because Joel in the past year has launched one platform (FogBugz Plugins) and has another brewing (StackExchange + just released API).


What, he's not the one snatching nickels in front of an oncoming bulldozer. ;P


Have you ever crossed the road, and looked the wrong way? A car's nearly on you? So what do you do? Something very silly. You freeze. Your life doesn't flash before you, 'cause you're too fuckin' scared to think - you just freeze and pull a stupid face. But the pikey didn't. Why? Because he had plans of running the car over.


The idea is that you want to own the plantation.


This is just stupid. We are now in the age where the most compelling apps interact with and remix the data that is created by other apps. Dangerous? Not exactly the word I would use. How about innovative, exciting, interesting, etc.


I've shared this feeling my entire life. I never really understood why anyone would want to build a product on the back of someone else. This is going to sound harsh, but it kind of feels like a cop out to me. And if not a cop out, certainly ridiculously risky and limiting.


Every piece of software we write is built on the back of someone else. We're all vulnerable to the whims of the people who build the operating systems, the browsers, heck, even the protocols. The important question probably comes down to ability and motive: "can this platform be turned against me, and do those who control it gain some advantage from doing so?"


Your thinking is correct, though I agree with spencerfry that you are taking this a bit too far to prove the point.

However, there is nothing wrong with building a business and relying on another service to provide key functionality.

When people say 'built on the back', I am visualizing that like an elephant with a bunch of people riding on its back. Don't be amazed when the elephant changes direction and you get bumped off.

If you can find a way to harness the skill and capabilities of the elephant, then do that. If you can help the elephant and yourself at the same time, you could be the next summize.

So, I would urge peole to leverage apis and platforms, but maybe don't build your business solely trying to get a piece of somebody elses action.


You're taking it too for to the extreme. Building on top of a browser or an operating system is a proven and solid model. Building on top of another software company, web app, etc., is a whole different ballgame. Web browsers aren't going to turn against you. Other companies can.


Maybe this is just my programmer mentality of making abstract connections between things, but is building on top of another software company's platform really all that new? What makes an operating system platform different than a web platform, other than the fact that OSes have been around much longer?

Any business needs to mitigate risks, and I'm not trying to downplay that. You can see this with Zynga and Facebook, for example. At the same time, you have to remember that the platform is also a business, too. Platforms don't have a business without customers to build on top of them.


> Building on top of a browser or an operating system is a proven and solid model.

http://en.wikipedia.org/wiki/Netscape#History

Microsoft's entire corporate history is full of incidents like Twitter's new policies. Building on top of browsers sounds safer than the Microsoft/Netscape scenario until you consider the possibility that the browser vendor might launch a competitor and use the browser to promote it (e.g. MPEG LA vs. Google/WebM).


However, those browsers or operating systems are written by companies. See Apple and iPhone OS for a recent example.

Building on top of anything is risky unless the platform (whatever that be - OS, Facebook, Twitter) provider gives you some guarantees (and you have enough trust in them that they will stick to those guarantees).

If you build your app on top of someone's service and the terms of use say "we reserve the right to change anything", it's like loading a shotgun, giving it to the service provider, and hoping they'll be nice to you.

If you don't/can't accept that risk, don't build on top of them.


This is a rather interesting question to ask. Why does developing for an operating system - OSX, say - feel better than developing for Facebook (e.g.: the Zynga/FB relationship you mentioned)?

The only good answer I can come up with, at the moment, is that OSX has been around for longer, and there are plenty of successful apps on the platform to date - which shows that it can be done.


I think most businesses are built "on the back of somebody else". That's the way commerce works. Think of things in the real world:

  - A store in a mall... depends on the mall operator to maintain and promote the mall
  - A auto parts manufacturer... depends on the auto manufacturer to sell parts and maintain the brand 
  - An MacOS developer... depends on Apple to sell Macs to supply a market.
  - A franchisee (e.g. McDonalds)... depends on the corporation to promote the brand.
The list goes on and on. Of course you have to assess the risk / rewards in any case before you decide it's worthwhile to move forward. But rejecting any business that depends on a platform (software or otherwise) eliminates many many business opportunities.


That's far less true for the Web and that's what's relevant here.


Are you saying that web applications are more standalone than most other pieces of software?


In denial.


I've decided to only build on platforms from now on. You know why - the amount of marketing you have to do to reach people when you are not on a platform is huge. For people who have a marketer in their team, avoiding platforms may be a bad idea, for those who don't platforms will help you.

It's like selling craft through a website vs selling it through etsy.

You are seeing the issue too strongly through the lens of your own abilities. Try to see how it works for other people.


Well that's what APIs are for. Why release an API and publicize it in that case?




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

Search: