My name is Sérgio Bernardino (a.k.a. smpb), and I am a software engineer, hobbyist photographer, and all-around geek. I hail from Lisbon, Portugal. Feel free to save this information and contact me at any time.
This is my official home on the web, but quite often you'll find me in a lot of other places as well.
Post with 4 notes

If I wanted to surmise the Codebits experience into one simple word, it would be this: more.
One goes to Codebits looking for knowledge, and leaves it craving more. One enters Codebits with a set amount of friends, and surely leaves it with even more. One reaches Codebits expecting to have fun, and ends up having more. In short, every time a Codebits edition ends, it leaves everyone waiting for more.
Codebits is already in its fifth year, and although I missed the first two editions, since my visit in 2009, I’ve made an effort not to miss another one. To be sure, it’s not as trivial as just saving time for it. One has to earn the privilege of attending, and I have been fortunate enough to have done so. With three consecutive editions under my belt, I can say with considerable certainty that it really is a memorable experience that has only gotten better throughout the years.
Being an event deeply rooted in technology and (mainly) the Internet, it undeniably has a very specific target audience. I have found, however, that there is a bit of everything for everyone with an inquisitive disposition, and that the only two real prerequisites are the willingness to learn, and to have fun doing so. From there, the Codebits aura of sheer raw energy will make sure you’ll feel more than welcome.
Any geek worthy of the name has a weak spot for tech-related swag1. We all have more t-shirts, pens, notepads, and USB keys than we need or care for, but those short moments after getting the welcome kit are like a small piece of Christmas right then and there on the show-floor.
The Codebits organization has turned this into a relevant part of the experience by systematically upping the ante every year, to the point where the kit is riddled with actually useful stuff. Even the more negligible bits have the purpose of serving as teasers for what’s to come.
Is the LEGO League present on the venue? Add an amusing “Top Secret” envelope with a random piece to make you wonder about it. Will there be workshops about Arduino? Add a tiny kit with a LED and a sensor to spur you on. Which T-shirt did you get this year? The artwork in each is random, and I do think I like that guy’s pick of the draw more than I do mine…
At a glance, it all sounds like minor stuff, but it’s smart, and works for a killer first impression.

