Technology and Internet

Pixels Camp v3

Like I did in previous years/versions, this year I participated again on, a kind of conference plus hackathon. For those who aren’t aware, it is one of the biggest (if not the biggest) technology event in Portugal (from a technical perspective not counting with the Web Summit).

So, as I did in previous editions, I’m gonna leave here a small list with the nicest talks I was able to attend.

Lockpicking versus IT security

This one was super interesting, Walter Belgers showed the audience a set of problems in make locks and compared those mistakes with the ones regularly done by software developers.

Al least for me the more impressive parts of the whole presentation were the demonstrations of the flaws on regular (and high security) locks.

Talk description here.

Containers 101

“Everybody” uses containers nowadays, on this talk the speaker took a step back and went through the history and the major details behind this technology. Then he shows how you could implement a part of it yourself using common Linux features and tools.

Talk description here.

Static and dynamic analysis of events for threat detection

This one was a nice overview about Siemens infrastructure for threat detection, their approaches and used tools. It was also possible to understand some of the obstacles and challenges a company must address to protect a global infrastructure.

Talk description here.

Protecting Crypto exchanges from a new wave of man-in-the-browser attacks

This presentation used the theme of protecting crypto-currency exchanges but gave lots of good hints on how to improve security of any website or web application. The second half of the talk focused on a kind of attack called man-in-the-browser and focused on a demonstration of it. In my opinion, this last part was weaker and I left with the impression it lacked details about the most crucial part of the attack while spending a lot of time on less important stuff.

Talk description here.

Personal Portugal Technology and Internet

Pixels Camp 2016

A few weeks ago took place in Lisbon the first edition of Pixels Camp (aka Codebits 2.0), an event that I try to attend whenever it happens (see previous posts about it). It is the biggest technology focused event/conference in Portugal with a number of attendees close to 1000.

This year the venue changed to LX Factory, even though the place is really cool, it is not as well located as the previous venue, at least to people who don’t live in Lisbon and arrive to the airport. The venue was well decorated and with a cool atmosphere, giving you the feeling that it was the place to be. However, this year there was less room for the teams working on the projects and not everybody was able to get a table/spot (it appeared to me that the venue was a little bit smaller than the previous one).

From the dozens of great talks that were given on the 4 stages of the event, many of whose I was not able to see since I was competing in the 48h programming competition, bellow are two that I really liked:

Chrome Dev Tools Masterclass

IPFS, The Interplanetary Filesystem

If you have some curiosity you may find the remaining on their youtube channel.

All this is great but the main activity of Pixels Camp is the 48h programing competition and this year we had another great batch of cools projects being developed (total of 60, if I remember correctly).

As usual I entered the contest, this time with the fellow Whitesmithians, Rui and Pedro. We chose to develop a GPS based game, you know, since it seemed to be a popular thing this summer and we though the medium still has great potential to do really entertaining stuff.

The idea already had a few years but never had been implemented and at its core was quite simple. It took some ideas from the classic game “pong” and adapted it to be played in a fun way while navigating through a real world area.

We called it PonGO and essentially the users must agree on a playing field, such as city block, a city or even bigger areas, then they connect their phones and the ball starts rolling. The players have to move around with their phones (which they use to see the map and track everyone’s position) trying to catch the ball and throw it to the other side of the map. The player that is able to do it more times wins the game. Here is sketch we did while discussing the project:

Initial Sketch
Initial Sketch

As you can see in the above image, that would be on the phone’s screen, the player (in yellow) reached close enough to the ball so it can play it, now he has to change the direction to one of the opposite sides (marked as green). The other players (in blue), will have to run to catch the ball before it gets out. Spread across the map you can see some power ups that give users special capabilities.

That’s it, it might seem easy but doing it in less that 48h is not. We ended with a working version of the game but the power ups were not implemented due to time constrains. Here are some screenshots of the final result(we used the map view instead of the satellite view so it might look a little different):

In game screenshotsIn game action










