Friday, June 4, 2010

Linaro: Accelerating Linux on ARM

At our last UDS in Belgium it was notable how many people were interested in the ARM architecture. There have always been sessions at UDS about lightweight environments for the consumer electronics and embedded community, but this felt tangibly different. I saw questions being asked about ARM in server and cloud tracks, for example, and in desktop tracks. That’s new.

So I’m very excited at today’s announcement of Linaro, an initiative by the ARM partner ecosystem including Freescale, IBM, Samsung, ST-Ericsson and TI, to accelerate and unify the field of Linux on ARM. That is going to make it much easier for developers to target ARM generally, and build solutions that can work with the amazing diversity of ARM hardware that exists today.

The ARM platform has historically been superspecialized and hence fragmented – multiple different ARM-based CPU’s from multiple different ARM silicon partners all behaved differently enough that one needed to develop different software for each of them. Boot loaders, toolchains, kernels, drivers and middleware are all fragmented today, and of course there’s additional fragmentation associated with Android vs mainline on ARM, but Linaro will go a long way towards cleaning this up and making it possible to deliver a consistent platform experience across all of the major ARM hardware providers.

Having played with a prototype ARM netbook, I was amazed at how cool it felt. Even though it was just a prototype it was super-thin, and ran completely cool. It felt like a radical leap forward for the state of the art in netbooks. So I’m a fan of fanless computing, and can’t wait to get one off the shelf

For product developers, the big benefit from Linaro will be reduced time to market and increased choice of hardware. If you can develop your software for “linux on ARM”, rather than a specific CPU, you can choose the right hardware for your project later in the development cycle, and reduce the time required for enablement of that hardware. Consumer electronics product development cycles should drop significantly as a result. That means that all of us get better gadgets, sooner, and great software can spread faster through the ecosystem.

Linaro is impressively open: www.linaro.org has details of open engineering summits, an open wiki, mailing lists etc. The teams behind the work are committed to upstreaming their output so it will appear in all the distributions, sooner or later. The images produced will all be royalty free. And we’re working closely with the Linaro team, so the cadence of the releases will be rigorous, with a six month cycle that enables Linaro to include all work that happens in Ubuntu in each release of Linaro. There isn’t a “whole new distribution”, because a lot of the work will happen upstream, and where bits are needed, they will be derived from Ubuntu and Debian, which is quite familiar to many developers.

The nature of the work seems to break down into four different areas.

First, there are teams focused on enabling specific new hardware from each of the participating vendors. Over time, we’ll see real convergence in the kernel used, with work like Grant Likely’s device tree forming the fabric by which differences can be accommodated in a unified kernel. As an aside, we think we can harness the same effort in Ubuntu on other architectures as well as ARM to solve many of the thorny problems in linux audio support.

Second, there are teams focused on the middleware which is common to all platforms: choosing APIs and ensuring that those are properly maintained and documented so that people can deliver any different user experience with best-of-breed open tools.

Third, there are teams focused on advancing the state of the art. For example, these teams might accelerate the evolution of the compiler technology, or the graphics subsystem, or provide new APIs for multitouch gestures, or geolocation. That work benefits the entire ecosystem equally.

And finally, there are teams aimed at providing out of the box “heads” for different user experiences. By “head” we mean a particular user experience, which might range from the minimalist (console, for developers) to the sophisticated (like KDE for a netbook). Over time, as more partners join, the set of supported “heads” will grow – ideally in future you’ll be able to bring up a Gnome head, or a KDE head, or a Chrome OS head, or an Android head, or a MeeGo head, trivially. We already have goot precedent for this in Ubuntu with support for KDE, Gnome, LXE and server heads, so everyone’s confident this will work well.

The diversity in the Linux ecosystem is fantastic. In part, Linaro grows that diversity: there’s a new name that folks need to be aware of and think about. But importantly, Linaro also serves to simplify and unify pieces of the ecosystem that have historically been hard to bring together. If you know Ubuntu, then you’ll find Linaro instantly familiar: we’ll share repositories to a very large extent, so things that “just work” in Ubuntu will “just work” with Linaro too.

High Gear - as far as writing goes

I hate writing. There, I said it. It takes me forever and I usually hate the finished product compared to so many other writers. One of these days we hope EPIC Maine will attract writers hoping to do blogging, marketing, business writing, note-taking etc. but for now I need to start forcing myself to write. So, without further ado, on to the next blog post.

Wednesday, May 5, 2010

[14:04] <+rrnwexec> Marketing Ubuntu Locally.. Why Should you Bother?
[14:04] <+rrnwexec> https://launchpad.net/ubuntu/+bug/1
[14:05] <+rrnwexec> You like Ubuntu. That's why you're here. You like to help other people. You want to see Bug #1 fixed in your lifetime (possibly so your kids won't have to suffer the way you or I did.)
[14:05] <+rrnwexec> You want to be surrounded by people who "get" Ubuntu (in both senses of the word).

