You Are Here:

Community: Blogs

Mark Wilcox's Forum Nokia Blog

Meet some package owners, but don't forget your towel

Sorcery-ltd | 19 May, 2009 17:45

Lars Kurth, the contributor community manager for the Symbian Foundation, has blogged about an event for package owners and anyone who might be interested in contributing code.

As he says, there are still places available, so if you'd like to meet some package owners and representatives of other companies that may contribute to the platform in the future, then sign up and join in.  The event is on 25th May (short notice so don't delay), which happens to be Towel Day.

 

Your can sign up via twitter using the instructions in Lars' post linked above, or, if you're not into tweeting then register your interest via email at RSVP@symbian.org.

 

P.S. Package owners are typically the technical architects for the relevant packages, so they could be very useful people to meet!

 

Another chance to get access to the Symbian developer website beta

Sorcery-ltd | 14 May, 2009 16:00

In my last post I said that people interested in the future Symbian UI should get themselves access to the developer website beta.

Unfortunately it's still not ready for the grand public opening, but there's no restriction on who can be let in yet, just total numbers for the time being.  There's another chance for anyone that want's a look to get access today.  There's some interesting new wiki content in there that's worth seeing and a chance to leave your feedback on the forums and shape the future direction of the site.

Here are the instructions to get access:

How to get a 3rd round Symbian Developer Website Beta Key..

  • Follow @symbiandevco on Twitter
  • Be ready to tweet between 4 - 6pm BST (8 - 10am PDT) on Thursday 14th of May
  • Send the following tweet out during that time period: @symbiandevco I need a FN #symbian beta key!
  • Receive a message to your twitter within 12 hours containing your login to our beta
  • Good Luck!
If you miss the time window, don't worry, there'll be another opportunity soon.

Mark

The Future Symbian UI - the most important thing not discussed in Monaco

Sorcery-ltd | 05 May, 2009 13:03

For those that haven't seen it, David Wood has posted about some proposals that Nokia have made to the Symbian Foundation here:

http://blog.symbian.org/2009/04/30/reviewing-the-release-plan/

These include:

1) Qt for S60 to become an official part of the Symbian platform

2) Orbit - a new Qt-based mobile widget set (this is really implementation detail)

3) Direct UI - a replacement for Avkon and the existing applications

Yes, you read that right, Qt is proposed to become the new application framework for Symbian devices (from Symbian^4 onwards).

Personally I think this is a fantastic thing, and will be all the more exciting because developers with access to a hardware reference platform (hopefully more phone-like versions available by the time the code comes along) will be able to watch the progress of the development and even get involved.  However, it does imply (at least in the current proposal) a significant source and binary compatibility break.  Is this also a good thing?  I think so, but I'm sure not everyone agrees.

If you want to know more get yourself beta access to the new Symbian developer website and look at the proposals yourself.  Then discuss the implications on the new Feature and Roadmap Council discussion board if you have some useful input to the decision making process.

If you want more background info about Qt on Nokia platforms and the general strategy, see the excellent presentation made by Mika Rytkonen on this subject at the Nokia Developer Summit.  In the same session, the trolls also talked about the future of Qt, so if you're interested in this future UI based on Qt then look out for their declarative UI updates (extension of Kinetic work) over the next few weeks/months.

 

Please note - these are proposals for Symbian^4 which should ship in devices end-2010 or early 2011.  Avkon isn't going to disappear overnight. :-)

Qt to be completely free for everyone!

Sorcery-ltd | 14 January, 2009 11:49

Just a quick post to spread the news.  In their recent webinar, Forum Nokia announced their intention to make Qt on S60 free for everyone.  However, from Qt 4.5, things are going even further than that (just announced on the Qt-interest mailing list).  Nokia are releasing Qt under the LGPL (v2.1).  For those that don't know, this is a weak copyleft open source license, which basically means you can use Qt on every platform for closed source commercial development, or open source development (LGPL v2.1 allows automatic conversion to the GPL v2 - they will still be releasing under GPL v3 as well).  The only real restriction is that any changes to the libraries must be released under the LGPL also (usual I am not a lawyer disclaimer here). The other major part of the announcement is that they will be opening their source repositories, hiring more Qt developers and making it easier for others to make contributions - apparently they don't need to get copyright assignment from contributors anymore.

Mark

