Asleep from Day

July 28, 2009

Software engineering and FOSS

Filed under: software engineering — John @ 6:52 pm

Jim Ready said this in an interview:

Developers are integrating more and more open source code from multiple sources, and all these pieces are both interdependent and independent. That’s breaking all the rules of software engineering. All these components are developed independently of one another and they change all the time, and then there are always some other subsystems that were not built by the same group, so it ends up breaking. The open source process is vibrant and instrumental, but it has these bad properties in some sense. The larger good of open source is worth it, but you can’t underestimate what you’re getting into. If you’re drawing on sixty million lines of constantly changing code, it’s not going to be easy to deal with. So some of these realities are behind MontaVista Linux 6 — we’re helping developers integrate all these pieces.

Distributions such as Debian can solve this issue, but what shall we do when it comes to the embedded world? MontaVista might not be an option because it’s way too expensive. Embedded distributions such as Ångström based on OpenEmbedded could provide a tested suite of applications, while poky is a light and well maintained choice as well. However, none of the above has as large a user base as Debian, so the amount of testing they received is fairly limited. To ship a consumer ready product based on these will not be an easy task. One must choose a stable release, work with the community to solve bugs and constraint the moving parts to the scope of core development. This requires different mindset and skills of project management with proprietary software development, and this will become more and more important with the increasing adaption of FOSS technology in the industry.

July 1, 2009

First code drop of 0xlab

Filed under: 0xlab, Android — John @ 2:58 pm

We have been busy in the past two months, and now it’s time to open up our code. Please keep in mind that most of these projects are not in the release state yet, but subjects of ongoing development.

You can find all of our source code at: http://gitorious.org/+0xlab. Here is a brief introduction of each project:

  1. MadButterfly: a git clone of the original project. The real project is hosted at assembla. MadButterfly is very likely to be the base of our 2D UI framework. It’s based on SVG instead of traditional toolkits such as gtk or kde, so it will give the UI designer a lot of space to unleash his/her creativity. The main developer’s (Thinker) blog is here.
  2. Android Eee PC: it aims to ease the porting of Android to Eee PC. At the moment the most interesting thing is the 3D acceleration structure on it, which can use the existing hardware driver in Mesa. Check this video to see what it can do. (blog)
  3. 0xlab’s Linux Kernel Tree: it contains several branches for different platforms, like Omap3, SMDK6410, and may be more in the future. Also, all of them are intended for being able to boot into Android. We tend to use the Beagle Board (OMAP) as our main development platform because it’s cheap and open.
  4. esuit: the Embedded System Unit/Integrated Test cases framework. It aims to provide a unified method to verify the functionalities of a hardware platform. This project is in planning phase, so no source code is available yet.
  5. android obex: it provides obex file sharing in Android. (blog)

From now on, we will direct all of our technical discussions to the 0xlab-devel mailing list. Plus, IRC #0xlab is the place we usually hang out. If you want to reach us directly, mail us.

Blog at WordPress.com.