The code itself is a mess (it was an hackathon what were you expecting) and can be found here and here.

At the end, it was a great event as usual and I would also like to congratulate some of my coworkers at Whitesmith that took home the 7th place in the competition. Next year I hope to be there again (and you should too).


Getting ready to ruumbleee…

After being absent last year, today I will start my participation in the Rails Rumble event. Together with a teammate we will try to finish a project within the next 48h, using the Ruby and its Ruby on Rails web framework. Personally I enjoy this kind of challenges, even though it’s not guaranteed that we will be able to finish anything. This was what happened 2 years ago when we weren’t able to finish our project, our final push had a bug that turned the application completely unusable. Even didn’t winning anything, we learned a lot and had some fun.

Later we continued working on that project for while, eventually we were able to enter other contests with it and obtained very good feedback. The application was called Payup and is still online (but it doesn’t work very well).

Payup landing page

However the market for this kind of application already had many competitors, some of those more mature and well established. Our app had some flaws that needed to be fixed, with our day jobs and other projects we slowly let it die. But hey, it wasn’t bad for the work of one or two weekends.

Not every personal project either related to a hobby or from a challenge must necessarily be a huge success and be maintained forever, that is the great thing about these kind of projects, you do it, you succeed, or you fail, and you move on to the next one and keep learning new stuff. If you had to maintain every project or experience, you once worked on forever, you probably would lose the interest in starting new things, even if they were just for fun.

So today, we will do it again. I’m searching my list of ideas and discussing them with a teammate. A new ride is about to start…

Personal Portugal

RubyConf Portugal

In the beginning of last week, during the days 13 and 14, I and some guys from Whitesmith went to Braga for the first RubyConf Portugal. I’m not a huge fan of Ruby but since i work with it from time to time, i took the chance to learn a little bit more about it and improve my understanding of the language.

The event was pretty cool and if you go through the agenda in the site you can see that the speakers that gave the talks are well known individuals in this community. The good stuff about this conference started with the choice of the city of Braga to host the event, since this kind of stuff in Portugal always happens in Lisbon or Oporto.

The venue was in an amazing spot, called “Bom Jesus”, that has a nice view over the city as you can see in the photo below:

Photo from Braga
Venue Location: Braga

I liked some of the talks, essentially the ones that are related with my work, the rest didn’t said much to me but this is normal and it happens in every event. The funny part was that in this event we spent more time hearing about other languages (Javascript, Go, Rust, C) than ruby even though they were related with the ruby ecosystem.

The host of the event was Jeremy Walker, and he did a great job from the start where he showed up dressed as a roman guy (seems it was the theme of the event) until the end of the last talk.

Regarding the contents of the conference, in the first day i really enjoyed the talks “Building better web APIS with rails” and “Writing fast ruby“, this last one was already available online (video, slides).

Talk photo
Carlos Sousa’s talk in the first day

In the second day the two presentations that i liked the most were: “TBA” (according to the speaker that was exactly the name of the talk) and “Search Your Feelings: Multi-Table Full Text Search in Postgres“, both without too much ruby. One addressed Rust and the other Postgres, two topics I’m really interested in improving my skills at the moment.

Photo of TBA talk
Steve Klabnik’s Talk

Aside from the talks the rest of the event (food, party, etc) was great. The only complain that I have is about the conditions of the room where the talks were given, since those who were unfortunate (or late) to stay in the back of the room had some issues to properly see the slides (as you can see in the last photo, I was in the middle of the room).

Finally I must congratulate the guys at Group Buddies for the organization of this conference. I hope this kind of events become more common here in Portugal and happen outside Lisbon, so more regions of the country can benefit from them.

Edit: For those unable to be there, the organization just released some photos and videos taken during the event. You can find them here and here.

Old Posts

Coimbra Startup Weekend: to go or not to go?


It seems to be a nice event and a well spent weekend with lots of things to be learned.

I don’t know if i’m the kind of participant they are hoping for or even if i’m ready, but nevertheless i’ll stay tunned for more information.