P.S. The announcement said this is in addition to their commercial licenses (for those that can't live the the LGPL terms and/or still require support presumably).  I'm not quite sure how this fits with not needing copyright assignment, but we'll see soon enough. 

 

Qt on S60 Open Source Project - Bluemapia

Sorcery-ltd | 17 December, 2008 19:59

Do you like to work on the cutting edge of mobile technology? Are you interested in social networks or location based services using free maps? Want to get involved in an open source project on mobile phones?

If the answer to any of those questions is "yes" then maybe this post is for you.

Learn about Qt on S60, porting to Symbian OS and open source mapping solutions. Get hands-on experience with the latest Qt on S60 technology preview and help port a social mapping application while you're learning (I find you always learn more and faster when you have a real project rather than just playing with examples).

Qt on S60 is fantastic news for S60 developers, even more so since the revelation in the webinar (hopefully it'll be at that link soon anyway) today that Nokia intend to make Qt free for commercial S60 development.  However, we're going to need some good examples of Qt on S60 projects on a variety of scales.  I'm starting work on one of those now, incorporating the other cutting edge trend for mobile social location (N97 anyone?).  Which will mean we also have an example of extending Qt with camera and GPS functionality.

Bluemapia is a location based social network for boaters.  There is an existing open source client for Windows Mobile, that uses various free maps and other popular open source libraries.  We're planning to port the application (and libraries) to Symbian OS/S60 and re-write the user interface using Qt.  I say "we" because some engineers from Symbian (including Symbian Ambassador Lucian Piros, who you may know from the SDN discussion boards or NewLC), an experienced open source GIS developer, an experienced Qt developer and more, will be contributing to the project.  If you want to learn from some experts then volunteer too and get involved!

The idea is that we combine with existing open source mobile efforts in this area and create some components that people can use to build their own (open source) location based apps that use free maps (and maybe also not-so-free maps if/when we've got some appropriate APIs and license terms).

The project will be hosted in Launchpad and to get things going quickly I'm planning a "code camp" for some of the developers in London on 17th January.  If you'd like to come along to that and get involved, or can't come but would like to get involved, or just want to know more then please get in touch - either reply to this post (with a way of contacting you) or email me via the discussion boards (user name Sorcery-ltd), or just go to the code camp event site and register (if you don't have a Bantora account yet you'll have to email me first to get an invite) - places are limited, first come, first served - final numbers must be confirmed by 6th January.

Looking forward to hearing from you and working together!

Mark

P.S. Once we're done porting to S60, hopefully we can also port to maemo and other Qt supported platforms too.

Multi-language Programming, Python, Flash Lite, C++, Java, Widgets

Sorcery-ltd | 16 December, 2008 17:03

I've been working with some other Forum Nokia Champions and expert developers in the last few months to create some resources for Multi-language programming (mixing your favourite runtimes).  The result is a series of papers for the Symbian Developer Network.

In them you can find out about:

1) The architecture for applications mixing languages

2) The strengths and weaknesses of various combinations of languages

3) How to combine Flash Lite with C++ or Java (with examples from KuneriLite and Jarpa)

4) How to combine Python with Flash Lite or C++ (with examples from Flyer and a tutorial on writing PyS60 extensions)

5) How to extend WRT widgets

 

One of the suggestions I made on my blog here before and also in the papers has already been done.  One of the authors of the paper covering Python, Jussi Toivola (aka GameDude) has ported pygame to PyS60 Community Edition.  Now you can write games with sound effects in Python, taking advantage of the native performance provided by the SDL.

Please read and enjoy!  Many thanks are due to Bernd Wiegmann, Felipe Andrade, Ugur Kaner, Jukka Hamalainen, Mikko Ohtamaa & Jussi Toivola, as well as the wonderful folks at the SDN.

Mark

 

Symbian getting open source friendly - almost there

Sorcery-ltd | 13 December, 2008 12:38

We've had some really great developments for open source on Symbian OS in the last couple of months, most of them have already been reported but I thought I'd do a quick summary and look at what's still needed.

We had Open C/C++ to let us write standard C/C++ code on Symbian, now we've got Qt on the way too.  Thanks to another poster on the discussion boards I can now point to a public source that says we have GStreamer being ported to Symbian as well: http://www.scribd.com/doc/40648/S60-Extending-the-Internet-Ilari-Nurmi-Nokia (page 9).  As Paul reported on Thursday, Mobile Firefox is also coming to Symbian OS, and that should mean more libraries (such as Cairo) coming with it.  The more building blocks and frameworks we get in place, the easier it is to port other applications and libraries.

