Archive for the ‘gnome’ Category

Python helps you with your running sessions

Wednesday, August 12th, 2009

Time back I was trying parkour, but I got some old injures that didn’t let me practice it properly. Also there was too much sedentary life… I needed to start from the beginning. I needed to create a good baseline for my training.

I also started of doing some rock climbing again. Sport that I really love :-)

I was gaining some strength and I could doing again some pull ups and some boulders. But I found, as I did before with the parkour that I needed some stamina.

I also realized that parkour is a way to run, so I should be able to run. And I wasn’t…

So I’ve decided to start to run. I used to do it time ago when I got into the university. And I liked to be a bit methodical, so I could see the progress and train better. So I decided to buy a good pair of running shoes, a pulsometer and chrono. Then I realized that things have changed since I was at the university and there are a lot of stuff and software to help you with your training.

But the most of the applications I found weren’t open source and neither for Linux. Very fancy stuff like Ipod+Nike , but nothing for Linux. Nothing until I found Pytrainer !!! :-)

Pytrainers years stats

Pytrainer's years stats

This is a Python + Gtk+ application oriented to track your sessions and show you your progress. It’s for running, bike and mountain bike, but I think you can add other sports alike those ones.

It has also plugins for that fancy Ipod+Nike system and others. It seems to me a really cool stuff. I have to test it more, but I hope someone with more running training skills than me, test it and give me (and to the developers ;-) ) some feedback.

Well, let’s run! :-P

i18n bugs are important too

Monday, July 27th, 2009

I’m Spanish speaker and my English level (as the most of Spaniards) was very bad before I went to Ireland few months for learning English. I was kind of lucky because I could have some extra English lessons at the school and they taught me some technical English at the university, although I couldn’t understand well complicated and technical papers.

I think that this is the typical profile of a computer science student in Spain. Of course, there are a lot of exceptions, but I guess you got the idea.

Well, but the Guadalinex/GNU/LinEx/Molinux/Lliurex/Ubuntu’s users haven’t that profile at all. They usually don’t know any English at all. Most of them (we are talking of thousands of users) are children at schools, people who hadn’t got any contact with computers before using those distributions and people who know the typical few words in English to ask for directions on London or to ask for a pint in an Irish pub…

The most of our problems are about things we (developers) think are very intuitive but they don’t understand well. Even when they are explained in their own mother tongue…

Now let’s say that this people having a problem with their computers, with some desktop application. The most of the warnings and error messages are scary for them. Sometimes they say something useful, but the most of the time people with almost no computer skills or experience get scared and they stop doing what they were doing and think that the “machine” is broken… or whatever….

And now let’s see the same scenario, but with the warning and errors messages in a language they don’t understand… But this is not much better to have an option at the UI you don’t understand. They don’t use it, because they don’t know what is that about and to avoid breaking something…

If they don’t understand options or features, it’s like don’t having them, but also it gives to the user some feeling of “I can break something“.

Ok, this is not always like that. This is the worst scenario. But, trust me, this happen to the most of our users. I also could bet that this happen to non-English speaker users from any country.

All this introduction and explanation is to say: Please developers and triagers, don’t put internationalization (i18n) or localization (l10n) bugs as “Importance: low“.

We are pushing really hard to get the free desktops to the end users, to the schools, to the (non-technical) professionals and we need to have software well translated for that. But the i18n and l10n bugs are worst of having some strings untranslated.
Strings untranslated in one language are bad, but it’s easy to find people for translating those strings than find someone to understand the app’s code, the gettext and i18n stuff and then fix the code.

I think the developers need to be aware of the importance of fixing those bugs and what amount of users won’t use their cool features if they can’t be translated.

I don’t say those bugs are the most important ones, but sure they are not “Importance: low“…

I’ve seen to change this priority level in Ubuntu and GNOME, but I’m sure this is happening in more projects.

I would like to say one more thing, this time, just for Ubuntu. By now, there is no official tag on Launchpad for i18n or l10n bugs. I would like to ask you that if you report, triage, or find one of those kind of bugs and they have not this king of tags, to add it.

  • i18n: For those bugs about something broken in the application that makes the translations not being working, or strings not included at the translations templates (not marked for translations).
  • l10n: This is a localisation issue. Including errors in localisations, typos, etc. Adding locations and weather stations is one example. Correcting date and time formats is another.

In those cases, will be desirable you follow the Ubuntu Translations guidelines:

All translations (internationalization or localization) issues should be filled against the Ubuntu Translations (ubuntu-translations) project. From there the bugs will be triaged and assigned to the right persons and package.

