Archive for the ‘FLOSSAdvocacy’ Category

Free and Open Source Software: Use and Production by the Brazilian Government

Thursday, May 8th, 2008

First up, I want to say, I’m truly impressed with Brazil. One day I will visit this amazing place, and spread the good word of open source with projects that are close to my heart: MySQL, OpenOffice.org, Fedora, and in due time, a lot more. This is a live-blog, from a most interesting talk, at JavaOne 2008. As I wrote on Twitter, “Brazil, simply impresses me. Their use of open source in government, makes me think that the rest of the world has a lot to learn from them”.

Free and Open Source Software: Use and Production by the Brazilian Government
Rogerio Santana <rogerio.santanna@planejamento.gov.br> +55 61 313 1400, Logistics and Information Technology Secretariat
Planning, Budget and Management Ministry
Brazilian Government

Households with Internet access: 70% in the US4k household income range. 70% of households have mobile phones (even when total revenue is USD$2k). Middle and upper class are all, generally on the Internet.

In 2007, 98% of Income Tax has been sent by the Internet. By 2009, there’s only going to be use of a Java application for this. About 17.5 million people filed via the Internet. Impressive.

Brazil has 142k public schools - 26k are connected to the Internet now (18%), and 92% are connected at low speed, while 8% have 512kbps connections.

Plan? Free Internet for schools, from 2008-2025. 1mbps for each connection, growth plans in the next 3 years.

There exists Computer Reconditioning Centres (CRCs) for recycling PCs.

www.eping.e.gov.br (e-PING: e-Government Interoperability Standards)
www.governoelectronico.gov.br (e-MAG: e-Government Accessibility Model)

Brazil has been using electronic voting since 1995. 136.8 million people voted in 2006 election. Next version of vote machines will use GNU/Linux!

Open Standards. Interoperability. Free Software. Free License. Community.

e-PING: uses XML, browser compliant, they have metadata standards

Many organisations of the Brazilian Government use Java as a primary development platform. Remember, Java is important because its the first that allowed even Linux users to interact with government applications.

Brazilian Digital Television? Middle-ware responsible for the interactive process of digital TV also developed in Java. (Ginga is the name of the application).

In education? Enrolment is done via the Internet for universities. e-Proinfo is an e-learning project that has already trained 50k students.

Developing clusters and grids, with focus on high availability, load balancing, database replication, distributed mass storage, and virtualization. The government is backing this, since 2006.

Ten Ways to Destroy Your Community

Wednesday, May 7th, 2008

Note: these are live notes. It was a great talk, I’d rate it as excellent (and I’m not just saying that because Josh and I work in the same group at Sun). I’ll have to also comment on his thoughts and talk, in due time. MySQL, as an open source project, has a lot to learn.

Ten Ways to Destroy Your Community
A How-To Guide
Josh Berkus, Community Guy

Part 1: The Evil of Communities

  • you may attract and will be unable to get rid off a community
  • they mess up your marketing plans, because the community goes out and does its own marketing and PR and distributes your software in places you didn’t expect to
  • they also mess up your product plans, because they contribute to code and features to your project, with unexpected innovation!
  • communities are never satisfied by any amount of quality and keep wanting to improve it - if you can’t make it better fast enough, they sometimes do it on their own!
  • you have to re-define your partner and customer relationships… people who were your customers start contributing to your project, sort of making them partners… “confuse your salespeople” :)
  • the worst part about having a community, is that they require to you communicate constantly (and who has time for that?). Emails, chat channels, web forums, you get constant pestering

10 Ways to Destroy (The Berkus Plan, Patent Pending!)

1. Difficult Tools

  • weird build systems
  • proprietary version control systems
  • limited license issue trackers
  • single-platform conferencing software
  • unusual and flaky CMS

This will limit attracting new community, and eventually people will get frustrated with the tools and go away.

2. Poisonous people
Maximise the damage they do - argue with them at length! So if people give you problems, continue feeding the trolls. Then denounce them venomously, and finally ban them. Josh then goes into a funny way of making use of poisonous people, which eventually leaves your team and the troll(s).

3. No documentation
Don’t document the code, build methods, submission process, release process, install it.

4. Closed-Door Meetings
Short notice online meetings are good. Telephone meetings are even better, because of timezones and limited conference lines. Meet in person, in your secure office, is the best way! (even if you dial in on a conference line so that others can here). People that are most involved will leave your project right away.

5. Legalese, legalese, legalese
The longer and more complex the better! Hate and fear of attorneys help drive people away from your open source project. Contributor agreements that are long/complicated, with unclear implications are particularly good. Website content licensing, non-disclosure agreements (NDAs) [European developers usually never sign an NDA], trademark licensing terms (name and logo of your project… good way to dissuade people). Used properly, you can use legalese to keep out developers!

Bonus: change the legalese every couple of months without informing folk!

6. Bad liaison
A bad liaison/community manager is someone reclusive (least social, hates answering email, unplugs phone regularly, etc.). Also, someone with no time works very well. They’ll spend a few weeks, but pretty soon they’ll give up, and if you’re really lucky they’ll be snappy and make bad comments to the community!

