Andreas Proschofsky made an interview with Jono Bacon that is really worth reading.

Some comments on this from my side:

Actually that’s all upstream work, it’s just that Ayatana is the upstream

Well, it is not. If you customize an upstream project (GNOME) you cannot call your result upstream anymore, it is downstream. And Jono doesn’t mention that Canonical requires copyright-assignment for all of the parts of Ayatana.

Update: My original wording was: “Technically upstream means not done by a distribution (downstream)” which seems to have led to some confusion so I try to clarify that.

Historically a lot of the work has been done in upstream GNOME but that’s changing

Prove? I don’t think it’s changing even if Canonical probably wants to change that.

So sure it’s a delicate situation but it’s the same with Red Hat building GNOME Shell which is a completely different user experience to GNOME.

As I think that Jono knows better I wonder why he is oversimplifying things here. While GNOME Shell is pushed by Red Hat everybody was invited to contribute and there is also a community of people not working for Red Hat that is heavily contributing to the Shell. GNOME Shell is not a Red Hat project.

Part of it is the fact that the design team that we’ve got working on Ubuntu has a different set of ideas. So besides the mobile space – where we are building a new User Experience with Unity – the focus for Ubuntu is GNOME with these additions.

I think everybody in GNOME would love to work together with the Canonical design team (and luckily it is happening sometimes). If they would present different ideas how they see the future of GNOME (Shell) there would be really nice discussion IMHO.

Conclusion

I really don’t mean to say that Canonical is evil because that would be unfair. They support GNOME in various ways with sponsership, patches, bug-reports and ideas.

As they are a company aiming on making money I can kind of understand their strategy on trying to be better, more innovative and different from other Linux distributions. This is their legal goal with Project Ayatana and it is one of the reasons they do not care too much about pushing things upstream.

But I think they make a mistake if they think that they can replace thousands of volunteers working on upstream projects with developers they have to pay in-house. In short term this may lead to more innovation but in the long term they will suffer in quality and quantity.  You might remember the story with Novell’s main menu which was also innovative but didn’t ever end up being widely used.

Anyway, it is far more important to look into the future than into the past. This will also mean that people should push upstream work and GNOME Shell on the Ubuntu Developer Summit and I am sure there are many people there who care a lot about GNOME and Ubuntu.

GUADEC follow-up

2. August 2010

GUADEC

As others have mentioned, GUADEC was great. Thanks a lot to the organizers. Especially it rather felt like being part of a big family instead of just being a guest there. And I think that was the first GUADEC where people started dancing. So congratulation to Stephane, Lenka and Patricia for winning the dancing awards!

It is also always great that people not yet involved with GNOME come to GUADEC because they want to become a part of the project.

GNOME 3.0

With the discussion about delaying GNOME 3 and after watching the gnome-shell talks I wondered a bit if we go into the right direction. Actually, I think we do though nobody can say today if all this will be successful. My point is that we basically copied the desktop idea from others in the past years with little changes and little innovation. Now we really try to innovate which brings the risk of failure but also the big chance to really increase our market share. Remember that we had this 10×10 goals?

So, as conclusion, we might fail but at least we tried.

Development Documentation and Tools Hackfest

The wiki page has been updated to finally contain a date, which is 2nd to 5th of December 2010. This might still change if it causes problems for too many people, so please contact me if you cannot make it on that weekend. Also we still need sponsorship and I didn’t get an answer from the board, yet. Stay tuned!

Anjuta

While still trying to release a new development version of anjuta I mostly worked on getting the python support from GSoC merged. There is still a lot to polish but the basic stuff is now set up in the python-support branch and will hopefully hit master soon. This will eventually lead to auto-indentation, auto-completion and calltips for Python.

Long story short

On LinuxTag I was talking to Vincent and Stormy about improving our developer experience and Stormy was proposing to do some kind of hackfest. At that time I really wasn’t sure how that should be done and who to attend.