You can also tag the bug with “l10n” or “i18n”.

Here is a (non-exhaustive) list of problems that should be filled against an Ubuntu Translations Project (ubuntu-translations):

  • if a string from the application is not available for translation in Launchpad Translations
  • if an application from Ubuntu main repository is not available for translation in Launchpad Translations
  • if a translation made in Launchpad Translations is not updated in the Ubuntu Language Packs
  • a source package has the wrong (or inconsistent) translation domain
  • you find a duplicate template
  • a template/translation is no longer used in Ubuntu and should be deleted from Ubuntu Launchpad Translations
  • errors in spellcheckers or language support

You can find these guidelines and much more useful info at the Ubuntu Translations’ wiki.

Well, I hope this makes sense to someone and more developers get aware of the importance of i18n/l10n bugs.

See you soon and happy hacking! ;-)

Using git behind a proxy

Friday, July 17th, 2009

This is a simple recipe about how to use git behind a proxy.

Right now I’m working behind a very restrictive firewall and I can’t get any port I need open, so I use a proxy socks for working with git,bzr,jabber and so on. I was looking for an easy way to use git with a proxy but I didn’t find easily the solution. After some researches a friend (Roberto) found the solution and we use it at work.

Let’s see it ;-)

Just in case we don’t have it:

$ mkdir ~/bin

Now the interesting part, the wrapper for the proxy:

$ cat <<EOF>> ~/bin/proxy-wrapper
#!/bin/sh
# Put your own values
PROXY_IP=10.0.0.80
PROXY_PORT=22000

nc -x${PROXY_IP}:${PROXY_PORT} -X5 $*

EOF
$ chmod +x ~/bin/proxy-wrapper

Note that you’ll need to have installed netcat (the openbsd’s one: netcat-openbsd) to be able to use the command nc with the option -x.

Then you’ll have to be sure you have setted the ~/bin directory on your PATH and then add the env variable GIT_PROXY_COMMAND. That variable will be used by git for doing pushes through git or ssh protocol:

$ cat <<EOF>> ~/.bashrc
export PATH=~/bin:"${PATH}"
export GIT_PROXY_COMMAND=~/bin/proxy-wrapper
EOF

Now you will be able to use git normally with no worries about the firewall, nat or whatever.

Come back from the GCDS

Tuesday, July 14th, 2009

Last week was amazing. So many interesting people here in the island where I was born…

I met a lot of friends from different projects and people I didn’t know before, or maybe just from their emails and posts.

Thank to everybody for coming. Thanks to the attenders, to the boards and the local team (awesome job dudes!).

Tomorrow at 8 am I will taking my flight to Sevilla. And the day after I come back to work… I’m not really happy with the idea of having between 35º and 40º C , but the GCDS was a great for collecting new ideas for Guadalinex. New contacts, interesting projects, to know the next steps in GNOME and other desktop projects… All of that give me energy to  come back to the office and do some hacking ;-)

Now I like to hack a bit with some project, like Mago. I was talking with Ara Pulido at the Summit and I think we (guadalinex) will collaborate with them making new test suits. We need them for our project so we like to make them and share with the community.

Well, let’s pack and go to sleep, tomorrow I have an early flight.

Happy hacking :-)

Last advices for the GCDS

Friday, July 3rd, 2009

I know it’s a bit late, but I hope this helps.

I’m from Gran Canaria, the place where the event is going to be, so I like to give you some advices and recommendations:

  • Sun protection. Here the sun can burn you if you don’t take some protections. Some times seems like it’s not so sunny, but it could be dangerous if you are from a northern area.
  • Don’t drink top water. The top water here is supposed to be good enough for human consumption, but the true is that nobody here drink it. We always drink mineral water. And also here was a incident a few month ago about top water’s high levels of boron. That now is normal, but you know…
  • Here there is not so many place with vegetarian food but we try to find all kind places for eat nearby the event. You’ll find that info (which will be updated) at the wiki.
  • The important phone numbers are also at the wiki. Remember the international code for Spain is +34
  • In Gran Canaria (Spain), electricity is provided normally at a voltage of 220 V and 50 Hz. But you’ll probably find adapters at the mall (Centro comercial Las Arenas) just in front the event’s place.
  • Here in Gran Canaria we talk Spanish, so you can find useful the list of common words and expressions we have at the wiki. If you already know Spanish, you need have in mind that here we have some different words (eg. Autobus = Guagua).
  • The most useful lines of guaguas (buses) for going from or at the auditorium are the lines 47 and 17.
  • Taxi is also a good option. Probably you’ll pay 4 € for a normal ride (from the Auditorium to the farthest hotels.
  • There will be a infodesk where you’ll find people who can bring you some help. The contact person will be Fabio, but there will be more people there.
  • I will be also around there during the weekend, I can’t be sure about the rest of the week. Anyways, if you need touristic/local information or just any info of Canarias or Gran Canaria, find me (Juanje Ojeda) and ask me ;-)
  • If you have a group of people who want place for lunch of dinner, ask for me at the infodesk, I’ve been talking with some places to try to arrange this king of things.

