Bossa Conference '10: free software in mobile applications
posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)
Bossa Conference '10: free software in mobile applications
bergie posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)
Telepathy for building collaborative applications. The idea behind Telepathy was to move from monolithic IM clients to an approach more compatible with the UNIX philosophy: each application can do a part of the IM experience and do it well. For example on Maemo 5 the address book is separate of the Conversations app.
Connections can be shared between applications.
Demo: recording a video call from N900 on the Pitivi desktop video editor.
Fabio Ranieri on Ovi Store: the main point of this talk is "Show me the money"
Ovi is supported in existing S40 and S60 handsets either via application or web access , reaching 50 million or more devices at the moment, estimated at 300 million consumers by 2012. No mention of Maemo in the slides, but the speaker said all Maemo devices supported from now on
Submitting applications to Ovi store requires you to have a corporate VAT ID and costs about 80 USD per application to be processed (in the meanwhile, Maemo Extras is free ;-)
Kenneth Rohde Christiansen on combining QML and Webkit, and whether they complement or compete with each other.
INdT has been developing with declarative UIs for years now. The reason has been the ability to quickly test different user interface ideas "out in the market" instead of spending months developing before finding out if the idea works.
Lessons learned for supporting different types of devices: MVC is an advantage. There are only two types of controllers: ones dealing with data (interaction with models), and ones dealing with user input. With the declarative concept you can make your UI "just a theme" so they can be changed for different devices.
Trends:
Web is very powerful for content (text, images, data, video, ...) and layouting, but not so good for UIs. Web's advantage is zero deployment, just access the service via an URL. Deploying software is expensive. Web is also indexable and searchable. DOM manipulation is expensive computation-wise, and sometimes web is just too flexible for the computing and battery power of mobile devices. You really need to know the web browser internals to design efficient web applications.
QML is very web-like: you have javascript scripting, a JSON-like format, and you can still access the native Qt classes and services. However, QML is still in quite early stage which means you cannot write applications for iPhone, Android, S60 etc. QML isn't so good at displaying content either, so for complex content (mixed images, text, layouts) it is a good idea to use web views inside a QML application.
Deploying Qt on Symbian session. "The intention of Qt's Symbian port was to liberate developers from the Symbian platform, which was awkward to develop for"
To get started you need to install Qt Creator on your system, and Qt on your Symbian phone. Create a project, enable S60 as target in build configuration, build and you get a Symbian executable file. This can be converted to an installable .SIS file using the make sis command on the command line.
Demo: building a version of the Tetrix example app for S60 (get it from http://bit.ly/espenbossatalk))
After you've debugged and tested your application you may want to submit it to the Ovi Store. "Ovi Store has way more hits than your web page". But for Ovi Store your application will need to be signed, and while self-signed is fine for the development phase, for Ovi you need it to be Symbian signed. Part of the signing process is telling what capabilities (networking, SMS, whatever) your application needs.
Symbian signed means your application will work on all Symbian devices, not just Nokia ones. First you need to register an application ID (free), then you need a publisher ID (200 USD from trustcenter.de). Then you sign your application using your publisher key. Then you need to .zip your application together with a README and buy a content ID (10 USD per application version signed). Then upload your application, fill in the Express Sign form, wait 5 minutes. And then you'll have a Symbian signed version of your application that can be installed on any Symbian device.
Symbian now has a "smart installer" that provides apt-get like functionality which will download Qt only once, and when an application needs it. So the Tetrix application is only some 7k in size if you already have Qt on your phone. But currently the installer package has to be signed separately, setting you back another 10 USD. But so far the user experience of the smart installer is really abysmal: fourth Ok/Cancel prompt is finally the one asking whether the end user will want to actually install the application they had chosen to install.
Once all of this works, you can publish your application to the Ovi Store. Registering as a publisher costs 50 EUR. Once you've been granted access, you can upload your Symbian Express Signed application to Ovi, provide screenshots, set the price, and wait for approval.
"We want to make this easier. We want a publish on Ovi Store button straight in Qt Creator. But it will probably take us at least a year to get there"
"How about publishing Maemo apps on Ovi Store? I have no idea"
Python day at Bossa Conference, listened about the upcoming rewrite of PySide (the guys said they'll check Workstreamer to ensure it works after that, @aehparta). PySide is switching from Boost.Python bindings generator to Shiboken to ensure smaller footprint. There should be a release in a month.
PyMaemo was started by INdT, in 2007 Nokia started sponsoring their work. It is developed out in the open so community can participate too. Not being part of the official Maemo SDK means that development schedule can be more flexible.
On Maemo 5 PyMaemo is still based on Python 2.5. Bindings exist for most system APIs: PyGtk, Hildon, Conic, Location, Alarm, Imaging, MAFW... There is also "experimental" PySide release for Qt development.
Python software for Maemo 5:
About 20% of software written for the N900 is written in Python. This percentage is higher for extras than for the development repositories, showing that Python apps get completed more quickly than other applications.
Python N900 application examples:
Python in Harmattan: it will be there.. Based on Python 2.6. Already some work-in-progress on this one. PySide will obviously play a much bigger part there.
History of the wireless revolution: starting with radio inventions by people like Tesla and Marconi. First military portable radios in 20s (really funny German military pictures), walkie-talkies in World War 2. Dick Tracy's watch phone has been a big inspiration for development ever since. As has been the Star Trek Communicator:
Communicators functioned as a plot device, stranding characters in challenging situations where they malfunctioned, were lost or stolen, or went out of range. Today's mobile phones are at this point.
Dr. Martin Cooper, the inventor of the mobile phone credited the Star Trek Communicator as his inspiration.
Get Smart and the shoe phone was another inspiration.
First public mobile phone call in 1973, first citywide network in Tokyo in 1979, first roaming with NMT in 1981. Motorola Dynatac in 1983 was the first actually portable mobile phone, before that they needed "a car to carry them with". At that time security was a big issue as spoofing your phone identifier was easy and lots of people never paid a phone bill, instead calling on other people's account.
Nokia Cityman 450 was famously photographed being used by Gorbachev in 1987, launching Nokia's mobile phone marketing campaign.
Then networks went digital. Many competing standards: TDMA, CDMA, GSM, ... since then GSM has won in most places.
During 90s cell phones hit the "hockey stick" when price of the technology got sufficiently low and anybody could afford to have a phone. 4 billion cell phone subscribed expected by 2011. Interestingly the same graph shows quite a lot of growth for landlines too, even though less steep than for mobile phones or internet connections.
Nokia 2110 was the hockey stick product for Nokia: the first phone that was "just right".
A silent partner of the mobile revolution is ARM Holdings. All these phones need low-power chips, and this is what ARM has been able to design and license to manufacturers. Almost 100 ARM-based chips are being shipped every second. But now Intel may be catching up in the low-power game with their Atom line.
The cell phone revolution has had its losers too, including Siemens, BenQ, Sendo, Ericsson, Benefon... Anecdote: banks owning Nokia back in 80s had tried to sell Nokia to Ericsson which declined. "Who's laughing now?"
One area where Nokia made a mistake was ignoring 450MHz GSM which proved to be superior in rural settings. And so Nokia didn't have a place in that market which became a nice niche for CDMA providers.
The WAP hype was another big issue. That never happened, and instead what we started getting was the "real web" in our pockets, but lead by Apple not Nokia.
Nokia also ignored touch for quite a while. 7700 was a S90 concept phone with full touch back in 2003, but that was never properly followed on. But the Hildon UI that is the basis of Maemo's user experience came from these experiments. The Hildon name comes from a water bottle that was there in the meeting room where the decision was made.
The original Nokia Communicator came out in 1996, and was the company's first approach at integrating PIM features together with the phone. Communicator was a new paradigm and so product placement in movies like Saint and Proof of Life was important. But in Proof of Life a line said "this is just a telephone", which it clearly wasn't.
3G came from CDMA instead of GSM because there were better data capabilities and channel hopping. Video calling was supposed to be big in 3G but nobody actually used it due to bad UIs and confusing pricing.
Nowadays operators are becoming less and less valuable. Data costs are getting down and so people are using VoIP and other internet-based communications instead of expensive cellular ones. Apple iPhone was a pioneer here, allowing the phone vendor to sell content and applications, bypassing operator-provided stores and revenue models.
Cell phones are feature creeping to kill a lot of device categories: alarm clocks, flashlights, cameras, music players, satellite navigators, gaming devices, eBooks, ... basically the phone becomes your only personal device.
3.5G is the current state-of-the-art. This enables devices to be "always online", though limitations in current battery technology make this troublesome. But when everybody is always online the wireless spectrum will be the next limitation.
Expected technology breakthroughs:
Video: Nokia Morph concept
Video: the MIT wearable UI concept at TED. With this people will be like "Gargoyles" in Snow Crash
Copyright Rohea Oy 2010 | Mobile version | Feedback | API | Terms of Service | Applications and tools