Anyway, after talking to many of the documentation guys at GUADEC we kind of came up with a plan and a basic set of people to attend.

The Goal

In short: Make GNOME an awesome and state-of-the-art development platform. That probably means to redefine lots of things in the developer documentation and tools to attract new developers and make existing more happy.

In the end, that should mean more and better GNOME applications of course.

When, Where, What, Who

The only really fixed thing we have is a locations that is

Openismus Office

Berlin

Germany

Thanks a lot to Openismus for sponsering the venue!

Currently we are thinking of scheduling the hackfest at the beginning of December 2010, detailed dates are to be announced when we know who is attending to avoid conflicts.

I already listed some people interested in attending on the wiki page but we really want more people to attend.

Why you should attend

We are looking for the following kind of people

  • (Development) documentation people
  • Developers of the development tools
  • Developers interested in making things easier
  • People who tried to get started in development and ran into all these difficulties we want to solve
  • Especially people doing Python (Julie: hint, hint!) and Vala development (or some other language) because we really want to make sure to have those as first-class citizens.
  • Designers to make things looking great
  • Marketing people because a lot of what we do will be a great marketing thing

I also know that quite a number of people at the major distributions (Red Hat, Novell, Canonical) are working on fixing that problem and I would love to have them around. We are also still looking for more sponsers to be sure that everybody is able to attend.

Stay tuned, don’t hesitate to ask and if you are thinking you could be the right person to attend, well, you are!

If you look to the left you will see that after nearly four years on Planet GNOME I now have a hackergotchi (thanks Kat) and I am joining the famous hat fraction.

GUADEC

This is even more important because now you can finally find the person that broke half of your development environment at GUADEC because, yeah,
I'm attending GUADEC
and I am

Sponsored by GNOME Foundation

This is also a good place to remind you of the world-famous FreeFA cup where you can save the honour of your country. In the last years this has been lots of fun so be sure that you aren’t missing it.

Five Questions

1)Who are you and what do you do?

Sometimes, I really would want to know that ;) On other days, I am a 25 year old student/trainee who currently builds trains for work and hacks on the GNOME Development Tools in his spare time.

2) How did you get into GNOME?

I wrote a patch

3) Why are you coming to GUADEC?

It always much better to meet all the people you only now from blogs, IRC and mail in person. Most people in the GNOME community are actually pretty awesome and fun to hang out with. And don’t forget about the beer event of course…

4) In 1 sentence, describe what your most favorite recent GNOME project has been. (Doesn’t have to be yours!)

GNOME Shell (yeah, I know some people said this already), because it is the first time since about Windows 95 where someone really tried to reinvent the desktop user experience.

5) Will this be your first time visiting the Netherlands?

No, I have been to Amsterdam and I sailed on IJsselmeer twice. Nice country, a bit flat though.

LinuxTag

As Vincent already mentioned we had a nice talk at LinuxTag and there is also a (german) radio interview with me about GNOME3.

Was fun to talk to some people, especially to one of the KDevelop developers who faces about the same problems as we do: There are 10 people working full time on QtCreater while Anjuta and KDevelop probably have 5 spare time contributers each :| Awesome though, that we are still competitive :)

(cross-posted from the Anjuta News Blog)

Today Anjuta 2.31.3 was released today and it brings some nice features and bug fixes (see NEWS)

What’s new?

  • Massimo Cora’ put a lot of energy into the speed of the symbol database population and brough it down to about 15 seconds for 1000 files.
  • Abderrahim Kitouni finished up his GSoc ’08 work and the language support for vala got merged into trunk. This means we now have autocompletion and calltips for Vala.
  • Naba Kumar ported the class-inheritance plugin from GnomeCanvas to FooCanvas, made it much faster and integrated it back into master

