Application Distribution on webOS

186 BY devrel

Last week I posted on my blog asking for input on issues around application distribution on the Palm platform. The post got a number of responses from developers (mostly via email), as you would expect given the size of my readership (low hundreds). Then it got linked on Daring Fireball and metafilter, and traffic took off – I got 11,000+ readers in a day and a half. There was also a flood of comments and private emails. The tone of the conversation was extremely constructive and I learned a lot from reading what people had to say.

But when folks at Palm saw how much the post had taken off, there was concern that people would think I was speaking for and promising things on behalf of Palm, even though I had issued a number of disclaimers to preempt that effect. Honestly, I can’t blame Palm people for being concerned – there were a number of people who linked to the post saying things like “isn’t it great that Palm is doing this”. The difference between me doing something as a Palm employee and me doing something as a representative of Palm is a subtle one, but it is something I’ve run into several times as a blogger – in my previous job lots of people used to attribute things I wrote as being the official word of Adobe despite my disclaimers to the contrary.

To Palm’s credit, though, after reviewing my post and the feedback it had received, there was a general recognition internally that the conversation was a great thing and that we’d like that conversation to continue. But rather than have it be a conversation between me and the developer community, we decided that it would be better if we could widen the conversation to include even more people at Palm. And so here we are.

This is your chance to let Palm know what you would and would not like to see on the webOS platform, in particular in areas related to:

  • Application installation and updating
  • Ecommerce (purchase, trials, coupons, etc.)
  • Security (code signing, testing, anti-phishing, malware, etc)
  • Browsing and searching for applications

Now we need to establish some rules of the road:

  • Software features are pretty much locked down for the Pre – this discussion is primarily longer term in nature
  • That said, there are no guarantees or implications that anything you ask for is or will ever be part of webOS
  • The opinions expressed here are not necessarily those of Palm or its employees
  • If you tell us your super great new idea, you give Palm an irrevocable worldwide right to use your super great new idea without royalty, acknowledgement, or any other form of compensation. Click here to see the relevant legalese.
  • Be nice!

Please note that if you’ve already posted your comment on my previous blog entry, you do not need to post it again. I’ve saved all comments and shared them with the team already. But feel free to post again if you have more to say.