[14:07] <+rrnwexec> A bit about terminology. In order to talk about something it is important to get the terminology right, and to express it clearly. I will talk about "community" a lot. (I just did above.) When I said "community" what came to mind?
[14:07] <+rrnwexec> If you're like many people, you thought of the forums, online discussions, blogs, etc. That's not what I mean by community at all. I will use the definition in the most local sense. Community = Those people geographically close to you within a short walk, bicycle, or bus ride.
[14:08] <+rrnwexec> A rule of thumb I use is that if you can't get to a place in under 30 minutes on a local bus, it's likely not really part of your community. Of course, there are exceptions but that's my guide. Think walking distance. How good are your legs?
[14:08] <+rrnwexec> On of my pet peeves (personal opinion of course) is that we have these things called "LoCo's" that aren't really "local" or "communities". Sure, it's great that we have them and they do serve extremely important roles but I feel that Ubuntu advocates need to get much more local and focused.
[14:08] == balto_ [~balto_@S0106001d6abf3cb2.vc.shawcable.net] has joined #ubuntu-classroom
[14:09] <+rrnwexec> Take Canada for instance. 7 time zones, dozens of distinct languages and cultures. Cities and towns here each have their own unique dynamics, economies, priorities.
[14:09] == toros [~toros@ubuntu/member/toros] has joined #ubuntu-classroom
[14:09] <+rrnwexec> Not to pick on the fine folks in any national "LoCo" but how can we possibly expect any national or even regional Ubuntu team to be effective at marketing at a local level. (If that were even its goal). And, Canada is simpler that many countries in that regard.
[14:09] <+rrnwexec> So, first and foremost I advocate a much more literal interpretation of the term LoCo. Think of warfare (I know, strange analogy when talking about humanity but hear me out). Name a war that was won with air power only. None that I can think of. Now, think of our current LoCo structure (mostly national and regional). That's "air power".

[14:10] <+rrnwexec> The LoCo's that I envision are on the ground. They take cities block-by-block and neighbourhood-by-neighbourhood. By take, I mean spread awareness of Ubuntu and help people regain control of their information tools. They embrace those around them and give them the "Huge Ubuntu Bear-hug"!
[14:10] <+rrnwexec> A Thought Experiment
[14:10] <+rrnwexec> Imagine that Bug #1 was fixed in your city/town. What would that look like?



bug #1 = Windows holds dominant position for Desktop usage

my Vision

The most diverse neighborhood in Maine coming together to make Maine a more developed and evolved community: a better State and a better state to live in.

[14:14] <+rrnwexec> Your job as a person interested in energizing (catalyzing) a town or city is to ensure that that energy field always remains strong. Note that this does not mean that you always have to be the *direct* source of that energy. All it means is that you are always on the lookout for a dip in energy level and are ready to make a few phone calls or send a few emails to key Ubuntu people. It also means that you're always ready to help with a project or two to help Ubuntu energy stay high. You're always ready to catalyze.

Edubuntu Discussion - Ubuntu open Week

[13:51] <+ClassBot> ubuntoogle asked: I think collaboration among educational groups is important. Have you thought about expanding into web-services?

[13:51] Right, so we're discussing that at the Ubuntu Developer Summit next week as well
[13:52] most of those tools are web-based, and web-based tools are often a nightmare to maintain package-wise
[13:52] we're going to have a session where we investigate creating and packaging tools that will install and manage web based collaboration suites
[13:52] rather than managing it completely via the package management system
[13:53] this should take load off package maintainers and also make it possible for users to get updates faster, although I'm not sure it's been done yet so it is a bit experimental. I'll be able to tell you more about plans on this area after next week :)
[13:54] The first package we'll be targeting is Moodle
[13:55] Debian is considering orphaning it so we'll be looking at creating the tools for that collaboration suite first.


https://wiki.ubuntu.com/Edubuntu/Specifications/Brainstorming/Maverick

Wednesday, April 21, 2010

Crowdsourcing sustainability for Maine hood

Posted by Neil Takemoto @ cooltownstudios.com
April 14, 2010
Neil is one of the SDATeam whom came to Portland via the AIA SDAT Grant obtained by EBNO and the Muskie School



As part of the American Institute of Architect’s (AIA) Sustainable Design Assessment Team (SDAT) invited to East Bayside, Portland, Maine, here’s the section of the final report that explains how to establish a crowdsourced sustainability system, as summarized by this previously posted entry and video. Stay tuned for the AIA SDAT’s final report to be posted here. Why am I posting this? It may serve as a guide for other neighborhoods like East Bayside that want to attract investment, yet preserve its character.