What’s happening behind the scenes?

  • Sébastien Granjoux worked hard on the new project-manager branch but unfortunately it won’t be finished in this cycle. But once it is finished it should bring a much better project management to anjuta.
  • Naba Kumar is working on improving the database queries for the symbol-db which should in the end result in faster and better autocompletion and in general better code.
  • James Liggett started working on a completely new and innovative interface to the git version control system. It will integrate version control much better into the workflow.
  • Abderrahim Kitouni also worked on a plugin loader for python and javascript plugins. In the end we should hopefully support even more plugin languages with gobject-introspection. He blogged about it.
  • In general we follow the development of libpeas with much interest. This might replace our own plugin infrastructure in the future.
  • The glade plugin was cleaned up. It doesn’t provide any new features (actually, some were even removed) but it should be more stable now. This work is targeted to allow to drag signal handlers from glade right into the code. Currently this mostly meant cleaning glade internals but there is still hope finish it for 3.0.

How you can help!

  • Test the latest release and file bugs! Though declared as “unstable” it should be equally stable as 2.30.x.
  • Help us fixing bugs! There is lots of stuff to do including a new icon (we would like to keep the horse which was a unicorn before the horn was ripped off, otherwise you are pretty free) and a new splashscreen.
  • Help to improve language support! We have language support plugins for C/C++, JavaScript and Vala now but most of the Anjuta developers are C coders. We need people to test this and if possible also fix it. Vala support is written in Vala itself which should make it easier for you.
  • Documentation, especially tutorials are another point were you can help us and any potential GNOME contributor in getting started with Anjuta.

Privacy topics are surrounding everybody these days. It is not really the question if you have something to hide but rather if you want the whole world to know about it.  And even more important, do you want that the whole world will still be able to find out in 20 years. The internet doesn’t forget.

Don’t make it too easy

While you can read everywhere that you should disable JavaScript and use tor both isn’t very useful in your everyday life yet. But there are some things that you can do and that make it at least more difficult to track your internet activity:

  • Save cookies only “for this session”
  • Disable flash cookies
  • Avoid putting too much stuff into areas where you cannot control them (mail, social network, etc.)

Let me explain this a bit more. Everybody is using cookies to track you. Google does, facebook does, all advertisement companies do. By deleting cookies when you quit the browser there is a good chance that they won’t be able to recognize you next time[1]. You might want to make some exceptions here for convenience.  For example, I allow cookies from bugzilla.gnome.org because I trust this site. But don’t do it for popular sites like Google (or GMail, Youtube). Google connects your gmail, search and youtube login so they have even more power tracking you.

Disabling flash cookies is not that easy but there are plenty of sites explaining how it works. If you have a html5-Browser you can probably avoid flash completely.

Let’s talk about the mail and social network thing. I know that GMail is highly popular and it is one of the best mail interfaces probably. Anyway, you should be sure that you really want this. It breaks down to two major problems:

  • You are probably permanently logged into GMail! This way, every Google search you do is probably tagged with your real name as well as every YouTube video.  And of course you might use the Google Calendar for your appointments. This is a quite big part of your life, yeah? Ever imagined this data in the wrong hands?
  • Social networking can be fun. I also don’t think that there is a too big reason not to do it. But be careful what you want to show to the world. And keep in mind that the cookie that facebook (or any other social network) will place while you are logged in might be used by lots of partner sites. It is a bad idea to hang out on facebook the whole day – it also might demage your real life ;)

I use Google and GMail as an example here. Same is probably true for Hotmail/Bing or most services that are free (as in beer) .

In the end it might be cheaper to pay for some services that offer far better privacy. That isn’t really expensive, I am sure there are good mail providers out there and even if not, hosting a web/mail server (for you, your friends, your family) isn’t that expensive either. Just compare your mobile phone use to your mail use and how much money you spent on them.

Privacy in GNOME

I wonder that nobody brought that up already but in some parts we are going a dangerous road by making things more easy for the user. Tracker and especially Zeitgeist collect lots and lots of data that might be interesting for you, but also for your employer and maybe also for your jealous gril/boyfriend.