Assigning someone with no authority also helps. As a community manager, you have no chain of command, and you just get to deliver bad news (we decide, and you just say something). That person usually leaves your company, and becomes a poisonous person, and its a win-win.

Someone unfamiliar with the technology also helps. An open source Java project, getting a PHP programmer, is the best person for you :)

Having no liaison also helps. Refer to the project liaison, but have no one!

7. Governance obfuscation
A good model for this is none other than the UN (He has a slide on the UNDP).

Get your legal team to write a governance document. Like they’re dealing with a hostile outsider. You’ll be impressed what they come up with!

Three principles:
1. Decision making and elections should be extremely complex and lengthy
2. Make it unclear what powers community officials and communities actually have
3. Make governance rules nearly impossible to change

8. Screw around with licenses
Licenses loosely translate to Identity. You’re not just a Linux contributor but a GPL person… You’re not just a PostgreSQL contributor but a BSD person…

9. No outside committers
I. No matter how much code outsiders write, only employees get to be committers. This is a surefire way to annoy contributors eventually.
II. If they ask why they’re not being able to commit, just be evasive! Talk about needing a mentor, decision not made yet, etc…
III. Make sure there are no written rules on who gets to be a committer, or that the criteria are impossible to fulfil.
IV. Bonus: promote an employee who doesn’t code to committer! Most will get disgruntled by this and go away and they’re not your problem anymore.

10. Be silent
He demonstrates out live, by giving him a minute… what silence really is. Just do nothing, be really silent.

Q&A

How does Sun score?
All of these techniques have been successfully employed at open source projects at Sun and elsewhere. He gave this talk at a Sun internal event and people came up to him asking if they were talking about their project! Sun is scoring pretty well, but not necessarily any better than other corporations.

I missed the question, but the answer was: If you are fast and clear about explaining mistakes, communities tend to be forgiving.

Examples of a successful community?

Kernel.org, and the Linux kernel community.

What about using forking to destroy community?

Combines poisonous people and playing with licenses. It fragments the outside community as people have no idea which to use. You can’t plan a fork (as it requires a lot of motivation to do the fork - finding people with that level of commitment and masochism is hard). Keep your poisonous people around and encourage them (poisonous people who are also code writers), then you sort of foster their image in the community by giving them a voice, and if you do something to really mess with the community’s mind (say a change of license), then the poisonous person will take the project and fork it.

The other way of forking, is to take a legitimate outside developer, build them up, and then after they have become a major developer, abruptly lock them out. The danger here is that they might not fork the project, and change the project back…

How do you prevent companies from supporting your project? Because this also means more developers will come to your project. And these companies are now selling services around your product.

Monkeying around with licensing. Then you change the commercial services around that. The second thing to prevent ISVs, is to play around with trademark rules, and lots of legalese. Prevent them to get code into your project, that should help too.

Stewart and I on LugRadio

Saturday, May 3rd, 2008

Stewart (Melbourne, Australia) and I (Kuala Lumpur, Malaysia) are featured in LugRadio Live! USA 2008. Why? We were one of the few people that travelled far enough to get to LugRadio Live.

27:30-27:40 in case you want to fast forward. “I don’t even know where Malaysia is!” exclaims someone on LugRadio. Definitely, grab the show, Season 5, Episode 16.

In the end we all get gifts… an Ubuntu book which I will eventually read.

For me, its an interesting change, writing “Kuala Lumpur, Malaysia” on things.

google visitor

OpenSolaris Summit, CommunityOne, JavaOne - big week ahead

Friday, May 2nd, 2008

I’m headed to the OpenSolaris Developers Summit right now.

After that, I’ll be at CommunityOne, with the rest of the MySQL team. Just check out the schedule (its in PDF format though). Its truly packed, so if you’ve not signed up to come, do so, immediately. I’m also particularly interested in participating in the RedMonk Unconference. All in all, I think CommunityOne looks like it would be well suited for a week-long event, rather than a day-long event - so many places to be, so little time!

And after that, JavaOne! Its going to be packed all week long, but the good news is that I’ll be in downtown San Francisco for most of it.

Expect plenty of notes soon.

Technorati Tags: , , , ,

Contributing to the MySQL User Guide

Thursday, April 24th, 2008

The MySQL User Guide is worth looking at. Its not the reference manual (which is excellent - kudos to our Documentation Team). Its target audience are users that are new to databases or users that are new to MySQL in general.

What’s really interesting about the MySQL User Guide is that you can help shape it. You, the community, can participate in writing it!

I for one, know that this is the easiest way you can start contributing to any open source project. Documenting it. Soon, you will realise that you’ve become an expert (writing documentation, or giving training, will always keep you sharp). Some move on to then delving in coding, some go on being consultants, and some end up being hired by the company that sponsors the project ;)

The URL again: http://userguide.forge.mysql.com/

Happy writing!

Technorati Tags: , , , , , , , ,

What MySQL Can Learn from PostgreSQL

Thursday, April 17th, 2008

