Category Archives: Life

PythonBrasil[7] = Excellent!

Last week from 29-Sep to 01-Oct we had the amazing 7th PythonBrasil conference, for the first time in São Paulo.

Since I’ve start to use Python in 2002 I loved the language, but after getting introduced to the PythonBrasil community in 2004 I’ve boosted my development skills, got some friends and even my first job (INdT-Recife) was a kind recommendation from Osvaldo Santana in 2005.

By 2005 we had the 1st PythonBrasil Conference, then called PyConBrasil, here in Campinas with the help of UNICAMP and our amazing non-stop contributor Rodrigo Senra. It was very cool, I even presented a talk there… and it motivated me to go to following conferences in 2006 and 2007 as well.

However if starting to work at INdT reduced my spare time since late 2006, after ProFUSION was born in 2008 I had no time to participate in the lists or even go to conferences. What a shame!

I couldn’t see how shameful it was until I did this PythonBrasil in 2011. I’ m yet to see a conference with so kind people. People still remembered me and I was ashamed when I couldn’t remind their names… although they did remember mine (NOTE TO CONFERENCE: bigger names next year!) Some would even let me know they still use Eagle-Py, something that I already forgot about. And people I had closer contact before were willing to talk as if we had met last week. Amazing.

During these talks I’ve catch up with Rodrigo Senra, Luciano, Osvaldo, Erico, Marco André, Sidnei, Fernando and many more I couldn’t remember. However one of the talks was very special: talked to Gustavo Niemeyer about Go programming language. That’s right, people were so kind and open we had a keynote about Go, and we talked a lot afterwards without problems! :-P  Gustavo showed me some nice details about the language and my mind is now burning! I must do Enlightenment Foundation Libraries (EFL) + Go = EGO, a perfect GUI tool.

But I was of use… not just a leecher! I went there to present 3 talks (slides in Portuguese!):

Last but not least, I’d like to thank everyone that did this amazing conference possible!

DesktopSummit 2011 – Berlin

I had the pleasure to attend the DesktopSummit 2011, a great event that happened in Berlin from 5-12 of August 2011. As I’ve mentioned in an earlier blogpost my focus was to highlight Enlightenment’s opinion that performance matters and that we need broader standards in freedesktop.org. Of course I explained a bit about our history and the current status of E17. The presentation file can be downloaded here.

All in all the event was great, not just due the talks but mostly due the friends and side-talks. Being at these events for a few years I managed to know lots of people from different projects. Not being in a major side (read: KDE or GNOME) I have the gift of free-transit among these fields… which is pleasant as I can gather ideas from both. [There is no hard or official barriers between them, but the psychological blocks peers from talking to each other and this is quite bad]

I came there sponsored by my company (ProFUSION embedded systems) to represent the system that provides a big bucket of our consulting, training and development services: Enlightenment.  I had the pleasure to engage into endless conversations with Enlightenment developers and community leaders (Cedric, Boris, Michael, Philippe…) We discussed a lot how we could broader EFL usage, bring more users, lower the barrier to new developers with easier to use tools and languages and of course how we could get Raster to release E17.

I also tried to learn from other people of technologies as well.  Before I was an Enlightenment hacker I did use and develop with Qt/KDE and already knew some icons such as Aaron Seigo, Thiago Macieira, Helio Castro and Sebastian Kügler, which I managed to meet again. Of course my ex-coworkers at INdT and KDE fanatics Artur Duque de Souza, Renato Chencarek were there. And I was introduced to Daker Fernandes Pinheiro, from INdT. We discussed QML, Qt, MeeGo and lots of optimization and API designs. Quite productive!

Being part of Maemo since 2006, attended some GUADEC and hacked Gtk/GNOME for fun and work I got to know some icons there as well. I’ve talked to Lennart Poettering, Marcel Holtmann and Marc-André Lueau, people that I’ve worked together in a way or another and that are always open minded to discussions. I’ve also touched base with some people like Lucas Rocha and Zeeshan Ali. It is interesting to know what these guys are doing for Linux Desktop (and mobile) infrastructure and their vision for GNOME.

