We have a special audio-only podcast for you today. We are only a couple of weeks into live at HP, and I keep running into great people with a real passion for technology and webOS.
Rahul Sood is the founder of Voodoo, a manufacturer of “desktop Ferrari’s”, and the company was acquired by HP in 2006. He is now the CTO of the advanced computing group, which covers gaming all the way to healthcare. Since Rahul has gone through an HP acquisition, I was curious to hear about his thoughts on HP, and where he sees webOS fitting in.
It’s the moment you’ve all been waiting for! Today, Palm announces the winners of the Hot Apps competition. It’s been great watching as our developer community rose to the challenge, producing great apps for webOS. We hope you enjoyed the competition too, and that it helped you get more exposure for your apps.
You can check out the complete list of winners here, but we’d like to highlight the two winners in the $100,000 category:
YouView Visual Voicemail Client by Syntactix is a visual voicemail client powered by YouMail. It replaces your carrier’s voicemail and provides a ton of handy features for handling your voicemail and other phone services. Extremely cool!
Winner, Free Apps – Pandora Radio
Pandora Radio by Pandora, is your free, personalized, streaming radio station, that customizes playlists for you based on the kind of music you like. A fantastic app!
Pandora
YouView Visual Voicemail
The competition was fierce and hard-fought. Congratulations to all of our winners!
Don’t forget that we’ve got a new Hot Apps competition just for PDK apps. It’s going on now, so submit your app soon!
When you see a news item on your newsfeed and it has “4 comments” tagged right there, do you sometimes wish you could just see them inline? We do too. Often the conversation provides much of the entertainment around a post, and that is why we have implemented “inline comments” for you as a major feature to test in our latest Facebook beta client for webOS.
We care about customizability, so you can turn that feature on or off in the preferences.
The other major user facing feature is the ability to change which feeds you want to view. You will notice a new drop down label in the middle of the screen (probably says “NEWS FEED” right now). Tap right there to see the list of available feeds.
You will also find the following features:
Revised photo tagging. Users can now tag both themselves and their friends in photos. To tag someone, simply upload a photo, then view it on your profile. Tap on the photo, then tap on the tagging icon that appears below it. Begin typing someone’s name to select them from your friends list, then tap Done.
Clearing multiple notifications. To clear all of your existing notifications, tap on the notification globe at the top-left corner of the app, then tap See All Notifications, then perform a back gesture (by swiping from right to left below your screen).
Support for landscape viewing. Just tilt your Palm webOS phone to the side and Facebook for Palm webOS will switch orientations accordingly.
Finally, there is also a major refactoring as part of this release. We found that the original list implementation wasn’t holding up great as we added more and more data into the list (e.g. comment info). With the number of HTML elements created for a given list feed we were having trouble using the swap on scroll implementation that the Mojo list uses due to the HTML parsing, styling and reflows that were required. The net result was choppy scrolling performance.
The custom list implementation fixed this through custom paging buttons that require the user to manually page, but reduce the number of HTML rendering cycles, while also providing a limit to the number of HTML elements that are placed in the document.
We are really excited to add these major features, as well as a slew of other bug fixes and small improvements. As always, the beta channel isn’t fully bug free, and we are asking you the community, to help us. Give us feedback and let us know what we can do to continue to improve on the app.
We also have some exciting new features in the works, and can’t wait to show these to you in the future!
Ben and Dion are joined by Matthew McNulty as they share details on Ares, Palm’s web-based tool for creating webOS apps. Matt gives a video walk through of the tool and provides the history, the how, and what it means to webOS and you!
Palm will be at OSCON next week in Portland. Josh Marinacci will be joining the rest of the HP crew in the HP booth, demonstrating Ares and webOS. He will also be giving away T-shirts, books, super nice water bottles, and you’ll even have a chance to win some phones! Here’s the full schedule of webOS related events during OSCON.
With the PDK Hot Apps promotion starting in the near future, a lot of developers want to submit their C/C++ applications to our catalog. Here are a couple of things to check first to make sure your app doesn’t get rejected.
First, lets look at your application package and executable:
Is the app a full-screen app? We’re not accepting hybrid apps (ones that use both JavaScript and PDK code) into the catalog at this time.
Does your appinfo.json specify ‘type: “pdk”‘? Earlier examples used the ‘game’ type in the appinfo.json, but we changed that late in the 1.4.5 development cycle so we could better differentiate between apps that were put into the catalog early versus ones from the open submission process.
Did you strip the executable? We require that executable files submitted for PDK apps have their debugging information removed. This is normally done by either using the -s option for the compiler or by using the arm-none-linux-gnueabi-strip tool.
Did you include a “requiredMemory” line in your appinfo.json file? This is needed to tell the system manager how much memory your app is expected to use, as it helps us keep multitasking working well. One way to determine this number is to open a shell on the device while your app is running and use the “top” command to see its memory use. If you’re supporting both the Palm Pre and Pixi, be sure to test the memory usage on both devices.
Did you build with the 1.4.5 SDK? We changed some API names between our PDK beta and the released version with the 1.4.5 SDK, so make sure you use the latest files to build your application.
Did you use only whitelisted libraries? At this time, we’re only allowing applications in the catalog that use the set of libraries we provide with the PDK. This list includes the standard C and C++ libraries, SDL (including SDL_image, SDL_net, SDL_mixer, and SDL_ttf), and OpenGL ES (1.1 or 2.0). If you need other libraries, you should build them yourself and statically link them with your application.
Did you use the correct processor architecture arguments? If you’re building to run on the Pixi, you should use “-mcpu=arm1136jf-s -mfpu=vfp”. If your application will only run on the Pre, you can use the “-mcpu=cortex-a8 -mfpu=neon” switches to take advantage of the new instructions that are only available in the ARM Cortex-A8 processor on the Pre.
Now, let’s look at the actual submission process:
Be sure to you properly specify the devices your app runs on. If you’re submitting a SDL graphics-based app, make sure you only specify the Palm Pre for your PDK app, as SDL-graphics-based apps don’t update the screen properly on the Palm Pixi device. If you did an OpenGL app, you should test on both devices before submitting. If you need to do separate builds for Pre and Pixi, that’s OK; we suggest you give your Pre version your main package ID, and add a “-pixi” suffix for your Pixi version.
Be sure to specify webOS 1.4.5 as your minimum OS version. If you specify an earlier version, the PDK app will be rejected on upload.
Following these rules will keep your app from being rejected by our automated security scanners. Of course, if the app is going into the catalog, it will still need to pass our friendly app review team. However, you have to get by the scanner before they can look at it.
The awesome webos101 crew have a code snippets area that you should know about. What kind of cases will you see up there?
UI Appearance
There are a lot of tweaks at your disposal via CSS styling. Whether it be a simple #palm-app-menu style to change the app menu, using the dark theme (“theme”:”dark” in appinfo.json) or changing the look of your submenus:
to sensing that the user is holding a digit on the gesture area:
// You can also use just 'document' as the target is you have a single stage application.
// Otherwise you must set it to the correct stage's document as shown here
// You can also get the StageController like this:
// Mojo.Controller.getAppController().getStageController('NameOfStage');
Mojo.Event.listen(this.controller.stageController.document, 'keydown',
MyFunction.bindAsEventListener(this));
function myFunction (event) {
// You can also check the keyCode instead. Ex: event.keyCode === Mojo.Char.metaKey
if (event.metaKey === true) {
// Do stuff when the meta key (gesture area) is tapped or held
}
}
There is much much more. And the best thing? It is a Wiki, so go add your good stuff!
Thanks to everyone that contributed. Our contribution?
Our Facebook application lets you update status via a launch param:
Palm and HP will be participating in MobileBeat 2010. First, Phil McKinney, VP and CTO of HP Personal Systems Group will be giving the keynote address Monday morning. Then Ben Galbraith, Palm’s Director of Developer Relations will have a “fireside chat” with moderator Matthäus Krzykowski on Tuesday afternoon. They’ll be discussing the future of webOS and its developer program.
In addition, Ben is one of five judges of the Startup Competition in the Consumer Applications category on Monday from 9-11a.m. Ten finalists have been selected in the “Consumer Applications” category, and Palm will be awarding them with Pre Pluses. Each finalist will have 4 minutes to present their startup company and idea for a killer app. Congratulations to those who made it!
Look for Lisa Brewster and other Palm reps to be on hand, raffling devices and generally having a great time. Hope to see you there!
For those of you hoping for a tutorial on client-server using webOS as a client, Frank Zammetti has come through for you! His latest is “webOS Wiki,” a wiki package that runs on your device and synchronizes with a server hosted on Google’s™ App Engine. He takes you through the whole process of setting up the server side code on GAE, then plows into the client side of things.
Along the way, Frank discusses how and why he makes design decisions, and describes how the code works, step by step. And so you won’t have to re-type everything, we’ve put all the code on our github repository. (We’d link to it here, but we want you to check out the article!)
We hope you enjoy this tutorial, and find inspiration to do your own client-server apps. Thanks, Frank!