It takes two

At the last UDS we talked quite a bit about LoCo teams in during the Leadership Mini Summit. One interesting point was that many seemed to have the impression that events have to be big, everything has to follow an established protocol or a rigid process. That’s not the case.

I’m sure my friend Jorge Castro would agree with me if I told you to JFDI. The result of not doing things is that things will not get done. Setting up an event is sometimes just a matter of sending a mail to the team and asking everyone to come to a certain place at a certain date and time. Another point discussed was the number of people. Seriously, if it’s just two of you who hang out and make Ubuntu better or just have a good time together, that’s so much better than not meeting at all. :)

The reason I write all of this is that we’re getting closer to Ubuntu Global Jam again and some of you might be considering setting up an event and adding it to the LoCo Team Portal and you might still be a bit unsure. There’s really no need to.

It’s very very likely you don’t need a huge venue with lots of bells and whistles, maybe just meeting in a coffee shop will be good enough? A room in your local university? Or invite people to your place? Just somewhere with internet might be good enough. You might get to know some new local team members and it’s all about having a good time.

We have instructions up how to set up a jam, a video, and you can always ask for advice. Join the Ubuntu Global Jam today!

Спасибо всем!

If you track the Packaging Guide page very closely, you will have noticed it already. We have the main piece of Ubuntu Development instructions available in

  • English
  • Spanish
  • Russian

now, which is just fantastic. Months of hard work were translated and some small issues sorted out by the unstoppable Dmitry Shachnev. Without his outstanding help, in translations, the guide itself, in Debian and upstream, this wouldn’t have been possible.

But also a giant “Спасибо всем!” to everybody in the Russian translator community. The Packaging Guide is not easy to translate, but still you managed to get your translations completion over 70%, which is what we require for getting the translations online.

You can help!

If you speak a language other than English, you can help. Go to the Translation page of the Packaging Guide and translate. Taking a leaf out of Dmitry’s book, I pledged to try and translate one page of German strings per day and maybe you can do the same for your language. Here’s how things stand right now:

Accepted translations:

  • Spanish (99%)
  • Russian (79%)

Translations which need more work:

  • Brazilian Portuguese (46%)
  • German (15%)
  • Japanese (14%)
  • French (7%)
  • Indonesian (5%)
  • Dutch (2%)

Translations which just were started: Italian, Telugu, Australian English, Vietnamese, Macedonian, Swedish, Turkish, Latvian, traditional Chinese, Chinese (Hong Kong), Slovenian, Hungarian, Catalan.

If you can, please do help out with this effort. You’ll enable people speaking your language to help out with Ubuntu and maybe you’ll get interested in Ubuntu development yourself.

Thanks again everyone. This is just awesome! :-)

Going mobile

Many asked me in the last time what became of the Ubuntu on Nexus7 project. I’m happy to say that it’s going really well. Some weeks ago it was already very easy to install Ubuntu on a Nexus7, since then things got better and better. Many bugs were ironed out, but the piece most folks have been concentrating on recently was the desktop-r-reduced-power-ram blueprint.

The spec says:

In the past few cycles, we saw that our desktop took more and more RAM to run the full session. Also, more daemons mean more interruptions on the CPU, and less battery file. We will get services to not run when not needed and work on improving the code of those components to consume less resources

Why is this so relevant in a mobile setting? Simple. Most mobile devices are less well-equipped than the common Desktop or Laptop, and every interruption, every bit of CPU usage, every disk access costs precious battery life. Fixing this kind of bugs will have a great and positive impact for all devices running Ubuntu.