My presentation went quite well, I was bit anxious and nervous in such a huge room that held it, but I guess people understood the history of Enlightenment, why we created the “Foundation Libraries” (instead of using Gtk or Qt),  our special care with performance and why it will always pay off. I did some heavy critics to FreeDesktop.Org that generated positive feedback from Thiago Macieira (Qt/KDE) and people from other desktops (XFCE/LXDE). Last but not least I’ve made it clear Enlightenment has serious problems to manage community, we’re quite bully, and did thank the guys like Philippe Caseiro and other french dudes that are trying to solve this issue.

All in all a great event, with great people! Looking forward to be in next desktopsummit as well!

Blog recovered

Hi all,

After a while not even opening my blog, yesterday I did two posts. While the administrator interface seemed fine, readers quickly notified that it was showing lots of spam in the regular view which I confirmed using Chromium’s private browsing. Investigations led to dozen administrator accounts in WordPress database, then I decided to reinstall from scratch. Unfortunately yesterday was a busy day and I could barely stay at the computer to do so.

Anyway, this morning I restored my blog and I’ll try to keep it updated :-D I also changed the comments rule, instead of requiring people to register, I instead opted to close comments after 14 days, since most spammers seems to look for pages with reasonable pagerank and new pages do not have them that soon.

United “sucker” Airlines

Notice: this is a rant posted only to my “life” blog category, if you happen to not like personal stories but got this due some syndication using my global RSS instead of specific, please forgive me and just ignore this post.

Ulisses and I had to travel to a conference in Orlando, FL and we did the stupid mistake of booking the flight with United Airlines. Yes, we already had problems with it in the past and we knew United Breaks Guitars, but nonetheless we insisted to give it another try. It was already strange that our flight to Orlando had to go to Washington DC in the first step, then we would have to go through Chicago during our return… but yeah, it was cheaper and the airlines do these stupid routes to aggregate more people.

Problem#1: So… Sunday, June 20th, we were set to depart at 10pm. Given that my birthday was the day before, I was at my family’s house for a great Brazilian BBQ. However their city is 4 hours away from the airport, you all know the airport checks take some time and they require us to be 3 hours before, so 7 hours earlier I departed. If you happen to like football as I do, and you are Brazilian, you would rather die instead of loosing Brazil versus Ivory Coast in the world cup, but I was forced to.

Arriving at the airport exactly 3 hours earlier, we did the check-in, went through security and waited for hours… to be notified 20 minutes before that our flight was cancelled due no reason. They rumored that the aircraft had mechanical problems and could not fly.

Problem#2: We were told that we should go in the next flight at around 1pm the next day… it was already bad, given that we’d loose the first conference day, but it became worse once other passengers alerted us that UA actually did not had any flights departing at that time! Apparently they were just doing that so they would just have to pay us one hotel night, forcing us to be at the airport in the morning and then wait until 10pm for the actual flight!

We could not afford such delay as the second conference day was the one with the important bits. Thus we made them book us a flight with their partner company “TAM”, departing Monday 21th in the morning. The flight was a direct one and that was awesome, with a new airplane with interactive media displays and so on.

Problem#3: We had to go to Chicago where we had the connection back to São Paulo, it was around 2 hour slack between them and so good balance, not much to wait and enough time to get our luggage transferred. But UA was nice to delay our flight departure by 30 minutes. A bit worried, we were confident it was still enough. However during the flight, the pilot announced “We’ll have to stop in Kansas to refuel”, WTF we thought immediately. Of course this was a stupid excuse for something that they did not tell us. Kansas it was, long delay… but we did manage to get to Chicago 30 minutes before our flight departed.

Obviously, while you can walk from one gate to another in 30 minutes, your luggage cannot go through their unknown process and it did not make into the plane.

Problem#4: We arrived in São Paulo and waited for our baggage… thinking in a logical way, we did know it was not there, but as the government slogan says “we’re brazilian and we’ll never loose hope!” After confirming that it was not there, we went to United Airline help desk. Strange looks, computer queries and questions about our route in USA, they said it was located in Chicago and should be in Brazil in their next flight, which should be this afternoon (June 29th). The whole they happened, but no news from our luggage… called them and they said it is still in Chicago, but at this point: would you believe them?

Problem#5: when entering Brazil you have the usual options “Nothing to declare” or “Goods to declare”. Often then choose some samples from “nothing to declare” to be exhaustively investigated, a quite invasive search I’d say. We did not had anything to declare, but given that our luggages were not there, we had to go be searched just to be able to have our stuff to be allowed through the Customs without us. WTF, what is the logic behind that?! A huge inconvenience.

