
Originally Posted by
mirza
What Ubuntu really really needs to attract developers is: API. I don't mean "stable API", it can be changed every release but "some defined API, *any* API". Each successfull platform (Android, iOS, OSX, Windows) has one. OK, I don't want API like Win32, that sucks, but any other from that list looks good enough. That would enable existance of "clean Ubuntu Apps ecosystem". Ubuntushould define:
1) Primary language for Ubuntu applications is: X (probably C++) so our Ubuntu API is X-based.
2) You can use any other language as long as it has wrapper around our primary API and doesn't go around our API to lower levels of OS (say, kernel) in order to get "Clean Ubuntu App (tm)" label in our repository.
3) Current desktop for Ubuntu is Y (Unity?) so you must use that and not KDE, Swing, .... Therefore, Unity API is part of Ubuntu API.
4) Ubuntu API should have complete refference manual of what you need to write destop application, coverying everything from multimedia to 3D, to GUI, to USB, to I/O, to GPS, to Network, to panel apps/notification windows etc.
5) There should be Eclipse plugin for deveopement of Ubuntu apps with possibility to easily build and publish apps with usage of complete Ubuntu API and witout need of any library downloading/configuration etc... unless you use some 3rd party libs.
6) Any HTML5 application (like gmail) should be considered valid Ubuntu app automatically.
Obviously, some current applications coudn't enter "Clean Ubuntu App" repository without major rewrite (K3B, OpenOffice), but thats not major problem, they would still be available and they would still work. Also, changing API each 6 months would require developers to target specific release and do little changes every 6 months, but thats better then current state, me think. Game distribution would be _possible_.