Here’s a quick summary of the work which has been done:

  • Robert Ancell: look at why lightdm is using 30MB (it’s due to the memory locking – without locking it drops to 3.7M)
  • Michael Terry: Make lightdm selectively lock memory instead of using mlockall
  • Sébastien Bacher: look if gnome-keyring needs to be running all the time (needs to, restarting would mean having to unlock it again, e.g ask user for password every time)
  • Sébastien Bacher: look at what is making goa run for some users (it’s e-d-s)
  • Sébastien Bacher: set up follow-up meetings about the topics we didn’t cover during the session
  • Ken vanDine: check with online team if signond needs to be running all the time
  • Ken vanDine: investigate long running telepathy-indicator/mission-control
  • Iain Lane: drop g-c-c recommends on goa so it’s not installed by default
  • Oliver Grawert: seed zram-conf
  • Brian Murray: look at what update-notifier is used for nowadays, identify if those functionalities could be replaced/moved to upstart jobs [http://wiki.ubuntu.com/UpdateNotifier]
  • Colin Watson: fix upower memory leaks
  • Colin Watson: reduce update-notifier memory use

Update: Sébastien also mailed the ubuntu-devel@ list with a nice summary of the work.

We need your help

If you have a look at the desktop-r-reduced-power-ram blueprint you can see that there is still quite a bit of work which need to be done. There are assignees for some of the work items, but all of them will be happy to hear you offer help. The effort is coordinated on #ubuntu-desktop, so you best head there and start chatting with the team.

More information – live hangout

Tomorrow, 7 Feb 2013, at 9 UTC I am going to talk with my friend Sébastien Bacher on http://ubuntuonair.com about this initiative, so if you want to find out more, be sure to tune in or watch the recording in the ubuntuonair youtube channel afterwards.

Automated Testing Hackfest

We all want more quality. We all wasted too many hours trying to fix broken software and we all know that new users struggle the most when facing crashes or other unexpected results. We probably all also agree that testing is a good idea and if it’s automated, then that’s even better.

Automatically exercising large parts of some software’s functionality helps a lot in guaranteeing that things still work, even if the code or some underlying foundations change. The idea is to write the test-case once and have it do its work whenever bits change and let us know if things break unexpectedly – especially before users run into bugs.

Tomorrow, 1st February 2013, we are going to hang out in #ubuntu-quality on irc.freenode.net to have a Hackfest about Automated Testing.

So what’s going to happen there?

  • We are going to have seasoned Ubuntu developers who will introduce you to autopilot (for UI testing) and autopkgtest (for integrating tests with the package in a more general sense).
  • We have a list of tests we want to work on together (but you can work on your own tests if you like as well).
  • We are going to have lots of fun and make Ubuntu a better place.

If you are interested, that’s great, because this is one of the coolest contributions to Ubuntu you can make. For autopkgtest it might be good to have at least a bit experience with scripting or programming, for autopilot less so. Be curious, be there, make Ubuntu better!

Check out our docs here and see you tomorrow!

 

Next week: Ubuntu Developer Week

I mentioned the upcoming Ubuntu Developer Week in my last blog post already, but I thought I’d mention a couple more great sessions we are going to have during the event.

If you haven’t read the original post yet, here’s the quick details: running from 29th to 31st January 2013 we are going to have sessions, mostly on IRC, some on Hangouts-on-Air, where you get a introduction to all kinds of topics surrounding Ubuntu Development. After attending the sessions you will have a good idea how things roughly fit together, how to get started, who to talk to and what’s going on. It’s the perfect opportunity.

Here’s a few quotes from session leaders:

Benjamin Drung

Benjamin Drung

Benjamin Drung and Michael Bienia (of whom the internet does not seem to have any pictures whatsoever) are going to lead the Developers Roundtable and have this to say:

Do you have questions about Ubuntu development? Here you have the best opportunity to ask everything you want to know, because we will have a number of developers there who can answer your questions for you.

 

David Planella

David Planella

David Planella, who will talk about “Writing apps for Ubuntu”, says:

Learn how to use the best open source tools and technologies to write your apps on Ubuntu, both on the desktop and on the phone. You’ll be able to get your first app running in a matter of minutes!

 

 

Michael Hall

Michael Hall

Michael Hall never gets enough, so he’s giving two sessions at UDW this time around. Here’s what he has to say about Ubuntu App Developer tools: “Ubuntu provides a variety of tools to help you write and manage your applications. This session will cover everything from bootstrapping a new project, to making the final packages installable through the Software Center and everything in between.”

He will also talk about Unity integration: “The Unity desktop provides many opportunities for your application to integrate with the full user experience. Learn how to add your Application to the Unity messaging or sound indicators, add your own indicator, extend the Unity Launcher and much more.

Oliver Grawert

Oliver Grawert

We’re excited to have Oliver Grawert here, who will talk about Creating Ubuntu images and the Nexus7 images in particular. He will talk about “[t]he Ubuntu image build infrastructure at a glance, what tools do we use, how do they interact and how is the hardware set up for building the official Ubuntu images” and “[h]ow are the nexus7 images different from “normal” Ubuntu images, what can be hacked to make small modifications, how can they be re-packed or supplied with a different root file system“.

 

Alex Chiang

Alex Chiang

Alex Chiang will introduce us to the world of memory leaks and says:

As we polish and prep Ubuntu for mobile devices, a key activity will be hunting down and squashing memory leaks. This session will discuss the basic theory of leaks, introduce valgrind and our brand new apport-valgrind wrapper, and how to analyze a valgrind log file. A C/C++ background will be helpful to get the most out of this session, but is not strictly required.

Nicholas Skaggs

Nicholas Skaggs

QA mastermind Nicholas “balloons” Skaggs will talk us through “Automated Testing with autopilot” and says:

Learn about how autopilot is utilized by the unity team and quality team to test the ubuntu desktop. We’ll also provide an overview of what autopilot can do, show and run some example testcases, and give you the knowledge needed to get started writing your own autopilot testcases.

 

We are super happy to have brought this line-up of speakers to Ubuntu Developer Week this time around. Head to https://wiki.ubuntu.com/UbuntuDeveloperWeek to review the full schedule, how to join in and find out more.

Share the news with your friends and bring your questions! :-)