I just like to add that Gran Canaria is much more than beaches and sun. So try to get into the countryside or to different part of the island. They are so different between them hat people usually get surprised.

I’ll highly recommend to visit Teror, Tejeda, Agaete, Artenara (and the Tamadaba pine forest), Mogán, Agüimes, Santa Lucía and, of course Maspalomas. There are more interesting places, but with those you’ll get the idea ;-)

Well, we’ll meet you at the Gran Canaria Desktop Summit :-)

Help with the Hal deprecation

Tuesday, June 16th, 2009

Hi, I need somebody tell me what is going on with Hal.

Yesterday Carlos told me about Ubuntu’s plans for Karmic and the Hal deprecation. I don’t really know how could I miss this, but I didn’t know before…

Lately I was working a bit with Hal and I kinda like it. As far as I saw, there is a GNOME plan for that deprecation and hal will be split into different pieces which will be integrated into other software. Such a udev-extras, libudev, DeviceKit-*, the kernel itself and so.

I’ve been reading quite a lot about all those changes and I don’t really get the reasons for this move. And I don’t really know how the things will work when the migration be completed.

No more hal at all? No hal-info either? just udev rules (which, btw,  I find really confusing and ugly…)?

I hope someone could help me to see how the things will be at the near future around the hardware layer on GNU/Linux.

Thanks

Track your GNOME bugs from your desktop

Sunday, June 14th, 2009

Time ago I found an interesting tool for the desktop. It’s  Java client for Bugzilla called  Deskzilla.

I’m not fan of Java at all, but I have to say that the application is very powerful and it’s not so slow…

Basically it let you fill bugs, search bugs (and save the searches) in a way a lot easier than the bugzilla itself. But the coolest thing is it let you make searches offline. It has even a screenshot editor to add marks, texts and more to the screenshots before to attach them to the bugs.

I don’t know, it seems very interesting and useful for who work everyday with Bugzilla.

The only thing is this is not any kind of Free Software/Open Source code, but they have special license keys for free software project.

Actually I ask one for working with GNOME and the give me one and ask me to public it so any GNOME’s bugzilla user can use this software for free.

If anyone want the GNOME key, just take it here.

University Free Software Contest

Monday, May 18th, 2009

The last 7th of May I was at the III University Free Software Contest’s final fase. That event is a really interesting and (IMHO) very important for the free software community world in Spain.

The event takes place at several universities in Spain and have this final fase in Seville. In each university, the student that want to participate, have to start a free software project and follow some rules:

  • The project must be register in a public forge with public Subversion, wiki, maillist and so on.
  • They have to public their progress in a blog, so the people can follow the projects. All the projects’ blogs are syndicated in the contest’s planet.
  • They also have more points if they create a community around their projects.
  • And, of course, the project must have some kind of free software license.

I’ve have the pleasure and honor to be member of the jury to evaluate those projects and it’s really hopeful to see those young students learning how to develop a project with free software tools and methodologies. And some projects are really amazing and are already in few distributions or even OS.

This initiative is very helpful to the people from the universities who have great ideas, but they don’t know how the community works or even the normal developing tools. You know… sometimes at the universities the knowledge is too much theoretically… At least in Spain.

I have to apologize to the organization because in this edition I didn’t do my duty as a member of the jury. The work, my mess with the mail and the chaos inside of my head… But I have no excuses, really and I do regret no to have evaluated the projects, because there were some quite interesting…

Thanks anyway to all the organization and the rest of the jury. By the way, this event is good for me also because some members of the jury are very good friends (and GNOMErs :-P ) but living in other places and they come for the final fase so I can meet them :-)

For example, there are Carlos Garnacho and Alvaro López (alo) :-)

Well, I do hope this initiative will be replicated in other countries because the students learn a lot and after the contest there are always some interesting projects which are free software :-)

Some updates

Friday, May 1st, 2009

It’s been awhile since the last post. I’ve been a bit busy with Guadalinex and some personal stuff. So here I leave some updates to keep my personal log no so empty…