Comments (186)

  1. Pingback: Blast Radius developed Palm Pre marketing strategy, Palm webOS and Mojo SDK? | Palm WebOS Blog

  2. jman says:

    This platform has me really excited. Please don’t make the same mistakes Apple did with the iPhone OS, such as to quarantine apps so they can’t talk to each other or share files. I also echo the plea that you provide developer phones as Google has done with the G1.

  3. Richard Kimber says:

    HTML 5 location & storage APIs and CSS 3 transforms & transitions. I’m not sure if WebOS is based on Webkit, but Webkit would be great.

  4. andy_liu says:

    my suggestion is , first release windows webOS simulator for many user , second use some application like “styletap” run old palm + symbian + WM5 some software on webOS .. let other PPC/Palm user can move to new webOS system .

  5. Loye Young says:

    We at Isaac & Young Computer Company (IYCC) maintain the IYCC Linux Distribution, and we are excited about supporting and developing for the Palm WebOS. IYCC believes Palm can differentiate itself in the market by embracing developers of both open source and proprietary software.

    IYCC has no problem in principle with proprietary software (though we believe that proprietary code will soon go the way of the fax machine). However, as a developer, I don’t want to depend by mistake on applications that are proprietary. Further, the more I use already written open source code, the smaller footprint my applications will have and the fewer bugs I’ll have to fix. And of course, as a user myself, I want the freedom to use Free and Open Source Software to the greatest extent possible.

    We have some “gotta haves”, though, in order to be in a position to support the WebOS platform.

    First, in order to develop the quality of seamless user experience that we deliver, we need the OS, including kernel, libraries, drivers, languages, and toolkits to remain open source to the maximum extent possible. There’s really no better method of ensuring my applications integrate seamlessly than by looking at the source code of the software with which my applications interact.

    Second, interoperability with Debian packages, using aptitude (or a GUI frontend to it) system to install .deb packages would *significantly* reduce our costs and speed development time. Debian’s package management system is by far the best in the industry. Using the well-tested APT system will significantly reduce our costs, and provide a huge codebase of already-written apps and libraries to draw from. The RPM system is also very good, and its codebase is broad and stable, but nothing beats Debian’s package management.

    Third, applications that do not meet the Open Source Definition should be in a separate repository from those that do, and the user should be able to turn off the proprietary repository if the user wants so to do.

    IYCC looks forward to developing for the Palm WebOS, and I personally am looking forward to being one of the first to buy a PalmPre!

    Happy Trails,

    Loye Young
    Isaac & Young Computer Company
    Laredo, Texas
    http://start.iycc.net
    http://www.iycc.net

  6. Loye Young says:

    BTW — IYCC is able and willing to host and maintain repositories for WebOS, for open source and proprietary developers both. If the repository structure and package management are Debian-compliant, as I described in 161 above, we can set up a repository structure dedicated to WebOS within two business days.

    Happy Trails,

    Loye Young

  7. phreich says:

    Some thoughts:
    1. The suggestion that apps be loadable outside a “store” is essential.
    2. The suggestion to allow for apps to go through a “certification” process is a good one, and warning users that non-certified apps could cause damage is okay. Asking developers to pay something for the work involved to gain that certification is okay too.
    3. allow for use of a memory expansion slot in devices.

  8. Rick Simpson says:

    I have been a Palm Users since my Palm 3X days (then 505, T-3, 650 and 700p – my wife have a TX). I have been wed to the Palm PIM / Callendar and this remains my most important tasks which is why and iphone is not so attractive.

    One of the single best apps that my wife and I still morn the death of … is DUAL DATE. The ability to quickly share our calendars over lunch with one beam was just so simple and .. well GREAT. Please bring back the ability for calendar sharing.

    rick

  9. Kai says:

    Loye…not wanting to take this “there”…but:

    This is not the place nor the platform for OSS Evangelism.

    I believe there are more than a couple of Linux-based mobile platforms that in some way or another meet the “gotta haves” you posited; and from the looks of the consumer adoption, market penetration, general buzz and all measurable standards…the fact that they are OSS-y doesn’t seem to be doing them any good.

    As a (former) long-time advocate of OSS in general and Linux, specifically, at the end of the day, I can say that for commercial ventures aimed at end users in an environment where *quality and User Experience* trumps *quasi-religious* ideology, Palm would find itself in the same position as these other platforms if they came out waving a GNU-Style OSS banner.

    Besides: only the Linux that it runs on is likely OSS; it is being used as an embedded os/HAL. The real action happens in the API’s running on top of them, and I am willing to bet that Palm has no intention of free-for-all source access to that stuff…

  10. Ken Young says:

    With the iPhone, Apple has integrated the application download purchase and update flow with iTunes, which is great because it provides a platform that interfaces with the web and the phone directly for download and installation of applications and provides a high-speed backup and local sync conduit for music, video and photos. It’s probably too late at this stage of the game, but I’m hoping Palm has a similar level of integration. It’s conceivable that the application store could be housed entirely on the phone and application installation and data sync be done through synergy only, but I think it would be a much more convenient solution to have a desktop application that does everything iTunes does for the iPhone. Hopefully in a less resource intensive package. :)

  11. Joshua Granick says:

    Our biggest request is for a way to filter URLs (blocking bad addresses, or blocking all addresses and creating an allow list).

    There are many great things on the internet, but there are many others that I don’t want coming through my phone. Can you please add the ability to add even a simple level of parental controls to a webOS-enabled phone?

    This is a huge deal in my family. RIM supports a similar kind of control in Blackberry devices, but I believe that Palm is better for many reasons.

    We have not subscribed to internet access in our Palm phones because there is no filter. It would be wonderful to be able to purchase a Palm Pre with restrictions to allow internet access on only certain applications (such as Google Maps or yellow page searches) and to restrict the addresses available in the built-in Webkit browser to safe sites we trust.

    I use Opera on my PC, and it lets you restrict access using a urlfilter.ini file. I am not sure if Webkit is designed to support a similar file, but all we need is to be able to configure a URL filter file and password protect it.

    I believe that this functionality would open the door to a lot of conscientious parents who are concerned about allowing unrestricted internet access on their families’ cell phones.

  12. Rick says:

    We need an sdk asap, distribution is secondary to sdk.

    Having said that:

    we need a way to make our private business apps private, to get them ONLY with a special code, or to specially authorized PRE’s.

    Recurring billing would be nice.

    auto-version update would be nice.

    as 11000 other people have said, html/css/javascript is all well and good, but I’m not putting proprietary business methods on a phone as source code. Javascript obfuscation if needed has to be industrial strength.

  13. FutureNerd says:

    Distribution things.

    0) Less is more. The less Palm itself is crucial to distribution, the better. The fewer issues have to be solved with or in distribution methods, the better.

    For instance, security. If applications are sandboxed well enough that they can’t harm or spy on anything, that means fewer worries about installing something. Fewer road blocks and steps in both users’ and developers’ faces.

    Apps shouldn’t be able to even read other apps’ data unless the user has knowingly (i.e. with a clear UI) set up a specific channel. Example: a GPS app should not be able to read my address book (even though that’s obviously useful) unless I said so. The user should be able to allow all sorts of interconnections between apps, and between apps and things on the internet, usb drive, computer thru usb, computer thru bluetooth, etc.

    If you can securely verify that an update comes from the author of the original program, then updates should be no hassle even though the user has given the software permission to touch things outside its sandbox.

    1) Make a MIME type for “Palm Pre app”. Clicking a Pre app link on any site means you are going through the install process. User should be able to “download only,” and maybe install later, but this should be a menu item or option you turn on rather than in the face of average users.

    2) Figure out how to allow Amazon to sell Pre apps.

    3) Think about content (as opposed to application) installation. Seems like a lot of good content should be viewable with the built-in webbish software (including PDFs).

    I’m with others here: the more standard formats you can handle, the less distribution hassle. I hate Flash, but as long as I can turn it off, or get it to quit in less than a second, I far prefer that to some indirect transcoding scheme. Figure out how to prevent plugins from stealing the CPU. Like I said: if you can handle the problem outside of distribution, less distribution problems. To put it another way: where web browsing works, distribution is solved.

    Some content requires players or plugins. On the one hand, allowing the user to buy or download some content bundled with the right player is nice, but effectively forcing content developers to compile the content into a copy of the player is sad. More like a prerequisites thing or bundle in the sales sense. Prerequisites are good for things that depend on plugins, too. Also helpful for uninstalling (“You are uninstalling the only app that uses the RealPlayer plugin. Do you want to uninstall RealPlayer, too?” (yes))

    Also, Apple got into the situation of censoring content based on their app-vetting process. Don’t try to censor content on your own store. An “I’m 18″ category is fine.

    Btw, another kind of bundle is collections of files that go with something, like the directory full of css and jpg files that goes with a web page, or the Apple “packages” which are also just directories of files. Sounds like something you would have down already, just saying.

    4) The phone should belong to the user, not the developers.
    In the following I am not saying users should need to muck about with settings files, but that the user should have the ultimate power.

    That includes letting the user say no to updates, do manual downgrades, look at and change config files, prevent the app from contacting the developer’s (or any) site. If the developer doesn’t want the app to work in a true sandbox, the app can put up a dialog saying what it wants the user to enable. But the dialog where the user actually makes the choice must be controlled by the OS.

    You might want a way for the user to give permission for the app to keep some data “hidden” from the user, but the user should be able to locate and delete any “hidden” files.

    Hiding data from the owner of the phone is essentially DRM. It’s impossible without special tamper-proof hardware, nearly impossible with. Don’t get into the morass of trying to provide an impossible service to worried developers. That is, you can make a stab at hiding, but don’t try to guarantee to developers that this is secure, and do not get involved in DMCA fights with hackers or pirates over DRM, third-party apps, or content.

    Same with code obfuscation. It’s fine to make a gesture at it although leaving it up to the developers themselves is better. There is no such thing as industrial strength obfuscation or DRM unless you mean the flailing strength of dinosaur industries. Don’t waste effort on the DRM at the expense of regular developers who just want to deliver useful stuff.

    The user needs the ability to delete all of an app’s user data and config info and force it to reconfigure from scratch. (I don’t mean muck with internal code files and necessarily expect the app to keep working!)

    5) Obviously sync apps and content as well as data. Allow installing stuff that was downloaded (or produced) on the PC as part of the sync process.

    6) Install from (and sync with) USB storage. (Might want to have content, apps, or apps’ data selectively reside on a USB drive as main location (like with SD on a Treo). However, that requires syncing the USB drive with the PC. I know, this is drifting away from distribution.)

  14. @acarback says:

    Excellent starter and example applications in the SDK. Documentation is excellent and required. But I’m more a ‘show me’ and ‘visual’ kind of person.

    Please release the SDK before the phone!

  15. Gerry says:

    1) Applications should be searchable by title, keywords, or description, so applications don’t necessarily have to have a literally descriptive title in their product if they don’t want to, and still have it be easily found through search.

    2) An method to put in variable discounts depending on previous software purchased. If someone purchased my three most expensive applications, maybe I would want them to get a big discount on another one, or give away the cheapest one for free for being a great customer.

    3) At the very least, a way to put variations of a product on one page instead of taking up multiple pages. Say I had a program with features ABCD. I know that most people will only want three of those features, but which one depends on the customer. It would be nice to have the ability to let them check mark which ones they want, and show the adjusted price, or at least see all the options in one page for an easy comparison. Same goes for a much simpler regular, deluxe, and premium editions of one product.

  16. Kyle Thompson says:

    As chair of my anesthesiology practice’s IT committee we’re looking for several features in our next smartphone choice (edited for this blog):

    3.Good text and voice functionality.
    4.Repetitive alert capability
    5.Applications:
    a. Epocrates
    Patientkeeper (future consideration)
    6.Battery life 12h+ at usage rates of text/voice
    7.Handsfree capability? Voice dialing? (Colorado House Bill 1094)
    8.Cloud backup & sync options? Encryption options for the cloud? (HIPAA compliance)

    From what I’ve read, #3, #4, and #5a are covered.

    Thanks,
    Kyle Thompson, M.D.
    South Denver Anesthesiology, P.C.

    USR Pilot 5000->3Com PalmPilot Pro->Palm IIIx->Palm 515->Palm TT3->Treo 700p->HTC Touch Pro

  17. tal says:

    Java SDK;
    Would make the community much more vibrant and allow for more “serious” applications to pop. I can’t think of you winning with just the webOS. Doing it later rather than sooner might be too late.

  18. Loye Young says:

    To proprietary developers:

    Palm’s WebOS is an open source operating system based on the Linux kernel. Using an open source operating system such as WebOS does not *require* that you provide the source code for your proprietary application. If users want to pay you for a cool application and they don’t care about the source code, the users should be free to make that choice.

    Proprietary apps need a tollbooth for downloads, while open source applications don’t. For this reason, proprietary and open source applications need to be kept in separate repositories, but that separation is more important to developers than to users.

    A well designed user interface can make the existence of various repository seamless. Various applications have already been written to allow users to add, modify, and remove repositories. Such applications are typically found in a “system settings” menu that most users don’t bother to mess with because the defaults are usually sane.

    To Kai (post 165):

    If you read my earlier post carefully, you will see that I am far from a religious zealot when it comes to open source. My issues are practical and economic.

    You will note that the title of this thread is “Application Distribution”. My comments are addressed to the nuts-and-bolts of distributing software (of various licenses) on top of an open source operating system.

    IYCC has a fair amount of expertise on these issues because we already distribute both open source and proprietary software as a part of the IYCC Linux distribution. We know well the issues surrounding a mixed proprietary and open source software stack, and we make our living serving OEMs and ODMs who want their customers to have a seamless experience.

    IYCC sees Palm’s WebOS as an opportunity to make mobile computing available not just to the techno-enthusiasts (ala iPhone) but to mainstream users who want their gadgets to “Just Work”.

    Happy Trails,

    Loye Young
    Isaac & Young Computer Company
    Laredo, Texas
    http://start.iycc.net
    http://www.iycc.net

  19. Hi Andrew,

    I am wondering if there is a pre-launch application development program that interested developers can participate in. We recently lauched a local search application(Superpages) for iPhone and would love to get our hands on Pre’s sdk as soon as possible. Let me know.

    Thanks,
    Uddhav

  20. jwall says:

    @Uddhav,

    Our team is now aware of your interest in the SDK. We are currently in private prerelease, and if you haven’t done so already, please be sure to subscribe to the RSS feed on the blog to keep up to speed on any news we may have about the SDK

  21. Poetic intentions says:

    Hey I can’t wait until the Pre comes out but I have a few issues 1) I need a micro sd it’s perfect for this type of phone i think thats what apple messed up on not adding that to the iphone 2)virtual keyboard is that included because I love the thing, yes a full on keyboard is great but I would love the option 3)auto update would be great having to update manually with my phone sucks plug it up update all that log on to the internet update waste o time with some sort of auto update your phone will be great.

  22. Pingback: ipshop - todos los accesorios para tu telefono movil iphone - cables, baterias, fundas, carcasas, protectores, abrazaderas

  23. David Williams IV says:

    I think the pre should be able to use both the finger and a stylus. Finger for easy use, stylus for accuracy.

  24. David Williams IV says:

    A full size SD (secure digital) card with sdhc support would come in big handy, then your information can be easily transportable, you could have more features, and you can easily view photos and videos taken on another device.

  25. HAL says:

    Hi there, Palm people and PalmFans and PalmUsers! To the powers that be, I kindly suggest, or add my weight to previous suggestions, regarding features for the forthcoming (SOON :) ) Palm Pre sporting the WebOS:

    Touchscreen with ability to switch between stylus or finger, at convenience of the user.

    Palm OS (Garnet) full interoperability (and it was one of your “election days” promises, Palm, don’t forget it)

    Ability to admit native code aplications, instead of only surface-level .html and JS.

    SDIO slot, with SDHC support (as in 32GB, i.e.)

    GPS and WiFi (for the case you were thinking of ditching them)

    The best online market resource, IMO, is a lean client app, or a simple browser bookmark. So feel free to use my opinion to endorse the death of the AddIt client and the death of the buggy MyPalm client. If much of this is now about getting online, all we need is a bookmark.

    Apps installation: as of my experience, best practice is a clean download that can then be executed, but clean download goes first. That may do for e-commerce and upgrades.

    Software security: OK, better leave it for Symantec or Trend Micro. Things are getting this far, anyway.

    Come on, Palm people, you did it before. DO YOUR MAGIC!!!

  26. David Lutze says:

    Palm has dropped the ball by not making a portable keyboard that really works. I've purchased three keyboards and they have ALL been a piece of junk. The batteries wear out quickly and there is no way to plug them into a wall curcuit.

    There are many college students that are tired of hauling laptops around. Many would opt for a Palm Pilot if there was a keyboard that actually worked. Even though I have had bad luck with them, I would quickly buy another if it was truly functional.

    Is there anyone listening to me?!!!

  27. boydoc says:

    I would like to replace my Palm Tungsten but I do not need another phone. Please make a PDA available with plenty of memory for professionals to use as reference. Thanks

  28. Sherwood says:

    Hello…. it one day after I am the proud owner of a Palm Pre, however I have been unable to sync my address book from my Palm 755…after going to two Sprint stores. And please tell me there is an application to replace the “Memos”. I was able to secure passwords, personal info, etc. in Memos. Please tell me there is an alternative…. I cannot do without that one.