It is time to think about that before blindly using that technology. That implies some things we should do (some are already done):

  • Add a “private mode” to GNOME where nothing is logged
  • Make it easy to delete history/database entries as well as deleting the whole history
  • Make sure that people are aware when their data is used (on the desktop or in the cloud). This becomes more important for things like a single (shared) account dialog between empathy and evolution that other applications might access using dbus.
  • All the above should be available especially in environments where you don’t have control over the whole computer (e.g. no administrator rights, etc.)

Keep in mind that data is pretty worthless until it’s connected. Just my 2 cents…and next time I will tell you about the stunning new developments in Anjuta, promise ;)

[1] It’s not impossible: EFF browser fingerprint

This post is a spin off from the recent foundation-list discussion regarding the future direction of GNOME. It was pointed out that GNOME might not be a very attractive platform for new developers. The reasons was among others that there is nothing like a standard way of developing GNOME applications. Of course, everybody is somehow using automake and autoconf and some editor and bugzilla but not more than that.

Compared to windows, about any new developer will stumble over Visual Studio. On Mac, it is the same with XCode. For these tools there is tons of documentation, tutorial and books available and they are actively promoted with the platform.

For GNOME 3.0 we should also start having something like this. This doesn’t mean than present developers have to change their development model but they should be aware that their personal model might not be suitable for new developers especially those with no Linux/free software experience. As such, we should promote the tools we have to make life of new developers easier and ensure that they work with the workflow of a specific project.

In a perfect world, I would announce a hackfest here now, but I won’t ;) But I would encourage people to help  anyway. I have setup a wiki page to collect ideas. The major points are in my opinion:

  • Write good tutorials how to build GNOME applications without touching command-line
  • Setup a website (maybe on library.gnome.org) hosting all the information for getting started with GNOME development

Everybody is invited to contribute!

GNOME-Track on LinuxTag

1. March 2010

We have been offered the chance to run a GNOME-Track on LinuxTag 2010 (June 9th to 12th) in Berlin. As we would love to do that we still need 2-3 talks. So if you are located in Germany or want to come to LinuxTag and have something interesting to say about GNOME, please either contact Vincent or me so we can add you to the list. For now we only need a title and a short discription of your talk. It’s possible to do talks in german or in english at your option.

We would especially encourage some of the zeitgeist/gnome-activity-journal developers to do a talk as we know that some of them live in Germany.

The deadline for submission is today! Don’t blame me for that, we really would have liked to get this out earlier…

Let’s make this a rocking event for promoting GNOME!

Javascript support in anjuta

21. December 2009

Finally, after far too long time I found time today to merge Maxim’s great Javascript support patches from GSoC 2009 into master. You find screenshots and more information on his blog.

Thanks a lot for your work Maxim!

P.S.: Remember that scipting is for loosers while C is for real (wo)men ;)

Some instructions here because the porting guide in the Gtk+ docs is quite short at the moment:

Convert the files

gtk_builder_convert <old_glade_file> <new_gtkbuilder_file>

Code changes

  • Remove #include <glade/glade.h>
  • GladeXML* => GtkBuilder*
  • glade_xml_new (FILE, “first_widget”, NULL) becomes

    GError* error = NULL;
    GtkBuilder* builder = gtk_builder_new();
    if (!gtk_builder_add_from_file (builder, FILE, &error)
    {
    g_warning ("Couldn't load builder file: %s", error->message);
    g_error_free(error);
    }
  • glade_xml_get_widget (gxml, “widget_name”) becomes GTK_WIDGET (gtk_builder_get_object (builder, “widget_name”))
  • glade_get_widget_name (widget) can be replaced by gtk_widget_get_name(widget)
  • glade_xml_get_widget_prefix (gxml, “prefix”) can be emulated by gtk_builder_get_objects(builder) together with manual filtering. It returns a GSList* instead of a GList* though.

That’s it basically. Don’t forget to adjust your Makefile.am to install the correct files and update POTFILES.in!