3 ms·
It's really not about whether bad things would happen or not. It's about what is the correct decision. I define an interface for a box. It has methods push()
by keypusher 10y ago
It's really not about whether bad things would happen or not. It's about what is the correct decision. I define an interface for a box. It has methods push() and pull(). I implement a wooden box that conforms to this interface. Many happy users push and pull my box via the interface all day. Someone comes along and implements a metal box that conforms to my interface, so that users can push and pull a metal box. I sue that person and win. Does this sound correct to you?
What bad things would happen?
* Compiling against any C header files, such as kernel headers, is called into question. This has massive ramifications because of many for-profit businesses that compile against the headers of GPL code, as is standard practice.
* Amazon S3 API is widely implemented by other cloud storage providers. Sharing an API between products makes it easy for customers to switch one application between different providers.
* This is copyright, not patent. Which means there is no requirement to register a design, no oversight and no cost.
* It could cause a rush of people just writing obvious API combinations to be the one who "got there first" and potentially harm their competition.
https://www.publicknowledge.org/news-blog/blogs/why-you-cant-copyright-an-api https://www.publicknowledge.org/news-blog/blogs/why-you-cant...
- forrestthewoods 10y ago> I sue that person and win. Does this sound correct to you? Sure. That's plausibly reasonable. The API definition is significantly more detailed that just the method names. The metal box maker could easily have created their own API. But instead they use an API created by someone else. * Compiling against headers is an important issue. That would be bad. I raised this question in the last thread but it didn't seem to be an issue. * A closed S3 API seems fine to me. Amazon doesn't have an obligation to make switching easy. At the same time they'd have incentives to make their API open to encourage people to start using S3. Permissive open source software is exceptionally popular these days. If Amazon wants to write a closed API that presents an opportunity for someone else to write an open API. * I think we'd be in a much better place if software could NOT be patented but APIs were copyrighted. Implementation code is already under copyright. * I don't think "got there first" is a real concern. TCP and UDP both define connect(), send(), and receive(). But they are radically different APIs with radically different specifications. Thank you for your thoughtful reply. This is a good discussion.