Slashdot Mirror


Open Source Increasingly Replaced By Open APIs

SharkLaser writes "Open APIs might be the way to get rich in 2012. At the same time, it can also be what ultimately hinders open source development. A wide range of companies, including Google, Facebook, Amazon and Twitter, are building open APIs for other developers to use and build upon. Open APIs can be used by companies to grow their user base and introduce new, interesting features on top of their platform. Independent developers can utilize established services and their users to grow their own business. A perfect example of open APIs is Facebook Apps, which lets individuals and companies develop applications and games on top of the Facebook platform. Developers gain access to Facebook's established user base and Facebook gains new features and fun stuff to do on their site. Instead of open sourcing their platforms, companies like Google and Facebook are providing Open APIs and data access to outside developers. The actual source code for the services sits safely inside the company's network and never needs to be disclosed to outside parties, thus hindering open source development."

33 of 224 comments (clear)

  1. What's the point? by eugene2k · · Score: 3, Insightful

    What's the point of opensourcing Facebook? It's the userbase that matters to web-developers, not the server code.

    --
    Apple has "Mac vs PC", Microsoft has "Laptop Hunters", Linux has recession
    1. Re:What's the point? by hjf · · Score: 3, Insightful

      On your race to the First Post you completely missed the point. Hell, you even missed the headline!

    2. Re:What's the point? by Tharsman · · Score: 4, Interesting

      There is a lot of point. Few online services can handle the level of activity Facebook handles every minute. It's not just about tossing more hardware at it either; it's not easy to make such a scalable system.

      Open sourcing Facebook gives developers access to the custom code that allows them to handle all this, making it easier for small startups to jump into large service hosting solutions.

      Also, not sure what the summary means with the last statement. It is my understanding that Facebook HAS open sourced their server code (very likely as a jab at Google who, despite being "Open" would never dare give any competitor access to their scaling server code.)

    3. Re:What's the point? by Tharsman · · Score: 5, Insightful

      Actually.... the summary does mention that the lack of open source code from Facebook and Google is "hindering open source development."

      He may be question the usefulness of Facebook being open source and why would it "hinder" anything.

      Still a flawed observation that I replied in another post, but at least it seems he did read enough of the summary (i.e. all of it, not just the title) to jump to his argument.

    4. Re:What's the point? by Tharsman · · Score: 4, Insightful

      It’s sad that anyone who makes a web service thinks they don’t have to, and as soon as they get 10 more users than they tested their service with the entire thing falls apart and they can’t scale it up to manage users. All they can think of is to try to optimize code here and there, but that has its limits and eventually you will need a system that can handle the scaling demand.

      “Scalability” is not about being able to “be as big as facebook”, it’s about being able to handle increased user demands, be it seasonal or popularity based.

    5. Re:What's the point? by hackus · · Score: 3, Insightful

      "Lets be honest folks we ALL know what is causing this, hell its the same thing that is causing the drop in GPL code we saw posted here a little while back, and that is this: RMS went too damned far with GPL V3 and this is the backlash."

      Complete nonsense. Furthermore, the whole idea about open source is to control the destiny of your investment, customer base while at the same time allowing customers to partcipate as engineers, not just as end users in what amounts to a community which has the final say as to what changes are made to the software it uses, and even if the software will continue to be used for a given purpose.

      That result is open source. Open API's are not open source. No, if I have an open API it is not going to allow my customers to participate as engineers, it will not allow the community to control the destiny of the softwar either.

      Those API's could be removed tomorrow, you can't improve them, the bugs are intractable or ignored by the corporate Big Brother who is monitoring everything you are doing with those API's.

      Are you people just plain stupid or have you had your heads in the sand since 1992?

      How can someone post something like this and get a Score 5 as insightful?

      Go ahead and embrace your open API's.

      You probably enjoy TSA sticking their hands down your kids pants, why wouldn't you enjoy having someone monitor every API call your software does.

      F'in diots I hope you get the world you deserve.

      You don't deserve Stallman's vision or any sort of Freedom!

      -Hack

      --
      Got Geometrodynamics? Awe, too hard to figure out? Too bad.
  2. I see no problem here. by bigstrat2003 · · Score: 5, Insightful

    I would far rather have a published API than the source, especially for something like a social networking site where having the source would do me no good whatsoever. And I doubt I'm alone.

    --
    "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    1. Re:I see no problem here. by betterunixthanunix · · Score: 4, Insightful

      The problem is that web app APIs can change at a moment's notice, without any announcement, and all the developers who depended on the API will be left out in the cold. If Facebook wanted to, they could kill, hinder, or otherwise put any particular third party app at a disadvantage by simply changing the API a little. The running story with web 2.0 is that everyone is at the mercy of the people who run websites; this should not be news (in fact, the problem was discussed years ago).

      --
      Palm trees and 8
    2. Re:I see no problem here. by ortholattice · · Score: 5, Insightful
      Yes, and a Windows developer has absolutely no use for the Windows source code as long as they have access to the APIs. So why would anyone care about Linux?

      While you in particular may not necessarily have a use for the source code, the point is that it is unavailable to those who do wish to use it. The "use" might be understanding what it is doing (what information is it sending to the parent company), modifying it (so that it does not do this), and having the ability in principal to continue to run the API (modified to run on your own or an alternate social network) if the site owner goes out of business, does things you don't like with the information you give them, or decides to ban your application.

    3. Re:I see no problem here. by Tim+C · · Score: 4, Interesting

      The problem is that web app APIs can change at a moment's notice, without any announcement, and all the developers who depended on the API will be left out in the cold.

      While that's true, if they do it too often and to too great an extent they'll lose developers to some other platform; if the apps start breaking without replacement, users will start to leave for other sites. Facebook (as big as it is) is nothing without its userbase.

    4. Re:I see no problem here. by jedidiah · · Score: 5, Insightful

      > So why would anyone care about Linux?

      People care about Unix and Linux is just another Unix.

      THAT is what freely re-implementable interfaces get you. Now while it is possible to have proprietary interfaces that can be re-implemented, it is very rare. The whole point of "owning" the API is the fact that you can disallow drop in replacements. You are you're own monopoly and market pressures quickly enforce that.

      We haven't moved from Free to Proprietary but from proprietary apps to proprietary services where all of your eggs are in one basket at some Facebook owned data center.

      What's missing is mobility of data between different "compatible" services.

      --
      A Pirate and a Puritan look the same on a balance sheet.
  3. Open API? by dyingtolive · · Score: 4, Insightful

    Isn't "Open API" just a different way of saying, "The first one is always free?"

    --
    Support the EFF and Creative Commons. The war is coming, and they're supporting you...
    1. Re:Open API? by ThinkingGuy · · Score: 5, Interesting

      Another way of phrasing it (which I remember being used in the context of Microsoft's API): "software sharecropping."

    2. Re:Open API? by Tsingi · · Score: 5, Insightful

      Another way of phrasing it (which I remember being used in the context of Microsoft's API): "software sharecropping."

      I don't know why this is marked flamebait. I think the comment is rather astute.

      What is the point in building code to support a library that puts you in a position wherein you immediately become dependant on something you cannot control. Resulting in a product that largely makes money for someone else.

      That's not flamebait, it's wisdom.

  4. No way by thetoadwarrior · · Score: 5, Interesting

    Like I want to build my software around an API that could disappear in 6 months to a year. Google is quite bad, imo, at dropping things out of the blue, facebook likes to break things and to be honest I'm not sure I'd want to trust their competitors either.

    1. Re:No way by MightyYar · · Score: 4, Insightful

      Like I want to build my software around an API that could disappear in 6 months to a year.

      You'd be foolish not to, if you could recoup the investment in less than 6 months to a year with a decent return.

      Programmers seem to routinely toss away their entire codebase from time to time anyway.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    2. Re:No way by betterunixthanunix · · Score: 4, Informative

      Programmers seem to routinely toss away their entire codebase from time to time anyway.

      With disastrous consequences: Netscape, KDE4, etc. Throwing away a large codebase is stupid.

      --
      Palm trees and 8
    3. Re:No way by Monchanger · · Score: 4, Insightful

      With disastrous consequences: Netscape, KDE4, etc. Throwing away a large codebase is stupid.

      That depends very much on the quality of the codebase. They don't age nicely like fine wine, you know.

    4. Re:No way by shmlco · · Score: 4, Insightful

      Doing it just because I can "recoup my investment" short term is stupid. Throwing away a large batch of hard won customers is stupid. If I had made a successful ad-supported app with Google Translate, what do I do my customer base disappears because Google closed the APIs? They already had one app from "my" company break. Think they're going to buy another?

      Way, way too many companies -- and individuals -- make decisions based on short-term profits, with little to no regard of the long-term impact. That "I'm going to get mine and screw everyone else" sense of entitlement is largely how we got to be in our current mess.

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
  5. They are not the same thing. by El_Muerte_TDS · · Score: 5, Insightful

    Most of these APIs provide access to data "owned" by the providers of those APIs. They rarely ever provide functionality that is not coupled to their data. These Web APIs are not going to replace open source tools/libraries that provide functionality.

    Also, using the term Open API is bullshit. First of all, an API is pretty much always open otherwise it cannot be an "application programming interface". If the API was closed it would not even be an interface to program against but a blackbox.

  6. Reduce revenue... by O('_')O_Bush · · Score: 3, Insightful

    1. Make Open API that replaces ad-based website functionality.
    2. Don't require ads or developer fees
    3. ???
    4. Profit?

    I would have written more, but I think that sums up my point.

    --
    while(1) attack(People.Sandy);
  7. Be Wary by samael · · Score: 3, Insightful

    Many companies have built their products on top of someone else's APIs, to have those APIs change, vanish, or develop charges later on. Do be aware of the pitfalls before you make yourself totally dependent on someone who does not have your best interests at heart.

  8. Guess not by ACE209 · · Score: 3, Insightful

    Open Source replaced by Open APIs?
    How should that work?
    Two totally different things.

    --
    "we are all atheists about most of the gods that societies have ever believed in. Some of us just go one god further."
  9. interesting idea but not FB by youn · · Score: 3, Insightful

    I do think Facebook is a bad example. Their API is open and the SDK is open too... yes, the code is executed remotely... but that is the whole point because it interacts with the user data... that is the beauty behind technologies like XML-RPC or soap... good luck to facebook opening up access to their whole database... they don't care about privacy but even they would not do that

    now, it is true that a lot of companies provide an open SDK with a binary part... a good example would be video drivers which are open source yet include a binary part that is not open source. Games are another example.

    Even then, I would still consider it progress because before that there was no SDK, the only way to modify existing products was through a hex editor... at least now, software editors provide an api to interact.

    The concept is not even new... windows operating system is based on binary DLLs that many times only microsoft has the source code... yet visual studio comes with sourcecode and a very complete toolkit... but even that was not the first time open api was provided to a binary core... I guess that is just the way software is done

    --
    Never antropomorphize computers, they do not like that :p
  10. It's true! by Haeleth · · Score: 5, Funny

    For example, just this morning I replaced Debian on my computer with the Twitter API. It works great, boot times are much faster. Now I'm going to uninstall Firefox and just access the web via the Facebook API.

  11. Open APIs renamed: APIs by ciaran_o_riordan · · Score: 3, Insightful

    It's an API. Tacking "Open" onto doesn't change the fact that it's just an interface to a black box.

    As Stallman's been saying for the last few years, having software freedom is about having control over your computing, and that requires that your computing is done on *your* computer:

    http://www.gnu.org/philosophy/who-does-that-server-really-serve.html

    1. Re:Open APIs renamed: APIs by Nerdfest · · Score: 4, Insightful

      "Published APIs" would probably be a better description for what I think they're trying to say.

  12. Walled gardens are bad by Morgaine · · Score: 5, Insightful

    Remember the good old days of the Internet, in which techies used to invent useful protocols, document them as RFCs, and then the best of these would be turned into Internet standards at the IETF? That approach gave us an open Internet with multiple implementations of the same standard services, all competing on merit not through proprietary lock-in.

    Well that's not where we are today. Instead we have a ton of proprietary services that occasionally publish public APIs when it suits them, but they're almost always pathologically opposed to interoperating with anyone else that might provide competition. Imagine a world in which everyone used their own homegrown mail prototols instead of SMTP and POP or IMAP. That's where we are today with the social networking services.

    Walled gardens are bad. Publishing open APIs doesn't make them any better, as the gardens are still walled and these closed services reject federating with other similar ones. And even if they accepted federation, the complexity of a fully interconnected graph in which each node has a different public API grows explosively, so technically this is a very bad design approach.

    Things aren't at all healthy on this front of the Internet, and proprietary services having open APIs doesn't help much. The best that can be said is that it's a bit better than no API at all, but that's not saying much.

    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
  13. Open source was never the way to get rich by HuguesT · · Score: 4, Insightful

    I'm not sure what the point of the submitter is. Open source and open API have little in common. It's not like one could develop an OS kernel based on some documented open API. Open API is also nothing novel.

    Getting rich as an individual is not the point of Open-Source. Getting richer as a software-building community in terms of software availability is.

  14. Re:Software packages, too by nman64 · · Score: 5, Informative

    Different tools for different goals.

    When you need to recreate the functionality of an existing application in a new application, as would be the case if you wanted to create a Facebook competitor, you may want the source code of the existing application.

    When you want to integrate your new application with one that already exists, as would be the case if you are creating a complementary or dependent project, you want SDKs/APIs.

    Developers do frequently use the APIs published for toolkits (jQuery, for example) and often load those toolkits from a third-party hosting service (like Google's, for example). This does create a dependency that would need to be updated if the hosting service made an incompatible change or discontinued their service, and that is something that developers need to keep in mind.

    When developers tie into the APIs of platforms like Facebook and Twitter, it would usually do them no good to have access to the source code, as they are usually trying to tie into those existing platforms to connect with their user bases. If the developer chooses to make their application dependent upon a third-party API, that is a strategic decision and the committment is theirs to make. It makes sense if the purpose of the application is dependent upon the third-party platform.

    As for published APIs interfering with open source development, I think it is possible that developers may choose to use proprietary products with published APIs rather than implement an open source solution. An example might be a developer choosing to use Google Charts rather than integrating gnuplot into their project. This might have some impact on the momentum of some open source projects, but the examples given in the summary are way off. A developer choosing to use an API published by Facebook for Facebook integration is not taking anything away from open source software.

  15. Re:open source is a race to the bottom by Microlith · · Score: 3, Insightful

    Yes! So instead of a single vendor holding its customers hostage, you get competition that drives down prices and a platform that is independent of the hardware.

    That's a good thing. Well, unless you're a monopolistic corporation/control freak.

  16. It's a new game... by Junta · · Score: 3, Insightful

    Assuming there *was* one universally accepted standard that Facebook embraced and was also implemented by MySpace. No one would still give a rat's ass about MySpace. The APIs in this case are trivial and you can make up your own or copy them as a de-facto standard, but the data and user connectedness that the service embodies is what matters.

    There are two good reasons these companies don't go through RFC process for things like this. One, as above, the APIs are trivial and only of value to their data so an RFC process makes no sense. Secondly, if they were married to the RFC process, every little enhancement has the potential of taking months to over a year to ratify. Nothing is stopping a community for creating an RFC to compete with a proprietary API and if you push it through and are successful and create an ecosystem, then Facebook might implement it on top of their proprietary API.

    Incidentally, the same phenomenon can be seen in the 'good old days' of the internet. Cisco frequently did (and still does) roll out a proprietary protocol and when the IETF finally ratifies a standard to do the same thing, Cisco implements the standard as well as their proprietary approach (ususally, some times Cisco ignores the standard, probably due to lack of explicit customer request). Also, at the upper layers, there is a large precedent for people not bothering with RFCs at all. As far as I know, there is still no IETF RFC covering bittorent. There we have a very popular, community driven technology that has been in use for years that doesn't bother with IETF RFC process.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  17. A Serious Question by rabtech · · Score: 3, Interesting

    As a software developer this is a serious question for me and one that I've never gotten a satisfactory answer to.

    How can I feed my family or control my own destiny if the software is all I have? Am I not dependent on the benevolence of a corporation or university to fund my project or work as a clerk or something during the day and code at night? I know Open Source companies can make money on services or hardware but I'm not an Open Source company, I'm just one guy trying to make a living. I don't have the capital to produce hardware and my software is designed for end-users who don't require much in the way of services.

    If I were working on some glue code that might be useful to other developers and where I would benefit from their contributions I certainly would open source it (and I do contribute patches to some of the open source projects I use). I also get the idea of an open source OS or other large projects because so many companies depend on it there are enough "payers" in the pool to fund a lot of full-time devs - more than enough to cover the people who make millions off it (eg: Linux) yet contribute nothing back... plus with millions of users you have enough part-time tinkerers that you also get significant contributions from them.

    But I just don't see why I would open source my apps. No company in the world can pay my salary based on them, yet there are thousands of users willing to pay $0.99 for them, enough that I can keep my hardware up to date and have a little bit left over to go out to eat every month (certainly not enough to quit my job). But there aren't enough users that there would be a lot of programmers willing to contribute.

    If I open-sourced them, I'd be in the same position as Google with Android - funding the majority of it but having Chinese search companies replacing all my services with their own and selling it while simultaneously cutting off part of the revenue stream I use to fund further development.

    I like open source, I use it, I contribute to it, but I have absolutely no desire to follow the Stallman "everything must be open source!" philosophy. I'm interested to hear other dev's thoughts on this stuff...

    --
    Natural != (nontoxic || beneficial)