Tools

bergie said

bergie  

Bossa Conference '10: free software in mobile applications

13 comments

bergie posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)

13 comments

Bottom

bergie  

Qt Quick (formerl QML) is the declarative UI toolkit for Qt, to be used when you want to build apps with kinetic, modern user interfaces instead of traditional WIMPy forms. On mobile platforms you want to adapt the UI for each device, to support the screen size, resolution and other inputs and sensors.

Declarative: what you want on the screen vs Imperative: how you want your application to do it.

EFL had such capabilities for quite a while, but now it can be done with Qt too.

Quick Design plugin for Qt Creator allows you to design QML UIs in a WYSIWYG way.

"Qt Quick tries make it difficult to shoot yourself in the foot performance-wise. Using web technologies you can screw up your app very easily"

In QML you can embed javascript methods for scripting functionality. But you also have access to actual C++/Qt classes

bergie commented on posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)

indeyets  

I wonder why they do not go cocoa interface builder's way… IB stores serialized objects instead of declarations. This way it is possible to achieve absolute flexibility (anything which object can do can be exposed via interface builder's file.

indeyets commented on posted to #maemo 08.03.2010 (en)

bergie  

It would be possible to make quite cool QML applications if we could make Midgard data act as Qt models. Something for @piotras @indeyets and @abbra to think about :-)

bergie commented on posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)

bergie  

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.

bergie commented on posted to #maemo <br /> <b>Warning</b>: mysql_connect() [<a href=' 08.03.2010 (en)

bergie  

Fabio Ranieri on Ovi Store: the main point of this talk is "Show me the money"

  • Over 100 devices supported
  • 500 new items per week
  • Users from 180 countries
  • Over million downloads per day
  • Each user has downloaded at least 12 items
  • Payment integrated in operator billing in 16 countries
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 ;-)

bergie commented on posted to #maemo 08.03.2010 (en)

bergie  

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 now everywhere
  • Social networking is always connected
  • We have access to all information that matters to us
  • Our important personal data is online
  • Interfaces are becoming more fluid - with animation, touch, kinetics, motion sensors
  • Interfaces are becoming design and fashion oriented
  • Technology is not just a tool for "serious work", but also a way of life
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.

bergie commented on posted to #maemo 08.03.2010 (en)

bergie  

Went for a walk in the hotel zoo during the break. Jaguars, parrots, monkeys...

bergie commented on posted to #maemo 08.03.2010 (en)

bergie  

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"

bergie commented on posted to #maemo 08.03.2010 (en)

bergie  

Seen this morning: Nokia Web Runtime presentation and a session about Ubuntu Mobile. The Ubuntu guys seem to be quite interested in Midgard

bergie commented on posted to #maemo 09.03.2010 (en)

bergie  

bergie commented on posted to #maemo 09.03.2010 (en)

bergie  

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:

  • 150 apps in extras-devel
  • 50 apps in extras-testing
  • 30 apps in extras
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:
  • fmradio: tune to FM radio stations on the N900
  • gPodder: podcast downloader
  • Hermes: contact synchronization
  • zoutube: Youtube video watcher
  • MaStory: blogging client
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.

bergie commented on posted to #maemo 10.03.2010 (en)

bergie  

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:

  • Software radios that can adapt to any band, any signal
  • Flexible electronics and displays. "iPad is a big clunky thing, but if you can wrap it and put it in your pocket, then it isn't a problem"
  • New battery technologies
  • Augmented reality
  • Importance of a complete solution that meshes hardware, software and services
Video: Nokia Morph concept

Video: the MIT wearable UI concept at TED. With this people will be like "Gargoyles" in Snow Crash

bergie commented on posted to #maemo 10.03.2010 (en)

bergie  

The Bossa Conference is now wrapping up. Time to check out from the Tropical. In the evening there are options for a Nokia factory tour and a concert in Teatro Amazonas.

bergie commented on posted to #maemo 10.03.2010 (en)

Login or register to leave a comment

Publicity
These messages are public and can be seen by anyone.