» tagged pages
» logout
Ubuntu
Return to Ubuntu

Planet Ubuntu

(or Cancel)

(Editing anonymously: to be credited for your changes, login or register a new account)

other page actions:

Tags Applied to this Topic

1 person has tagged this page:

Saturday, May 17, 2008

Juan Carlos Torres: The Disconnected Life

Two weeks ago, an idea struck me while I was extensively cleaning my room. Of course I had to turn off the computer and my modem since I was rearranging everything totally (I need to setup my internet connection and router in the other room one of these days…). I suddenly got the urge to try not to go online, or even open the computer for 24 hours. Knowing my attachment (read: addiction) to IRC, I believe it would be quite a challenge. And so I went through with it. From 09:00 to 09:00 of the next day, I, abruptly and without warning (sorry, online friends), disappeared from the Web.

And I’m glad I took that personal challenge. I’ve been able to give myself, for a full 24-hours, some time to think about my life, where it has been, and where it’s headed, as well as my goals. It came at an opportune time (just after a very hectic first quarter and right before going back to school) to think and reflect. And I actually enjoyed that feeling of being offline, specially from IRC (though I really missed my friends). That 24-hour, computer-free plan turned into (almost) a week without IRC, though I still needed to check my mail and RSS feeds… maybe next time I can try doing without those as well.

It was a great experience. I wish I could have spent a few days in a some sort of nature retreat like a forest or mountain (not the beach :P). I think every hacker should have a sort of “retreat” like this once in a while, to recharge and refocus and avoid burning themselves out. You may not be churning code in those few days, but it’s time well invested. Important, but not urgent, as Stephen Covey would say. Besides, you can also be productive at that time. Not only was I able to gain some perspective in my life, I was able to also able to think about what free software tools I wish I had at my disposal, or the KDE stuff that I want to do. I was also able to analyze how I spent, or rather, procrastinated, my time each day and where the time all goes (IRC and RSS… I love you and hate you at the same time.). Hopefully that realization would help me spend my time better in the future. Hopefully…

But for now, it’s back to the connected and disturbed life. )

Saturday, May 17, 2008

Tim Penhey: Code in Launchpad

Launchpad offers many things to developers, and open source software developers in particular. One of these things is the ability to host Bazaar branches. For those that have looked a little deeper, they will have noticed that there are four types of branches in Launchpad: Hosted; Mirrored; Remote; and Imported. Hmm, this isn't really what I was intending to talk about at all, but I'm going to go with the flow.

Hosted branches are those where Launchpad is the primary public location of the branch. Hosted branches are normally created by pushing a branch directly to Launchpad. Before you do that though, you need to have registered on Launchpad, and supplied an SSH key. This is how Launchpad knows who you are. There are two ways you can push a branch to Launchpad: one is via SFTP; and the other using the Bazaar smart server (bzr+ssh).

As an example I'm going to use my alias-command bzr branch. The complete SFTP location would be sftp://thumper@bazaar.launchpad.net/~thumper/bzr/alias-command, and the smart server one bzr+ssh://thumper@bazaar.launchpad.net/~thumper/bzr/alias-command. These are a bit unwieldy, so we extended the lp type urls for bzr to support writing if the launchpad plug-in knows who you are. In order for you to do this you use the lp-login command. bzr lp-login will tell you the username that is currently set. If you have not done this yet, you'll see a message like "No Launchpad user ID configured." I set mine by saying bzr lp-login thumper. This stores thumper as the launchpad_username in the bazaar.conf file. This also means I can use bzr push lp:~thumper/bzr/alias-command to push to my hosted Launchpad branch.

Mirrored branches allow you to have your branches stored publicly in some location that you control, and you let Launchpad know where this is. Launchpad will then update its copy of your branch every six hours. This is handy if you don't have an SSH key, or you have a slow network connection, or you just like having your branches available on your own server.

Remote branches are a bit different. Remote branches were sort of created out of necessity. Some people were registering mirrored branches with unreachable locations. Some of these were possibly by mistake, but quite a few were obviously inaccessible. But more strange is that those branches were linked to bugs or blueprints. There was obviously a desire to have branch meta-data there, but not actually allow Launchpad to get access to the branches. So we have remote branches. You cannot get a copy of a remote branch from Launchpad as Launchpad does not have a copy of it.

Imported branches are those branches where Launchpad get the code from either CVS or Subversion, and puts it into a Bazaar branch. I was really wanting to talk about this as I saw two projects recently where we are importing code that I didn't know about. One is my favourite music player, Amarok, and the other was MPlayer. Just out of curiosity I looked at both of these branches on Launchpad. The Amarok one has 12195 revisions as I'm writing this, and the last revision was 11 hours old, and MPlayer had even more revisions, at 26761. However that isn't even the cool bit. What is really nifty is you can go bzr branch lp:amarok or bzr branch lp:mplayer to get the code. Just to check I did just that, and got a copy of the amarok source. It was the first bit of C++ I had looked at in a long time (it used to be all I did).

Anyway, that was what I really wanted to say. Oh yeah, and bzr rocks.

Saturday, May 17, 2008

Freddy Martinez: Chiglug meeting tomorrow.