Hi! So this is completely my notes taken from the conference, without my thoughts attached to it. I should definitely post a lot more about this, and how the community can “improve” in time. Just not today. Believe me, sitting in the talk, was highly painful, and I’m wondering where my aspirin stash might be. The slides will be available soon, and lets just consider this a learning experience. It reminded me of the time Eric Raymond came to the Fedora Project’s very first FUDCon in Boston 2005 (probably the only session without available video :P).

What MySQL can learn from PostgreSQL
Joshua Drake
(more…)

Who is the Dick on my site?

Thursday, April 17th, 2008

Who is the Dick on my site?
Dick Hardt

Most interesting keynote. About 1,000+ slides. Many slides per minute. Definitely a new way of presenting :)

  • What is identity? What is Identity 2.0?
  • Identity is a complicated topic, and you normally get the tip of the iceberg. Identity changes during your stages in life.
  • Works at SXIP Identity.
  • I wondered what the German’s thought about identity. Identat. “They’re German” <applause>
  • Answers.com had the best answers for identity.
  • There’s lots of different personas about a person. Women really are the masters of different personas (clothes, wife, mother, etc.). Reinventing oneself.
  • Identity allows you to predict behaviour…
  • When someone is in a “role” (fireman, etc.), you think you can predict behaviour. Is this identity? It’s who you are, not really, no.
  • blame.ca (his website)
  • Identity transactions… on where is identity used? Party identification, authorisation, profile exchange (information about a person so you know them better).
  • “Do you want to present ID at a bottle shop? If no, you can rollback the transaction!” <applause>
  • Photo ID is a reusable credential. This is an identity transaction.
  • Reputation built up on eBay? You can’t take it over to Craigslist. Identity 1.0 is site centric, its a walled garden.
  • identity20.com
  • Facebook is becoming a new silo. URIs enable things to be open (LinkedIn, Twitter, Flickr, etc.)
  • DataPortability.org - user centric
  • Kim Cameron - Laws of Identity (read it)
  • Device convergence - near field communication, phones doing more than make calls, etc.
  • Digital natives and immigrants. What are you? CNN == news source for natives, immigrants tend to use newspapers. I wouldn’t use CNN as an example myself, but the drift is there. Digital camera (immigrant) vs. just a “camera” (native). The younger generation are all digital natives…
  • OAuth spec - take a gander at this…
  • Reputation services: blogosphere (”pagerank”), open source contributions, wiki, “human” (so stop typing captchas!)
  • Viagra. You’re excited to take it. You can do new things!
  • myhealth.sg was mentioned. Singapore on the forefront of Identity 2.0 and OpenID? Or is it CardSpace (Microsoft) related?
  • What happens when you die? Your domain can be taken by someone else. Do they then become you, if that was your OpenID? Very interesting thought.
  • He flies Air Canada, and loves to talk about his Star Alliance Gold status :) Jives well with me, I’m Star Alliance Gold.

Technorati Tags: , , , , , , , , ,

Chris Blizzard on Mozilla

Monday, April 14th, 2008

Chris Blizzard, now working at Mozilla and Linux integration, gave a most interesting talk, about Mozilla, and their new mobile initiatives. We managed to speak (but not nearly enough) about the mobile strategy afterwards (i.e. I think limiting it to the n810 or tablet like devices alone, seems myopic; phones are where its at), and I hope the conversation continues. Now for some quick notes.

- mozilla.org, is where products create motion. Been around for just over 10 years now
- Mozilla targets human beings (not developers)
- Focus on protecting open standards
- “Creating Joy!” for users
- Avoid feature creep (this is the secret of add-ons) - control the product, and just say, go build an extension. It isn’t just about customising your experience, but its about keeping the core experience joyous and uncluttered.
- Fix real problems on the web (i.e. pop-up blocking)
- 500 contributors to Firefox 3, 75 Localization teams, 200 people, 11,000 patches, 165+ Million users, added +45 million users in the last 6 months, and doubled in the last year - these are impressive statistics (I for one, am impressed by their developer community)
- Who are we targeting? Read Seth Godin’s blog entry “Why downloading Firefox is like getting into college“. Also, Stephen O’Grady’s Blog “Ode to the Common Man
- Bring the full web to mobile. FF3 is where great technology for mobile exists.
- Apple has reset the idea of what the Internet on a mobile should be, thanks to the iPhone. They’ve definitely opened up the market for mobile based browsers. Note, no reason to redesign your website for mobiles in the future…
- Fennec - mobile browser experience
- Performance numbers on the n810 - faster than MicroB and WebKit. Not even optimised for ARM (i.e. no atomic locking), but already at a headstart
- Fennec will support add-ons. Touch and keypad versions are coming soon… Keep in mind all this is just getting started
- Android includes WebKit as part of the base platform. Mozilla on Android? Not quite yet, since Google wants only Java based applications. No mention of native applications yet from Google.
- Not really considered Series 60 (it would be nice), no talk of PalmOS, there is some form of Windows Mobile version, but its not released
- Gecko is hard to embed, in comparison to WebKit. The technology needs to improve, so that the gap that WebKit has, doesn’t widen further

Technorati Tags: , , , , , , , , , , , , ,