Once you get a new device, the first thing to do is to put it into a usable state by transferring the addressbook and calendar. This is the bare minimum, followed by bookmarks and passwords (Meego people: please, put Firefox on Meego, instead of Chromium).
While there is a Sync application in Meego, powered by syncevolution, the user interface doesn’t allow to configure Funambol or a custom server. You can still do it from command line though. Here is how:
start the terminal application and enter the following (as user!):
My adventure with Funambol ended. Since January 2008 I’ve been working with an amazing company managing an amazing community. I’m proud to have helped the company increase its download number about 30% every quarter and also am glad to have seen the number of active servers skyrocket. I’m glad to have contributed back to the community with some money with the Funambol sniper programs. I’ve immersed and learned a lot about the mobile world, understanding the challenges that the free software community faces in this environment. I made new friends and I’ve enjoyed every day here.
There are things that I wish I’ve done differently or pushed more aggressively to be done, but so is life: I learned from the mistakes and I definitely feel good about all I did. Now it’s time to change. So long, Funambol and good luck to all.
Joining a community not only makes you feel better but can land you a great job. Janet Swisher has been contributing to the online community FLOSS Manuals writing documentation for free/libre software. In a message to the community she wrote:
I hadn’t been looking for a new job, but I was contacted by someone at Mozilla about a position they had open. […]
I think it’s fair to say that being involved in FLOSS Manuals helped me get a job at Mozilla.
I’ve seen this happening often at Funambol where many of the people active in the community have been hired. Whether you’re actively looking for a job or not, its a good investment for your future to make your passion visible.
I wanted to make sure that newest Ubuntu 10.04 being a Long Time Support one would be capable of running the newest Funambol DS Server version 8.5. I can confirm: not a problem there. I downloaded the 32bit .bin package from Funambol Forge, issued the install command with sudo sh funambol-8.5.0.bin and I was ready to sync with Gnome Evolution and my Nokia E71 in a breeze. While I was at it, I have created a VirtualBox appliance that you can download and use for an even faster test drive (username: funambol, password: fun2test). It’s a massive 1.3gb download: if you find it useful, I may use some help to make a torrent file. Since this virtual appliance doesn’t have an X server, you need to run the Funambol Admin Tool (for Windows or GNU/Linux) from your desktop machine. Have fun.
My previous post on the topic generated quite a discussion about Open Document Format (aka ISO 26300) documents on mobile platforms. My argument was that ODF support on most mobile platforms is still poor compared to the proprietary counterparts. From the discussion that happened on identi.ca I learned about a quite decent Symbian reader for ODF files, called Office Reader. I tested it using Funambol email push and sync client on my Nokia E71 and the results are quite good. You can see from the screenshots below (taken from a pretty complex ODT test file) that the text rendered correctly. I’m confident that I would be able to get an idea of the attached document and, if it was a press release, for example, I think I would OfficeReader would present enough information to approve it or not. This is the if you want to compare to the mobile version. I’ve tested also a couple of ODP presentations and spreadsheets: they are rendered good enough to get an idea of what kind of document it is, but not as well as the text file.
I downloaded and installed OfficeReader directly from the phone’s browser, but of course all other options are valid. Check the FAQ if you can’t install or run it (I had to allow your phone’s operating system to run unsigned apps).
PS I took the screenshots with the free software Screenshot application (GPL license but the install screen says ‘freeware -not to be sold’ ?!?).
When it comes to doing anything, finding a job, an apartment or a used car, what counts most is who you know. In the old times it was the size of your rolodex, now it’s the size of you digital addressbook. Being so powerful, it’s no wonder that everybody out there wants it: Facebook, Plaxo, Vodafone, AT&T … all want YOUR addressbook because who you know says a lot about who you are, what you like. Also the FBI likes to know that
It’s good to notice the quantity of efforts from the free software community revolving around your social capital. After my disappointment with the pretty lame addressbook in Thunderbird 3, I was amazed to learn about MozillaLabs Contacts. It’s a Firefox extension that makes the browser aware of your online contacts and friend lists. Why should you care? Because your addressbook is yours and you shouldn’t be sharing it with everybody only to invite them to join yet-another-social-networking-site. As Michael Hanson puts it in his blog post
This information is also special, because it represents the boundary between “my data” and “your privacy”. When you disclose your friends’ email addresses on a website (maybe you want to invite them to a cool new site you just joined), you are trusting the website to keep that address private. […] The disclosure of your friends’ contact information is an important step: we think you should be in control of it.
Contacts also uses the Portable Contacts definition internally. I aggregate and keep all my contacts in sync with Funambol, so I’m thinking that the best way for me to use Contacts would be if I could have it grab the addressbook from Funambol server. How hard would it be to add a Portable Contacts representation of the contacts stored in Funambol? If anybody is interested, I can sponsor the investigation of the issue and the development with Code Sniper grants.
Bradley wrote about mobile software freedom, a field that I’m obviously deep into because of my work at Funambol. His quite long article Musings on Software Freedom for Mobile Devices contains an analysis of the situation, which mobile platforms are more freedom-promising and why (in short: Maemo/Moblin merged as Meego and Android/Linux). I only disagree with Bradley on the priorities he sets. He says:
The challenging and more urgent work is to replace lower-level proprietary components on these systems with FLOSS alternatives,
I don’t think that device drivers are really the first problem the free software movement needs to tackle. I believe that the most important issue is to have good applications, with superb usability and that are innovative in order to attract users, fast. Some of the tactics used in the GNU project will need to be adapted to the speed of mobile, while others are not applicable.
Stallman’s project started in a time when PCs were slowly becoming relevant in society. It took almost 10 years before they were cheap enough to be in the bedrooms of young, smart programmers for them to easily contribute to the project. GNU also started developing applications first, and it took almost 10 years to start working on kernel and device drivers. The early adopters of GNU were highly skilled users, in a world with few computers with a clearly winning platform (the standard/commoditized platform IBM/Intel x86). Stallman and the whole free software movement had a lot of time to develop a nice free-as-in-freedom operating system and applications on standardized hardware. They also had the Unix design to follow: how the system had to look was pretty clear, it only had to be ‘better’.
Compare those first ten years and the quantity of computers in the ’80s/’90s to today’s speed and the quantity of mobile devices in everybody’s pocket (not just in developed countries), without a clear plan to follow(like Unix was for GNU): the game is radically more challenging. Take Google’s G1 as an example: it’s only one year old but its operating system version is obsolete (and customers are complaining). With users changing phone every 18 months in the US, the lifecycle of a free driver is too short to justify the effort.
On the other hand there are many applications that need to be liberated, like social applications that respect freedom in the cloud, mobile email client that don’t suck, mobile music players with stores that are not defective-by-design. And many more need still need to be imagined. Developer’s focus should be on what appears in freedom-giving mobile applications markets: we made the application market concept popular (apt-get repository anyone?), now we need to move to mobile and to fill them with good and free applications first. Device drivers can come at later stage, eventually after hardware manufacturers will have battled each other to the death and one winner will emerge (like it happened with x86).
I noticed that my posts about using Funambol on Mac part I and part II are two of the most viewed posts on my blog, so I decided to update them with a new tutorial using the official Funambol Mac OS Sync app. Since I was at it I decided to test also Prezi, a pretty good software for presentations. Although not free-as-in-freedom software, I hope it inspires other developers to write better tools for presentations.
The winter holidays are a provide a good opportunity to do something useful in that downtime between celebrations. Funambol’s community programs provide three ways to have fun and earn some cash, too.
1. Participate in the Code Sniper program: it rewards the efforts of the open source community to help build the open source mobile cloud. The Funambol project provides the basic framework, including server and clients, that implements an open standard (SyncML, also know as OMA DS and OMA DM). You can propose to develop new clients and connectors or to help improving an existing project. Each contribution counts, although developing code counts more: writing work items, writing full bug reports and testing them is worth $10; fixing issues and developing new features is decided by the community and it can reach $500. If you want to start a new project you may want to read How to develop a SyncML client the Agile way. Or you can help an existing project, like Thunderbird: check the list of active requirements. Bounties go up to $500. Find details about Funambol Code Sniper and also on Galoppini’s blog.
2. Test your new phone with Phone Sniper program: if you get a new mobile phone as a present, make the most out of it and rush to myFUNAMBOL, sign up for an account (if you don’t already have one) and test its sync and push capabilities. Send a report back to Funambol and earn $25. Check the list of phones that need testing on Phone Sniper program pages.
3. Translate a Funambol client with L1on sniper program: one simple way to get started with Funambol is to download the code and compile it yourself. Once you’ve done that, you’re ready to translate the client into your local language and earn $250. Once you’re done, send the patch with the translated files and some screenshots of the application. Detailed instructions are on L10n Sniper program pages.
Back from Italian Agile Day where Stefano Fornari of Funambol with Marco Abis of Sourcesense animated a debate about mixing Free/Libre Open Source Software (FLOSS) and Agile development methods. I used to think that there was no issue because, after all, free software is a way to release software and it’s not a development method like many still think. Strictly speaking, what makes software free and open source is its license, not how it’s developed. But a lot of FLOSS is indeed developed in similar ways, with distributed teams, volunteer based contributions, merithocracy based leadership and so on. Some of these traits make FLOSS and Agile difficult to mix.
At Funambol we love Agile, me included, and we love to try new things so we proposed an experiment mixing Agile methods with community based development into a new Funambol Code Sniper program. The slideshow below summarizes the basis of this experiment based on the assumption that the community is the Product Owner of the new software. The community will have to define the user stories and also to define when they’re DONE.
There are still a few grey areas, the biggest being how to distribute rewarding to contributors. I think they should be proportionate to the efforts put into the project. Even if it is possible to evaluate code contributions proportionally to story points (or hours/weeks), code is only a part of software development. Bug reporting, quality assurance, feedback and even writing user stories is important as well: how to evaluate these other kind of contributions? What do you think?