The Chicago GNU/Linux uses group will be having a meeting tomorrow.  I am giving my first talk to the GLUG tomorrow so if you are interested bring yourself, your mind, good vibes and great beer.  Saturday, May 17th, 2008 @ 3pm Location: Institue of Design 350 N LaSalle Blvd 2nd Floor Room 202 [...]

Friday, May 16, 2008

Celeste Lyn Paul: Four Words for Funpidgin (Updated w/ comments)

I’ve been meaning to comment about this, and was reminded by today’s Coding Horror.

Funpidgin, a fork of the popular Pidgin Instant Message client, was created when Pidgin developers had diverging opinions on how the input box of the chat window should resize by default. According to the Funpidgin website, What makes us different from the official client, is that we work for you. Unlike the Pidgin developers, we believe the user should have the final say in what goes into the program.

Four words I have to say to Funpidgin: Users Are Not Designers.

This attitude takes participatory design to all-new (and very dangerous) level. You go from user-centered design: keeping users in mind while designing a product, to user-directed design: catering to every users’ whim without consideration of the consequences (at least, users who know how to use mailing lists and bug trackers, who are not representative of a broad user audience for an instant messenger client).

What you end up getting is this:

Homer Simpson Car

Good luck guys.

– Updated 2008-05-17 00:30 –

Besides all the things I obviously never said nor remotely hint to, between the lines or not, it seems like pantsgolem is the only one who Got It. This isn’t about the [Fun]Pidgin product or the decision to fork, or the design decisions the projects made concerning the text widget. It is about the fundamentally flawed development process Funpidgin has adopted in the name of usability and design and their ignorance (or ignore-ance if they just choose to ignore it) of this decisions implication to the project.

When a project declares that users will have the final say in functional requirements, it is on its way down a slippery slope. Sure, there may be some good examples where a problem was easily solved and a user had a good idea, but what about all the ideas that are obviously a bad design decision? What happens when you have users who have conflicting opinions? Or users who have no knowledge of other users, cases, and scenarios beyond themselves? This is why users are not designers. Even if the real designers are users of a product, they are trained to be objective. They don’t replace the user with themself, but they are empathetic towards the user.

Also, what about the developers? Don’t they want retain the right to create and preserve a certain kind of experience? What if the project wants to focus on a specific user type, but a minor user type requests a feature that will disrupt that group? What happens when developers start to ignore certain ideas and only take the ones they like? Aren’t they acting as the designer and preventing the user from playing designer?

By adopting this mission statement, Funpidgin has set itself up to make some possibly fundamentally poor design decisions. I don’t care about the project itself or the design decisions they’ve made. What I do care about is that the rest of the open source community learn something from it so we don’t repeat these mistakes.

Of course I want to see users participating in open source projects and providing their feedback, that is the basic principle of participatory design. Of course I want to see developers thinking of users besides themselves, that is the basic principle of user-centered design. What I don’t want to see is development driven by users who don’t understand the problem they are experiencing or know who else they will be effecting with their change. We don’t have developers who fully understand how different users of their software might effect each other, and yet we expect users think beyond themselves and do this?

User feedback is important. Open source celebrates the fact that users can take an active part in the community by reporting bugs and driving the development of features through requests. But users are just an indicator of how well we are doing. We want their feedback, but we also want to do what’s best for them.

Friday, May 16, 2008

Celeste Lyn Paul: Four Words for Funpidgin

I’ve been meaning to comment about this, and was reminded by today’s Coding Horror.

Funpidgin, a fork of the popular Pidgin Instant Message client, was created when Pidgin developers had diverging opinions on how the input box of the chat window should resize by default. According to the Funpidgin website, What makes us different from the official client, is that we work for you. Unlike the Pidgin developers, we believe the user should have the final say in what goes into the program.

Four words I have to say to Funpidgin: Users Are Not Designers.

This attitude takes participatory design to all-new (and very dangerous) level. You go from user-centered design: keeping users in mind while designing a product, to user-directed design: catering to every users’ whim without consideration of the consequences (at least, users who know how to use mailing lists and bug trackers, who are not representative of a broad user audience for an instant messenger client).

What you end up getting is this:

Homer Simpson Car

Good luck guys.

Friday, May 16, 2008

Daniel Stone: faq: dsa keys

A quick FAQ: the reason all DSA keys have been removed from fd.o and we aren't accepting any new ones is that they are vulnerable to man-in-the-middle attacks if they have ever been used (not just generated) on a system with a predictable RNG: see Steinar's summary of the maths. We're going with precedent of debian.org rejecting DSA keys, and a general desire to be safe rather than sorry. RSA keys are the default in OpenSSH anyway, so I'm not really sure why you'd want to generate DSA.

Friday, May 16, 2008

Jono Bacon: Life ain’t dull

Right now I am over in beautiful Prague for FossCamp and the Ubuntu Developer Summit. Running and attending these events is always a real treat - there is always a genuine feeling of free software in action; a real meeting of minds coming together with a common ethos. Part of why I love the FossCamp/UDS trip is that it involves a huge amount of diversity. Here at FossCamp we have people from a tonne of projects, including Ubuntu, Jokosher, Sun, EFL, Terminator, Strigi, Xesam, Ubuntu Brainstorm, Linux User Groups, GNOME, Glom, gtkmm, Campware, KDE, Amarok, KOffice, Edubuntu, Xubuntu, Ubuntu Studio, Tango, Novell, Red Hat, Inkscape, freedesktop.org, OpenSuSE, OpenChange, Samba, Debian, MOTU, swfdec, gvfs, OpenOffice.org, eBox, LKSCTP, Elisa, HAL, dbus…