Problem#6: my luggage was package with all my brand new clothes as we had scheduled some meetings with costumers in the conference. For some stupid mistake, I also dispatched my BlackBerry with my luggage since I did not use it for the whole week. Ulisses also had some nice gifts for his daughter in his bag. Very, very likely we’ll not see such personal items anymore, as they are likely to vanish with our luggage or just handle us opened bags without these items as it already happened to me in the past.

Yeah, United breaks guitars, make you loose your football game, fuck with your business travel, loose your luggage… what a shame, never using United services in future, this time for real. I did learn my lesson.

Memphis in car entertainment preview

Over the last months ProFUSION worked hard on building Memphis, an in car entertainment system. Now we can finally publish the first preview of it, it is real and runs on couple of hardware we will demo later, including Nokia N810 (OMAP 2420) and Freescale iMX27, iMX31 and iMX35 with displays ranging from 4 to 7 inches, from 640×480 to 800×480.

The product is based on free software Canola2 platform, which we support as well. While some parts of it were made available over these months, including our optimized thumbnailer “Ethumb”, some parts will be available later, under the same license. It’s not an issue as you’re unlikely to get it from Volkswagen and running it BMW, what matter for clients is the product as a whole, not just software interface.

Work done so far is not just a face lift of Canola, it goes deeply in optimizations, platform roots and changes plugins as well. The roadmap includes fast UPnP server and control point, as well as GPS/maps and other car useful services.

Theme is just a demo, we call it “ProFUSION theme” as we use our own colors and font. Clients will get an unique look and feel as well as custom changes, such as integrating with real panel keys, text to speech and voice recognition systems.

Read more at http://profusion.mobi/node/17.

PyCON USA and Canola2

So here I am at Chicago attending at PyCON USA where I’ll present how Python enabled the development of mobile media center (Canola2) in record time. So far it’s being an amazing conference, lots of interesting talks but more MacOS-X than I’d like to see in a conference about a free software technology (at least we seem to have more Linux than Windows).

As for freedom, free software, mobile media centers and specially Canola2: as announced previously at Maemo community, Canola2 is now opensource (GPLv3)! That’s amazing news, specially to me as I have Canola2 as my baby and would like to have more people involved into its development. It’s not just a great end-user software, it’s an amazing Python platform where you can build all kind of rich user interface.

As you might know, ProFUSION is working with INdT to improve Canola2 and we plan to keep supporting it, starting with some instructions and scripts, see our post for more details. As we want to build a community around it, don’t miss the mailing list and our IRC channel #canola at irc.freenode.net.

Presenting at PyCon US ’09

Now that the list is published I can announce that my talk was approved and I’ll present at PyCon US 2009!

My talk Python enabling mobile media centers will tell you all how Python made it possible to finish Canola2 in record time and how it does not suck performance wise in mobile devices as the Nokia N800, N810 and it is even acceptable on 770! I’ll quickly cover how painful development of first version in C was, how we profiled, tools we used to write Python-EFL bindings and more.

For my beloved Brazilian friends, I plan to present it (or a similar talk) at Bossa Conference ’09 and possible present it in Portuguese at PyCon-Brazil later this year.

Surpise: Qt goes LGPL

Wow! Making it stronger WOW to let you all know how I did feel when I received the excellent news: Qt 4.5 will be LGPL 2.1 (see official here).

I still remember myself talking to Mark Shuttleworth about possibility of Qt going LGPL and I was saying that it would never become LGPL since it was an excellent thing for Nokia, keeping adversaries away.

It turned out that I was wrong… “never say never!” they say. Nokia is seems so confident, or Motorola so non-intimidating, that it believes that doing the right thing and moving its product license to more commercial friendly will bring more developers and thus more applications.

Mark was wondering about GNOME goals could be delivered on top of Qt if this was LGPL. Well, in my opinion it is possible, but very unlikely. I dare to say GTK will get going along Qt and it will never go away. It’s about passion, not technology there.