Very rapidly we're getting to the situation where we have a Linux-like user space environment on top of the Symbian OS kernel.  To me this seems like the ideal combination for open source in mobile (I think it's going to take a few years for embedded Linux efforts to make it a serious contender in terms of power consumption and support for phone hardware, particularly at the lower end - single chip devices - and top end - the way SMP is supported needs to be quite different than for the desktop).

Now that Nokia's acquisition of Symbian has been approved, the way is clear for the Symbian Foundation and opening of the Symbian/S60 code.  As long as most of the big players in the mobile industry can be the "good open source citizens" that Nokia is trying to be then eventually Symbian & Linux should just be different open OS's that you build all open source mobile projects for.  There are still some things that need sorting out before we get there though:

1) Tools - Carbide.c++ v2.0 becoming free is a fantastic piece of news and a big step in the right direction.  However, it's still tied to Windows and the majority of open source developers (and indeed good embedded software engineers in my experience) would rather not use Microsoft OS's if they don't have to (putting it mildly).  Being Eclipse based, Carbide.c++ could theoretically move to Linux, although we'll need the (strongly rumoured but not much publicly discussed) simulator to replace the Windows emulator and some fixes to the SDK.  I'm not sure how Windows-specific the on-device debugging tools are either but I expect some work is required there.  This same point was made by Joel West recently.

2) Symbian Signed - I'm expecting further change here at some point since no other platform has this kind of clumsy headache of a system; it just can't be allowed to continue for too long.  It would be nice to hear some official comment about reforms, even if they're going to take a while to implement.  The current system is decidedly unfriendly to open source and there's really a need to stick to projects that don't need anything other than user-grantable capabilities.

However, I'm really pleased at the pace of progress with the mobile software world opening up.  So much so that I think it's worth working on some big open source projects on Symbian now (and clearly Mozilla agree!).... watch this space for my first one....

Mark

 

 

Thoughts on Smartphone Show 2008

Sorcery-ltd | 27 October, 2008 11:02

I was at the Smartphone Show last week.  It was much larger than previous years and there was more of a buzz about the place than before.  I'm sure this had something to do with the soon-to-be-created Symbian Foundation.