This year, the most surprising piece of swag in the package (for me) turned out not to be swag at all, but a very valuable offer. What seemed at first as “yet another useless USB key”, proved to be something entirely different: An individual Yubikey for each an every attendee.
Used as a way to actively promote SAPO’s new two-step authentication feature in its unified login process, a Yubikey is much more valuable than that when you consider Yubico’s developer-friendly demeanor. By exposing a web API with which to use the Yubikey, the possibilities are immense2.
Might as well use that O’Reilly coupon, also found inside the classy Codebits laptop backpack that wrapped the complete package, to get a free ebook that helps out with these ideas.
They shower us with gifts. And we love it.
Despite being backed by very important companies from the local Portuguese technology spectrum (and beyond), I believe that Codebits is much more than just a venue where people go to publicly demonstrate their highly tuned technical, and business, skills, or to be charmed into any random corporate recruitment process.
Codebits is a celebration of everything that surrounds the geek culture when related to technology. Be it the hacker’s spirit of constant tinkering and reverse engineering, the unquenchable thirst for the most recent shiny piece of hardware, or the love for retro-computing. Sprawling from any recognizable Internet phenomenon, to the most inscrutable memes, and even common pop culture (like movies, TV shows, music, or books). Codebits has all this, and it’s proud to showcase it in every corner, and at every opportunity. It wouldn’t stand for it to happen in any other way.
From serious corporate keynotes, to insane gauntlets in which participants are charged with presenting esoteric (even borderline nonsensical) keynotes they’ve never even seen before, to a full-fledged Quiz Show: the venue’s Main Stage has it all.
Game consoles are conspicuously placed in areas with a lot of foot traffic, you see people gliding effortlessly about on home-made skate boards, and anywhere you go you’re likely to cross paths with a tiny fledgeling robot built exclusively for the purpose of exploring these unique surroundings, as if it just happened to have landed on Mars.
At a pre-determined time in the schedule, people drop everything they are doing, and line up to have a taste of an outlandish dish: It features the hottest chili pepper in the world, and to eat it is an experience that’s described as nothing short of incredibly excruciating. But some venture forth, and return grinning (albeit in pain) with the priceless “badge of honor” proving that they were one of the few that did it.
All of this, and much more, under the backdrop of green-tinted walls, enormous screens flashing an assortment of items (from schedule news, to Twitter updates), and the constant buzzing of voices from those merely chatting, those embroiled in their projects, or even the speakers dishing out their knowledge in any of the secondary stages.
There’s a lot of laughter permeating through Codebits. People are happy to be there. And comfortable. For the geek, it’s a home away from home.
But let’s not get too carried away. Work does happen within the walls of Codebits. Serious work. Ideas flow and plans are sketched and executed. Some are bad, some are good. Some make it to the end, some don’t3. A few win, and the rest go back to the drawing board and hope to make it big next year.
As expected from a hackaton of this caliber, computers are everywhere4, and you’ll constantly see scores of faces focused on streams of text in a screen. Flip-charts exist, riddled with sketches, designs, flowcharts. Those ideas considered bad are promptly torn and discarded, in a race to meet the deadline. Everyone wants to reach the finish line, and in the best shape possible.
You’ll be hard pressed to navigate the wide sea of large desks, occupied chairs, cables, and exhausted people sleeping on bean bags, when the talk you want to attend is precisely on the other side of the working area. It’s a tight space, for so many eager.
It all climaxes in a massive final presentation where each of the competing teams is given an incredibly short window of time to prove their worth, as the audience watches and votes, and the jury listens and ponders.
It’s not an easy thing to watch. The system isn’t perfect, and you witness glitches and such technical problems you can’t help but to wonder why they still happen after 5 years of supposed fine-tuning. 90 seconds is indeed a very short timespan, but when you multiply it by dozens of projects, it wears you down. The teams frailties and exhaustion are laid bare in those precious seconds, and you (if indeed you care) have to endure through all the poorly prepared speakers, failed live demos, and incredibly flat attempts at humor.
Neither is it easy to present. In fact, it’s not easy at all. Everyone knows that the margin for success is incredibly thin. That no matter how good your project is, if you fail in that key moment, it’s all over. Compressing 48 hours of intense work into 90 seconds of supposed genius, in front of a highly skeptical (and tired) audience, is the worst (and takes a special kind of talent).
Quite a few crash and burn spectacularly. Like a slow motion car wreck you’re horrified to witness, but can’t seem to avert your eyes from. You feel sorry for the guy, and you’re glad you’re not him.
On the flip side, a talented few shine as bright as the rising sun on a hot summer day. People spontaneously burst into cheers and impromptu rounds of applause. You’re glad for that guy, even a bit envious, and you do wish you were the one to whom that happens. Everyone does.
There are prizes, of course. To the victors go the spoils, and what a rich bounty it is: From premium priced computers and tablets, to smart phones and even huge television sets that simply can’t be easily hauled off the stage. You barely notice the expensive books also being haphazardly given away. It’s so crazy, it reaches TV game show proportions.
It all combines into a powerful machine that drives you more and more towards wanting to be a part of it. You want to be on that stage and shine.
There is a whole lot left unsaid, with many things yet to mention5. The clichéd expression “you had to have been there” repeatedly comes to mind, and though it pains me to use it, it is quite appropriate.
Codebits is unique in the way it winds you up into a twisting ball of excitement, as much as it drains you of your much needed energy. You wake up the following day, thanking for it to be a Sunday, feeling like you just took an enormous beating.
But you regret nothing, and always come back to ask for more.
“Stuff We All Get” : The assorted promotional merchandise offered in venues such as this. ↩
From using their PAM module to reinforce remote server access, to port-knocking, it was enough to set my brain into overdrive. ↩
Mine didn’t, to my dismay. A tale for another time. ↩
On that note, the amount of Apple computers at the event was absolutely staggering. ↩
There’s a world of material concerning all things #softwood, and a certain group of crazy lobsters, but unfortunately… we lack the time ;-) ↩
Post with 4 notes
Codebits, the massive hackathon extravaganza organized by Portuguese tech company SAPO, has its fifth edition happening in only a few days and I couldn’t be more excited about it. This will be my third consecutive year attending, and given that it has been improving by leaps and bounds with each edition, I have high expectations for this year.

Since the machine began churning inexorably towards the event’s November date, I made a point personally on being a lot more (pro-)active in my participation. Beyond taking part in the pre-event shenanigans (the geek quiz is one example that I am a huge fan of), I began planning an adequate participation in the 48h programming/hacking competition. I am a software developer after all, but the amount of code I’ve written in past Codebits editions has been pitiful.
While musing on ideas to tackle at the event proper, I took time to lay some groundwork that might prove useful eventually. In particular, I decided to map the event’s API onto my weapon of choice: Perl.
Although I am unsure of how many Perl mongers will attend (or even intend to hack on some Perl code during) the event, I purposefully left the implementation available publicly in the off-chance that it might be useful to someone. You can find it here:
Undoubtedly, you will be able to find me there dabbling away at some of this, or similar, code. If you’re attending the event, and have any passing interest in Perl1, don’t hesitate to drop by for a chat.
Or even if you don’t. It’s not really like there should be a prerequisite for some good conversation :-) ↩
Original theme by nostrich