Hacker News new | ask | show | jobs
by antiviral 3668 days ago
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?

1 comments

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.

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.