One of the big news items from the show was the nomination (can't actually be appointed yet because the foundation won't exist until Nokia's acquisition of Symbian goes through) of Lee Williams, currently head of S60, for the role of Executive Director of the Symbian Foundation.  I have mixed feelings about this.  On the one hand he is almost uniquely qualified having been the first head of S60 to have other licensees than Nokia get products out in a sensible timescale.  He knows the whole platform that will form the core of the foundation releases.  He's a very capable and enthusiastic communicator.  On the other hand, I think politically it would have been much better to appoint someone from outside Nokia, possibly even from outside the industry.  Preferably someone with some open source credentials.  The message from the keynotes at the show was that it's all about developers.  I don't think this appointment really confirms that.  Then again, I'm sure Lee will do a great job and I wish him the best of luck!  He's just going to have to work extra hard to demonstrate the independence of the foundation when Nokia is doing most of the early development work on the platform.

There was a lot of exciting news for developers at the show, with plenty of new stuff to play with now, or look forward to shortly.  At the Forum Nokia stand there were lots of demos, including Carbide.c++ 2.0 and Qt on S60.  It was great to see the new architectures in Symbian OS (Screenplay & Freeway), that were not much more than powerpoint slides at last year's event, with impressive demos on the Symbian stand.  However, the most exciting things (yes I get excited about some pretty geeky things!) on the Symbian stand were the new Symbian Analysis Workbench (SAW) and version 2 of the build system, that runs on Linux as well as Windows.  The SAW tools are for debugging and performance analysis, they're available as plug-ins for Carbide.c++.  They look similar to, but better than, the current Carbide performance investigator tool (part of the expensive Pro and OEM verisions).  Currently they're only available to Symbian partners on the SDN++ site but the suggestion was that once the foundation is established they'll be free to everyone (hopefully with the other critical Caribde.c++ feature - on device debugging).

Of course, for me, one of the great things at the show was finally seeing my writing published in the Symbian Multimedia book, which you can now buy!  There was also a very nice book on Design Patterns on Symbian OS released at the same time.

However, the very best thing at the show is meeting all the people that make these things happen and other like-minded developers.  I got to meet up with several of my fellow Forum Nokia Champions again, which is always a pleasure.  I also enjoyed getting to spend some time with Espen from Qt Software, who's leading the port of Qt to S60, Vinod, the technical architect of the P.I.P.S. team at Symbian and Lucian, one of the new Symbian Ambassadors (very much like a Symbian version of Forum Nokia Champion - although the first batch are all Symbian employees so I'm not sure how much use they'll get from the benefits of membership), plus many, many more - too numerous to mention.

It's really worth going to some of these events - you're bound to come away with plenty of new contacts and ideas.  Don't miss next year's Smartphone Show, whatever form it takes.

Mark

 

 

Code Camps - a great way to learn a new environment

Sorcery-ltd | 15 September, 2008 23:46

I was in Berlin last week at MDD08.  Some of it was good, some not so.  However, one bit that I really enjoyed was the chance to learn some more about Flash Lite and write my first Flash Lite application with some experts on hand to smooth the learning curve.

I got this chance at the Forum Nokia code camp.  Here's FN's own Riku Salminen evangelising about Flash Lite.

So, having never written anything in Flash before, and not having hacked a bit of JavaScript (which is very like the ActionScript language used in Flash Lite) for many years, I opened up Adobe Creative Suite 3 and set to work.

I had some good advice from fellow FNC Chall3ng3r (aka Faisal Iqbal) and he helped me fix my first bug - so thanks for that.  He's recently released a new version of his tool for Flash Lite developers - SWF2Go.

In one afternoon I created a simple breakout clone where the blocks advance down the screen every 5 seconds.  It isn't finished - it doesn't actually keep track of the score yet or tell you when you run out of lives and give you the chance to start again for instance - but it's fairly playable already.  Of course the graphics are very basic but that's not the point - they can easily be replaced later.  I'd never be able to acheive that much with native Symbian C++ coding in an afternoon, particularly if I'd never written anything before.  I don't think it would have been possible if I hadn't been at the code camp with some experts on hand to help either.

Simple_game.swf

Simple_game.fla - use "save target as" on these links if you want to mess with my simple creation, the keys aren't enabled if you play the above link in the desktop Flash Player in your browser.

That said, ActionScript debugging is a nightmare - the run-time doesn't produce any errors, it just carries on as best it can if there's a problem.  I found what seems like an obscure bug with where you can and can't access movie clips from using the global this[] array syntax but it took about an hour out of my afternoon tracking it down (Riku & Faisal couldn't even help with that one!) otherwise I might have finished.  I don't think I'm a converted Flash Lite enthusiast after this experience but I'll definitely be having another look at it.

If there's a code camp near you, give it a try!  You never know what you might create.

Mark

 

Python for Series 60 Community Edition!

Sorcery-ltd | 04 September, 2008 13:36

Ever wanted to add modules to the core PyS60 distribution rather than having to find them from all over the place?

Ever wanted to build a single executable for your Python application that didn't need the interpreter installed separately or as an embedded SIS file AND have no clashes with other interpreter versions or problems with uninstallation and dependencies?

Ever wanted to try out a new build system for Symbian OS, where the build scripts are written in Python (SCons for Symbian anyone)?

If you had these things what would you do with them?  You could:

  • Write commercial PyS60 applications!
  • Port/Intergrate new modules more easily.
  • Fix bugs in PyS60 core or modules that affect your apps rather than work around them.
  • Much, much more...

Thankfully the fantastic folks at Red Innovation have brought us Python for Series 60 Community Edition that provides all of this.  I can take no credit here, I've only tested that the build system works.  At the moment it's still really only for enthusiasts and early adopters as the installation and setup is a bit complex to start working on it, but there are plans to simplify things in the future.

The project is hosted at Launchpad so that's the place to go with your questions and bug reports.

 

Personally, I'd love to see what people could do if we add Pygame support, since the main dependency, SDL, is already ported to S60.  Unfortunately I have no idea when I'll have time to work on this.  If anyone else wants to get started I'll be happy to support/mentor them if they need it though - just comment this blog or drop me an email via the discussion boards.  I've already added a "blueprint" for this to Launchpad, but there's no detail yet.

Pygame banner

Perhaps one day Nokia will be able to take patches and extensions from the community release back to the official release...

Anyway, enjoy this great new resource.

Mark

 

New Stuff for Symbian C++ Developers

