Torino

February 21st, 2009

I like quick, unplanned travels. Last saturday, when Daniela came back from work, we decided to go in an nice mountain valley near Turin, we was there a couple of years ago to see the winter olympic games. While we was travelling we realized that Juventus was playing in Turin the day after, so we stopped in Bergamo to take tickets for the match. Finding a place to eat in Turin proved to be quite frustrating, being S. Valentino night. We finally found a free place around 11 pm. The hotel on the other hand was cheap and pretty cool.

The day after we wake up early and headed to Sestriere. We spent the morning there, looking around, walking and taking pictures. We should go there again to ski one of these days. Then we came back to Turin. The stadium is very small so you are really near to the field, the match was pretty cool, expect for the final result, 1-1. Juventus had a lot of bad luck.

The SoaS team

February 21st, 2009

Sebastian, Frederick, Aleksey and Simon are making me smile. Well, more like jump around the room in awe! The latest SoaS snapshots has an impressive list of improvements and it sounds like there will more soon. Also I know they are making great progress on stream 2, the one based on Fedora 11. I have no words, go team!

I’ve been busy with job transition in the last few weeks and I had a good reason to experiment more with visibility cycles. They works impressively well. A couple of years ago someone told me:

“Oh, I remember. I also remember a man who just stepped up and tried new things, who just did it because it made sense to him and created the change that he wanted to see in the world through direct action. No whining, no bullshit, just executing and learning as you went. That’s you today, too. Your best quality. You probably don’t know this but it’s a rare quality.”

What I learned since then is that most of the time you can’t create changes in the world alone. And I learned it the hard way, by failing and burning myself out. Ideas are social artifacts, we come up with them in first place because they might be useful to someone. We can’t own them, we should set them free and let them grow in someone else hands.

In a community setting you need to come up with a solid prototype of your idea, share it in it’s incompleteness and then hide as fast as you can. You don’t disappear, you keep teaching what you learned and removing road blocks. But you let someone else lead, take the whole space and run.

A new beginning

February 17th, 2009

Today I’m leaving Red Hat. As you can imagine that means I’m no more employed to work on OLPC/Sugar.

Something similar happened temporarily several months ago and I was so sad and scared for Sugar future. I’m happy to report that this time I’m totally happy, excited and confident about being back to be a volounteer. This is the result of the progress Sugar made as a community, we are now walking alone and we don’t need a company or a person to drive development.

I know, it’s a bit of a mess and there is way too much to do. But we did the huge step from a company driven project to a community one. That’s what really matters, only very few projects are able to make it. It will take two years or twenty, I don’t know, but now we are unstoppable and we will get where we want to be. The list of people that made this possible is way too long but… you know who you are and I want you to know that I’m grateful and proud about what each of you achieved.

So I’m a volounteer now and I will be able to throw all of my passion into the project again. I’ve been thinking and having conversations about the best way for me to contribute from now on. I’ll keep doing it and any feedback will be appreciated and valuable. In general, if you need help with anything just let me know!

Leaving Red Hat

February 17th, 2009

After almost five years, today it’s my last day at Red Hat. It has been a wonderful ride. I never felt like I was simply doing my job, I was given the opportunity to work every single day on something I’m deeply passionate about. I will be always grateful to the company and to people for that. My only regret is to have spent too little time in Boston.

I accepted another job, but that’s the topic for another post, in a few days.

There is a world outside my room

February 14th, 2009

Yesterday we had an good “Sugar on a stick” meeting. We covered a lot of ground, even if in a somewhat disordered way. Disappointed to see regressions in my ability to host meetings. Looks like it’s something you need to keep exercising.

I’m pretty happy with the outcomings though, I think we managed to strike a good balance between Caroline focus on customers (thanks to keep pushing us in that direction) and developers desire to reuse as much as possible of Fedora work (i.e. good laziness). There was a lot of energy and everyone contributed to the discussion. On a somewhat related note I’m amazed by the great work Simon, Tomeu, Gary, Aleksey, Morgan and everyone else is doing these days. It’s a tough ride, no doubt. But we are making great strides, 0.84 will be a success. Thanks guys!

Before the meeting I went for a walk outdoor after… something like a couple of years. Just a very slow walk, probably half an hour, but I was really tired when I got back home. I guess that had to be expected.

sp_a00141

The sun was shiny and the snow was beautiful. It was really cold but I didn’t feel it that much. Pictures are not great since they was taken with a cellphone, but better than nothing.

sp_a0011

I just realized that today is probably my last free weekend before moving. I’m going to try and figure out something fun to do. It’s annoying that Daniela works on saturdays. One day and half is very short for interesting trips.

Things I cannot talk about, yet

February 10th, 2009

I have to travel tomorrow morning so I should be sleeping. But I’m nervous and I can’t say what I’m nervous about. So I’ll just write whatever passes through my mind, hoping it will clear my brain and let me sleep.

I’m behind with my email, apologies to everyone that is waiting an answer for me. I’ll try to catch up, hopefully after tomorrow. Probably going to miss marketing team meeting too, damn it.

Daiva booked her flight, she is coming on March 1. It will be wonderful after three years we don’t meet (or how many, I can’t even remember anymore!). She is arriving to Malpensa, we will come at the airport and maybe visit Milan while at it. Hopefully March will be warmer and less rainy than today.

Michela is awesome. I’m not sure how I would feel today without her help. I feel happy and stronger and excited about the future (well, this thing I can’t talk about). She might come visit us the next summer, in this place I cannot say yet. Looking forward for it already.