Its been a busy time recently and I have been out on my travels over in San Francisco, Boston, Cambridge, Detroit and London. Its been a hugely fun time, and I got to meet some incredible people - thanks to everyone who made me feel exceptionally welcome. I also want to give a quick shout out to the folks at ubuntu-ma, PenguiCon, CommunityOne, Creative Commons, Mako, Matt Lee, Barton, and my friends over in Lexington who are making Ubuntu work on things that live in your pocket.

Oh, and as a slight postscript, I have finally fulfilled one of life’s little ambitions - to not only meet, but a share a photo with the venerable tron guy:

Not only did I have a photo taken with tron guy - he came looking for me to deliver a parcel with a fake beard in it. While it was happening I felt like I was in some kind of acid trip. We then had a serious and detailed conversation about MOTU, while he was stood there in full tron regalia. Just when I thought my world crazy, it got a little crazier… )

I was going to finish this entry here, but sod it, here are a few other things living in my brain right now:

  • The Severed Fifth machine continues to roll - the server is up, the mailing lists are on their way, the announcement is written, the logo ideas are flowing in, the photo-shoot is in post-processing, and the content is nearly there in terms of initial work. Thanks to that group of amazing people that are making it happen.
  • You know, gyms never really had an appeal to me, but I have been a few times recently - I had a really good session in there a while back and figured it would be fun to repeat.
  • Wow, it seems this post of mine caused a bit of a stir over what is considered music. Always amazes me when people accuse creativity that does not meet their taste as being unintelligent or just noise. I am not expecting people to like the music I like, but I am expecting people to understand and respect the work that goes into any art-form, irrespective of their taste. Everything is worth listening to, even Cannibal Corpse, lounge style or flute beatboxing.
  • Someone should invent an “anti-mint”, something you put in your mouth to take away the taste of mint. Imagine those situations when you wake up in the morning, brush your teeth and then want to drink orange juice. Personally, I want both clean teeth and orange juice and to not sacrifice one or the other. Someone…the anti-mint…lets make it a reality.
  • I bought GTA4 and it rocks. It also drove me to be involved in a police chase, but that’s a story for another time.
  • While in video game news, I got totally whipped at Guitar Hero III, and while despite fervent denial, I got completely annihilated. Mind you, I spent more time posing and prancing around the living room at my competitors apartment than focusing on the game in hand. Well, that’s my excuse and I am sticking to it.
  • Recently jonobacon.org seems to have been picked up in some of these “top blog” listings. You are as surprised as I am, but for my regular readers, thanks for helping to push my little chunk of randomness up in the blog ranks. It really does go to show how many bored people are populating the Internet. )
  • You know, Cancun is an amazing looking place, would love to get over there sometime. )
  • Thinking of a new phone - Nokia N95 8GB or a Blackberry? Any thoughts? It should be good for email, have a decent camera, preferably have a GPS and preferably have an alpha-numeric keypad.

I think that’s enough for now. )

Friday, May 16, 2008

Nick Ali: FOSSCamp 2008 Prague Day 1

The first day of FOSSCamp in Prague has ended. As with most FooCamp style conferences, the sessions provided excellent opportunies to learn more about upstream projects and find ways to collaborate.

As the day kicked off:

FOSSCamp 2008 in Prague

Early in the day, the schedule looked like this:

FOSSCamp 2008 Day 1 Schedule

Eventually, more sessions were added and some sessions continued on to a second time slot.

My favorite session so far? Dan Shearer, from Samba, talking about the latest developments that have opened up interesting opportunities for them. Dan said OpenChange, a feature functional Exchange server replacement should be available by SambaXP next year.

More pictures coming soon!

Friday, May 16, 2008

Launchpad News: Launchpad Logo Contest Winner Announced