Parkour:

I’ve got some problems with my back and I had to quit (for a while) with this new passion… Anyway, it was useful because it farce me to go to the doctor make a real check and found old and deeper problems. And what it’s better, it also force me to keep doing some exercise, which is helping me in many ways :-)

Rock Climbing:

I leave parkour by now, but I’ve started to climb walls again. It sounds kind of weird, but this was a previous passion for me and it’s helping me with my back.

Ok, I’m not climbing like I was doing 8 years ago (that was more or less the last time…), but I’ve decided to start slow. Step by step.

I had to much injuries from my previous climbing period. I don’t want to do the same mistakes again.

I found some artificial walls for climbing but I’m actually doing some boulder in “el Puente de Triana” (the Triana bridge), here in Seville. There are always people climbing and people are very nice and open.

I hope soon I will be able to go to some real rock outside of  Seville…

This reminds me that in Gran Canaria are really good spots for climbing (also fot others mountain activities) so if anyone who is going to the Gran Canaria Desktop Summit like to know places, let me know. I¡m from there and I know quite well those places. Just let me know before the summit and we can do some excursion or something ;-)

Guadalinex:

There is already the Ubuntu Jaunty, the one we use as base to derive. We were quite busy setting up all the building systems, updating our projects for being working on Jaunty and trying to help Ubuntu a bit with translations, bugs and patches.

No so many patches as I would like, but we are very few people and we spend a lot of time learning how Ubuntu works. There is a lots of procedures, documentation, wiki pages, tools, place from where get info… We are still learning, but I thing the next version and collaboration will be much smoother. And we’ll be more useful for them :-)

We have alpha already in the streets and we are close to have a beta, which will be more Guadalinex alike.

Ubuntu Jaunty is a really good base. I have to said that for me is one of the best Ubuntu versions in many ways, so I expect Guadalinex be at least as good as Jaunty.

We’ll change some things from Ubuntu, as the notifications stuff. We like the new notifications but we need interaction on them for one of our main projects: Hermes. And the new notification system doesn’t allow to do any interactions.

By now we’ll deactivate this and we’ll use the standard of GNOME, at least, until the new notification implement some kind of solution for those use cases.

Few days off (offline):

I’ll go tomorrow to Vigo (Galician) until Sunday and I’ll be very offline those days. It’s my first time in Galician and I know I will love it :-)

So many time wanting to go there and just 3 days there… But sure it’s just the FIRST time and not the last :-P

git question

Monday, April 13th, 2009

Ok, I’m not really git fan. Actually, I don’t like at all… But I have to use because of some projects and now, that GNOME is moving to Git, more.

Anyway, I use it. But there are some workflows I don’t get well yet. I know the basis and maybe a bit more, but I’m far from a git-poweruser.

There are some docs and interesting threads about git in GNOME, but I have to learn a lot…

The thing is I like to collaborate with some project in which official git repos I haven’t account, so I try to use Github to public and manage my branches.

Although I don’t like git so much, I do like Github. It is a very good web gui for a DCVS and has awesome features…

But here is one of my use cases:

I try to make some changes on a Debian project (live-helper) which uses a git repository. But I work with a friend on some features and changes over the main project.

My first though was: I create a mirror of the upstream project on Guthub, my friend create a “fork” (kind of “git clone” but keeping parent-child relationship on Github) and then he can make so many branches he need and develop the different features and changes.

I like to have one branch where merge all the mature features, but also keeping the upstream mirror. So I create a branch of my mirror and I’m merging there the different features.

I think until here everything is right. If there is a better way, tell me, please.

Keep going… The problem is not all the features are interesting for the upstream projects, so the merged branch is not good place for get patches or merge from. But it is our good branch which we use for our project, so we need keep as is.

But some of our features are integrated in upstream. Which is good and thing we want. The problem is we we pull the changes from upstream, there are some changes identical, but merged or committed in other order. Some times pull a changed we push to upstream make some mess in our history…

And if we like to keep updated the different feature branches from upstream to keep working on this features but with valid and new code, from where we pull those changes?

From our mirror? the merged branch? is there another magic git way?

I know this could be very confusing. I think it’s easy to explain with graphics but my artistic skills are below zero…

But this graph could help (or not…)

I hope some git guru understand some of this uses case and give me some tips to doing better.

BTW, I couldn’t find a way to make more than one fork from one branch on Github, which would have been useful…

NOTE: I have my reasons to dislike git, but it’s now the point of this post. I don’t like flames and I don’t like argue about which DCVS is better, I just like to know how to use better this tool. Thanks :-)