Had a pretty nice weekend. I brought a laptop with me but I had no network. And the laptop without an internet connection was unattractive, so I never turned it on. We cooked some delicious food, in particular a huge dish made of shrimps, totani (which I have no idea how to translate in english, some kind of fish anyway) and rosted potatoes. I want more of that right now! I had some time for reading finally, it helped me relaxing. Juventus match was a long sufference, we won when we had lost hope. Valkyrie was a bit of a delusion, maybe just not my kind of movie.

Sleep, Marco, sleep…

Curing our Apollo syndrome

February 1st, 2009

There are a couple of unpleasant discussions going on the mailing lists. Everyone please take a deep breath. Think about the contributions that each of us has made to this project, about the beauty and the importance of what we are trying to do. And realize that, while we are all doing mistakes, we are doing so in good faith. If you are still angry instead of feeling love for each of your team mates, go to read Mel post about Sugarcamp closing session. Actually, do it anyway and a couple of times!

The making of Sugar (2)

January 31st, 2009

Some additional thoughts and clarifications about my previous post.

  • There is a legitimate worry about increasing too much the scope of the deployment communities by having them manage their own releases. I think it’s a challenge for us to provide them the best possible base, both at the distribution and at the Sugar level. And good tools to compose and customize their images. In an ideal world, it should be trivial from a technical point of view.
  • One of the reason I like the structure I outlined is that it creates a very clean interface between end users and the Sugar developers. Deployment communities gather feedback from the field, research about the kids needs, do testing themselves to ensure they ship an high quality product. But they are very lazy on the technical part. Most of the time they don’t do the work themselves but just make sure that their needs are properly communicated to the two of their upstreams: the community of the distribution they choose and the awesome Sugar developers, which are eager to fulfil their needs! And they have the power to select what it’s better for their local situation, to decide when a release is mature enough to ship, to set a schedule, to be responsible for the product they deliver. They are the one which should have this power because they care and because they have the closer point of view on user needs.
  • I would like to see a community forming around Sugar on a stick and start helping with testing and at some point also with image builds. Caroline is coordinating with Olin students about it, I think that’s a great opportunity.
  • As Michael pointed out this is pretty different from the way I’ve been conceptualizing things so far. I don’t see it as a change of direction but as a gradual adjustment. I change my mind all of the time, and I know it can be annoying, but situations and my perception of them changes constantly, it would be silly if my opinions wouldn’t follow. Still, I’m trying to fully understand the consequences.
  • There is no technical reason that the deployment community role could not be handled by a Sugar Labs team. Though I think it’s our interest to do as little as possible and do it at our best. Also organizational separation would probably better represent the situation. In other words, if external groups step up to handle deployment, we should hug them, give them the full space and let them rock.

The making of Sugar

January 30th, 2009

We used to be a project directed by a single organization, with no upstream community. And we are now at the opposite of the spectrum, we have a strong upstream and the downstream land is trying to grow up or to recover from organizational changes.

When we created Sugar Labs we made a very conscious decision about the scope of the development. Following the model of GNOME, we were not going to ship and support an end user product, but we was going to rely on linux distributions and OLPC to do it.

The model we had in mind is the classical situation for free software desktops and it goes more or less like this:

  • An upstream entity, usually formed by individual volunteers and company funded engineers develops a code base and a release process around it. Their final product is a set of source tarballs, which went through the testing of developers and project supporters.
  • Several distributors take the source tarballs, build packages out of them, apply customizations and fixes and distribute it as complete operating system: a user consumable product. This usually involves some level of formal QA, beta testing and support.
  • A bunch of end users acquire the distribution, to install it on their machines.

The OLPC step back from active development uncovered several problems in our model.

  • It’s unclear at which level beta testing and QA should be done. If we followed our logic it should happen at the distribution level. It’s not going to happen because Sugar is a niche product in every distribution and that’s not going to change soon. We might even argue it should never happen because our audience is very different from the traditional linux one. To put it bluntly, we are not working on the perfect desktop for geeks.
  • Distributions like Sugar on a stick are hosted and perceived as Sugar Labs products. Upstream/downstream is a good abstraction but it needs both streams to be strong and active to work. Sugar Labs should ideally not work directly on end user products, but it’s forced to do so if no one is covering that role.
  • The feedback from the end users is not reaching upstream developers. There is no entity in the middle which is able to proxy it. And I don’t think traditional distributions will be able to cover that role, their target audience and hence their priorities are different.

The way Sugar reach his ends user is different. There is no direct link between distribution and end users. We have deployments in the middle. And I think that’s where the opportunity to fix our model lies. One or more deployers communities can cover several fundamental roles in the making of Sugar:

  • Testing. We need people to test Sugar based products and to file bugs appropriately, either in the distribution bug tracker or in the upstream one.
  • Feedback. We need to learn more about deployments necessities. A proxy in the middle will ensure that this feedback is actually gathered and appropriately dispatched, without requiring a huge effort from the development team, which should be busy fixing the issues.
  • Release process. Sugar on a stick is fundamentally a different product from Fedora 10, even if it’s based completely on it. Only a subset of Fedora is relevant for us, and part of that is only minimally relevant to the Fedora community. Ideally the deployment community should not do any development at all. But even in that case selecting packages, creating a spin, testing it, making sure that both Fedora and Sugar developers knows about the issues relevant to Soas, are all tasks that should happen at the deployment community level.

There are several deployers communities which are forming. olpcfriends, the Sugar Labs deployment team, Caroline for Soas. We need to encourage them to grow and take their responsibilities. And we need to start considering them as a fundamental part of the process which brings our code in the hands of the kids.

Probably incoherent but I have to run out. I’m still thinking this through. Comments and criticisms are welcome. A well shaped beautiful solution even more, it would make me sleep better tonight :)

XO vs RPM

January 22nd, 2009

ivazquez has a very good post about packaging activities. He is not on the planet yet, so I’m forwarding it. Go read it!