Talking about technology and this concerns ProFUSION, I really like Qt, always did. As most of you know I hack using Qt, GTK and EFL for a long time, Qt is the easiest to use, largest and most complete library out there. And following their progress with 4.x versions you can see they’re heading the right direction, heading where EFL or MacOS libraries are today. ProFUSION will now be able to recommend Qt to a broader range of clients, those that wanted LGPL licenses to avoid licensing fees.

I’m still surprised! I expect Nokia keep doing these great surprises, the next being the next internet tablets (with $99 developer program ;-) ) and maybe a Linux phone later this year!

netbooks

I like them and I see why they’re the next big thing in hardware. They fit a nice spot, possible a better one than mobile internet devices/internet tablets: while they’re not as portable, they have a bigger screen, (almost) usable keyboard, more powerful cpu and bigger memory.

For geeks like me I guess it can easily replace laptops: I mostly use terminal with ssh + screen to our server, e17 as window manager (very light and fast), emacs for anything that requires me to edit, icecream/distcc to compile. Of course Firefox still don’t play well with memory and cpu, but I still have hope this bloat will go away some day. Since these netbooks have VGA port, we can easily simulate dockstations with usb keyboard+mouse and a bigger monitor. Long battery lifes are also a great thing to me. I still want to get one, but maybe I’ll wait one with ARM cpu (hopefully even longer battery life) and possible 3g as well, then let’s see if I can forget about my laptop as I did with my desktop some years ago.

But this post is also meant to highlight that non-geeks also like them! I was walking at a Brazilian mall the other day and spotted more than once some old women (the less tech-lovers out there) pointing eeepcs and saying they’d love to have those: they’re white, they’re small, “they’re soooooo cute” in their own words. Needless to say men of all ages and younger girls like these kind of toy too.

In my opinion Netbooks area is where Linux can gain great market share. Actually the market is still very small, but growing fast and Linux is there from beginning. Netbooks are not restricted to x86, so Linux can show its flexibility running on ARM and MIPS, areas where standard Windows does not play. Applications are not the same, or expected to be the same, people are not demanding heavyweight office applications, but they do demand excellent internet experience, and Firefox/Webkit technologies (not the apps!) do great there. Pidgin (libpurple or Telepathy) and other tools will help there, as well as our great multimedia platforms with MPlayer, Xine, GStreamer, VLC…

Another great thing about netbooks is that they’re cheap. Even in Brazil where everything imported is overtaxed, they’re acceptable. So people are willing to get one without fear of wasting too much money on something.

And  let’s remember we’re talking about a new product! So it’s more expensive than what it will be in few months, you don’t see internet addicts using it at the mall and here in Brazil you see no advertisement about them, expect more buzz when this happen. It’s a exciting technology, stay tuned!

work and pleasure

Today I finished integrating some cool code into Evas: box and table. These utility smart objects are now in Evas for good, we can stop replicating those in many projects and people who just want to use them and not a full featured toolkit like ETK or EWL are now free. More importantly: we can now expose these in Edje, making all layout elements dependent on theme, not having to rely on SWALLOW slots!

The integrated code is very flexible, it make use of the recently introduced “size hints” and also postpone heavy calculations to pre-render time with calculate smart callback. Table has three modes: regular, homogeneous based on table size and homogeneous based on largest minimum item size. Box, since it just represent a sequence of items, is more extensible and allows you to specify a layout function, we provide some like vertical, horizontal, stack, homogeneous based on box, homogeneous based on the largest minimum item size, etc… but you can easily write your “snake layout” and use it. If you need more option details than “size hints”, you can extend the class and implement options_* virtuals.

These code were integrated by me, but not totally written. Gustavo Lima, from ProFUSION, wrote the box for their sequence_box.c (it was relicensed to E’s BSD with permission) and Rasterman wrote table for his elementary “toolkit for mobiles” els_table.c.

On the pleasure and work side, I’ll fly to The Netherlands next Tuesday so I can attend ELC-E 2008 where I’ll present a talk about Rich Graphical User Interfaces on mobile systems, covering Evas, Edje and the new kids on the block Elementary and Guarana.

Last but not least, due trip and other stuff to do I’ll not be able to integrate table and box into Edje soon. If you always wanted to help E17 and EFL, now it’s your chance! :-) See my mail to the list and start hacking, I can reply to you by mail and IRC (when I’m online). We will also need Python bindings for those, so patches to python-evas and python-edje are also welcome!