We’re very pleased to announce the results of the Launchpad Logo Contest!
(See https://help.launchpad.net/logo)

The number and quality of submissions took all of us by surprise. We are
immensely pleased with the results and are in awe at what the community
has done. We had so many interesting designs that it was very difficult for
us to declare a single winner.

However, there was one design that we felt embodied what Launchpad is all
about. We were impressed by how it summarised so much about Launchpad and
yet remained beautifully simple.

So, we’re delighted to say that the winner is Eugene Tretyak!

You can view his design here: https://help.launchpad.net/logo/winning-entry

The center of the design represents how Launchpad makes it easy for
people to collaborate and connect with one another, while the surrounding
facets represent the different services that Launchpad provides.

Above all, it shows that all projects are themselves a gem and, when
combined with other gems, can turn into something brilliant.

Eugene is both an Ubuntu member and Kubuntu developer and will receive
an official Ubuntu Messenger Bag.

There are also two runners-up whose designs made the selection process very
challenging for us. Mariana Ravicole and Ambroise Coutand will each receive
a 25 GBP gift certificate to the Canonical Store in recognition of their
highly competitive and very popular designs.

Additionally, we would also like to give an honourable mention to Donn
Ingle for his contributions. Donn’s varied designs were a popular
favourite.

Finally, the Launchpad Team would like to thank everyone who participated
in the contest. We are humbled by the response and are deeply thankful to
all the participants.

Joey Stanford

Friday, May 16, 2008

Og Maciel: XFCE completely translated to Brazilian Portuguese

I’m extremely proud to announce that the XFCE desktop environment, well known for being a lighter alternative to GNOME or KDE, is completely translated (upstream) to Brazilian Portuguese!

xfce_logo

A total of over 80 different programs and components off the XFCE and Goodies repositories, with over 6000 strings, I believe that XFCE is the first complex desktop environment to be completely translated to Brazilian Portuguese! The core components had been 100% translated for about 1 week now, as can be see in the stats page, mas yesterday I finished my research and noticed that all the other components were also finished. Now I get to keep my eye on any changes that may happen until the 4.4.6 release takes place.

Friday, May 16, 2008

Sridhar Dhanapalan: IRC on the run

Those who remember my ancient quest for the perfect IRC solution might be interested in ancient quest for the perfect IRC solution might be interested in these posts by Aaron Toponce explaining how to couple a remote irssi session with GUI notification. I’m still quite happy with my current Bip + Xchat combination, but I’ve always lusted after the 1337ness of irssi. Icecap looks intriguing, but my first instinct tells me that their solution is over-engineered.

Note: If you see duplicated words in the above post, I am aware of them. Wordpress is doing something funny and I can’t figure out what it is. When I get the time I’ll upgrade to 2.5.

LotD: Ubuntu theme for Symbian S60v3 (works on my Nokia N95)


©2008 Sridhar Dhanapalan.
This work is licensed under a Creative Commons Attribution-Share Alike 2.5 Australia Licence.
Creative Commons BY-SA Licence

.

ShareThis

Friday, May 16, 2008

Morgan Collett: The future of Sugar


The news is out that OLPC and Microsoft have announced an agreement to “make a dual boot, Linux/Windows, version of the XO laptop”. Nicholas Negroponte’s announcement on community mailing lists (unfortunately HTML only but plain text on the wiki) states:

To enable the Sugar environment to reach as many children as possible, particularly in the poorest areas of the world, OLPC must be able to bid on educational technology contracts, some of which require that Microsoft Windows be able to run on our hardware. The increased volumes will lower the XO-1’s price, already lowest in the industry with capabilities no other laptop shares.

The press release and other news coverage states that trials of XP on the XO will begin in June in some countries.

Engadget’s coverage ends with:

As for Sugar? You’ll still be able to get it, but we have a sinking feeling about its future.

Let’s address that right now.

The future of Sugar

First, some quotes from Negroponte’s announcement:

OLPC is substantially increasing its engineering resources and all software development continues entirely on GNU/Linux. We will continue to work to make Sugar on Linux the best possible platform for education and to invest in our expanding Linux deployments in Peru, Uruguay, Mexico and elsewhere.

No OLPC resources are going to porting Sugar to Microsoft Windows, although as a free software project, we encourage others to do so. The Sugar user interface is already available for Fedora, Debian and Ubuntu Linux distributions, greatly broadening Sugar’s reach to the millions of existing Linux systems. We continue to solicit help from the free software community in these efforts. Additionally, the Fedora, Debian and Ubuntu software environments run on the XO-1, adding support for tens of thousands of free software applications.

Sugar as an upstream project

OLPC wants to “enable the Sugar environment to reach as many children as possible” and part of that goal is to have Sugar running on as many platforms as possible. That requires some degree of decoupling from OLPC’s XO builds.

There is now a Sugar roadmap, inspired by GNOME’s release process. It is still aligned with OLPC’s needs for the XO build release process.

Here is the announcement of the Sugar Labs Foundation, Walter Bender’s approach to Sugar development as an upstream project.

Folks, Sugar isn’t going away. We already know that Sugar on Linux can use the innovative features of the XO-1 that XP cannot. Let’s show the world what we can do, standing on the shoulders of thousands of regular people.

[ Coming soon: Ways to get involved in Sugar and collaborative Activity development ]

(Disclaimer: I work for OLPC. The above opinions are mine.)

Friday, May 16, 2008

Jeff Bailey: Gay-Marriage in California

One of the proudest moments I had as a Canadian was sitting in the Senate visitor's gallery watching the debates on same-sex marriage that led to the full legalisation in Canada. In coming down to the US for work, I was sad to come to a place that not only didn't allow it, but had actually had a number of ballots in states voting specifically that the marriage referred to "One Man, One Woman".

I found a transcription of the Hansard of Prime Minister Paul Martin's introduction of Bill C-38 (The Civil Marriage Act). The logic in there for why Canada needed to legalise same-sex marriage is quite specific to Canada, but he talks about why it's important for the issue not to come to a vote:

The Charter was enshrined to ensure that the rights of minorities are not subjected, are never subjected, to the will of the majority. The rights of Canadians who belong to a minority group must always be protected by virtue of their status as citizens, regardless of their numbers. These rights must never be left vulnerable to the impulses of the majority.


I don't really understand the US system of rights. I hope that the protection of the right to love another consenting adult and make a commitment to them becomes the law of the land throughout the United States.

I love being married. I get the joy of being able to come home to my belle and share my day, spend time, and know that to the best of our ability, we're going to try to grow old together. I'm so happy that this ruling has come down and that in California the debate is now over.

Thursday, May 15, 2008

John Meinel: This Week in Bazaar

This is the second in a mostly-every-week series of posts about whats been happening in the development world of the Bazaar distributed version control system. The series is co-authored by John Arbash Meinel, one of the primary developers on Bazaar, and Elliot Murphy, Launchpad developer and compulsive conflict avoider.

Plugins

One of the nice things about Bazaar is the API, which enables new features to be added with plugins. Once a feature is polished and proves widely useful, it can move from a plugin into core bazaar. Most of the plugins are hosted/mirrored on Launchpad, and are a simple "bzr branch lp:bzr-plugin ~/.bazaar/plugins/plugin" away. For the rest, they are indexed at http://bazaar-vcs.org/BzrPlugins. Here's a quick summary of some of the plugins we are using on our laptops right now:

bookmarks: This allows me to store an alias for a branch location, so it is easier to branch/push to a common location. So I can type 'bzr get bm:work/foo' instead of 'bzr get bzr+ssh://server.example.com/dev/stuff/foo'

bzrtools: a collection of commands which provide extended functionality. Such as 'bzr cdiff' to display colored diffs and 'bzr shelve' to temporarily revert sections of changes.

difftools and extmerge: These plugins let me view differences in meld or kdiff3 (or anything that you want to configure, really), and do merges via meld.

email: Keep people informed of what you are working on by sending an email after every commit.

fastimport: This plugin allows me to import code from my friends mercurial repository and push it to launchpad.

git: this gives me read access to a local git repository

gtk: This is the Bazaar Gtk GUI, which has some nice tools like visualize and gcommit.

htmllog: Useful for generating html formatted logs for publishing on the web.

loom: Allows me to manage several "layers" of development in a single branch, and colloborate on those layers with other people.

notification: Gives a GUI popup when a pull or push completes

pqm: This formats a merge request to PQM. PQM then takes my branch, merges to main, runs tests, and commits the merge if all was well. This ensures that we always have passing tests in the main tree!

push_and_update: This updates the working tree when I push my branch to a remote server. Very useful for doing website updates.

removable: I try to keep all branches very small for easier review, so I have a lot of branches at one time. This tells me which branches have already been merged to the main tree (and thus can be removed). It can also let me know why something is not ready to be removed.

stats: Provides 'bzr stats' which gives a simple view of how many people have committed to your project and how many commits each has done.

update_mirrors: 'bzr update-mirrors' recursively scans for Bazaar branches and updates them to their latest upstream.

vimdiff: Adds the commands 'bzr vimdiff' and 'bzr gvimdiff'. Which opens vim in side-by-side mode, showing you your changes.

qbzr: Another great GUI for bzr, this one is written using Qt.


1.5rc1, 1.5 this Friday

Continuing our pattern of having time-based releases, bzr 1.5rc1 was released last Friday, and 1.5 final should be released tomorrow. Ever wonder how we churn out releases so regularly? The biggest factor enabling us to make consistent releases is our use of a Patch Queue Manager. It ensures that all of our 11,724 unit tests pass before allowing any merge into mainline. Even when lots of changes are landing, the trunk can be considered release quality. Most of the developers use the tip of mainline for their day-to-day work, which means that any changes get immediate use, rather than waiting for a release candidate.

By releasing every month, we have reduced the tendency to rush patches, trying to sneak them in before the next release. We know that there will be another release just around the corner, so we can land complex patches right after a release. For each release cycle, we have 3 weeks of "open" development, where any approved (peer reviewed) patch can be merged. Then we have a feature freeze week, where only bug fixes are supposed to be merged. At the end of the freeze week, we release RC1 and reopen mainline for development. If no regressions are found in RC1, it is tagged as final and released after one week.

The bzr-1.5 release is mostly focused on fixing small ui bugs, a couple of performance improvements, and some documentation updates.

(edit: 2008-05-16, the merged plugin changed and is now called bzr-removable)

Thursday, May 15, 2008

Tiago Faria: The problem, with facts

Well, things have finally calmed down regarding the OpenSSL problems. Not that it’s necessarily bad to see that many posts and news. One can actually think it’s a good thing problems are addressed and discussed, but I was starting to get tired of reading nothing more than a bunch of complaints.

News flash: Shit happens!

I actually had a big text about the package maintainer, the severity of the problem, etc, etc, etc written, but it’s better to just be quiet, since I can’t do it any better.

Exploitation

After reading so much about it, I was intrigued on how super-easy-because-of-the-32,767-possible-outcomes to crack attack would work, and hdm (from Metaploit) answered them on a great paper:

http://metasploit.com/users/hdm/tools/debian-openssl/

The keys were generated and made available:

http://sugar.metasploit.com/debian_ssh_dsa_1024_x86.tar.bz2
http://sugar.metasploit.com/debian_ssh_rsa_2048_x86.tar.bz2

And a script to use them has been published to Metasploit:

http://milw0rm.com/exploits/5622

After giving it a try on a unpatched virtual machine, I understood the real severity of the problem.


Copyright © 2008 Tiago 'gouki' Faria
This feed is for personal, non-commercial use only.

Thursday, May 15, 2008

Celeste Lyn Paul: Kopete Profiles (Short Update)

I hadn’t heard or seen anything from the Kopete devs yet, but I did ping Matt earlier this week to help spread the word to the rest of the project. Remember, this is an activity for you the developers, not me. I make myself available to answer questions and facilitate discussion, but the purpose of the user research profiles is to get developers more aware about their users. I will be at UDS next week and will be checking up on the Kopete User Research Profile once I get back.

Thursday, May 15, 2008

Mark Shuttleworth: Discussing free software syncronicity

There’s been a flurry of discussion around the idea of syncronicity in free software projects. I’d like to write up a more comprehensive view, but I’m in Prague prepping for FOSSCamp and the Ubuntu Developer Summit (can’t wait to see everyone again!) so I’ll just contribute a few thoughts and responses to some of the commentary I’ve seen so far.

Robert Knight summarized the arguments I made during a keynote at aKademy last year. I’m really delighted by the recent announcement of that the main GNOME and KDE annual developer conferences (GUADEC and aKademy) will be held at the same time, and in the same place, in 2009. This is an important step towards even better collaboration. Initiatives like FreeDesktop.org have helped tremendously in recent years, and a shared conference venue will accelerate that process of bringing the best ideas to the front across both projects. Getting all of the passionate and committed developers from both of these into the same real-space will pay dividends for both projects.

Aaron Seigo of KDE Plasma has taken a strong position against synchronized release cycles, and his three recent posts on the subject make interesting reading.

Aaron raises concerns about features being “punted” out of a release in order to stick to the release cycle. It’s absolutely true that discipline about “what gets in” is essential in order to maintain a commitment on the release front. It’s unfortunate that features don’t always happen on the schedule we hope they might. But it’s worth thinking a little bit about the importance of a specific feature versus the whole release. When a release happens on time, it builds confidence in the project, and injects a round of fresh testing, publicity, enthusiasm and of course bug reports. Code that is new gets a real kicking, and improves as a result. Free software projects are not like proprietary projects - they don’t have to ship new releases in order to get the money from new licenses and upgrades.  We can choose to slip a particular feature in order to get a new round of testing and feedback on all the code which did make it.

Some developers are passionate about specific features, others are passionate about the project as a whole. There are two specific technologies, or rather methodologies, that have hugely helped to separate those two and empower them both. They are very-good-branching VCS, and test-driven development (TDD).

We have found that the developers who are really focused on a specific feature tend to work on that feature in a branch (or collaborative set of branches), improving it “until it is done” regardless of the project release cycle. They then land the feature as a whole, usually after some review. This of course depends on having a VCS that supports branching and merging very well. You need to be able to merge from trunk continuously, so that your feature branch is always mergeable *back* to trunk. And you need to be able to merge between a number of developers all working on the same features. Of course, my oft-stated preference in VCS is Bazaar, because the developers have thought very carefully about how to support collaborative teams across platforms and projects and different workflows, but any VCS, even a centralised one, that supports good branches will do.

A comprehensive test suite, on the other hand, lets you be more open to big landings on trunk, because you know that the tests protect the functionality that people had *before* the landing. A test suite is like a force-field, protecting the integrity of code that was known to behave in a particular way yesterday, in the face of constant change. Most of the projects I’m funding now have adopted a tests-before-landings approach, where landings are trunk are handled by a robot who refuses to commit the landing unless all tests passed. You can’t argue with the robot! The beauty of this is that your trunk is “always releasable”. That’s not *entirely* true, you always want to do a little more QA before you push bits out the door, but you have the wonderful assurance that the test suite is always passing. Always.

So, branch-friendly VCS’s and test-driven development make all the difference.  Work on your feature till it’s done, then land it on the trunk during the open window. For folks who care about the release, the freeze window can be much narrower if you have great tests.

There’s a lot of discussion about the exact length of cycle that is “optimal”, with some commentary about the windows of development, freeze, QA and so on.  I think that’s a bit of a red herring, when you factor in good branching, because feature development absolutely does not stop when the trunk is frozen in preparation for a release. Those who prefer to keep committing to their branches do so, they scratch the itch that matters most to them.

I do think that cycle lengths matter, though. Aaron speculates that a 4-month cycle might be good for a web site. I agree, and we’ve converged on a 4-month planning cycle for Launchpad after a few variations on the theme. The key difference for me with a web site is that one has only one deployment point of the code in question, so you don’t have to worry as much about update and cross-version compatibility. The Launchpad team has a very cool system, where they roll out fresh code from trunk every day to a set of app servers (called “edge.launchpad.net”), and the beta testers of LP use those servers by default. Once a month, they roll out a fresh drop from tip to all the app servers, which is also when they rev the database and can introduce substantial new features. It’s tight, but it does give the project a lot of rhythm. And we plan in “sets of 4 months”, at least, we are for the next cycle. The last planning cycle was 9 months, which was just way too long.

I think the cycles-within-cycles idea is neat. Aaron talks about how 6 months is too long for quick releases, and too short to avoid having to bump features from one cycle to the next. I’ve already said that a willingness to bump a feature that is not ready is a strength and not a weakness. It would be interesting to see if the Plasma team adopted a shorter “internal” cycle, like 2 months or 3 months, and fit that into a 6 month “external” cycle, whether Aaron’s concerns were addressed.

For large projects, the fact that a year comes around every, well, year, turns out to be quite significant. You really want a cycle that divides neatly into a year, because a lot of external events are going to happen on that basis. And you want some cohesion between the parts. We used to run the Canonical sprints on a 4-month cycle (3 times a year) and the Ubuntu releases on a six month cycle (twice a year) and it was excessively complex. As soon as we all knew each other well enough not to need to meet up every 4 months, we aligned the two and it’s been much smoother ever since.

Some folks feel that distributions aren’t an important factor in choosing an upstream release cycle. And to a certain extent that’s true. There will always be a “next” release of whatever distribution you care about, and hopefully, an upstream release that misses “this” release will make it into the next one. But I think that misses the benefit of getting your work to a wider audience as fast as possible. There’s a great project management methodology called “lean”, which we’ve been working with. And it says that any time that the product of your work sits waiting for someone else to do something, is “waste”. You could have done that work later, and done something else before that generated results sooner. This is based on the amazing results seen in real-world production lines, like cars and electronics.

So while it’s certainly true that you could put out a release that misses the “wave” of distribution releases, but catches the next wave in six months time, you’re missing out on all the bug reports and patches and other opportunities for learning and improvement that would have come if you’d been on the first wave. Nothing morally wrong with that, and there may be other things that are more important for sure, but it’s worth considering, nonetheless.

Some folks have said that my interest in this is “for Canonical”, or “just for Ubuntu”. And that’s really not true. I think it’s a much more productive approach for the whole free software ecosystem, and will help us compete with the proprietary world. That’s good for everyone. And it’s not just Ubuntu that does regular 6-month releases, Fedora has adopted the same cycle, which is great because it improves the opportunities to collaborate across both distributions - we’re more likely to have the same versions of key components at any given time.

Aaron says:

Let’s assume project A depends on B, and B releases at the same time as A. That means that A is either going to be one cycle behind B in using what B provides, or will have to track B’s bleeding edge for the latter part of their cycle allowing some usage. What you really want is a staggered approach where B releases right about when A starts to work on things.

This goes completely counter to the “everyone on the same month, every 6 months” doctrine Mark preaches, of course.

I have never suggested that *everyone* should release at the same time. In fact, at Ubuntu we have converged around the idea of releasing about one month *after* our biggest predictable upstream, which happens to be GNOME. And similarly, the fact that the kernel has their own relatively predictable cycle is very useful. We don’t release Ubuntu on the same day as a kernel release that we will ship, of course, but we are able to plan and communicate meaningfully with the folks at kernel.org as to which version makes sense for us to collaborate around.

Rather than try and release the entire stack all at the same time, it makes sense to me to offset the releases based on a rough sense of dependencies.

Just to be clear, I’m not asking the projects I’ll mention below to change anything, I’m painting a picture or a scenario for the purposes of the discussion. Each project should find their own pace and scratch their itch in whatever way makes them happiest. I think there are strong itch-scratching benefits to syncronicity, however, so I’ll sketch out a scenario.

Imagine we aimed to have three waves of releases, about a month apart.

In the first wave, we’d have the kernel, toolchain, languages and system libraries, and possibly components which are performance- and security-critical. Linux, GCC, Python, Java, Apache, Tomcat… these are items which likely need the most stabilisation and testing before they ship to the innocent, and they are also pieces which need to be relatively static so that other pieces can settle down themselves. I might also include things like Gtk in there.

In the second wave, we’d have applications, the desktop environments and other utilities. AbiWord and KOffice, Gnumeric and possibly even Firefox (though some would say Firefox is a kernel and window manager so… ;-)).