East Bayside 3BL Sustainability Crowdsourcing System



Implementing an economically, socially, environmentally sustainable plan for East Bayside is a ‘cloud’ problem, whereas clouds are defined as nebulous, diffuse and escape attempts to pin them down. It’s not a ‘clock’ problem, requiring precise, specialized technical expertise to solve. Thus it requires a ‘clock’ problem-solving system, not a clockmaker. The following system, defined by its steps for implementation, involves the ever-increasing usage of crowdsourcing as a cloud-problem-solving system.

  • Phase I. Establish East Bayside 3BL Sustainability Leadership:

  • Phase II.  Establish East Bayside 3BL Sustainability ‘Beta Community’

  • Phase III: Establish a System for Implementation

Phase I. Establish East Bayside 3BL Sustainability Leadership:


  1. Identify the Sponsor for the project, their values and principles, their needs, their vision and goals for the program. The East Bayside Neighborhood Organization would be one candidate. There needs to be just one organization being primarily accountable, otherwise no one will. Even with two-person partnerships in business, experts strongly recommend that one partner has at least 51% ownership. I would define ‘vision’ as the vision for East Bayside’s economic, social and environmental sustainability.

  2. Define the triple bottom line/3BL (economical, social, environmental benefitting) vision of the champion sponsor. How is this vision going to benefit its residents, workers and businesses on those three levels?

  3. Identify supportive Stakeholders (those with cultural and economic impact on the project), their values and principles, needs, vision and goals. Let the Stakeholders use the vision statement from above as a guide. The same process needs to happen as with step 1, for all those that represent the neighborhood in terms of the triple bottom line. One is needed for youth, and one is needed for the immigrant community. If there not one Stakeholder to represent each of the immigrant communities (ie Somalis, Sudanese…), there should be designated representatives for each of those groups to work with the immigration community champion. Others include business owners (and there already is a women’s business owners group with Sally Streuver), entrepreneurs (Jeff Anthony, Mohammed Dini), environmentalists, neighborhood groups, etc. It should be any group that’s willing to collaborate on action.

  4. Define the economic, social and/or enviromental sustainability visions and goals of the Stakeholders. Each of the stakeholders need to provide such a vision from their respective groups. How? This is where Richard Goll’s programs with youth and Reemberto Rodriguez’s techniques with reaching out to people of diversity in their homes and social circles, as outlined in their reports, is critical. New Stakeholders are always welcome, as long as the interests don’t start to overlap or groups start to compete. Again, see Richard and Reemberto’s reports regarding this.

  5. Host an informal meeting with the Sponsors and Stakeholders to symphonize their triple bottom line visions into a consensus vision. The Sponsor then adopts this as their new vision statement. Each group still retains their own vision statement, but realizes they are alone if they base their actions on it.

  6. Draft a written agreement from Sponsor-Stakeholder group that it will fundamentally involve the Stakeholders in its planning and execution in exchange for those Stakeholders providing commitment to its success. Everyone needs to be accountable for how they’re going to contribute, and that needs to be in writing. Most important, the Stakeholders need to be emotionally committed.
  7. Determine metrics and schedule for success. Consolidate goals from each of the Stakeholders and the Sponsor, and redefine into objectives with dates that are easily evaluated. For instance, the entrepreneurial group may have an objective of 50 members in its social network in six months, or the immigrant community will host a neighborhood food festival by the end of the year.

  8. Sign agreement. There's no collective, sustainable sense of accountability unless there’s a symbolic document.

Phase II.  Establish East Bayside 3BL Sustainability ‘Beta Community’



The leaders were identified in the first phase, but much of the real work happens with the people who live and work in East Bayside. Only a fraction of that latter crowd will spend their time and energy to contribute, and it’s not necesarily fair to the rest to identify this group as ‘better’, so a term I prefer using is ‘beta community’, or ‘test community’. These are the people who don’t talk about change, they’re the ones who actually try it out. If things go well, the beta community eventually simply becomes the community as a whole, or they can continue to try new things.

  1. Identify the Champions (the ‘lead followers’ most likely to be willing to spend time and energy supporting the vision and objectives) from the greater creative community. Champions usually identify themselves, and are the best candidates to become Stakeholders. See this TED video on the importance of ‘lead followers’.

  2. Host an informal meeting with the Sponsors, Stakeholders and Champions to brainstorm ideas, and identify which ones are the most implementable in terms of both crowd support and funding. For those at the March 30, 2010 focus group regarding the creative community, this is that 3-hour process. See attached for the summary of that meeting, masterly notated by Lori from the Muskie School of Public Service Public Policy program. Fortunately, many of the candidates for Sponsor, Stakeholders and Champions were there. A brief summary of that meeting of up to people who sat in a circle, which is important:


