News for hackers. Stuff that matters.
Re:How To Design A Good API and Why it Matters (2007) [video] by clumsysmurf on Monday June 06, 2016 @01:14PM (#11848376)
I think Android could have been much better if these principles were taken to heart during the design of the main APIs. From what I recall Josh collaborated with the Android team at some point; sadly too little too late.

IMHO almost every Android API i use violates some principle in this presentation.

Re:How To Design A Good API and Why it Matters (2007) [video] by antiviral on Monday June 06, 2016 @05:42PM (#11850649)
My response (in good humor of course): https://cdn.meme.am/instances/500x/45999359.jpg

More seriously, every sufficiently complex, real-life design I have ever seen has been a set of compromises to best meet a set of competing constraints. The most that I hope that a book or a lecture can do is provide a general set of principles that an engineer should consider, and be mindful of they are going to violate them. I can't think of any very complex platform that hasn't run into this issue, and Android is no different, and probably fares better than most. Do you have any examples that you would prefer instead?

Re:How To Design A Good API and Why it Matters (2007) [video] by chubot on Monday June 06, 2016 @06:08PM (#11850838)
Uh, isn't the obvious comparison iOS?

I think the difference is that Apple had decades of institutional GUI expertise. Android engineers were more like hardware/OS guys as far as I can tell, and perhaps less experienced with the abstractions conducive to easily creating nice GUIs.

Re:How To Design A Good API and Why it Matters (2007) [video] by rqebmm on Monday June 06, 2016 @06:48PM (#11851115)
iOS and the Cocoa framework also have their fair share of hard to work with APIs. Like the OP said, you're always going to have to make compromises between conflicting requirements.
Re:How To Design A Good API and Why it Matters (2007) [video] by pjmlp on Monday June 06, 2016 @02:24PM (#11849006)
So far I have spent more time on the NDK side than on the Java side, but for me the worst parts are the way Renderscript is bolted into the platform, all those m* member variables and anonymous classes everywhere.
Re:How To Design A Good API and Why it Matters (2007) [video] by miguelrochefort on Monday June 06, 2016 @04:34PM (#11850101)
Android indeed has some of the worst APIs. They feel extremely inconsistent.

iOS and Windows APIs are so much better.

I think it's fair to assume that most people share the same experience.

Re:How To Design A Good API and Why it Matters (2007) [video] by collyw on Monday June 06, 2016 @02:25PM (#11849016)
This sounds just a lot my systems analysis and design classes years ago (waterfall days). Who would think of gathering requirements and specs in these days of Agile....
Re:How To Design A Good API and Why it Matters (2007) [video] by Bombthecat on Monday June 06, 2016 @02:57PM (#11849314)
And Facebook showed clearly that you can change your API daily and no one cares.
Re:How To Design A Good API and Why it Matters (2007) [video] by caseysoftware on Monday June 06, 2016 @03:45PM (#11849721)
Yes, when you become a de facto standard with 1.6B users, you get to set the rules.

For everyone else, we have to provide good experiences with stable products.

Re:How To Design A Good API and Why it Matters (2007) [video] by guelo on Monday June 06, 2016 @03:24PM (#11849534)
Well, a lot of people care it's just that they don't have another option.
Re:How To Design A Good API and Why it Matters (2007) [video] by gnaritas on Monday June 06, 2016 @04:30PM (#11850061)
Everyone cared and complained loudly, so no, they really didn't.
Re:How To Design A Good API and Why it Matters (2007) [video] by jolux on Monday June 06, 2016 @03:30PM (#11849597)
And people say there's nothing copyrightable in an API design...
Re:How To Design A Good API and Why it Matters (2007) [video] by magicalist on Monday June 06, 2016 @03:33PM (#11849615)
Just because something is a creative act doesn't mean it's covered by copyright. If your functional creation is useful and novel, get a patent on it.
Re:How To Design A Good API and Why it Matters (2007) [video] by jolux on Monday June 06, 2016 @07:34PM (#11851367)
I'd argue that the functional part of all APIs is nearly identical and that the creative part is what differentiates them.
Re:How To Design A Good API and Why it Matters (2007) [video] by magicalist on Tuesday June 07, 2016 @05:16PM (#11857932)
> I'd argue that the functional part of all APIs is nearly identical and that the creative part is what differentiates them.

You misunderstand.

It's not that functional things are covered by patents, "creative" things are covered by copyright. First, functional things can of course be creative; that's in the very definition of invention. Second, copyright is limited by law to the expression of an idea, not the idea itself.

US law is very clear about this:

> In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work.

Source code is indisputably copyrightable, but the question of law is if the functional aspect of an API, the way you interoperate with it, is protected by copyright. I believe Judge Alsup decided correctly that an API is a "system or method of operation", avoiding "the danger of conferring a monopoly by copyright over what Congress expressly warned should be conferred only by patent". I'm hopeful that the other circuit courts will agree.

Re:How To Design A Good API and Why it Matters (2007) [video] by jolux on Tuesday June 07, 2016 @05:41PM (#11858145)
And when you copy source code that has an API in it, you violate the copyright for that source code. This is not hard.
Re:How To Design A Good API and Why it Matters (2007) [video] by paulddraper on Monday June 06, 2016 @11:11PM (#11852131)
And when should I get a copyright?
Re:How To Design A Good API and Why it Matters (2007) [video] by ciupicri on Monday June 06, 2016 @12:52PM (#11848171)
Someone should add (2007) to the title.
Re:How To Design A Good API and Why it Matters (2007) [video] by dang on Monday June 06, 2016 @03:24PM (#11849540)
Someone at your service. Kind of interesting that this was posted 15 times and never really discussed:

https://hn.algolia.com/?query=How%20To%20Design%20A%20Good%2...

Re:How To Design A Good API and Why it Matters (2007) [video] by s_dev on Tuesday June 07, 2016 @08:08AM (#11853851)
This regularly happens with most HN submissions. New can be equally as fruitful in its own right as front page.
Re:How To Design A Good API and Why it Matters (2007) [video] by ttam on Monday June 06, 2016 @08:31PM (#11851576)
interesting, any idea why? how many times were the other threads opened? etc