And in the third wave, we’d have the distributions - Ubuntu, Fedora, Gentoo, possibly Debian, OpenSolaris. The aim would be to encourage as much collaboration and discussion around component versions in the distributions, so that they can effectively exchange information and patches and bug reports.

I’ll continue to feel strongly that there is value to projects in getting their code to a wider audience than those who will check it out of VCS-du-jour, keep it up to date and build it. And the distributions are the best way to get your code… distributed! So the fact that both Fedora and Ubuntu have converged on a rhythm bodes very well for upstreams who can take advantage of that to get wider testing, more often, earlier after their releases. I know every project will do what suits it, and I hope that projects will feel it suits them to get their code onto servers and desktops faster so that the bug fixes can come faster, too.

Stepping back from the six month view, it’s clear that there’s a slower rhythm of “enterprise”, “LTS” or “major” releases. These are the ones that people end up supporting for years and years. They are also the ones that hardware vendors want to write drivers for, more often than not. And a big problem for them is still “which version of X, kernel, libC, GCC” etc should we support? If the distributions can articulate, both to upstreams and to the rest of the ecosystem, some clear guidance in that regard then I have every reason to believe people would respond to it appropriates. I’ve talked with kernel developers who have said they would LOVE to know which kernel version is going to turn into RHEL or an Ubuntu LTS release, and ideally, they would LOVE it if those were the same versions, because it would enable them to plan their own work accordingly. So let’s do it!