Sorcery-ltd | 02 September, 2008 12:05

I thought I'd write a quick post to highlight some of the things I've been up to lately. 

Multimedia book cover.First, there's Multimedia on Symbian OS: Inside the Convergence Device, which I co-authored for Symbian Press.  It should be available next month.  Lots of great stuff for multimedia developers, or those wanting to add multimedia to their applications.  It also does a really good job (well I would say that wouldn't I) of explaining the multimedia architecture, so you can understand how it all works underneath.

TuxN95Then there's a pair of paper's I've written for the Symbian Developer Network.  One explains how to port software from Linux to Symbian OS and the other explains how I ported an open source guitar tuner application (with example code).

I may well be talking about this and other porting work I've been doing at the Mobile Developer Days in Berlin next week.  There will be lots of interesting things to learn about there, including plenty of presentations and tutorials from Trolltech about Qt on mobile devices.  Forum Nokia are hosting tutorials on Flash Lite and Web Runtime.  You can also learn about Python, sensors and much, much more.  Don't miss it!

Mark 

 

S60 Under-engineered?

Sorcery-ltd | 07 August, 2008 11:45

Having quoted a Nokia employee in my recent blog post, saying that open sourcing S60 was like spreading manure out on a field, I thought I'd share my latest insight with you.  I'm reading "Refactoring to Patterns" by Joshua Kerievsky; so far, it's excellent.  While I was reading his description of an under-engineered system, S60 immediately sprang to mind - see if you agree:

"...While systems you've worked on may not be so gruesome, it's likely you've done some under-engineering.  I know I have.  There's simply an overwhelming urge to get code working quickly, and it's often coupled with powerful forces that impede our ability to improve the design of our existing code.  In some cases, we consciously don't improve code because we know (or think we know) it won't have a long shelf life.  Other times, we're compelled to not improve our code because well-meaning managers explain that our organization will be more competitive and successful if we "don't fix what ain't broke."

Continuous under-engineering leads to the 'fast, slow, slower' rhythm of software development, which goes something like this:

1. You quickly deliver release 1.0 of a system with junky code.

2. You deliver release 2.0 of the system, and the junky code slows you down.

3. As you attempt to deliver future releases, you go slower and slower as the junky code multiplies, until people lose faith in the system, the programmers, and even the process that got everyone into this position.

4. Somewhere during or after release 4.0, you realize you can't win.  You begin exploring the option of a total rewrite."

So, first S60 phone released mid-2003 following fast and successful development project.  S60 2.0 (2nd Edition) ships in the 4th quarter of 2004, a bit less than 18 months later.  S60 3.0 (3rd Edition) ships at the end of the first quarter in 2006, more than 2 years later following a major struggle to add platform security and move to a new Symbian kernel.  Will we get the next major release (5th Edition as 4th is skipped, supposedly because 4 is an unlucky number in some cultures) in our hands before 2009?  And during this development Nokia are planning to completely switch the development model to open source and are clearly considering starting again, although they don't have time to write a new framework from scratch so they bought Qt! 

Is this a fair representation of what's happened?  Comments welcome!

Everyone is making a big fuss of the iPhone but it's at step 1 (the 3G version really doesn't add enough to be considered step 2 in my opinion), while S60 is at step 4.  Are Apple going to do better, only time will tell.

Of course Joshua Kerievsky suggests a solution to this under-engineering problem - Test-Driven Development (TDD) and continuous refactoring.  There are plenty of teams in Nokia and Symbian who are already using these practices.  However, there's another issue that prevents major re-design that is specific to open systems - binary and source compatibility guarantees.  The developers of the code can't refactor everything they'd like to because they don't actually know who else is using the interfaces and how; they've just promised not to change it.  What's the solution to this?  It seems the one we're most likely to get is parallel interfaces.  Leave the old ones as they are and add new ones alongside them.  Only add new features to the new interfaces so that developers eventually have to migrate anyway.  This means we end up with an increasingly bloated code-base, carrying the remnants of old releases around almost forever (a bit like Windows really).  Is there a better way?  Or are all successful systems doomed to follow this course?

I'd love to know your thoughts on this.

Mark

 

Open License Manager?

Sorcery-ltd | 02 August, 2008 15:52

Another thing that is made possible by the Symbian Foundation, is for any member to submit source code and potentially get it released in millions of devices.

What do you think would be a good feature or component to add to Symbian devices?

