In comparison for example webOS and Maemo did the analogous thing by using mainline usbnet driver from kernel and configuring routing with standard route command etc. This is possible because they did not flinch from exposing the full power of the underlying system for those who want it.
> Also how often does your laptop have an Internet connection that you can't just join as well from the android device?
Corporate networks would be a common example. Or wired-only networks (yes, such things do exist still).
You can write an app to do something the designers of the system didn't anticipate. That's a mark of a versatile system.
> In comparison for example webOS and Maemo did the analogous thing by using mainline usbnet driver from kernel and configuring routing with standard route command etc. This is possible because they did not flinch from exposing the full power of the underlying system for those who want it.
I believe that, with root, you can install/load/configure kernel modules (mainline or otherwise) on Android as well. Here's a stackoverflow article talking about creating loadable kernel modules: http://stackoverflow.com/questions/6282669/how-do-you-create...
You can see the underlying theme in virtually every interaction you have with Google these days, especially since ad blocking started becoming widespread. Every service they offer is structured so as to extract the maximum amount of personal information from the users of the service. Every design decision follows this underlying goal, even when doing so isn't necessary or even ideal. Everything they do is quid-pro-quo.