Finally, in the comments on Russell Coker’s thoughtful commentary there’s a suggestion that I really like - that it’s coordinated freeze dates more than coordinated release dates that would make all the difference. Different distributions do take different views on how they integrate, test and deploy new code, and fixing the release dates suggests a reduction in the flexibility that they would have to position themselves differently. I think this is a great point. I’m primarily focused on creating a pulse in the free software community, and encouraging more collaboration. If an Ubuntu LTS release, and a Debian release, and a RHEL release, used the same major kernel version, GCC version and X version, we would be able to improve greatly ALL of their support for today’s hardware. They still wouldn’t ship on the same date, but they would all be better off than they would be going it alone. And the broader ecosystem would feel that an investment in code targeting those key versions would be justified much more easily.

Thursday, May 15, 2008

Cody A.W. Somerville: Teach a man to fish…

The recent OpenSSH vulnerability has left me pretty distraught. It really rocked my world… kinda like a “this is actual reality” moments I’m sure we all have every once and awhile where we discover these core ideas or beliefs we had held simply don’t hold up or shatter in the real world. I’m worried about what kind of impact this is going to have on Debian and Ubuntu’s image. What kind of new policies will crop up? What will happen to the credibility of open source software development? Have we shot ourselves in the foot? This vulnerability existed since 2006 and that flies right in my face because I’ve always talked about the “many eyes” principle and how because everyone sees the source code and people are inherently good, chances are the problems will get fixed before secretly exploited. Although I don’t know if this vulnerability has been exploited yet, I certainly don’t mean that big, fat, security issues like this get left in the code for several years when I’m talking to potential adopters of Ubuntu. Another way I relate to the problem is that a debian maintainer made this upload and he or she made a mistake - I’m always paranoid I’m going to make mistakes myself and to see something like this happen on the pretty much worst case scenario scale is rather horrifying to a degree…. Anyhow, I guess we can learn from this and move forward. Lets try and make this as positive as we possibly can, can we?

