Posted on

Changes

One of my New Year’s Resolution has been achieved. It’s been two months now since I started working at Parafernalia Interativa. We’re building with Endless Mobile an operating system to power computers in the developing world, and it’s GNOME-based. It’s a very exciting job because I get to work with really cool hackers, and we use pretty much GNOME technologies.

I can’t say much about the amazing things we are building yet, but you’ll know about it soon!

[permalink]
Posted on 1 Comment

Bye 2013! Happy 2014!

When a new year comes, it’s time to reflect (not regret) and set up new goals.

With this in mind, I have to say that last year was the best year ever… so far! I have attended FISL 14 in Porto Alegre, GUADEC in Czech Republic and gave a lot of talks. Speaking of that, I forgot to blog about the talk I gave at Latinoware which was an introduction to GNOME Application Development with Javascript (Gjs). And after that, I was invited to give a short introduction to Free Software and share my experiences as a student developing FOSS (mentioning my Google Summer of Code participation in 2012 and my involvement with the GNOME community) at my university. Everything was a blast!

For 2014, I want to intensify my GNOME contributions, read 50 booksgraduate o/*, and (after that) find a first job. 😉

Posted on 1 Comment

GUADEC 2013

My journey starts by crossing the Atlantic Ocean and fighting its most dangerous threads. Basically monsters, dragons, and pirates. In Lisbon, Portugal, I have stepped ashore. My sailing days were over. However, my destiny was still far from being fulfilled. So I have sailed to Prague, Czech Republic. I got there in a few hours, but my luggage did not. Fortunately it magically appeared 24 hours after at the GUADEC dorms in Brno. :O

Fantastic literature apart, I have had an awesome time at GUADEC. Between August 1st and August 4th, we have had a special keynote every morning followed by a whole day of talks. Besides, we have had some parties in the evenings: in the very first day in a full-dedicated nightclub, and on day 3 at the local Starobrno brewery (generously funded by Mozilla).

From August 5th to 8th, BoFs and hackfests! I have spent some time working with the GNOME Music crew. Met the guys in-real-life and was introduced to new ones.

I could not forget to mention the blistering heat in Brno. It was hotter than my homeland hottest days. But the best way to soften the heat if you are in Czech Republic is by having a beer or even a Kofola (I had never drank it before. Loved it).

At last but not least, I want to thank the GNOME Foundation for sponsoring my attendance at the conference. I hope to see you all fellow GNOMErs again next year, and to practice my french at GUADEC 2014 in Strasbourg!

gnome_foundation_sponsor

Posted on

Programming Marathon training at UFSC

July was a very busy month for me. I’ve attended FISL14 and a Winter School of Programming Marathon at UFSC, Florianópolis. Now I’m blogging from GUADEC in Brno, Czech Republic.

Since I’m still a student, I’m able to participate in programming marathons. Me and two more friends created a team and we’ve started to train weekly. We intend to participate firstly in a regional competition which entitles to compete in the national programming marathon which entitles to compete the World Finals. We are, definitely, aiming low. Let’s just have some fun at least!

During a week (July 22nd – 26th), we have had competitions daily — every morning — and in the afternoons we had lectures about algorithms and data structures related to the problems we have seen in the morning. Pretty interesting approach!

Posted on Leave a comment

Going to GUADEC 2013!

Hooray!

Thanks to the GNOME Foundation, I will be attending this years’ GUADEC. Once again I’m having the terrifc opportunity of meeting my fellow GNOMErs in-real-life, meet new ones, and help this community be as awesome as it already is.

I’ve never been to East Europe, so any tips from people who’ve been to Czech Republic would be welcome!

I’m also a volunteer, so you can count me in to help in anyway I can.

See you all in August 1st at Brno, Czech Republic!

 

gnome_foundation_sponsor

Posted on 1 Comment

Bye FISL 14! See you all next year!

Last week I attended the 14th edition of the Free Software International Forum (FISL) in Porto Alegre, Brazil. It was a great opportunity to see in real life people I see daily on IRC/mail-lists/social networks.

I live in Pelotas, which is located 270 km far from my state’s capital, Porto Alegre, so I couldn’t miss this rare chance of meeting my fellow gnomers. We had a community meeting where we’ve discussed GNOME activities in Brazil and some directions GNOME has taken over the past few releases. We have also heard a lot of feedback from GNOME users at the community meeting (some related to design decisions, other to distros delivering GNOME software, and etc). It was pretty exciting!

Besides the GNOME related activities, I’ve attended some really nice presentations and discussions on free software and specific technologies. I’d highlight these in particular:

See you in FISL 15!

Posted on Leave a comment

#GSoC Final Report

Hey,

I can believe it’s over. This Summer passed way too fast! It was a great opportunity of learning more about free software development, programming, and GNOME.

To describe and evaluate my Google Summer of Code, I have chosen an interview-style post. I think this is the most efficient way of describing my internship experience.

What do you consider the best aspect of participating in GSoC?

The satisfaction of feeling part of something bigger than yourself. To work side-by-side with people really engaged in software development.

What do you consider the most challenging part of your internship?

Definitely it was conciliating the program with my university duties, since it’s not summer in the Southern Hemisphere. Although getting familiar with large projects, such as Tracker, was hard as well.

How was your mentor?

Cosimo is a great person and has been a great mentor. He has been patient in leading me to the right direction, pointing me what to do, and teaching me what was needed.

What would you do different if you could do it again?

It’s easy to point mistakes but they are part of the learning process. You got to learn from your mistakes to not repeat them.

I could have started my work in Documents UI sooner to have more time to polish/enhance/improve it. Also, I could have asked [more] for help and completed the Tracker task in lesser time.

Which tips would you give to future students?

  • Ask for help/tips/advice. I’ve lost a lot of time in tasks that my mentor could answer in seconds. 🙂
  • Attend GUADEC!
  • Show your code!

What one thing did the GNOME community do that you consider very helpful for your project and would suggest they continue to do?

Incentivate interns to attend GUADEC. It is an environment of creativity and innovation which certainly will inspire students to get involved even more with the community.


Removable-devices support in Documents

The original proposal was: “To make GNOME Documents able to manage and view files on plugged in removable devices. Including extending Tracker to provide the APIs we need to implement the feature.

What has been achieved?

Tracker:

The ‘IndexFileForProcess‘ API method has been created. It lets client-applications call Tracker to index files/directories/mount-points transparently on an application basis (you can read more about it in my last report). This mechanism works nicely for what we want in Documents.

Documents:

Documents is able to recognize a plugged-in removable device, create a ‘virtual’ collection containing all the documents inside the device.

What was left behind?

  • Users should be able to Import files from removable devices to the local disk.
  • An already imported document shouldn’t be imported again.

Software is never done! So I’m committing myself to getting these things [gnome] done. 🙂

What’s next?

In addition to finish what’s left in my task, I want to apply for a GNOME Foundation membership, and keep contributing to GNOME.

Acknowledgements

I want to thank the GNOME community for helping students get involved with free software development, Google for giving me the opportunity of work with GNOME, Cosimo Cecchi for guiding me in my project, and you for reading this long report. 🙂

Cheers!
Felipe.

Posted on Leave a comment

#GSoC Report V

Hey, this is not my GSoC final report. 🙂

I didn’t expect to be still talking about my work on Tracker at this time, but Martyn Russel has made some nice suggestions of modifications to my code on his review of my patch. The ‘IndexMount’ DBus method has been exchanged for an ‘IndexFileForProcess’ DBus method. It’s a more generic mechanism which allows Tracker to index files on a client-application basis.

It works almost equally to the old ‘IndexMount’. Receives a request-to-index a file/directory/mount-point and watches the bus name of the calling application. It stops the indexing process when no bus names are associated to the file.

I am not that late, I am also working in Documents. Currently Documents loads plugged-in removable devices, uses the Tracker mechanism I’ve described in the previous paragraph to index them, and creates a Device Collection into the overview containing documents inside the device.

I am preparing a preview for my GSoC Final Report (that I will post tomorrow).

See you! 😉

Posted on Leave a comment

#GSoC Report IV

Hey! I’ve finished the work that was necessary on Tracker to make it better able to serve Documents and other applications. I just need to get my patch reviewed and perform the necessary alterations.

By the way, It actually took me more time to get DBus working on JHbuild than tying the DBus method to the tracker-miner-fs‘ method which I wrote before. I bypassed it by following this old Murray’s blog post.

So, how useful is it?

To begin with, a typical scenario would be an application sitting on Tracker (such as Documents), which wants to tell the file-system-miner to index a given mount (by indexing, I mean crawling the mount point for files AND adding the device as datasource on the Store).

Besides, the most obvious scenario we want to avoid is when an application, which calls off directly a miner method, crashes. It would cause the indexing operation to fail.

In doing so, we have chosen a different approach using DBus. Now you can send a message to the /org/freedesktop/Tracker1/Miner/Files/Index object, with a mount-point-uri as parameter, and it will tell the tracker-miner-fs daemon to index the Mount accordingly. It also avoids unnecessary crawling of Mounts when more than one application wants their content.

Front-end side: using this mechanism in Documents…

From now on, Documents lists on plugged-in removable devices as collections on the overview. By clicking on a Device Collection, you get it indexed.

What’s next?

A couple of things that I consider essential are:

  • Let users Import documents from a device (maybe exporting?)
  • Do not index already imported documents

That’s all folks!