Ubuntu Developer Week is back

The times for Ubuntu have never been more exciting. Cloud, server, desktop, laptop, TV, tablet, phone – everything runs Ubuntu or is soon going to. This makes developing Ubuntu very special, because fixes which go into Ubuntu in one place will benefit all form factors and all circumstances where it’s used. By improving Ubuntu you make millions of people around the globe happy.

During every 6 month release cycle we run Ubuntu Developer Week. It’s back and we’re going to have it from 29th January to 31st January. During the event we will have online sessions where seasoned Ubuntu developers introduce you to their respective area of expertise or to Ubuntu Development in general.

We will have many great sessions, from hands-on introduction to packaging and Ubuntu development to talks about how to quickly get involved in certain teams and interact with other projects. We will talk about tools and infrastructure, fixing bugs, finding memleaks, working with apps, create Ubuntu images and much much much more. This is the best opportunity to get a feel for how Ubuntu development works, get to know people and ask all the questions you might have.

I talked to a few session hosts, read below what they had to say.

Martin Pitt

Martin Pitt

Martin Pitt, who will talk about Automated Testing, says: “We have been, and are changing the Ubuntu development process to employ automated testing and avoid introducing regressions, and to improve confidence, focus, and development speed. In the first talk I will give an overview about the various kinds of tests that we do, so that you know where to watch out for failures and get debugging information. The second talk focuses on how to write tests, i.e. which technologies are available for e.g. hardware and GUI related behaviour or system-wide integration checks.”

 

Stefano Rivera

Stefano Rivera

Stefano Rivera, who will talk about Upstreams and Debian in particular, said: “So, working effectively in Ubuntu means also working with the teams and people upstream who wrote the software we distribute. I’ll talk about why this is important, when it’s necessary, and how to go about it. In particular, our most important upstream is Debian. Debian has a rather unusual (though powerful) bug-tracker. We’ll cover finding, submitting, and modifying bugs on it.

Chris Wilson

Chris Wilson

Chris Wilson, project leader of the Hundred Papercuts Team, says: “Unity may be the shiny new thing that everyone loves, but style without substance is only so much fluff, and the substance of Ubuntu is still its GTK-based apps. Once Hundred Paper Cuts focuses it’s attention on that substance, rubbing out the little annoyances that get under our skin every day we’re using Ubuntu. This session will introduce you to the project, how it works, and how to get involved. If you want to contribute to Ubuntu in a way that has the biggest impact on the quality of experience for the end user, then don’t miss this.

 

Bhavani Shankar

Bhavani Shankar

Bhavani Shankar, said about his talk about patch systems: “Many a time we wonder how to integrate a particular fix a particular part of the code in a program and upload into repositories without having to change code each time by hand and making it clumsy. In this session I’m going to show how to use different patch management systems that are in practice now.

About his talk about the app review process in Ubuntu he says: “In this session I’m going to explain the present workflow of reviewing apps and give an introduction into the new app dev upload process to automate reviews.

The forum we use for this is IRC, as it makes it easy to interact for many people without losing track, you can easily copy/paste and we can save the logs as searchable docs afterwards. You join in by simply connecting to #ubuntu-classroom on irc.freenode.net.

Check out the schedule and find more info on the Ubuntu wiki. We hope to see you all there, please let you friends know too. :-)

What’s going on with the Nexus 7?

Raring!