Anyhow, the real point of my post is to talk about a reply I saw on a Fedora forum the other day. An individual who was obviously new to the software he was trying to use had asked a question and someone replied to the effect “In the spirit of teaching a man to fish…. go google it”. The first question that popped into my head was “When you go to teach a man to fish, do you tell him to go fish or do you go actually show him and help him do it. You’d probably catch the first few fish to demonstrate, no?”. This leads me to believe that our policy regarding not telling people to “go google it” is an excellent one. By giving the answer (and often telling them *how* we got that answer), we provide the user with a number of valuable things: a) the answer they were looking for (which can relieve a lot of stress and anxiety for someone with a question they really want answered), b) a positive experience, c) an opportunity to build relationships with other members of the community, d) they start learning how to start finding and getting that information themselves. I believe if we all made an active effort to ensure we detail how we got our answers or where more information can be found on a topic we’d improve our effectiveness further; we’d be “teaching them to fish” and helping them become better netcitizens. So the next time someone gives you a hard time about how we deal with users, maybe you should point to this post and explain how you found it ;].

Anyhow, I haven’t slept since Tuesday night (so sorry if this post doesn’t make any sense, lol) and I haven’t been sleeping very well the last few days before that (maybe subconscious anxiety about going to Prague?). It is actually 6:30am here and I’m at work finishing up stuff so that I can minimize my anxiety of anything going wrong while I’m away from the office<g>. My flight leaves in 5 hours so I should probably get home ASAP and get to the airport soon. Oddly, I’ve been very calm and collective about the whole trip even though I know I’m eager and excited to be there. However, now that I’m only hours away from boarding the plane, I have to admit I’m starting to feel a few butterflies in my tummy. I suppose it has seemed so surreal thus far that I wasn’t phased but now t… I guess I’m having another “moment”, aren’t I? )

Cheers.

Thursday, May 15, 2008

Christophe Sauthier: Long time no blog... but the UDS is coming :)

It's been a long long time that I have not blogged...more than 2 months. I know it is bad.

Well to sum up I've been really busy with many stuffs : the Hardy release, some marvellous holidays all accross Mexico, lots of activities around ubuntu-fr and quite a lot of work for my company.

But I have to blog on the upcoming event : thanks to my company I am heading to the Ubuntu Developper Submit in Prague. It will be really great to meet all the guys with who I, try, to work dialy :) So if you see my face (and my 2 meters that might be with it) come and talk to me !

Thursday, May 15, 2008

Jordi Mallach: 30

And today, I finally turn 30. I've been grumpy about this day getting closer and closer for the last three or four years, which have passed in front of my eyes with me nearly not noticing.

The last year has had more downs than ups, and at times has been quite dark. I feel things are slowly getting better, and I spend more time looking forward than back, which certainly should help.

Tomorrow I'll hold a small party at home with some friends, but the big and proper event will be in September, when five or six people in our colla, born in 1978, will celebrate our 30th birthday, in a massive, weekend-long party already dubbed La festa dels excessos. You shouldn't miss this one!

Thanks to the many people who have phoned, texted or emailed me already. It reminds me that I'm surrounded by people who love me and were there when I needed them.

Page 1 | Next >>
Username:
Password:
(or Cancel)