I think an open license manager could be useful.  The N-Gage application acts as a license (& DRM) manager for N-Gage games but there isn't a similar solution for the rest of the developer community.  Securing your application can be costly and time consuming.  Would it be a good idea to get a license manager that supported trial functionality and various activation schemes (type in code, SMS activation, connect to license server etc.) as part of the core OS.  An advantage of this is that it could store all the relevant details in its private directory and these would then be protected by platform security and never removed, even if the application is uninstalled.

Obviously there would need to be some mechanisms to prevent spoofing of the server too!  An open source project could potentially provide a license manager server, code samples for developers wanting to use it and guidelines for use to prevent your application from being easily hacked to remove the license checks.  A server application you could host yourself on the internet and connect to via the license manager in the device could also also be part of the project.

Anyone interested?  The first cut could make an excellent masters project for a good university student studying Symbian OS...

Just a thought.  Comments and suggestions for features welcome.

Anything else you'd like to see included in the Symbian Foundation releases?

Mark

 

Symbian Foundation Implications

Sorcery-ltd | 18 July, 2008 14:53

It's been a few weeks since the big announcement and I think I've finally digested it.

My fellow champion Gabor Torok has already collected a lot of interesting analysis but there are a couple of more recent links with inside perspectives that are worth a read.  There's an interview with Nokia's chief development officer where the practicalities of opening the source and the motivation for the change are discussed.  It's stated that as part of the move to becoming an internet company, Nokia wants to get out of the "plumbing business".  I assume that means they want to reduce the engineering effort they put into integrating phone software rather than stop making devices all together one day...?  There is also a conversation with a Nokia employee who has a rather less rose-tinted view of the move...

"S60 is costing us a load of money, since we have to essentially carry it on our own shoulders. Pretty much the only community around S60 is the community we pay to be there (a few lone, strong, awesome warriors notwithstanding)."

"I doubt that open sourcing Symbian is going to help in the community building though. There are two kinds of OSS developers: the guys who do things for fun, and the guys who do OSS because they are paid to do so. In order for an open source project to really flourish and take over the world, you need both."

Which is a concern that I share, although I am perhaps a little more optimistic about it.  I'm not sure Symbian + S60 really needs to flourish and take over the world - it's already in the top spot, staying there is a slightly different game.  I'll come back to that when I discuss licensing issues later.  I thought this comment on the future Symbian Foundation code base was amusing (if a little harsh) but it also highlights one of the benefits of going open source, even if the only participants are paid by various network operators and device manufacturers...

"Spreading the manure out in the field where everyone can step on it does not necessarily make it better than keeping it in your closet. It does, however, make new things grow better. Still, I think this is a smart move. Open source improves quality by using the embarrassment factor. People suddenly sharpen up in their coding when they know their work could be inspected potentially by millions of people - even if nobody ever bothers to do so. And that, while it sounds insignificant, does actually go a long way."

One of the most important things in open source is the license...