Part 1: Introductions, Groups


a. Roundtable introductions and what you hope to get out of attending.

b. Roundtable mention of one idea someone else mentioned (other than your own) that resonated with you.

c. Identification of groups of 4-6 people that share common interests. To do so, mention the most common ideas/themes, and consolidate or subgroup them into groups of 4-6 people. If the group becomes larger than 6, certain individuals tend to talk too much, while others don’t say anything, while the value of their ideas to the group may be just the inverse.


Optional break: This is a good time for the groups to start talking to one another.

Part 2: Brainstorming, Brainwriting, Identify Crowdsourceable Projects

a. Break off into the interest groups. Give them 3-5 minutes to come up with a brief vision statement. There may already be one in existence that represents the interest. Have them stop when time is up and look up.

b. Have them brainstorm ideas for implementation in roundtable fashion for about 10 minutes, allowing people to interrup, skip or mention more than one at their turn. Don’t provide any further instruction. Have them stop when time is up and look up.

c. Ask them to prioritize not more than two to three implementable ideas for each timeline: Less than a year, 1-5 years, more than five years. Thus, a total of 6-9 ideas. Have them write each of the ideas on a sheet of large paper, at the top of each idea’s own column. This allows the crowd to add comments below the ideas (‘brainwriting’). 10 minutes. Place the sheets on the wall.

d. Brainwriting. This is another fun part. Ask those in the crowd who represent public or private resources/capital to raise their hands. Ask the crowd to then, in a free-for-all, checkmark any ideas they like (only one per person per idea) and comment if they like. For those that identify themselves as resources, place a dollar sign if they think it’s an idea they’d invest in.

e. The ideas with the most crowd support, but no funding interest are the most viable/neighborhood initiatives. The ideas with the most funding interest, but little crowd support lets the crowd know where the money is waiting for them. The ideas with the most crowd support and funding interest are the most ‘crowdsourceable’, and should get started right away, especially with the people who expressed interest.

Part 3: Develop Implementation Plan for Crowdsourcable Projects

(We did not get to this in the March 30 meeting)

a. Break off into the three groups that expressed the most interest as far as crowd support, for both funding and no funding, by show of hands. Make sure to record who’s in each group, and provide them an opportunity to either continue to convene online, or join an existing group with the same vision.

b. For those groups willing to continue beyond this exercise, provide them the opportunity to name a Sponsor to represent their group, ideally funding representatives, a vision statement and prospective members. Upon completion of these, they should now be given ‘Crowdsourcing Project’ status.

You now have a much better idea of what’s possible, based on every single person in the room. As a side note, this aforementioned exercise can be done online using the Bubbly crowdsourcing web tool: bubblyapp.com, which is something I developed for this very purpose. In fact, this exercise was modeled off of this web tool.

  • Initiate online social network customized for crowdsourcing (ie ning.com, which is free) stating the vision and objectives with timelines, and listing the interest groups and summaries of meetings. The objectives need to be updated with whether or not they were achieved, so groups learn to both be accountable, as well as better provide realistic objectives.

    Phase III: Establish a System for Implementation


    Host monthly beta community meetings of Sponsor, Crowdsourcing Project Sponsors, Stakeholders and Champions. Remember, we’re talking about implementing triple-bottom-line sustainability here, not a free-for-all town hall meeting to express your gripes. It’s up to you how much to make this a public meeting.

    a. Provide an agenda listing the Stakeholders and their objectives that are posted on the social networking site.

    b. Have each Stakeholder report their progress based on their objectives.

    c. Have each Crowdsourcing Project Sponsor report their progress based on their objectives. The value of these is that they represent the values of the Stakeholders in the form of a project.

    d. The discussion of the meeting should be focused on two things:

    1) What actions can be taken to fulfill the objectives of the Stakholders through the Crowdsourcing Projects that represent them. Remember, that’s what the exercise in Phase 2 was about: Translating the diverse interests of everyone into implementable projects. This is where the problems can be identified on the ‘clock’ level now that the ‘cloud’ is defined.
    2) If any Stakeholder does not feel properly represented in any of the Crowdsourcing Projects, how this can be solved.

    Keys to Success


    - The more that the Crowdsourcing Project Sponsors attract both public and private sources of capital/resources as active members of their team, the better the chances of implementation.

    - If a Crowdsourcing Projects start to bog down, host a public meeting and run the Phase 2 exercise on its behalf. Also, the next time you run the Phase 2 exercise overall, see if this project is still a priority.
  •