tag:blogger.com,1999:blog-73364576102554028782024-03-05T07:00:11.839+00:00Jaffa SoftwareAndrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.comBlogger46125tag:blogger.com,1999:blog-7336457610255402878.post-56460537520808454412012-06-19T23:17:00.002+01:002012-09-16T15:46:58.243+01:00Initial success in porting Harmattan/Symbian QML app to BlackBerry<p>This is the first post in a new <code>BlackBerry</code> category in my blog. Having attended the "<a href="http://www.blackberryjamworldtour.com/">BlackBerry 10 Dev Jam</a>" in London last week, BB10 looks very interesting - and a spiritual successor to MeeGo 1.2 Harmattan, i.e. the Nokia N9.</p><p>It's particularly interesting as BlackBerry have created their own Qt/QML-based environment, called <em>Cascades</em>.</p><p>However, I've got an existing app, <a href="http://www.jaffasoft.co.uk/m/bedside/">Bedside</a> which is almost pure QML. Could I get it running? More detailed instructions will come later, but here's how I got to where I am:</p><ol><li>Install the <a href="https://developer.blackberry.com/cascades/documentation/getting_started/setting_up.html">BlackBerry 10 Native SDK</a> and developer environment.</li><li>Create a new <em>BlackBerry Cascades C++ project</em>, although we're going to use it for "plain" Qt (as described in <a href="http://translate.google.com/translate?hl=en&sl=zh-CN&u=http://blog.csdn.net/berryreload/article/details/7533438">this Chinese blog post</a>).</li><li>Ensure you add <code><env var="QT_QPA_FONTDIR" value="/usr/lib/qt4/lib/fonts" /></code> to <code>bar-descriptor.xml</code>.</li><li>Copy <code>qmlapplicationviewer.{cpp,h}</code> from the existing project into <code><var>APP</var>/src/</code>.</li><li>Put your QML resources in <code><var>APP</var>/assets/</code> (note you can't use <code>asset://...</code> URLs within the QML files, as you can with Cascades).</li><li>Replace <code>main.cpp</code> with a simplified version from your other project, for example:</li></ol><pre><code>
#include <QtGui/QApplication>
#include <QtDeclarative>
#include "qmlapplicationviewer.h"
int main(int argc, char **argv) {
QApplication app(argc, argv);
QmlApplicationViewer viewer;
viewer.setMainQmlFile("app/native/assets/main.qml");
viewer.showFullScreen();
return app.exec();
}
</code></pre><p>In particular, note the path to the main-QML-file.</p><p>And here's the initial version of <var>Bedside</var> (with no screensaver interaction yet) running on the BlackBerry 10 Dev Alpha:</p><div style="text-align: center"><a href="https://secure.flickr.com/photos/30863507@N02/sets/72157630199112634/detail/"><br /><img src="https://farm8.staticflickr.com/7237/7404163258_e4db7bdf5a_s.jpg" alt="[Icon]" /> <img src="https://farm8.staticflickr.com/7083/7404163820_85132b7c96_s.jpg" alt="[Portrait]" /> <img src="https://farm8.staticflickr.com/7071/7404164400_8e83436944_s.jpg" alt="[Landscape]" /> <img src="https://farm8.staticflickr.com/7221/7404162462_7d83d86de6_s.jpg" alt="[Multitasking]" /><br /></a></div><p><i>UPDATE:</i> With a bit more work, I've got <a href="https://gitorious.org/jaffas-playground/bedside/trees/master">a single source tree</a> working: now I can deploy to Symbian, Maemo, Harmattan or BlackBerry 10 (using Qt SDK for the first three, and BB10 Native SDK for the latter).</p><p>Instructions are in <a href="http://supportforums.blackberry.com/t5/Native-Development/HOWTO-Getting-started-with-quot-raw-quot-QML-on-BB10-Native-SDK/m-p/1782089">this forum post</a>.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com7tag:blogger.com,1999:blog-7336457610255402878.post-87511530359235186642012-02-26T18:38:00.002+00:002012-09-15T11:40:50.949+01:00Avoiding jet lag using continuous clock change<p><img align="right" width="80" height="80" src="http://bleb.org/software/maemo/maeflight.png">These days I'm often travelling long distances; whether it's to Asia or Detroit with work; or San Francisco for the MeeGo and JavaOne Conferences.<br /></p><p>Ten hour flights are rarely fun; but when combined with a ten hour time difference? The jet lag can destroy you.<br /></p><p>However, I trust a clock when I see it. So if I can convince myself that the time isn't changing in one big jump, jet lag is less of an issue. I used to do this with my watch: every two hours on a ten hour flight with an eight hour time difference: move my watch forward two hours. By speeding up, or slowing down time, I find it excellent for transitioning gradually to my destination timezone.<br /></p><p>My N9's standby screen provides an opportunity to do this automatically: every time I glance at my phone on the flight, it could show me the right "transient" time.<br /></p><p>I prototyped it with a spreadsheet (<a href="http://bleb.org/software/maemo/flight-time.ods">download</a>), for a recent trip to Korea, to see how effective it would be before writing an app:<br /></p><p> <img src="http://bleb.org/software/maemo/flight-time-1.png"><br /></p><p>To try it out, first off, <strong>enter</strong> the local departure and arrival times; and the timezone difference:<br /></p><p><img width="280" height="61" src="http://bleb.org/software/maemo/flight-time-2.png"><br /></p><p>If travelling eastwards, the <em>time difference</em> will be positive. If travelling westwards, it will be negative.<br /></p><p>A shell script will then be shown in column E. <strong>Copy</strong> this column and <strong>paste</strong> it into a text editor. <strong>Copy</strong> the resulting script to your UNIX-based mobile device (N9, N950, N900, N8x0, jailbroken iPad).<br /></p><p>On a Harmattan device, the script needs to be run in <strong><span style="font-family: courier new,courier">develsh</span></strong>:<br /></p><p><span style="font-family: courier new,courier">~ $ develsh outbound.sh<br>...</span><br /></p><p>On everything else it needs to be run as <span style="font-family: courier new,courier"><strong>root</strong></span>:<br /></p><p><span style="font-family: courier new,courier">Jaffas-iPad:~ mobile$ su -<br>Password:<br>Jaffas-Ipad:~ root# sh outbound.sh<br>...<br></span><br /></p><p>If run with <span style="font-family: courier new,courier">screen</span> or <span style="font-family: courier new,courier">nohup</span>, you shouldn't even need to keep the terminal open.<br /></p><p><span style="font-size: medium; color: #8a765d"><strong>NEXT STEPS </strong></span><br /></p><p>Obviously the next step is an app. Is it something you'd be interested in? Is there a nice Qt API for changing the time? Are there Qt APIs for looking up timezones, and setting the device's timezone?<br /></p><p><span style="font-size: xx-small"><em>Thanks to eipi for allowing me to use <a href="http://apps.formeego.org/staging/applications/n9/pr1.0/harmattan/Other/maeflight/">MaeFlight</a>'s icon in this post. Also published on <a href="http://www.developer.nokia.com/Community/Blogs/blog/andrew-fleggs-nokia-developer-blog/2012/02/26/avoiding-jet-lag-using-continuous-clock-change">Nokia Developer blogs</a></em></span><br /></p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com4tag:blogger.com,1999:blog-7336457610255402878.post-61606201106922683872011-11-02T09:02:00.002+00:002012-09-15T11:40:50.930+01:00Colour operator logos on N9 lock screen<p>Nick Larsson (aka <em>frals</em>) has posted an <a href="http://blogs.nokia.com/northblog/developer/guest-post-customize-your-nokia-n9/">article on adding a small (120x120px) logo to your N9 lock screen</a>.</p><p>The N9 has a PenTile AMOLED screen, but is configured to avoid the <a href="http://arstechnica.com/gadgets/news/2010/03/secrets-of-the-nexus-ones-screen-science-color-and-hacks.ars">colour fringing problems that affected the Android-based Nexus One</a>. However, <strong>when the lock screen is displayed, certain bit patterns produce colours</strong>:</p><div class="screenshot"><br /><a href="http://bleb.org/software/maemo/PentileHack/20111102_003.jpg"><img src="http://bleb.org/software/maemo/PentileHack/20111102_003-sm.jpg" width="192" height="212" alt="Photo of N9 lock screen with colour image" /></a><br /></div><p>John Hutchison's <a href="http://www.metalev.org/2010/03/generating-false-color-images-on-nexus.html">Generating false colour images on the Nexus One using only grayscale pixels</a> contains source code and examples.<p><p>The above photo was created by taking a 120x120px cut from the example rainbow image and setting it as the logo:<p><div class="screenshot"><br /><img src="http://bleb.org/software/maemo/PentileHack/out-rainbow-normal-bw.png" width="120" height="120" alt="Greyscale section of rainbow" /><br /></div><br /><p>The same section, viewed on a Nexus One looks like:</p><br /><div class="screenshot"><br /><img src="http://bleb.org/software/maemo/PentileHack/n1-rainbow-colour.png" width="120" height="120" alt="Greyscale section of rainbow" /><br /></div><br /><p>As you can see, the colour mapping isn't the same (meaning new reference images need to be generated). However, you'll see it <em>is possible to have colour logos on the lockscreen</em>. Hopefully someone will take it forward, perhaps Nick can update his tool to do colour mapping; or someone can post the reference images so that the Java source code from Luke Hutchison can work.</p></p></p></p></p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com2tag:blogger.com,1999:blog-7336457610255402878.post-41218124500988743812011-05-28T09:53:00.002+01:002012-09-15T11:40:50.912+01:00MeeGo Conference keynote: how it should've been done<p><img src="http://bleb.org/software/maemo/meegoconf-2011.png" alt="[MeeGo Conference logo]" style="border: 1px solid #aaa; float: right; -moz-box-shadow: 4px 4px 2px #999; -webkit-box-shadow: 4px 4px 2px #999; box-shadow: 4px 4px 2px #999; margin: 1em" />The first official day of the MeeGo Spring conference started with <a href="http://sf2011.meego.com/program/sessions/keynote-jim-zemlin-future-meego-starts-now">a two-hour keynote by Jim Zemlin</a>, Executive Director of the Linux Foundation. While MeeGo is a Linux Foundation project, nobody from the Linux Foundation is formally involved on a day-to-day basis in the management and leadership of the project, which is being left to Intel (and, previously, Nokia). Because of this, Mr. Zemlin stands in as the Linux Foundation's public face for MeeGo.</p><p>It did not bode well when the advertised title of the talk, <em>The Future of MeeGo Starts Now</em> was changed to <em>Monday Morning with MeeGo</em>. This event was the opportunity for the MeeGo Project to showcase, and celebrate, last week's 1.2 release (including the N900 Developer Edition). Instead, we got Jim Zemlin talking about the advantages of Linux and open source without connecting the concepts to the MeeGo project and how MeeGo adds value compared with other Linux-based, open source mobile OSes (e.g. Android).</p><p>A number of guests joined Zemlin on stage, with <a href="https://meego.com/community/blogs/imad/2011/update-intel">Imad Sousou</a> (MeeGo's Technical Steering Group's sole member) and long-time Maemo and MeeGo contributor <a href="http://blog.rburchell.com/">Robin Burchell</a> being the highlights. However, the main thrust of the speech was that mobile Linux, and open source, are here now - and will increase in future. The issue lies in that the supporting graphs and data that were shared during the keynote were all based on Android's adoption, with hardly a mention of MeeGo. Nokia's groundbreaking work with consumer mobile Linux devices, which led to the creation of MeeGo, was not mentioned at all.</p><p>Here lies the problem with MeeGo being a Linux Foundation project: they aren't interested, or invested, in the success of MeeGo - just Linux in general. Therefore, they'll support anything which furthers that goal, including webOS and Android in the mobile space. This was reflected in the keynote: since the Android is already so successful (and its market-share is growing) it's not in LF's interests to try and fragment the mobile Linux landscape.</p><p>Announcing new devices, or freebies for attendees, isn't necessary. However, I did expect the MeeGo Conference Keynote to address the challenges facing MeeGo now; particularly since February 11th there is not a mass-market consumer electronics vendor onboard as a strategic partner. Celebrating the work that has been done to date is necessary for the community psyche. Outlining the next steps, including a roadmap, is integral for the development ecosystem. None of these things were done, and it left a pall over the entire conference.</p><p>Personally, I attended the conference believing that Nokia's upcoming MeeGo-compatible Harmattan OS had to work to try and get itself integrated into the MeeGo ecosystem in order to benefit from the growth that MeeGo was going to enjoy. I came away from the conference believing that <strong>MeeGo needs Harmattan a lot more than Harmattan needs MeeGo</strong>.</p><p>MeeGo needs fresh blood; a sentiment shared by others. The "<code><a href="http://twitter.com/#!/Texrat/status/72738481331372032">#jaffa4tsg</a></code>" hashtag on Twitter started to be used after Imad responded to <a href="http://twitter.com/#!/jaffa2/status/72732033650130944">my question</a> about expanding the TSG (Technical Steering Group) beyond a single member by saying that anyone was welcome to put themselves forward. A surprising number of people I very much respect said that my flippant "<a href="http://twitter.com/#!/jaffa2/status/72734273349750784">I'll do it</a>" was an excellent idea, with me "<a href="http://twitter.com/#!/eipi2/status/72738253190594560">getting MeeGo</a>". My <a href="http://twitter.com/#!/maclaver/status/72900286431244288">professional</a> experience in the IT industry, as well as my wide experience and <a href="http://twitter.com/#!/qole/status/72741164171788288">standing in the community</a> are also strong reasons to be involved.</p><p>Assuming this isn't an entirely silly idea - although there is no documented process by which people can join the TSG - here's how I think we should have run the keynote (keeping the two hour running time, and abiding by the rumour that politics prevented Nokia talking about Harmattan & announcing the awaited developer programme):</p><ol><li><strong>Welcome</strong>, including rerun of the "MeeGo on all your screens" video from Dublin <em>(10 mins)</em></li><li><p><strong>What've we achieved in the last six months?</strong> <em>(30 mins)</em></p><ul><li>MeeGo 1.2 tablet demo</li><li>MeeGo 1.2 demo on N900 Developer Edition ("mass-market consumer hardware, capable of running MeeGo")</li><li>Overview of all the manufacturers who have released, or committed to releasing, MeeGo hardware (including Nokia)</li><li>Announcements about Linpus, Red Flag Software, 4tiitoo AG and China Standard Software Company (C2SC) updating to MeeGo 1.2 base</li></ul></li><li><p><strong>Why MeeGo can succeed in a crowded market</strong> <em>(35 mins)</em></p><ul><li>20 years of Linux video</li><li>Mobile OS ecosystem (<em>Danielle Levitis, IDC</em>)</li><li>Some numbers from Dawn's community metrics about growth and activity of community</li><li>The potential of IVI (<em>Tsuguo Nobe, Chief Service Architect, Nissan</em>)</li><li>Time to market (<em>4tiitoo</em> and <em>Amino</em>)</li></ul></li><li><strong>Organisational and governance changes</strong>, to ensure we do succeed in the next stage of growth <em>(10 mins)</em></li><li><p><strong>What next for MeeGo</strong> <em>(20 mins)</em></p><ul><li>Roadmap for MeeGo 1.3 and call to action for faster innovation (<em>Arjan van der Ven</em>)</li><li>MeeGo 1.4 and beyond</li></ul></li><li><strong>Soundbites video from day 0</strong> <em>(2 mins)</em></li><li><strong>Audience Q&A</strong> <em>(13 mins)</em></li></ol><p>Notice here that there's no wishful thinking, everything above (apart from governance changes) was either announced during the conference, put out in a press release or already known. But it <em>is</em> MeeGo-focused, which - in my humble opinion - the opening keynote of a <em>MeeGo</em> conference should be.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com7tag:blogger.com,1999:blog-7336457610255402878.post-45434528232248397212011-03-06T21:26:00.002+00:002012-09-15T11:40:50.918+01:00Cross-platform Qt dev: deploying to Symbian<p>I've gone beyond the playing with QML stage and now want to port my first Maemo 5 application, <a href="http://maemo.org/downloads/product/Maemo5/attitude/">Attitude</a>, to Qt Quick; with the aim of having it run on Maemo, Symbian, MeeGo and <a href="http://sourceforge.net/p/necessitas/home/">Android</a>.</p><br /><h3>Development environment</h3><p>I'm using the <a href="http://labs.qt.nokia.com/2011/03/01/qt-sdk-1-1-beta-released/">Qt SDK 1.1 beta</a> on Ubuntu 10.10. I'll deal with developing with this in another post (Eclipse keybindings, the combination of graphical and source editing (and the limitations therein), issues to bear in mind). Here I want to deal with deployment. Qt Creator offers a number of targets:</p><ul><li>Desktop (not relevant to this app)</li><li>Maemo</li><li>Simulator</li><li>Remote compiler</li></ul><p>I chose the last three. On Linux, there is no native support for deploying or compiling for Symbian. Compiling can be dealt with by the "remote compiler", but what about deploying?</p><p>I can, now, to the following; all from <em>within</em> Qt Creator:</p><ul><li>Compile Qt applications and get a signed SIS file for installation</li><li>Install the SIS file on to a USB-connected N8</li><li>Start the application and get its console output back in the IDE.</li></ul><br /><h3>Configuring the remote compiler</h3><ol><li>Get a <a href="https://www.forum.nokia.com/Profile/Join.xhtml">Forum Nokia account</a>, if you do not have one.</li><li>Install <a href="http://labs.qt.nokia.com/2010/12/17/experimental-packages-for-symbian-development-on-linux/">runonphone</a>.</li><li>Download this script: <a href="http://bleb.org/software/maemo/runonphone.wrap">runonphone.wrap</a>, and put it on your PATH (make sure it's executable).</li><li><p>In Qt Creator, select <em>Tools > Options... > Projects > Remote compiler</em> and authenticate with your Forum Nokia details:</p><div class="screenshot"><br /><a href="http://bleb.org/software/maemo/qtcreator-symbian-options.png"><img src="http://bleb.org/software/maemo/qtcreator-symbian-options-sm.png" alt="Screenshot of Qt Creator options" title="Tools > Options... > Projects > Remote compiler" /></a><br /></div></li><li><p>Open your project, and select <em>Projects > Remote Compiler > Build</em>. Ensure <em>Signed</em> is checked.</p><div class="screenshot"><br /><a href="http://bleb.org/software/maemo/qtcreator-symbian-rcbuild.png"><img src="http://bleb.org/software/maemo/qtcreator-symbian-rcbuild-sm.png" alt="Screenshot of Qt Creator options" title="Projects > Remote Compiler > Build" /></a><br /></div></li><li><p>Switch to the <em>Run</em> tab and create a new deployment and run configuration.</p><ul><li><em>Command:</em> <code>runonphone.wrap</code></li><li><em>Working directory:</em> <code>$BUILDDIR</code></li><li><em>Arguments:</em> either <code>install</code> (for deploy) or <code>run</code>.</li></ul><div class="screenshot"><br /><a href="http://bleb.org/software/maemo/qtcreator-symbian-rcrun.png"><img src="http://bleb.org/software/maemo/qtcreator-symbian-rcrun-sm.png" alt="Screenshot of Qt Creator options" title="Projects > Remote Compiler > Run" /></a><br /></div></li></ol><br /><h3>Configuring the device</h3><ol><li>Go to <code><QT_SDK>/Symbian/sis/Symbian^3</code>.</li><li>Send the SIS files under <code>Qt/4.7.2</code>, <code>QtMobility/1.1.0</code> and <code>TRK</code> to your phone (e.g. via Bluetooth) and install via launching them.</li><li>Go to the main launcher menu and launch <em>RnD Tools > TRK</em>.</li><li>Under <em>Options > Settings</em> ensure <em>USB</em> is set as the connection method.</li><li>Connect your Symbian phone via a USB cable.</li><li>Select <em>Options > Connect</em>.</li></ol><p>Then, when you deploy and run in Qt Creator the SIS file should be sent over the <code>usbserial</code> connection and launched on the device.</p><p>Unfortunately, if there's a problem you can sometimes end up in a state where you need to <code>kill -9</code> the processes blocking the port. It also doesn't seem to like working on <code>/dev/ttyUSB1</code>, only <code>/dev/ttyUSB0</code> - but these could all be interrelated problems. Improvements to the script <em>very</em> welcome!</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com2tag:blogger.com,1999:blog-7336457610255402878.post-59254808338407720032010-11-20T16:33:00.002+00:002012-09-15T11:40:50.927+01:00We go to MeeGo<p>Please forgive the cheesy title :-) As <a href="http://wiki.meego.com/MeeGo_Conference_2010#Blog_Posts">everyone wrapping up the conference</a> has said, it was a great place; well organised and a fantastic atmosphere. Here are some of my bullet point thoughts:</p><ul><li>Venue was good, although visibility in the keynotes was a little poor. Doug Fisher's reveal of "everyone" getting an IdeaPad was spoiled by it only showing on half the monitors (the other half showing slides).</li><li>Hotels were close to the venue, which was very handy. Unfortunately, a bit far out of the city centre, but cabs and buses to the touristy Temple Bar area were fine.</li><li>Nokia and Intel are both very committed.</li><li>People like Nomovok are doing interesting things behind the scenes.</li><li>The Hacker Lounges, with table tennis, DVD player, Wii, Xbox, free beer and snacks were <em>fantastic</em>.</li><li>IdeaPad is nice hardware. No-one's done a good netbook/tablet hybrid OS yet, AFAIK.</li><li>It was great to catch up with old friends (Ryan, Tim, Graham, Stephen, David, Carsten, Niels, Quim, Gary, Peter, Ronan, Randy, Dave, and so so many more)</li><li>It was great to people I've only spoken to online (Dawn and Kathy amongst others)</li><li>Lots of new folk met: Chani, Odin, Julien, Morten, ...</li><li>Amy Leeland, Dawn Foster, Quim Gil, Angela Brown and anyone else involved did a wonderful job. A definite successor to the Maemo Summits.</li></ul><p>One thing which struck me, which hasn't been dealt with elsewhere (AFAICT), is the obvious struggles MeeGo is having being an "open" project. For example, during the <a href="http://conference2010.meego.com/session/app-compatibility-and-meego-compliance-program">Compliance</a> talk, I asked Mark Skarpness where the discussions on the specification were happening; as we seemed to get new draft, with a request for comments on a regular basis; where are the discussions happening as to what goes in to those drafts? "<a href="http://lists.meego.com/listinfo/meego-dev">meego-dev</a>" was the answer, one I'm not quite sure I believe. On the plus side, my suggestion of an "Extras/Surrounds Profile" seemed like it might have some traction in solving the third-party-dependencies problem.</p><p>Similarly, in the past few weeks, the MeeGo <em>Summit</em> in Oulu, Finland - at the end of May - is being announced and planned in the open; and discussed on <a href="http://lists.meego.com/listinfo/meego-community">meego-community</a>. However, at the conference, the MeeGo Community Office announced that there would now be two MeeGo conferences a year, with the next being in San Francisco at the end of the May: the week before the Oulu summit. This is not something the Community Office has pulled out of thin air in the middle of the conference: but where was the discussion ahead of time? More back channel collaboration, no doubt. Would the Oulu folks have chosen the same dates if it was known that there was an official conference being discussed for the same timeframe?</p><p>As explained in the keynotes, MeeGo's openness to OEMs, carriers and application developers is one of the key differentiating factors which is <strong>necessary</strong> for MeeGo to succeed in a market where iOS and Android have all the momentum. However, if MeeGo is to have that same openness from a community point-of-view, these kind of things <em>have</em> to be addressed as well.</p><p>However, I've come away feeling even more positive about MeeGo than I did before. Chats with Ville, Attila, lbt, Ronan and Peter show that Nokia (at least) <em>gets</em> what the Harmattan device means and the developer story they have to tell. Qt Creator 2.1, with Qt Quick, looks like a really promising IDE for both developers and designers to collaborate.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com2tag:blogger.com,1999:blog-7336457610255402878.post-90889011738099161252010-11-14T22:10:00.002+00:002012-09-15T11:40:50.952+01:00Join MWKN hacking - right *now*<p>At the MeeGo Conference in Dublin? Want to come and see how <a href="http://www.mwkn.net/">MWKN</a> is put together every Sunday evening?</p><p>Come along to the D4 Ballsbridge, following signs for "MeeGo Conference 2010 Early Bird Event" and we're in the bar next to the ballroom.</p><p>You <em>might</em> want to bring a beer from the Dubliner, as the bar here's not (yet?) open.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-12189386543776118282010-11-12T10:38:00.002+00:002012-09-15T11:40:50.898+01:00MWKN issue creation @ MeeGo Conference, Sunday evening<p>As <a href="http://maemo.org/profile/view/GeneralAntilles/">Ryan</a> and I - editors of <a href="http://www.mwkn.net/">MWKN</a> - will be at the <a href="http://conference2010.meego.com/">MeeGo Conference</a> on Sunday evening, we'll try and find some space to get together to put together the issue. We'd love to have some help!</p><br /><h4>What's MWKN?</h4><p>M* Weekly News is a <a href="http://wiki.maemo.org/Maemo_Weekly_News">weekly news digest</a> from the MeeGo/Maemo worlds; inspired by LWN and Wine Weekly News.</p><p>Throughout the week, contributors ping over links and short titles to the <a href="http://twitter.com/mwkn">@mwkn</a> account on Twitter. These then get expanded with quotes, de-duplicated etc. on a Sunday evening for the issue to be published on Monday morning.</p><p>The idea is that the community is far too large for any one person to know everything going on, so we can crowdsource the interesting bits which are happening on IRC, the mailing lists, the fora, elsewhere on the Internet etc.</p><br /><h4>Want to get involved?</h4><p>Getting involved as a contributor, or an editor (to help with putting the issue together), couldn't be easier; and we'd love to have more people involved.</p><p>Please feel free to <a href="http://wiki.maemo.org/Maemo_Weekly_News#Implementation">get involved</a> ahead of time or - if you're going to be around in Dublin on Sunday evening - let me know, and you can either come along and help edit the issue; give us moral support or just get a flavour of what it is we do.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-64594560007335255152010-10-03T10:26:00.002+01:002012-09-15T11:40:50.933+01:00Here and Now: what's on near you now<p>Nokia's N8, a Symbian^3 device, comes with a service called <a href="http://europe.nokia.com/support/download-software/nokia-here-and-now">Here and Now</a>. This reads the cell tower information you're currently connected to and opens a web page detailing the current events (cinema listings and weather, for example) near you. I've done a <a href="http://maemo.org/packages/view/here-and-now/">quick port</a> to Maemo 5 and the N900.</p><p>Once installed, you can launch it like any other application:</p><p><a href="http://bleb.org/software/maemo/here-and-now_launch.png"><img src="http://bleb.org/software/maemo/here-and-now_launch.sm.png" width="400" height="240" alt="[Launching Here and Now]" /></a></p><p><em>Without</em> using a GPS, it sends your approximate position to Nokia's servers and shows you what's currently going on:</p><p><a href="http://bleb.org/software/maemo/here-and-now_rugby.png"><img src="http://bleb.org/software/maemo/here-and-now_rugby.sm.png" width="240" height="400" alt="[Here and Now screen]" /></a></p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com5tag:blogger.com,1999:blog-7336457610255402878.post-73690152771875554212010-09-16T12:19:00.002+01:002012-09-15T11:40:50.937+01:00Council election time again<p>Voting has now opened for the next <a href="http://wiki.maemo.org/Community_Council">Maemo Community Council</a> and, once again, I'm standing.</p><p>Last year I won, and the council chose me as their chair (hence the quietness of this blog compared with the <a href="http://maemo.org/community/council/">Council blog</a>, or even <a href="http://www.mwkn.net/">MWKN</a>).</p><p>Please vote, the Council this next term will be very important in setting the tone of maemo.org, and the way the Maemo community can work with (and, where desired, transition to) the MeeGo community.</p><p>You can read my <a href="http://lists.maemo.org/pipermail/maemo-community/2010-September/004446.html">declaration</a>, my <a href="http://mobiletablets.blogspot.com/2010/09/maemo-community-council-election-q3.html">response to EIPI's set of questions</a> covering numerous topics. Then, don't forget to <a href="http://maemo.org/vote/">vote</a>. Contact Dave Neary if you have not received your voting token.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-8669355223999619162010-03-17T13:44:00.002+00:002012-09-15T11:40:50.948+01:00Running for the Maemo Community Council... again<p>The election period has started for the next <a href="http://wiki.maemo.org/Community_Council/Council_election_Q1_2010">Maemo Community Council election</a> and we have a number of <a href="http://wiki.maemo.org/Community_Council/Candidate_declarations_for_March_2010">excellent candidates</a>, including - even if I do say so myself - me ;-)</p><p>Before I decided to run, I asked each candidate a series of questions - the answers we've given are linked to from the candidate summary page. I'd also encourage other community members to come up with questions for the candidates.</p><p>My <a href="http://lists.maemo.org/pipermail/maemo-community/2010-March/004118.html">full candidacy announcement</a> is in the thread. The main point is that the last six months, having stepped back from the council, have given me a new perspective. The biggest issue I've seen is one of communication and clear facilitation. We need to reduce the overhead and streamline community action. Therefore, if elected, I will push for:</p><ul><li>A clear cooperation with the growing MeeGo community through MeeGo's <a href="http://lists.meego.com/pipermail/meego-community/2010-March/000320.html">Community Working Group</a> and develop a transition plan to ensure the level of collaboration the council has with Nokia isn't lost in the new world.</li><li>A Moblin/Maemo/MeeGo summit which looks to the present as well as to the future.</li><li><p>Appropriate support and resources for existing device owners as Nokia transition to MeeGo. Exactly what form this will take will depend on whether running MeeGo is a day-to-day reality for N8x0 and N900 users:</p><ol><li><p>If MeeGo provides a comparable experience, without any loss of functionality, the resources around Maemo can be slowly redirected.</p><li>However, if MeeGo for existing devices is - at best - of developer interest only, the existing Maemo community <strong>must</strong> continue, and must continue to provide support, help and resources to Maemo users.<br /></li></li></ol><p>Mer^2 should help with the final point, and I'm proud to have been on the council which approached Nokia requesting a distmaster role; and suggesting that Carsten (Stskeeps) was the right man for the job.</p></li><li><p>Increasing the visibility of the maemo.org sprint process and reducing the burden on volunteers. Niels Breet (X-Fade) being made the <a href="http://maemoteam.wordpress.com/2010/01/06/a-role-change-for-niels-x-fade-in-the-maemo-org-team/">maemo.org team leader</a> will help here. Having been involved in the running of an agile project for over 2 years, I believe:</p><ul><li>Niels should chair the sprint meeting.</li><li>The meeting participants should be responsible for setting their priorities and what will be included.</li><li>Input should be provided by Nokia (Tero Kojo) and the community (the Council chair) on their issues and priorities before the meeting which should be taken into account within the prioritisation.</li></ul><p>This will reduce the workload for the volunteers on the council, increase the ownership of the tasks and provide greater accountability of the paid contributors.</p></li><li><p>A summary table listing the high-level issues facing the community and who on the council will act as a point of contact for them. An example for the current council could be:</p><pre>Extras QA process VDVsx<br />Optification gcobb<br />Community outreach Texrat<br /></pre></li><li>Support for Randall Arnold's community outreach programme, which is trying to grow the Maemo community rather than just the Maemo platform. With the launch of the Ovi store for Maemo, much focus is given to that rather than the community provisions such as Extras.</li><li>Empowering of community members to lead initiatives such as Google Summer of Code, conference attendance etc.</li><li>A <a href="http://lists.maemo.org/pipermail/maemo-developers/2010-January/023980.html">monetisation/donation framework</a> for community-provided downloads.</li></ul><p>Whether you vote for me, or someone else, I'd encourage you to vote! The transition from Maemo to MeeGo means the community's representatives to Nokia are more important than ever. Voting is open to anyone with a maemo.org account which is older than 3 months, and has accrued more than 10 <a href="http://wiki.maemo.org/Karma">karma</a> points.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-84384482676106213912010-01-12T22:52:00.002+00:002012-09-15T11:40:50.945+01:00Catorise: auto-organise N900 applications<p>In a brief break from <a href="http://hermes.garage.maemo.org/">Hermes</a>-related Maemo work, I was inspired by <a href="http://maemo.org/profile/view/manzn/">Manfred Weiss</a>' <a href="http://talk.maemo.org/showthread.php?t=39141">MyMenu</a> to create an <em>auto-</em>organising menu application for the N900:</p><div style="text-align:center; margin: 0.5em auto"><center><a href="http://www.flickr.com/photos/30863507@N02/4268177643/"><img src="http://farm3.static.flickr.com/2739/4268177643_45faf68bd8_m.jpg" alt="[New application menu: top-level]" /></a></center></div><p><em>Catorise</em> organises the application menu to have top-levels corresponding to the sections in Application Manager. Features:</p><ul><li>Uses the <a href="http://blogs.igalia.com/vjaquez/2009/12/14/shinning-new-ham/">section icons</a> from the current theme, falling back to the default theme if none available.</li><li>Determines an application's section from the same information the packager used when uploading it to Extras.</li><li>Keeps track of application installs/uninstalls.</li><li>Entirely non-destructive: remove the package and everything goes back to how it was before.</li><li>"All" and "Other" sections, just as in the App Manager, to provide additional access routes.</li></ul><p>So, with <em>Catorise</em> the section you find an application's icon is the same you used to install it!</p><p><strong>It is <a href="http://maemo.org/packages/view/catorise/">currently</a> in Extras-devel. This should, therefore, only be tested by people who are willing to suffer potential data loss, hair loss and the eating of babies.</strong></p><p>It's largely feature complete, however there are some known problems/future developments:</p><ul><li>Applications installed from Ovi will go into the "Other" section, due to the way Ovi on Maemo has been designed. I've some thoughts on how to work around this, though.</li><li>Changing the theme will only update the icons on the next application install/removal.</li><li>A quick GUI editor could be created to manipulate <code>/opt/catorise/menu</code> which is a simple text file cache to speed-up rebuilding. This would allow the user to shuffle the apps to best suit their use cases.</li></ul>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com28tag:blogger.com,1999:blog-7336457610255402878.post-58894647956378182872009-11-21T20:34:00.002+00:002012-09-15T11:40:50.925+01:00Maemo Weekly News: a proposal<p>I've been discussing this idea with a few key contributors over the past few days to make sure it's realistic and feasible. We've polished it and would like to ask for volunteers for a new Maemo Weekly News digest.</p><ul><em>Workload:</em> little to some.<br /><em>Benefits:</em> glory.<br /></ul><p>Read on for more info...</p><br /><h3>Background</h3><p>There are a lot of facets to the Maemo community, whether it's Bugzilla, maemo-developers, #maemo, Planet, Talk or Brainstorm. With the N900 and Maemo 5, there's been a noticeable increase in traffic in all these areas.</p><p>There have been suggestions of Maemo magazines before, but they've fallen over because:</p><ol><li>The people involved haven't been integrated into the community.</li><li>They've been a lot of work to create.</li><li>They tried to move away from <a href="http://maemo.org/news/">maemo.org/news/</a></li></ol><p>Similarly, there are blogs (like Reggie's Maemo Talk) which highlight key important things; but some of them also suffer from the same problems above and none yet go into the level of detail I'd like to see.</p><p>With the increase in volume, and limits on my own time, I'm finding it harder to be aware of all the things going on. In particular, little asides and so on on talk which are key to the community, but buried in a thread. The old complaint of "too much happening outside of talk.maemo.org" is now reversed, IMHO, but the SNR is too low to follow "New Posts" religiously <em>and</em> develop software at the same time.</p><br /><h3>Idea</h3><p>A weekly news digest of key useful/informative/interesting/insightful news from all Maemo news sources. Similar in style and approach to <a href="http://lwn.net/Articles/360596/">Linux Weekly News</a>.</p><p>This is, in many ways, a continuation of Ryan's "<a href="http://maemo.org/community/council/community_highlights_for_december_2008-part_i-january_2009-part_ii/">Community</a> <a href="http://maemo.org/community/council/635a8ae4fd0f11dd90b3938ce0b5aa01aa01/">Highlights</a>" but doing less work, being more encompassing and more repeatable.</p><p>This is NOT an attempt to aggregate ALL Maemo-related news, but provide a selection of highlights during the week; of interest to those who are involved in the platform and the community, but without the time to follow enough of the conversations in all the places to find the ones interesting to them. By acting as a filter, more people will be able to be involved in the things which interest them, resulting in an increase of higher quality submissions for members of the community who might not be heard from as much.</p><br /><h3>Implementation</h3><p>The key to its success is to produce something which is useful, integrated and deterministic; but without being a massive resource hog.</p><p>Produced weekly, every week, with a series of sections - probably similar to those on tmo. Something like:</p><ul><li>Front page</li><li>Applications</li><li>Development</li><li>Community</li><li>Devices</li><li>Maemo in the Wild</li><li>...</li></ul><p>To gather the news, a series of sub-editors/contributors would have access to a Twitter account (@maemoweeklynews, say). The posts to this feed would consist of the section, a few keywords and a link to the content (thread, post, email message, blog) which triggered it. For example, recently this may include:</p><ul><li><em>Applications</em> - wazd helping qwerty12 on Transmission: <a href="http://s56.radikal.ru/i152/0911/34/a388e13890a0.png">http://s56.radikal.ru/i152/0911/34/a388e13890a0.png</a></li><li><em>Devices</em> - Release firmware available to download: <a href="http://flors.wordpress.com/2009/11/16/maemo-5-final-release-updated-sdk-and-firmware/">http://flors.wordpress.com/2009/11/16/maemo-5-final-release-updated-sdk-and-firmware/</a></li></ul><p>Suggestions on content could be directed at it from people's own Twitter accounts. The sub-editors would then be able to pick and choose from these if it's something they'd missed.</p><p>As each issue is being pulled together, one or more sub-editors would then review the posts to that Twitter feed for their sections and flesh it out with a longer paragraph/quote. Full-blown stories would also be possible, but I imagine that being a rarity (if ever). There would then be an overall editor(s) making sure there's no duplication and also including things from maemo.org/downloads/ (top 10 apps, and new apps this week) and the bug jars (top 10 activity, probably).</p><p>The completed digest would then be posted to a site and syndicated to Planet.</p><p>Hopefully this shouldn't be too much work; and sub-editors/contributors would be able to post to the feed during their daily review of their slice of the community.</p><p>To collect the sub-editors, I'd suggest a recruitment & screening process of the form "what 3 would you have done for last week?" See more details below.</p><br /><h3>Getting Involved</h3><p>I'm now looking for:</p><ol><li><p><strong>CONTRIBUTORS:</strong> long-standing members of the community to volunteer to highlight content they see during their Maemo day. This could be whilst sat on IRC, reading the mailing lists, watching maemo.org/news/, contributing on Brainstorm or reading Talk. <em>The only extra work you'd have to do was use your favourite Twitter client to post links you thought should be in the digest.</em></p><p>Approx. number of positions: 20-30</p></li><li><p><strong>SUB-EDITORS:</strong> contributors who are also willing to flesh out the links each week by selecting a representative quote. I will be ensuring we have the tools in place to make this as easy as possible.</p><p>Approx. number of positions: 5-10</p></li><li><p><strong>EDITORS:</strong> the people with ultimately responsibility. The sub-editors who make sure the whole thing is consistent.</p><p>Approx. number of positions: 2-4</p></li></ol><p>As I want to start it small (it can always grow once we work out the details a bit better and see how it goes), anyone who'd like to be involved can reply to this (it'll be on maemo-community, my blog and talk.maemo.org) with:</p><ul><li>maemo.org username</li><li>Position wanted (contributor/sub-editor/editor)</li><li>Channels you follow</li><li>Preferred section(s) if sub-editor (feel free to make up a new one)</li><li>One/two sentence bio.</li><li>Two or three links you'd've posted in the last 2 weeks.</li></ul><p>This is an opportunity to help collaborate and facilitate spreading Maemo news; if you're a long-time contributor to the platform, your insights will be invaluable. If you're a relative newcomer, looking for a way to contribute, this is your chance!</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com1tag:blogger.com,1999:blog-7336457610255402878.post-39080092181881663142009-10-13T10:21:00.002+01:002013-01-06T13:26:17.434+00:00Downloading Ovi Maps without a network connection<p>Unlike Navicore/Wayfinder on previous Maemo devices, Ovi Maps on the N900 downloads maps on demand. This is obviously a problem if you're going somewhere abroad and don't want to pay extortionate data roaming charges.</p><p>Fortunately, S60 Ovi Maps users also have the same problem, and the solution is straightforward:</p><ol><li>Scroll down <a href="http://www.blog.d-11.de/2011/03/22/nokia-ovi-maps-3-0-0-1-25-114-direct-downloadlinks-und-downloadscript-for-maemo-n900-without-using-map-loader/">this post</a> to <em>Direct Links for Ovi Map Version 00.01.25.114</em> and download the maps for the countries you are interested in. (<em>EDIT:</em> updated to different blog post)</li><li>Unzip the maps into <code>cities/diskcache</code> on the big VFAT partition (mounted under <code>MyDocs</code>) on your N900.</li><li>That's it!</li></ol><p>Some of the files you may already have, I've chosen to <em>overwrite them; YMMV.</em></p><p>However, as far as I can tell, searching for locations still requires a network connection :-(</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com7tag:blogger.com,1999:blog-7336457610255402878.post-90344879810858192252009-09-21T10:43:00.002+01:002012-09-15T11:43:18.589+01:00Why I'm not standing for the council... but you should still vote!<p>As those of you who read <a href="http://lists.maemo.org/mailman/listinfo/maemo-community">maemo-community</a> might <a href="http://lists.maemo.org/pipermail/maemo-community/2009-September/002833.html">know</a>, I've decided <em>not</em> to run for the <a href="http://wiki.maemo.org/Community_Council">council</a> this time.</p><p>I'm really proud of being a part of the first two councils, and the level of trust Nokia placed in us with the recruitment of the <var>debmaster</var>; chairing the sprint meetings for the gang-of-four; the decisions over the summit and inviting us to the launch of the N900 at Nokia World.</p><p>My enthusiasm for Maemo is not diminished; indeed, with the launch of the N900, I'm as excited now as I was waiting for the launch of the 770 back in November 2005. However, after a year on the council, I'm now looking forward to six months as "just" a normal community member. I've not come to this decision easily, and I'm very happy to have had such warm words of encouragement. My reasons are two-fold:</p><ol><li>There are many other members of the community who should have a chance to represent us. In particular, I'm very happy that Stephen (<a href="http://maemo.org/profile/view/sjgadsby/">sjgadsby</a>), Valério (<a href="http://maemo.org/profile/view/vdvax/">VDVsx</a>) and Graham (<a href="http://maemo.org/profile/view/gcobb/">gcobb</a>) have chosen to accept my nomination of them. The fact they're joined by the likes of Alan Bruce (<a href="http://maemo.org/profile/view/qole/">qole</a>), Gary Birkett (<a href="http://maemo.org/profile/view/lcuk/">lcuk</a>) and Jay Carter (<a href="http://maemo.org/profile/view/zerojay/">zerojay</a>) - and <a href="http://wiki.maemo.org/Community_Council/Candidate_declarations_for_September_2009">others</a> - is even better.</li><li>The vitriol and nastiness spewed by a very vocal, but tiny, minority of people on <a href="http://talk.maemo.org/">talk.maemo.org</a> - especially regarding <a href="http://talk.maemo.org/showthread.php?t=28674">the transition of internettablettalk.com to talk.maemo.org</a> - took a lot of the fun away. Given the massive investment of time my role as chair required, taking the fun away removed one of the main motivations for me.</li></ol><p>I still plan on being an active (and vocal) community member both as a developer, a community evangelist and as a user. I hope that if you would have voted for me, you consider voting for one of the excellent candidates we have standing (and we have many). In particular, Stephen, Valério and Graham have all been long term contributors in many different ways and are tolerant, helpful people. I will struggle to cast my single transferable vote for them, Gary, Alan and Jay.</p><p>However whomever you vote for, please do <a href="http://maemo.org/vote/vote.php?election_id=7">vote</a> (once you receive your voting tokens)! I think that the Community Council has been far more effective than I ever imagined it could be when I suggested it back in 2008 and I look forward to seeing where this community will go in the next six months</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com1tag:blogger.com,1999:blog-7336457610255402878.post-86639500888161595092009-03-18T14:40:00.002+00:002012-09-15T11:40:50.947+01:00Vala 0.5.7 now in maemo.org Extras<p>After a bit of a prod; and a delay; <a href="http://mud-builder.garage.maemo.org/">mud-builder</a>'s <a href="https://garage.maemo.org/plugins/scmsvn/viewcvs.php/trunk/packages/vala.pkg/mud.xml?root=mud-builder&view=markup">vala recipe</a> has been updated to the latest release 0.5.7 and uploaded to Extras-Devel as "vala" - this can now be used in <code>Build-Depends</code> lines in auto-builder packages.</p><br /><h4>What is Vala?</h4><p><a href="http://live.gnome.org/Vala">Vala</a> is a modern, object-oriented programming language with a syntax inspired by C# and Java. However, it compiles to native code (via C), giving the benefits of modern programming languages and the speed of native development.</p><p>From its website:</p><blockquote><p style="color: #bbb">Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C.</p></blockquote><br /><h4>Example</h4><p>I've also uploaded another little package - <em><a href="https://garage.maemo.org/plugins/scmsvn/viewcvs.php/trunk/packages/vala-sample.pkg/?root=mud-builder">vala-sample</a></em> (basically, <a href="http://live.gnome.org/Vala/HildonSample">HildonSample</a>) - which demonstrates that a <code>Build-Depends: vala</code> line in a package's <code>debian/control</code> can be built using the auto-builder:</p><p>This is only in Extras-devel as it's use to end-users is pretty small, however it demonstrates three things:</p><ul><li>How easy it is to package stuff with mud-builder.</li><li>That the auto-builder can build Vala apps.</li><li>That unlike other modern programming languages on Maemo (such as Python, Ruby, Java or C#) there is <strong>no additional start-up lag in a Vala application</strong>.</li></ul><p>A screenshot all the same:</p><div class="image_block"><img src="http://farm4.static.flickr.com/3659/3361428158_34618ccdc7.jpg" alt="Vala Sample application" title="Vala's "Hello World"" /></div>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com1tag:blogger.com,1999:blog-7336457610255402878.post-30692298010397056312009-02-27T23:25:00.002+00:002012-09-15T11:40:50.909+01:00Announcing my standing for council membership<p>I've set the ball rolling, and <a href="http://lists.maemo.org/pipermail/maemo-community/2009-February/003412.html">put myself forward</a> as a candidate (the first) in the second Maemo Community Council election.</p><p>I'm proud to have been a member of the inaugural Community Council. In the last six months, we've seen a sea-change in the way Maemo is progressing:</p><ul><li>the first Maemo Summit, paid for by Nokia;</li><li>community ownership of maemo.org;</li><li>better use of Bugzilla by both Nokia <em>and</em> the community;</li><li>the realistic vision of a community-led "hacker edition" in <a href="http://wiki.maemo.org/Mer">Mer</a>;</li><li>a webmaster, docmaster, bugmaster and now debmaster all being paid for for us;</li><li>open communication and - importantly - progress indicators like the Maemo 5/Fremantle pre-release SDKs, which would've been unheard of back in 2006/2007.</li></ul><p>The Council has been involved in many of these, but would claim credit for few. I believe we've truly fulfilled our role as facilitators and would like to continue my role there. We've not got everything right, but I think we've proved the idea; and that it can be a cohesive force within the community.</p><p>I think there's still work to be done, though. Nokia are being more open, and projects like <a href="http://blog.ifrade.es/2009/02/25/release-release-tracker-0690/">Tracker</a> and <a href="http://zee-nix.blogspot.com/2009/02/rygel-022-is-out.html">Rygel</a> are being developed openly. Yet, Modest has slipped back into internal development; some patches to Application Manager have been merged, but the community's vision for application management in Diablo - and Fremantle - looks unlikely to have been realised. The system as a whole, and the application environment which so clearly defines the Maemo brand, are architected internally. Design decisions are taken internally.</p><p>Slowly, hopefully, we can change Nokia management into utilising the enthusiastic talent at their disposal in a way which is truly ground-breaking in the industry; with a root-to-tip collaboration between us all.</p><p>Thanks for reading this, and I'll happily answer any questions anyone has.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com11tag:blogger.com,1999:blog-7336457610255402878.post-43206595373141942092008-10-25T09:49:00.002+01:002012-09-15T11:40:50.916+01:00Maemo-based netbooks?<p>In the latest Internet Tablet School editorial, <a href="http://tabletschool.blogspot.com/2008/10/future-of-nokia-maemo-and-internet.html">The future of Nokia, Maemo and the Internet Tablets</a>, krisse explains why a Maemo-based netbook makes the most sense for Nokia now.</p><p>Respectfully, I've never heard a more crazy idea:</p><ul><li>Maemo is a touch-based OS, which doesn't work well with a larger style keyboard.</li><li>People who don't want Windows would find Mac OS X or Ubuntu Netbook Remix a much more compelling user experience on such a device.</li><li>What on earth is the benefit of Maemo here, vs. an alternative OS?!</li><li>The comments when the 770 was released were "where's the phone?", and although Nokia make lots and lots of non-phone devices (such as one of our DVB-T receivers), the comments about Nokia trying to break in to a crowded market (of laptop makers) would be easily compiled into an hilarious book.</li></ul><p>IMNSHO, it's just plain bonkers to go down that line instead of a small, tablet form factor - however unproven that may in the end-consumer mainstream.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com14tag:blogger.com,1999:blog-7336457610255402878.post-9248548070198664502008-08-26T10:05:00.002+01:002012-09-15T11:40:50.953+01:00maemo.org Community Council elections<p>The call for nominations for the first <a href="http://maemo.org/news/announcements/view/community_council_election.html">maemo.org Community Council elections</a> has been open for a couple of weeks now. But I wonder if the wider maemo.org is aware of just how important this <em>could</em> be for the future of the platform.</p><p>So, this post'll be syndicated on planet.maemo.org in the hope that we get more candidates putting themselves forward, and interest drummed up in the wider community in terms of asking the candidates more probing questions. Hopefully we can avoid the nastiness associated with the US presidential election :-)</p><p><i>Of course, I'm biased. I've thrown my hat into the ring: <a href="http://lists.maemo.org/pipermail/maemo-community/2008-August/000702.html">my candidature announcement</a> has been sent to <a href="https://lists.maemo.org/mailman/listinfo/maemo-community">maemo-community</a>. I recommend you subscribe if you're interested in shaping the future of Maemo, rather than "just" developing with it.</i></p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-23720555578859675832008-07-23T11:39:00.002+01:002012-09-15T11:40:50.903+01:00OpenMoko UI "train wreck"<p>Picked up from <a href="http://www.internettablettalk.com/forums/showthread.php?p=206083#post206083">Internet Tablet Talk</a>, there're a <a href="http://www.vimeo.com/1366042">couple</a> of <a href="http://www.vimeo.com/1366923">videos</a> showing how bad the OpenMoko UI is on basic usability challenges.</p><p>What's interesting is that the small comparison with the iPhone shows how poor hardware (pressure-based touchscreen, bezel around the screen) combines with poor software implementation (separate apps => slow start-up times, little thought to the size of a usable target area) to <em>emphasise</em> the poor user experience. And, frustratingly, how many of the issues raised cut quite close to the bone for Maemo devices too :-(</p><p>Hopefully the UI changes in Fremantle (for example, <a href="https://bugs.maemo.org/show_bug.cgi?id=2564">#2564</a>) will be a big help; and a concentration on finger usage <em>may</em> allow a more sensitive, different, touchscreen technology to be used in the N900. Will be very interesting to see the UI talks at the <a href="http://wiki.maemo.org/Maemo_Summit_2008">summit</a> - see you there!</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com8tag:blogger.com,1999:blog-7336457610255402878.post-6150966530266433062008-06-04T09:44:00.002+01:002012-09-15T11:40:50.929+01:00maemo.org: what next? (part 2)<div class="image_block" style="float: right"><img src="http://www.bleb.org/writings/pics/corporate-open-source-triangle-small.png" alt="" title="" width="200" height="176" /></div><p> </p><p>Following on from my earlier post, <a href="http://blog.jaffasoft.co.uk/2008/04/maemoorg-what-next.html">maemo.org: what next?</a>, LinuxTag has now happened (and Quim very kindly <a href="http://www.slideshare.net/qgil/maemo-linuxtag-update">used</a> my <a href="http://www.bleb.org/writings/pics/corporate-open-source-triangle.png">open source triangle</a>), and the <a href="http://maemo.org/news/announcements/view/maemo-brainstorm.html">10 days brainstorm</a> for the <a href="https://wiki.maemo.org/index.php/100Days">100 Days</a> community action plan, and <a href="https://wiki.maemo.org/2010_Agenda">2010 Agenda</a> have been launched.</p><p>My main focus in the earlier post was more related to the 2010 vision: what should Nokia do as soon as possible to really fully utilise an untapped area of the community.</p><p>However, <strong style="color: #900">what can the community do to organise itself and present more of a consensus view?</strong> Consensus by mailing list posts and wiki-edits just means the loudest - or most pushy - individual voices get heard. So, I suggest a <a href="https://wiki.maemo.org/index.php/100Days#Community_Council">Community Council</a>, elected by the maemo community, to act as a filter/co-ordinating body to present a more unified view to Nokia - and therefore help them to help us.</p><p>Comments welcome below, or just make changes in the wiki!</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com7tag:blogger.com,1999:blog-7336457610255402878.post-37855978399387030382008-04-20T20:18:00.002+01:002012-09-15T11:40:50.910+01:00maemo.org: what next?I was invited, but unfortunately had to decline, to speak at the <a href="http://maemo.org/community/wiki/linuxtag2008/">maemo track</a> of LinuxTag 2008. The final topic, <i>maemo.org: what next?</i> is subtitled "mid-term: what Nokia should do + what the community could do". Whilst looking at whether I could attend, I started thinking about this topic. Below is the crystallisation of some of those thoughts which probably would've formed the basis of a few slides to kickstart discussion.<br />
<br />
<h4>
Where are we?</h4>
Since November 2005, we've had the N800 and N810; both spaced about a year apart. But whilst the release of the N810 saw its OS backported and released for free for the N800; the release of the N800 saw the 770 dropped in terms of official support.<br />
<br />
All three releases had "device programmes" whereby key members of the community could get the devices at severe discounts. This had the advantage of ensuring key software and power-users could deal with the new devices; but meant that hackers who may have maintained support for the earlier devices didn't have to <a href="http://catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s02.html">scratch that itch</a>.<br />
<br />
Nokia were criticised very heavily for their decision to drop 770 support. However, in their defense they've generally had a fairly open, but unguided approach, to community involvement. It seemed such a large company was having difficulty defining - let alone adjusting to - truly open, community-involved processes.<br />
<br />
Recent developments such as the involvement of Niels Breet and Quim Gil have certainly helped here. There've been improvements to the maemo.org website such as karma and rating downloads & news articles which have definitely increased interaction. Quim's contact with the community both through official channels and the Internet Tablet Talk forums has been very well received. These are steps in the right direction, but more needs to be done.<br />
<br />
<h4>
Corporate interests in open source projects</h4>
There are three aspects to an open source project, especially when there's corporate sponsorship:<br />
<div class="image_block">
<img alt="Triangle representing the interests of corporations vs. open source involvement" height="347" src="http://www.bleb.org/writings/pics/corporate-open-source-triangle.png" title="Corporate open source triangle" width="395" /><br />
<div class="image_legend">
Open source triangle</div>
</div>
<dl>
<dt style="color: #990000; font-weight: bold;">Community involvement</dt>
<dd>Pushes sales and reduces costs: more software developed for a device; more community support for users; some aspects of software development being done by the community which can become headline items in sales packages.</dd><br />
<dt style="color: #990000; font-weight: bold;">Openness</dt>
<dd>Allows experimentation with a device: new operating systems; backported OSes etc. However may be viewed by suspicion by marketing teams wanting to make a large fanfare for an upcoming release.</dd><br />
<dt style="color: #990000; font-weight: bold;">Control</dt>
<dd>Essential for a company: what's going to be in a release, how it's going to be supported; ensuring the package as a whole has a consistent marketing message.</dd></dl>
None of these are "better" than the others, and a true open source project - without any control at all - either splinters into a series of forks, or never gets enough traction or user-base to get that far. However, I'd suggest the best corporate-sponsored open source projects sit closer to the middle of the triangle than anywhere else. For example, if the 770 ecosystem was closer to the centre, the "hacker editions" may not have been a cost Nokia needed to swallow.<br />
<br />
Are there "good" open source projects with corporate sponsorship? Sure! Amongst many others there are:<br />
<ul>
<li>Eclipse (IBM)</li>
<li>Firefox (Mozilla Corporation)</li>
<li>OpenOffice.org (Sun)</li>
</ul>
<br />
<h4>
What Nokia should do</h4>
Nokia need to take action to really push community involvement. Nothing's got for free: if Nokia aren't seen to be committed to the community, why should the community be committed to Nokia? I'm sure we can have a discussion about where we are on the triangle, although I suspect there won't be much argument that we're closer to the bottom left than anywhere else.<br />
<br />
Is this a bad thing? It depends. Certainly, being further towards the centre would mean - at least - the Hacker Editions could be maintained outside of the maemo.org team; other OSes such as <a href="http://www.pokylinux.org/">Poky</a>, <a href="http://dev.openbossa.org/trac/mamona/">Mamona</a> and even <a href="http://www.ubuntu.com/products/mobile">Ubuntu Mobile</a> could be got running on the device; the experts in the community could provide input into specifications, designs and even provide implementations. This'd mean:<br />
<br />
<ul>
<li>Somewhat reduced costs on behalf of Nokia;</li>
<li>More devices being sold. Some people are looking for an entirely open device (see the interest in OpenMoko or Pandora). Others are looking for an open device on which they can run a software stack of their own choosing, such as Poky.</li>
<li>Contributions from people who are personally devoted to the device, rather than being paid to work on it by their employer. That's not to say that the employees aren't doing a good job, or that they're not devoted to the device; but if someone's willing to do even <i>some</i> work for free, why look that gift horse in the mouth?</li>
</ul>
These are all good things, both to the end-users, the community <i>and</i> Nokia's bottom-line.<br />
<br />
So, to increase openness and community involvement in maemo.org, I suggest the following to Nokia:<br />
<dl>
<dt style="color: #990000; font-weight: bold;">Default code position: open</dt>
<dd>The default position for all ITOS and Maemo code should be open source, unless there are legal and contractual reasons it shouldn't be the case. It should be possible for an external developer to tweak - say - the look and feel of the Media Player (perhaps cover.jpg album art support), rebuild it and share it in the community. Any component which is closed should have a page in the wiki or somewhere else explaining <i>why</i> that is closed source, and details of the API that component is supposed to provide to the system.</dd><br />
<dt style="color: #990000; font-weight: bold;">Work <i>in</i> the community, not <i>with</i> the community</dt>
<dd><ul>
<li>Nokia's internal bug tracker should be closed to anything but issues with upcoming, unannounced hardware: all software bugs and development features should be in the maemo.org Bugzilla or component-specific open bug trackers.</li>
<li>All components should have discussion - even between Nokia staff - on open mailing lists and IRC. All high-level designs should be discussed on maemo-developers to get most involvement and input. Low-level implementation details should be discussed on component-specific mailing lists.</li>
<li>Discuss software roadmaps on maemo-developers, engage the non-Nokia community to feel like they're not just contributing into a black hole; but are involved in the decision-making, policy-making and strategic direction of the platform on all levels.</li>
<li>Improve the tooling for people wanting to rebuild an ITOS component, possibly even including the ability for third parties to produce their own FIASCO images. Indeed, for the community to help with the Hacker Editions, this ability is essential.</li>
</ul>
</dd><br />
<dt style="color: #990000; font-weight: bold;">Raise the bar for third-party developers</dt>
<dd>Put considerable effort into integrating, homogenising and ensuring consistency between all of the built-in applications. Polish here will encourage application developers to raise their game. I've tried to avoid an iPhone comparison, but look at the quality of third-party iPhone apps, even before the official SDK was launched.</dd><br />
<dt style="color: #990000; font-weight: bold;">Increase the ease with which applications can be fully Hildonised and integrated into maemo</dt>
<dd><ul>
<li>It's currently too easy to half complete a port, without any addition of battery-management functionality; proper load notification; proper backgrounding etc.</li>
<li>Effort could be made, for example, to make GtkMenuBars a more pluggable interface: Hildon would use a plugin which rendered it as a fixed point pop-up, the Mac OS-inspired desktops would use a plugin which rendered it at the top of the screen, the ROX-based distributions could have a fully popped up menu. This should also decrease the effort to port applications.</li>
<li>Similarly, HildonWindow is a hack to get default themes working. This hack would be better put in the window manager, rather than requiring changes to every application.</li>
<li>Work closely, and openly, with other companies using Hildon as an interface to effect these changes; such as Intel and Ubuntu; to ensure that Moblin, UME and maemo don't splinter and that porting applications between them, and innovations made by one company can be reused without being dismissed because of "Not Invented Here" syndrome.</li>
</ul>
</dd></dl>
Some of these may be too much for Nokia to swallow as a company not used to openness. There will be comments within Nokia that this will open themselves up to too much competition; that if their entire software stack is open someone else will be able to clone it. So what, though? Be a hardware company; be a focal point; sell services to your competitors building similar hardware; sell to consumers a polished device with an active community.<br />
<br />
I strongly believe taking these actions will increase the openness of ITOS (and hence maemo) development and massively increase the participation of the non-Nokia community. For example, I and at least a handful of others, would commit to regularly commenting, reviewing and participating in design reviews of high-level (and perhaps even low-level) specifications; if only we were asked.<br />
<br />
Nokia have a large, untapped resource of professional, enthusiastic programmers; artists and users, who would be willing to effectively work for Nokia for almost nothing: just an acknowledgement that their input is being listened to, visible changes resulting from their work and - perhaps, just maybe - inclusion in the next device programme ;-)Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com8tag:blogger.com,1999:blog-7336457610255402878.post-16633009317390648382008-03-31T22:06:00.002+01:002012-09-15T11:40:50.899+01:00Non-tablet software in maemo.org downloads<p>X-Fade's been working hard and <a href="https://bugs.maemo.org/show_bug.cgi?id=2347">bug #2347</a> has been fixed. This now means that the official <a href="http://maemo.org/downloads/PC/">maemo.org downloads</a> catalogue can now contain non-tablet software such as <a href="http://maemo.org/downloads/product/PC/tablet-encode/">tablet-encode</a>.</p><p>Hopefully this'll boost the profile of things like <a href="http://mediautils.garage.maemo.org/">mediautils</a> to a wider audience.</p><p>Steps are simple:</p><ol><li>Go to <a href="https://maemo.org/downloads/product/create/PC/application.html">add new application</a> (logging in if necessary) and fill out the fields as detailed.</li><li>One particularly cool feature is the ability to put in a direct download URL for the "click to install" arrow.</li><li><em>Don't</em> try and attach any screenshots until you've first saved the details; there's an issue with that and it's best done when editing the page after the first save.</li></ol><p>I've raised a <a href="https://bugs.maemo.org/show_bug.cgi?id=3060">feature request</a> that the download statistics available to extras(-devel) users are picked up from <a href="http://garage.maemo.org/">garage.maemo.org</a> for a more integrated system.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com0tag:blogger.com,1999:blog-7336457610255402878.post-5294077635253555622008-03-29T11:16:00.002+00:002012-09-15T11:40:50.919+01:00tablet-encode v2.18 - with much improved DVD ripping<p><a href="http://mediautils.garage.maemo.org/tablet-encode.html">tablet-encode</a> has had <a href="https://garage.maemo.org/frs/?group_id=455&release_id=1641">v2.18 released</a>. Notable new features in this release include:</p><ul><li>A new "mplayer" preset with a very high bitrate.</li><li>Ability to define your own presets and options in <code>~/.tablet-encode.conf</code>.</li><li>Ability to rip all the episodes off a DVD with a single option.</li><li>Add support for Freevo FXD files as pointers to the actual video.</li></ul><p>The <code>--episodes</code> option is particularly cool; ripping a TV series' DVD (for, say, a long flight) is now a 3-step process:</p><ol><li>Attach N810 via USB.</li><li>Insert DVD to computer.</li><li>Run:<blockquote style="background: #bbb"><pre>tablet-encode --episodes dvd: /media/nokia-sd/Video/<br /></pre></blockquote></li></ol><p>It's hard to imagine it being any easier! Of course, at some point the GUI should support showing you thumbnails of each of the titles so you can select the ones you want to rip. If anyone's got any time, and experience with Perl Gtk+, I'd be happy to accept some help in improving the GUI version.</p><p>I'd also like to thank GeneralAntilles, rm_you, Marius Gedminas, Mike Lococo and divinerites for all <a href="https://garage.maemo.org/frs/shownotes.php?group_id=455&release_id=1641">their help</a> with this release.</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com4tag:blogger.com,1999:blog-7336457610255402878.post-77120914583028116832008-03-09T15:10:00.002+00:002018-12-05T21:18:50.746+00:00Improving application start-up: mockup<p>A quick follow-up to my post on <a href="http://blog.jaffasoft.co.uk/2008/03/mproving-application-start-up-usability.html.html">improving application start-up usability</a>. I've done a very rough & ready mockup:</p><object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/_BqbsxUTzcs"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/_BqbsxUTzcs" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object><p>A higher-quality (but not any better put together) AVI can be <a href="http://www.bleb.org/software/maemo/file-manager-launch.avi">downloaded</a> (333KB).</p>Andrew Flegghttp://www.blogger.com/profile/02721892735482100544noreply@blogger.com5