I've been doing some of my own thinking too and one of the interesting things for me is the choice of license (EPL) for the foundation code.  A quick check reveals that the EPL is incompatible with the GPL, that is, combinations of code licensed under the two schemes cannot legally be distributed.  You'll be able to develop free software (GPL) applications against a Symbian Foundation SDK (as you can now with closed source Symbian) because there is a "system library" exception clause in the GPL.  I think (although I'm no software copyright law specialist) that you'll also be able to develop GPL'd plug-ins for Symbian Frameworks under the same exception, but that is a bit of a grey area and you certainly couldn't distribute them as part of a foundation release.  In fact the foundation releases will not be able to take GPL'd code from the rest of the open source world at all (although they can use code licensed under the LGPL).  Similarly, GPL'd code bases like the various mobile Linux variants probably won't be able to use anything from the foundation code.  This is where I wonder how many of the current open source crowd will convert... I suspect not many.  There is always the potential to attract new developers to a newly open platform though, particularly with the prospect of getting your contributions onto several hundred million devices... and the one saving grace is Qt (which will be in an interesting position for licensing itself, currently dual licensed - GPL and proprietary).  Qt (with a Symbian port) has the potential to be the first truly cross platform native mobile development environment.  Definitely something to take an interest in if you're a mobile developer.  Maybe that will entice some of the open source community to start new projects?

Reference platforms?

If we're going to have a level playing field in the Symbian Foundation, rather than all the other manufacturers hanging on to Nokia's coat tails, then we're going to need reference platforms.  When S60 is closed source they can choose a device model internally from the upcoming Nokia range and use it as a reference to help determine whether bugs exist in the platform code or only on a specific device or hardware platform.  If there is a wider range of manufacturers with an even wider range of hardware designs there there will be a strong need to have a common test platform (or possibly a few) for this purpose.  Who will produce them?  One obvious choice are the silicon vendors, but there is a lot of software work involved in getting the reference working that they currently don't have the in-house expertise for.  Another option would be to choose an recently released product and run the newer version of the foundation code on that - the danger there is always having out of date hardware.  I'd be interested to see some plans for this area made public fairly soon because now would be a fairly good time for OEMs wanting to target the first foundation release to start looking at component selection and hardware designs - a first product will probably take at least 18 months because of the learning curve.  With experience it should be possible to halve that.

Optimism

When I wrote on this blog about an Open Mobile Software Foundation in April, I was hoping for something like the Symbian Foundation but not expecting anything near this scale.  I really think open source is the only sensible way to go for software projects of this scale and complexity.  Even if the "community" consists almost entirely of commercial developers rather than enthusiasts hacking in their spare time, I think there are a lot of benefits to be gained from a a truly open platform for both the device manufacturers and developers of add on applications and services.  With a common, open code base, as well as standard programming environments provided by the likes of Open C/C++ and implementations of various industry standards, along with a vastly improved UI toolkit in the form of Qt, the fragmentation and lack of documentation that have plagued mobile development from the start may finally be coming to an end.  (Disclaimer: I'm a bit of an optimist these days and my views should be interpreted accordingly).

Thanks for reading, your comments are encouraged!

Mark

 

The Good, the Bad and the Ugly

Sorcery-ltd | 14 July, 2008 13:41

New developer resources that is.  These are just some that I've looked at recently but here are my recommendations...

The Good:

Quick Recipes on Symbian OS 

This book is designed as a 2 week self-study course for Symbian C++.  There's a section to get your development environment set up and working and then the basics of Symbian C++ are all covered in the first 75 pages.  After that you can work through, or pick and choose from a number of 'recipes' - which are code examples like you'd get on the wiki here but with more explanation.  The recipies cover File Handling, Contacts & Calendar, Networking, Messaging, Graphics & Drawing, 3D Graphics Using OpenGL ES, Multimedia, Telephony, Connectivity and Location-Based Services.  Some of the material was contributed by fellow Champion Antony Pranata and other parts by FN's own Jukka Silvennoinen (the amazing symbianyucca on the DiBo).  I've been lucky enough to get an advanced copy but you should be able to buy yours very soon!  If you like to take a hands-on approach to your learning then this is the book for you.

 

The Bad:

Platform security for all

A new developer booklet from Symbian - although I've linked it above, don't read it!  You'll probably end up more confused about platform security than you were before.  The diagram on the front cover is a classic example, it's just wrong.  The key that goes with it inside (page 8) compounds the original sin of PlatSec - the secure core that is trusted with all capabilities and the capability that allows the creation of executables and granting of other capabilities have the same name (TCB) when they are different things - this diagram makes the difference less clear, not more.  The other big problem with this diagram is that it shows the capabilities in a heirarchy, when they are supposed to be orthogonal (i.e. separate, not layered on top of one another).  Anyway, enough ranting, I'll just say that spreading mis-information about a security system doesn't make it more secure and Symbian should withdraw this booklet.

 

The Ugly: 

UIQ 3: The Complete Guide

Finally, the most unappealing book to buy on Symbian OS (it's not as bad as the PlatSec booklet above, but that's not for sale) is the recent UIQ 3 book.  There are a number of reasons for this, not all related to the quality of the material (some of it's good, some bad - note that despite having their name stamped on it, it's not an offical Symbian Press title).  An important one is that most/all of the content is being made available on-line as a wiki.  The other, is that, following the recent Symbian Foundation announcement, UIQ is as good as dead.  Unfortunate timing for the release of the book.  There will still be some UIQ phones around for a while but the volumes are not that high.  I'm sorry to say for UIQ device owners - investing in UIQ software development is likely to be a waste of money.  Develop for S60 and port to UIQ only if there is a real demand from end users.

 

There are of course many other great books and booklets on Symbian development - this is just my attempt to help you use your reading time wisely.

Mark

 

 
1 2  Next»
 

Rate This

 
 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia