It’s been busy lately -- so something totally different now. Let me try to compare our open source approach with that of others developing Linux based consumer products.Open source can support different strategies
So let’s suppose you’ve decided to create a consumer product –a device-- based on open source. Utilizing open source gives you certain boundaries to work in. It also gives you many new possibilities. For example, utilizing GPL mandates that you release your source code. In some cases this can be a restriction. However, GPL also means that you can use the code developed by others freely – just remember copyleft. Also, if somebody now wants to extend your GPL’d work, they can do it efficiently because you have released the source code they can work on.
How do you deal with open source and developer may vary a lot, though. Now, let’s take two different perspectives.1)
Own involvement –proxies vs. own involvementa.
Do you as a device manufacturer use commercial distros and integrators, or do you rather work directly with open source communitiesb.
Do you get your components from montavistas, redhats, trolltechs, and such, or do you grab them yourself from debian, kernel.org, GNOME etcc.
Do you rather make a business deal with a commercial company that should take care of the details of open source on your behalf, or do you rather participate open source work yourself to get what you want2)
Development environment –closed vs. open native developmenta.
Do you want to open your software for hacking and native application development, or do you want to keep it closed and support only application sandboxes, such as Java, on top of your software
Let me take a concrete example. Our friends at Motorola produce nice Linux phones. To my knowledge, they use MontaVista kernel and Trolltech’s Qt/embedded and Java as a developer platform. We on 770 went directly to GNOME and kernel.org and decided not to use commercial distros or middleware packages. We also allow native Linux application development. And we want to use the latest versions of components as soon as we can – a goal that a proxy would make more difficult to achieve. So the strategy is different. No better nor worse – just different.
Own Involvement -- I believe that big corporations often rather make a business deal with a “proxy company” than deal with small hacker companies or do to sourceforge themnselves. They are used to have NDAs, LOIs, frame agreements, partnerships, purchase orders, and invoices from other big companies. They may not want to worry too much about this open source stuff. The proxy companies hide the open source aspect of the work and you are dealing with simple old software component vendors.
Development environment – depending on your goals and needs, supporting a sandbox as an application development environment may be a good idea in cases where you need more control, portability, and other such things.
So, I’m not saying it is good or bad to be in any particular place on the map. But I think it is important you know where you are.
I Finnish technology newspaper Tietoviikko said yesterday that Nokia doesn’t want to develop own operating systems, and that maybe the successor of 770 would run MontaVista’s Linux. They quoted a Monta Vista marketing person there. Well, I bet MontaVista is doing a good job and they seem to have many customers in the consumer electronics space. However, our software for 770 is sourced directly from kernel.org and the middleware from Gnome, GTK, Gstreamer, etc. So we are not developing an “own operating system” for 770. And really, our strategy to not use proxies is serving us very well, thank you ;-)