The Best of Intentions

android_wallpaperAndroid has demonstrated itself to be a truly revolutionary OS in a very short period of time. So many things about the operating system set it apart from its peers. In large part it represents the perfect blend between good ol’ fashioned Microsoft utility and the pristine glisten of Apple bling. But for all of the awesome things we’ve seen come to fruition on this adolescent platform, there remains a lot to be done.

One of the features that most excited me about the platform when I was first learning about it was the concept of intents. By using intents programs could announce what they want to accomplish and it’s up to the user to decide which program they want to use to accomplish it. Some applications have done this very well while others have left us wanting.

One of the problems comes down to being overly individualistic. Too many developers and companies have been more interested in expressing themselves in how an application should look and function than in contributing to an approachable ecosystem. One of the things that has made Apple so ridiculously successful over the past several years has been its militant attitude towards standardization and consistency. When you use stuff on an Apple device you know what you’re getting, and as much as we all love the openness and latitude (no pun intended) that Android affords us, the fact is that people like to know what they’re getting. People like it when they are using a device and not just a bunch of apps. They want things to flow and fit in.

I wouldn’t necessarily expect a platform as young as Android to have really settled down yet, but it needs to happen sometime and if we want to really start to move in on the market we need to be more interested in providing consumers what they want rather than what we as developers may think is cool when it comes to look and feel. At this stage, for the sake of the whole ecosystem, let’s sacrifice a little individuality for mass-market buy in. Hey, the more folks we have buying in to the platform as a whole, the more customers and opportunities for innovation we’ll all have.

  • Deathwish238

    I'm sorry, but Android is not for you. Go buy an iPhone like you mentioned if you don't want options and get a Mac to go with it.

    Having multiple versions of apps makes developers compete with each other for the market share. Competition breeds nothing but innovation, better quality apps and lower prices. All things that benefit the end user more than anyone else. This is basic economics.

    Android in its stock form can do almost everything people need. It is well integrated and feels like a complete streamlined phone, not just a bunch of apps. The phones with SenseUI and BLUR improve on the streamlining and integration as well as cater to the need for social networking as well. You don't need to download a single app for the functionalities people expect in a smartphone.

    What the Android user wants is lots of quality apps to choose from as well as widgets and UI enhancements that let us customize our phone to our liking depending on our personalities and day to day lives. That is exactly what Android is delivering.

    • carig

      i think what the author is saying is not that there shouldn't be multiple, competing versions of apps, but that the innovation that goes into those versions should be working towards better, more functional versions of apps as opposed to apps that just function and look differently from other versions
      however, you do make a good point that compared to the iphone, android is more about customization and personalization, so a user's experience can vary with their preferences compared to the one streamlined user experience available on the iphone. Because of this, it makes more sense that developers would focus on individualization (personally though i'd still prefer more functional apps to more personalized ones)

      i would also argue that in todays smartphone market, apps have become something people expect on their phones, there are feature phones that offer all the same basic functionality of a smartphone but what sets smartphones apart is the ability to customize and add extra functionality via apps,

      • Deathwish238

        No, that's not how it works. You don't get magical innovation as well without competing apps.

        If I'm already using something like…Astrid for example, if another to do/note program comes out…it has to be better than Astrid or I'm not gonna have any reason to switch. So when something like NoteMe came out that added automatic syncing with your calendar, I switched over to NoteMe. It's completely plausible that if Astrid didn't exist, NoteMe would not have had calendar syncing because it didn't have to stand out against another awesome app.

        If it were that simple to just create an uber app to start with, people would do so. It's all building blocks. That's how software and technology in general work. The iPhone was pretty crappy in terms of specs(no 3g or video recording at that time is horrid), the iPhone 3g improved on top of that and the 3gs finally gives most features of phones on the market.

  • Quite right. I've been doing some Android development and 90% of the apps I've installed from other people don't seem to take advantage of building on the basic Android framework in an extensible way that everyone could take advantage of.

    For instance, developers should be building:
    – a file browser that could be used as an open dialog for any other app out there. Create a standard Intent URI for requesting a file from the system, and developers could write competing apps that could handle the request.
    – content providers for their backend data. With few exceptions, any app that stores data should make it accessible via content provider.

    We need more developers with the UNIX mindset of building apps that do one thing well, and using an interface that allows others to build off what they've created. That's what attracted me to the platform in the first place.

    Unfortunately I feel like I spend way too much time coding mundane things like android:layout_width="wrap_content" android:layout_height="wrap_content" and activity lifecycle management/state saving. That could be part of the problem, there's too much overhead required just to get an app of reasonable complexity working even before you start tacking on things like Intent filters and content providers.

    I'm slowly building a series of SCUBA diving apps that will work this way. If I get it right, maybe it will serve as an example for how to architect an Activity/Intent model for other complex arenas.

    • Nathan D. Cole

      Absolutely! As a professional enterprise architect for quite some time now, I have found (the hard way too often) that flexibility is best achieved through intelligent standardization. It simplifies the process and allows you to focus on the goal you are trying to accomplish. In the mean time you create a friendly and inviting environment for users who are less concerned with spending their time customizing things or being accosted by your customizations and more concerned with getting done what they want to get done. That's true in the development process as well as with consumer user experience.

      As to intents specifically… just think of what a rich environment we could create if we would build a set of applications that really felt seamless together. You could naturally move from one to another without feeling like you're moving from one stand-alone application to another. It's important for companies to be able to brand themselves, but I think there are decent ways for them to do this without going nuts on making their apps stand out like a sore thumb. Wouldn't we rather stand out for the quality of our applications than for the obnoxiousness of our interfaces?

    • Deathwish238

      Things like this already happen. I've used Apps for example that use Astro to browse files. Or that use a browse of my choice to display a web page from a link within the app. Or use a sms program of my choice to send a message pertaining to the app as well.

      A better example is the Text to Speech Library. It was developed, put on the app market but couldn't do anything by itself. Now you see a plethora of apps that utilize it.

      Any program you need to write is going to have some mundane overhead that needs to be done. It's obviously not much of an issue given that we have around 10,000 apps on the market.

  • Bernal

    It's interesting that everyone is reading into this article what they want to read. I guess the article could be a little more specific.

    I'm more focused on the look and feel aspects that Nathan brings up. I find way to many Android apps are ugly as sin. It's not completely the fault of the developers though. The stock android UI is very mundane and boring. I don't care if Android follows the iPhone look and feel or has it's own. I just want a consistent good looking user interface that includes the OS and third party apps.

    I expect that developers will have to step up and deliver a better experience, including UI, if they want to continue to compete for attention in the Android Market. There isn't as much room to create new apps the break new ground, but there's a ton of room to compete on look and feel.

    • Nathan D. Cole

      I think you very much understood what I was getting at. As you said, it is always very interesting and fun to see what people read out of things. The underlying principles and point of my article are that the proof is in the pudding, and the pudding says people want applications that look nice, clean and consistent.

      Microsoft and Apple's operating systems have done well with consumers while Linux based systems have consistently floundered. This has more to do with the attitude of the development community than it does with the technical merits of the operating systems themselves. As much as people may talk about wanting customization and as much as we geeks may genuinely like it, the reality has been proven time after time in the marketplace that people just want something that is clean, simple and reliable. MySpace has been dying off while facebook has been picking up, custimizable vs. ctandardized. Windows Mobile vs Apple iPhone, customizable vs standardized.

      • Deathwish238

        You cannot compare Linux to Windows and Mac OS the same way you're trying to compare Android to WinMo and iPhone OS.

        They're extremely different. The biggest problem with Linux is the difficulty level should some issues arise.

        Plus, Linux is very streamlined in terms of looks. Gnome or KDE both have their own versions of apps that fit in with the theme of the UI. So really, you're contradicting yourself.

        Not to mention Linux doesn't advertise. The world we live in is driven by advertising, it's one of the big reasons Apple has done so well. They have stellar advertising.

        WinMo vs iPhone OS goes far deeper than customizability or standardized. I mean, you're comparing an OS with no app market to one with an app market. The OS with an app market is going to win. You're comparing an OS designed for a stylus to one designed for your finger. WinMo 7 will be a better basis but for now, it's not even fair to compare WinMo to Android or iPhone OS imo.

        I think you're trying to overly simplify things. It doesn't take a geek to enjoy customization. Everyone likes it, everyone enjoys it. Those that don't care, won't bother to customize much. They also are likely to find the first app that suits their needs and then stick with it. Android is not written for that person, but it will satisfy their needs just as well. I have friends that have done virtually nothing to their G1, have done some customizing, run stable custom roms and run the latest experimental builds like me. They all get to choose what they want to do.

        Competition breeds excellence. You're calling for a stop in competition. It's the same thing as banning Google Voice from the app market, anticapitalist and antifree-market.

    • Nathan D. Cole

      This is not so much a point I'm trying to make as much as it is a point that the market has been making for quite some time. Yes… in theory, customization is wonderful but real progress is built up on the acceptance of standards that allow people to build upon. These standards include technology, networking, coding, user interface, etc. (e.g. HTML, XML, Various Programming Languanges, operating systems themselves, etc…)

      As you said… it's not so much about it looking or behaving like an iPhone or anything else, just that it begins to develop it's identity that consumers (no geeks) want.

      • Bernal

        Nathan, this is where Android will continue to struggle. Google has allowed hardware makers to slap their own UI's on the devices like HTC's Sense. The "skin" if you will that Sense uses is very different from stock or even Blur. That leaves the development community in a quandary. Which design should they follow? This is going to continue to be a sticking point for Android in the years to come. Like it or not, this is something Apple has understood for many many years and I'm really shocked that other companies haven't learned it from them yet. It's why I think they have a real chance make a successful tablet work where others have failed and floundered.

        • Nathan D. Cole

          Indeed… I was just thinking about that point after some of my earlier responses. All of these nice(let's hope) skins that are going to be hitting the scene are really going to mess things up. Even if a developer does want to try to adhere to one theme or the other it's going to be completely out of place with other devices. At least maybe they'll be pretty.

          It's funny how much time we technologist spend debating different things when the market can tell us very clearly what people want. If we want to be able to grow these technologies we have to have regular folks on board. I also think it could be confusing for people who may get the impression that Android is a standardized OS and see different "Android Phones" that look very different.

          • Deathwish238

            Are you kidding? Multiple Android phones on multiple carriers with different flavors of Android is a bad thing?

            Have you even used the HTC SenseUI or Moto BLUR UI? I'm gonna say not judging by your "let's hope" comment. They're both excellent and different. SenseUI reminds me of WinMo and BLUR is just fun.

            Given the right advertising, which has been done by TMo so far, people will realize that Android is about customization and that phones looking different is not a bad thing. They have options to pick whatever appeals to them most.

            I for one would rather have an iPhone with a keyboard than one without. But I was forced to have without a keyboard. Android phones on the other hand come both with and without keyboard. Where's the advantage?

        • Nathan D. Cole

          Speaking of the tablets though… if Microsoft can really get it to market soon, I really think they will break significant new ground with the Courier. Have you seen much about that yet? It really does seem to be a new form factor that appears to be well executed. I think it could really blow the tablet stuff out of the water. It seems to really blend the best of paper with the best of computing. Watch the video if you haven't yet.

          • Bernal

            The Courier looks slick, but it's just a physical form of OneNote. Something that has failed to take off. Microsoft also seems to be targeting the business user. For some reason, they continue to think that the business market leads the way for the consumer market when in fact, in recent years, it's been just the opposite.

            The success of a tablet will be based on a convergence of functions. Namely: news, ebooks, media (TV/Radio/MP3) and simple gaming. Things that phones are doing but struggle with due to screen size. The only company today that has a compelling chance to hit the market with a compelling tablet offering all these feature at launch is Apple. Could Google? Perhaps, but they're letting the opportunity slip away with their lack of attention. Microsoft isn't going to succeed due to lack of focus and leadership from management. They've got too many teams and too many projects going in different directions for them to be able to put together a consistent simple message for the mass market.

  • Bernal

    You're missing the point. Nathan's talking about the user experience when moving from OS to Google apps to carrier apps to third party apps. When the OS uses black gradients and color icons then the next app uses solid black buttons with white icons and then a third party app uses bright primary colors for buttons, you have a very inconsistent design experience.

    Different devices with or without keyboards and varied functionality isn't the issue, it's the varied UI designs and models of interaction that are the issue.

  • Deathwish238

    So…what happens when someone wants to change the skin of one of their apps and the rest of their apps don't match? Should their just not be other skins to choose from so the phone retains the same look throughout?

    What about people running themes? If I run a Pre theme or a Hero theme…what then? What about the iPhone users running HTC Hero themes? Do they have issues with things have different colors?

    I don't see any compelling reason for everything to look the same. imo, it makes all the apps a bit more mundane. It doesn't give them that extra distinctiveness and personality that each app currently brings. I noticed this when I had an iPhone or when I play with a friend's. It's nice to see the dev's personalities come through their App's UI.

    I wouldn't be opposed to each app requiring a skin that matched vanilla Android, but I would be opposed to not having other skins to choose from. Many apps already do this, like HandcentSMS.

    As long as they use long presses for options and the back button is implemented…things remain intuitive and have a good flow when going from one app to another. Every color matching isn't necessary and doesn't add any functionality to the phone. It's a trade off really, and I'm all for options.

    • Nathan D. Cole

      I think the notion of universal scheming and things of the sort are pefrectly reasonable. I don't think the argument would be that people shouldn't get the choice of how thier system looks. I think the argument is more that developers shouldn't make that choice for them.____As you've said, let the people choose. It will be easier for people to choose thier own look and apply universal skins when developers are developing with standards. It's the same notion of CSS. You're able to universally apply customized appearences by way of standards. This has been demonstrated to be true time after time. It's just like changing the theme in windows. If developers consistantly use standard controls and layout guidelines, then it will be much easier to develop a system where users can truely apply their own personality to the device.

    • Nathan D. Cole

      It's not about being opposed to personality and customization… it's about consumers not wanting to have some developers idea of cute or unique imposed upon them. As a developer and moreover as a business person trying to sell applications to users, one should want to be sure that their own tastes doen't stand in the way of people using their apps. I know that I don't speak only for myself when I say that there have been many apps I've tried to use that may have had some decent functionality but just looked atrocious. I couldn't stand them. I would rather go without the functionality than to have my tastes (as a user) offended.

      The point is for developers, designers and application businesses to get out of the way here and make the user the priority. If we want users to be able to choose thier own look and feel, standards are the best way to get there.

  • android does have really good intentions and is a mix of all

    Get the best host provider for your website
    Get a free Apple Ipad!

  • android does have really good intentions and is a mix of all

    Get the best host provider for your website
    Get a free Apple Ipad!