5 ms·
Thanks for the reply. Definitely interesting to hear what it is like on the "other side" of the drawing board. Android is actually an interesting case. Android
by d_r 15y ago
Thanks for the reply. Definitely interesting to hear what it is like on the "other side" of the drawing board.
Android is actually an interesting case. Android applications are sandboxed. It's just that applications can request some very dubious permissions ("read all your SMS messages") and users don't know any better and don't read the fine print. The flexibility does allow for some excellent customizations (e.g. Swype keyboard replacement), but the risk of shenanigans is also there.
TechCrunch says:
One of the most popular forms of trickery in Q3 was
SMS-sending Trojans that collect personal information
and steal money. Another new method of stealing user
information is malware that records phone conversations
and forwards them to the attacker.
These are not classic viruses in the purest sense. These are not, say, buffer overrun exploits. These originate from apps the user downloaded that do other, sneaky things.
How do you protect the user from the user? The other flip side is iOS where almost everything is heavily locked down, except perhaps for the AddressBook API. The user is not very trusted, and essentially has no way of opting-in to anything really dangerous. This does severely limit the interesting cross-app interaction cases. But I can sleep safely knowing that my iPhone-holding non-techie family members can't download anything that would cause harm.
Since educating users across the board is likely impossible, does this mean the tough Apple approach is the way of the future (loosely speaking)?
- cek 15y agoThe WP7 API surface area is very much locked down. For example, in v1 we did not provide any access to the address book (other than a chooser). There is no way to do cross app IPC. There was no background processing. No sockets. Etc... As I went around the world "selling" the WP7 story to developers I got very good at saying "I'm sorry, but in this version of the platform the app you want to build is not possible." I found that once this sunk in, developers were actually really glad we were so clear and unambiguous. They weren't necessarily happy, but it felt good (to me) knowing we'd been principled and consistent. I personally believe this is the only way to build a modern client platform. Start with very tight controls and open it up only when * There is a well understood use case. * You have the time/resources to do it right. I do not mean to be overly pejorative about what Google has done with Android (because, in the large it's truly awesome), but I firmly believe that when it comes to building platforms once the cat is out of the bag it can't be stuffed back in. I'm specifically referring to BOTH the tightness of the sandbox and fragmentation BTW.