Many have asked me what’s been going on with the work on Ubuntu on the Nexus 7 recently. A lot of people put work into getting the raring images ready for public consumption. 12.10 worked great on the Nexus, but there were a few blockers on getting 13.04 to work as well. On this road among other things these issues were fixed:

  • A new onboard pre-release made it into 13.04 which fixes many bugs already and makes our on-screen keyboard a lot easier to use. Thanks a lot to the onboard team.
  • The new Unity stack got into raring, which is now automatically tested after commits and auto-released into 13.04. This is a huge milestone from the Unity team. Among the issues fixed was a nux problem, which constituted a blocker.
  • The new raring images use oem-config to present us with an installer window, where you can specify a user name, the wireless network you want to use and other bits.
  • Many many other issues were fixed as well.
Ubuntu on the Nexus 7

Ubuntu on the Nexus 7

So what does this mean for you now? You can now very easily put Ubuntu 13.04 on your Nexus 7. It won’t need any additional PPA, it’s stock raring, you won’t have to reflash, but can just do your regular updates and enjoy the latest and greatest improvements day by day.

This is a huge achievement and will allow us to do better and more immediate testing and hacking on the device.

 

Hacking

One thing we want to improve on the Nexus 7 (and in Ubuntu in general) is memory consumption. Alex Chiang has put together some great blog posts on how to help with finding memory issues and debugging them. They are absolutely worth a read and an effort worth getting involved with. Here are the links:

If you want to make Ubuntu better and have a bit of a development background, be sure to check them out.

 

Meeting the team

Everybody who has been working on Ubuntu on the Nexus 7 has documented things on the wiki pages, so if you are excited about this, be sure head there first. Also does the team hang out in 24/7 in #ubuntu-arm on irc.freenode.net, so feel free to drop by, say Hi and get to know the others.

These are exciting times for Ubuntu and you can be part of it. :-)

Live from the Automated Testing Hackfest

Today is the first in a row of Automated Testing Hackfests for Ubuntu in the 13.04 cycle. The QA team is already busy, fixing, improving and adding test cases for all kinds of packages in Ubuntu.

If you have a bit of background in programming you can easily get involved. Just join us in #ubuntu-quality and ask all the questions you have. Everybody’s super-friendly and knows their stuff. We have documentation and a list of tests we want to look into, but if you have your own packages you want to take care of, that’s fine as well. Just have a look at the wiki page to find out how to get started.

At 12:00 UTC Martin Pitt will give a demo of autopkgtest and how to use it. So make sure you join in and let Martin help you get cracking on making Ubuntu the best-tested collection of software out there.

Automated Testing Hackfest

A great way to contribute to Ubuntu is to ensure its functionality always works. What’s even better is that our infrastructure allows us to write tests once and continuously test if the tests still all pass, so whenever a package is updated or changed, we run the tests and can see if the functionality we rely on is still there and working perfectly.

This puts us into a situation where we all can contribute tests once and can basically monitor forever if the code still works. Personally I believe this to be one of the most efficient contributions you can make to Ubuntu (and to Open Source in general).

We want more people to use Open Source software and we all want more quality. We don’t want regressions, we don’t want subtle bugs which nobody ever got around to test. We don’t want anyone (least of all less technical people) to be surprised by bugs.

I hope you are excited about these possibilities as much as I am. If you are, I’d like to invite you to our Automated Testing Hackfest on Thursday, 13th December 2012. Many experts around Automated Testing are going to be hanging out in #ubuntu-quality, there are going to be demos, a lot of talk about automated testing infrastructure and tools and of course a lot of live-hacking!

Jean-Baptiste LallementMartin Pitt

There will be many more, but Jean-Baptiste and Martin already confirmed they’ll be around to help out and get us started! Be sure to join us in #ubuntu-quality on irc.freenode.net and check out the Automated Testing Hackfest page for some more info!

The Packaging Guide finally does speak Spanish

We have achieved a huge milestone in the development community. For years we wanted translatable packaging and development documentation. It’s there. If you head to http://developer.ubuntu.com/packaging/ you can see the following:


The Ubuntu Packaging Guide (Spanish) – would you like to learn how to package or become an Ubuntu Developer? Here’s a comprehensive, topic-base guide that explores and describes the main concepts of packaging. It is available as


This is absolutely awesome. From now on we will be able to add languages and have up-to-date Packaging and Development docs available whenever they are complete enough.

This work was brought to you by many people who worked very hard to get all the bits right, both on the packaging, integration, beautification and translations sides. You all know who you are. Be proud of your work. This will ease the steps of many people into helping out with Ubuntu!

As always this is ongoing work and the great thing is, you can help out:

This makes me a very happy man and it’s great we finally got there. Now let’s get all the other translations up to scratch! :-D