Entries : Category [ Daily ]
Daily stuff, news, links, etc
[OpenBSD]  [BSD]  [FreeBSD]  [Linux]  [Security]  [Python]  [Zope]  [Daily]  [e-shell]  [Hacks]  [PostgreSQL]  [OSX]  [Nintendo DS]  [enlightenment]  [Apache]  [Nintendo Wii]  [Django]  [Music]  [Plone]  [Varnish]  [Lugo]  [Sendmail]  [europython]  [Cherokee]  [self]  [Nature]  [Hiking]  [uwsgi]  [nginx]  [cycling]  [Networking]  [DNS] 

20 noviembre

How dangerous is a zombie?

hahahaha, you should keep this sheet with you wherever you go, just in case!

How dangerous is a zombie?

Even if I've found this card/sheet posted in some other blogs, I couldn't resist myself to add it here too.

As you can see, it is a card that classifies zombies in a radar-like map using two axis, dumb->smart and slow->fast.

In my oppinion, it is not a matter of how fast or smart the zombie is, the thing is how good your weapons are!. Just remember this:

How to kill a zombie!

Some references:

Posted by wu at 12:16 | Comments (0) | Trackbacks (0)
25 noviembre

My first birthday present this year

Usually I don't write about this, but this time I like it so much...

Two buddha paintings

This is my first birthday present this year. Yep, today is my b'day and some hours ago my parents gave me two paintings that, together, resemble the face of Buddha.

The paintings are really nice, and quite big. Now I've to search for a wall with enough space to hang them.

Posted by wu at 23:24 | Comments (3) | Trackbacks (0)
18 abril

Short summary of the first three months of 2011

Lot of stuff happened, too bad I didn't find the time to write about everything

Wow, three months without writing even replies to your comments on some old posts. This should not happen, not again.

Let me write a short summary of what happened during this time that kept me so busy that I couldn't find some spare time to keep you up-to-date.

First things first (or business is business if you prefer). So, starting with my job, I took some decissions by the end of 2010 (as the result of some thoughts and oppinions I gathered through the last 4-5 months of last year) which lead me to a frenzy day-by-day of decissions, meetings, paperwork and planning. That has been probably 70% of my time (and headaches) since last december.

I decided to split my efforts and dedicate some more time to some ideas and projects that had been in my suitcase for some time. The kind of projects you try to release to the public from time to time, but you never find the time to do it. I built a plan for each project, with roadmaps, deadlines, etc, and I've been working really really hard to achieve the goals I've set to myself.

As the result of all this work, the first project is already online, Zavo (http://zavo.es), which is an online service (SaaS style) for lawyers, attorneys, judges, etc that consist in a webapp that let them manage customers data (CRM), courts, cases, documents, notifications, events and a lot more stuff. With this service they can manage everything using an easy-to-use web interface powered by some python software (built on top of Zope and django). It has been a great experience to work on that project, setting everything up, and doing it (imho) the right way.

There are another two projects that will be released during 2011, so I expect to be busy for quite some time.

On the other side, I'm back in the freelancer business. Codigo23 website will be up & running in the next few weeks, offering some information about the company services, and I already have contracts with some customers to work on some projects, both related with sysadmin tasks (\o/) and software development (yes, lucky me, related to python).

Being a freelancer is good, really good. Of course there are a lot of things to deal with, and you've to be quite responsible, but you can manage your own time and efforts in a better way, and you can choose which kinds of jobs you want to do.

If you don't trust me, go ask my friend betabug, which is back as a freelancer too after being working exclusively for the same company for the past few years. Who knows, perhaps we will be able to team up for some projects soon ;D.

Back to me, I've learn a lot of things during these past three months.

I've worked for the first time with things like wsgi (writing some stuff directly as wsgi applications, not setting it up existing apps like django or trac, which I already did in the past), Mako (which is a dammed good templating system for python apps) or django-piston (a django app to create RESTful APIs in your apps).

I've read about TDD (Test Driven Development) and I started to write tests in my code. I've played for some time with sphinx (a documentation generator used in projects like python, django, sqlalchemy or blender) and now I'm using it to manage documentation within my projects (developers, users and admins documentation).

I've been working a lot with FreeBSD, with Jails and with the GELI crypto framework for encrypting disks and partitions under FreeBSD.

I've spent some time working with (and trying to understand) Zenoss, which is a really damned powerful beast.

So, as you can see, I hadn't the time nor to write some lines here in the blog neither to get bored at all.

I'll try to write more frequently again, as I've a lot of small articles and tutorials in my suitcase again, probably all of them quite boring, but I've to share them with you, you know...

Posted by wu at 23:58 | Comments (0) | Trackbacks (0)
07 junio

7-J, el día que perdí a un ser querido

Una de las personas que me crió y me cuidó desde niño se ha muerto esta mañana...

Hoy a sido un día duro, muy duro. Hoy se ha muerto mi abuela (paterna).

Podría remontarme a hace prácticamente 10 años, cuando empezaron a aparecer los primeros síntomas del alzheimer, cuando su mente comenzó a degenerarse de tal forma que hasta su cuerpo dejó de responder.

Podría remontarme a hace unos 3 o 4 años, cuando dejó prácticamente de hablar y ya no pudo moverse más, quedando postrada como un vegetal en una cama, con la única capacidad de sonreir, llorar y emitir unos lamentos que te rompían el corazón.

Pero prefiero pensar que por fin descansa, que aquella abuela que de niño me cuidaba y me enseñaba muchas de las cosas que me han convertido en lo que soy hoy, ahora está en ese sitio a donde ella siempre quiso llegar.

Posted by wu at 21:55
17 julio

Arduino, first contact

and I swear I liked it!

Two days ago I went to Santiago to attend the Artropocode Meeting, an event for people from both the Open/Free Software and Art/Design/Multimedia worlds to meet, talk and share ideas, experiences and knowledge.

First reason for me to be there was the fact that a friend of mine was involved in the event organization, second reason was that the first day was focused mainly in the arduino project.

For those of you who don't know about it, Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments (extracted from their website, http://arduino.cc).

First time I heard about arduino was during europython2010, when Ian Ozsvald showed us his headroid, a face-tracking robot. I thought it was totally awesome and I added a reminder for myself to check about that arduino thing later.

Since then I've read some stuff about the project and I've seen a lot of amazing things people do with arduino hardware, but I never had the chance to play with it by myself.

So, this was the perfect opportunity!

The meeting started with a talk by Filipe Valpereiro from the spacebits project. If you don't know the spacebits project, you should take a look at their website (http://spacebits.eu) and see the amazing things they are capable of.

Filipe talking about the SpaceBits project

Basically, they were able to send a hand-made shuttle up to near 40Km from the ground. Within that shuttle there were some cameras that were recording the whole thing. Just go check their website and play some videos, you will get truly amazed.

Filipe told us about the idea behind their project, how they started working on it, how they did what they do and we watched some amazing videos.

When the talk was over, Filipe sets a workshop so we all could play with some arduino boards and learn a lot.

All the stuff I needed to play with arduino, my laptop, the arduino board and tons of cables, resistors, leds, sensors...

Filipe gave us some kind of a starter pack:

One last thing we needed before starting to work was to download the latest piece of software from the arduino website. This application makes communication with the board easier, you only have to write the code to interact with it and the app will take care of checking your code, validating it and uploading it to the board internal memory.

You can write your source code using your tool of choice, you only need a way to upload it later to the device. Of course, the debugging/console utilities bundled in their application help a lot too, so I recommend you to use it at least for your first experiences with arduino.

The blinking LED

Good, after setting everything up and some theoric introduction (which took place while everyone downloads the app, putting the wifi router into fire) we started with a really easy example, the blinking LED.

The idea was quite simple, we had to design a circuit so a LED got some electricity (to light it on) and then we had to add some code to the arduino board so it was able to light the LED on and off.

Designing the circuit was hard (last time I did anything with a breadboard was around 1998) but the code for the board was quite easy (less than 10 lines of code). The language you've to use to communicate with the arduino board is quite similar to C, so it wasn't difficult to get used to it. It was even easier because of the online reference, where you can find all you would need about the language.

This is a screenshot of my computer after uploading the code to the board:

Running my first code in the arduino, the blinking LED example ;P

The window you can see on the right side of the shot is the editor, where you can write your code. As you can see it even has syntax highlighting (as well as auto-indent). The window on the left side of the shot is the debugger/monitor window, which is showing the answers the board is sending you back through the serial connection (in this example, some print statements I added to my code).

Freestyle and some more work with leds and potentiometers

Once the blinking LED was actually blinking (so we could be sure it worked) we started playing with the circuit and the code, first changing the code so it blinked faster or slower, then changing it a little bit more so the LED wasn't blinking at the same pace all the time... it was fun.

After a while, we added potentiometers to the equation. We modified the circuit to add a potentiometer that allowed us to adjust the ammount of volts one of the inputs of the arduino board was receiving. Then we modified our code so it was able to adjust some values on demand. What does it mean? Easy, using a simple switch we were able to adjust how fast the LED was blinking. I know, I know, it sounds nothing like launching a missile against your archenemy, but I was learning dammit!

At that point people started to explore some own ideas, and there was a really nice atmosphere of learning, collaboration and sharing:

BEWARE: highly focused people working with arduino boards!

One more thing we did with potentiometers was to use them to adjust the intensity of the light the LED was emitting. This was really easy to do, in fact we didn't have to change the circuit at all, we only had to adjust our code a bit.

Playing with sensors

In the next step we added some sensors to our circuit. First we modified it to add a light-aware sensor. The idea was to replace the potentiometer with the sensor and see how the LED was going to change the light intensity based on the ammount of light detected by the sensor. That is, if there were no light, the LED would shine at full power, while in the case of too much light, the LED would be emitting almost no light at all.

At this point our circuit was getting somehow complicated (as we were adding more and more stuff, without removing the previous work, as Filipe was recommending) but I was impressed about how easy it was to apply big changes to the cirtuit behaviour with just small changes in our code.

Once the light sensor example was working fine, we added a temperature sensor too.


For the last example involving LEDs we had to build a circuit with three potentiometers and one LED. The idea was that, using manual switches, we had to be able to adjust the color of the light emitted by the LED. Each potentiometer could be used to adjust the value of each one of the colors from the RGB color model (Red, Green, Blue), from 0 to 255, being 0 the lowest value (black) and 255 the highest value (white).

This is a picture of the whole RGB LED setup, ready for rumble:

Working on the RGB example, the code needed some adjustment to work properly

This is a closer look at the board, after manipulating the potentiometers switches a bit, to get a bright green color on the LED:

Using the potentiometers it was easy to modify the color of the LED's light

The Buzzer

For our final example, we used a buzzer, an audio signaling device that can be used to make 8-bit sounds (and music!).

At first we just added the buzzer to the breadboard and we modified our circuit and code so it sounds, using a well-known tone:

After some experiments, we used the existing circuit from the RGB example (including the three potentiometers) to create some kind of a mixer board, that is, one of the potentiometers could be used to set the tone, another one could be used to adjust the frequency and the third one could be used to adjusting timing/delay.

This is the result:

The source code that allow us to do that was amazingly simple, take a look at the window on the left side of this screenshot (the one on the right side is the code used in the RGB example):

Using the potentiometers it was easy to modify the color of the LED's light

The Jam Session

After playing for a while with the buzzers example (there was even a proposal to see if anyone was able to get the classic Super Mario Bros tune ;P) Filipe and some other guys tried to set up all the equipment needed to perform a Jam Session using one arduino board and a circuit very similar to that one you've seen in the videos (+ some professional DJ stuff). In the end it didn't work as expected, there was some trouble with the connections, but we used 2 powerful speakers to do some performance while waiting for the pizzas to arrive.


I had a great time with Filipe and the others. The talk about the spacebits project was really interesting, you should take a look at their website, seriously, it shows perfectly the kind of things we would be able to do if we don't stay all day seating in front of a TV, a video console or the social networks.

The arduino workshop was amazing, all I'd expected and more. Even if we did no real or complicated stuff, I had tons of fun. Filipe was a good teacher and he had patience and explained everything, every detail, we would need to know.

Just to finish this post, I'd like to give you some interesting links about arduino and the things you can do with it (yep, they are related to python... O:)) :

Posted by wu at 11:13 | Comments (0) | Trackbacks (0)
18 julio

We've a new website at Codigo23

and it rocks!

The index page of the new codigo23.net site

As I've told you some weeks ago in my summary of the first three months of 2011 I've been quite busy since the beginning of the year. Things hadn't change too much the past three months and that's the reason for this low-posting period (again).

One of the projects I spent most of my time working on was the new Codigo23 website. For the past few years we had a coming soon page, buf finally we found the time to finish the new site contents. Once the contents were ready, we packed them in a not-so-complex website powered by Python, django and some Mako templates. The design was made by Sond3 , a design and web development company from Lugo.

The new site contains information about the different kind of services provided by the company, from software development to servers and networks management, security services or python-related training.

We are working in an open source section, that will contain source code, snippets and many more things, including full source code access to projects released by the company. A papers section is almost ready too, there we are going to publish manuals, articles and how-to documents to share our knowledge base with the community.

We are open! (TM)

Right now it is available only in spanish, but we are working on the english and galician versions (I hope they will be available soon).

One of the best parts of working on this site was to explore new ideas and concepts about website development. In this case, instead of using a pre-built CMS or writing our own CMS, we just wrote some html code using Mako templates and a simple python script that parses the templates, generating the needed static html files containing all the contents of the website.

Then we wrote a small django application that has two functions:

  1. It manages a small blog-like tool, which allow us to have a dynamic blog section, including rss feeds, tagging, comments, etc
  2. It serves a very simple REST API, that is used by some JQuery code in the static javascript files to interact with both the blog and the handlers for the website forms.

I think you will see it clearer in this schema:

Scheme of the codigo23.net website

Obviously this approach has its benefits (static html files served by a well-configured web server is much faster than using dynamic CMS-like applications) and its drawbacks (non-tech users would find editing the mako templates difficult, but hey, we are developers!).

The Codigo23 website has been one of the projects but there was more work to do. We've got some new projects, some of them really really promising ones, and Zavo required some time too.

Good thing is that I've some good expectations for the next months, which is really good news nowadays.

Posted by wu at 08:10 | Comments (0) | Trackbacks (0)
25 julio

How to get more followers in twitter during this summer

Probably not a *new* idea, but I think it is a funny way to get them


And indeed it wasn't an original idea at all, this afternoon I've discovered that my friend r0sk did something like that some days ago, here you have the proof:



Get more followers on twitter, writing your ID on the sand when you are on the beach

I'm sure I'm not the first one that cames up with this idea, but I think it is funny enough to share it with all of you.

Some days ago, while having a walk by the sea, I found some stuff written on the sand. I kept walking and suddendly I thought:

"Hey!, wouldn't it be a good idea if I just write my twitter ID on the sand, leaving it there for everyone to find it?"

I know... probably 90% of the people will have no idea what would be the meaning of that, but that 10% would be worth the effort.

The rules:

  1. Choose a place that is not visible for everyone. This way, the people that would find it will read the ID, thinking about what it would be (obviously, people with a twitter account will understand what it is)
  2. Try to write the ID on wet sand, the ID will be more readable. Of course, wet sand means that the sea will cover the ID sooner or later, it would be a good idea to keep an eye on it and write it again later.
  3. Take some pictures of the writing and the place where you'd written it and put them on your blog. Don't show clearly where it is, but take some shots and spread the word/idea.

Action shot

An *action shot* of my twitter ID written on the sand on a beach located in the north of Galicia

Posted by wu at 09:56 | Comments (0) | Trackbacks (0)
06 noviembre

Arduino Barcamp 2011, Ordes

Talking, learning and doing things with arduino for a whole day

Yesterday was indeed a good day, and a long day too. I woke up at 08:00 (being my soul completely exhausted, as I got to bed around 3:00 the night before) and I met @r0sk, @MarcosBL, @mameyugo and @apvila30 at 08:45 to get on the road again on our way from Lugo to Ordes, where an Arduino Barcamp was being prepared by our friends of the Inestable Linux User Group.

The Barcamp started at 10:00, and we arrived a little bit later (around 10:20 or so), because we had some trouble finding the place.

The first thing that did struck me was the ammount of people attending the Barcamp, a lot more than expected. The guys from the Inestable lug said we were about 70 people in there, amazing (even more because they were expecting around 15 people or so).

You can get an idea on how much people we were just taking a look at these pictures:

Everybody was listening carefully to the first talk of the day. It was crowded during @TCRobotics's talk about Orugas, his personal project using arduino and some robotics knowledge

After meeting some of the Inestable guys (like @nikageek) we attended the first two talks of the day. First one covering basic knowledge about electronics and the second one showing some aspects of the programming language you can use to communicate/interact with your Arduino board. Both talks were performed by Jose [1] from the Inestable lug.

Then we had a coffee break (about 45 minutes or so). Perfect time to met some old friends like @toniousli or @javier_fazouro and talk about different ideas and projects using arduino boards.

The barcamp was talking place in "A casa da cultura", property of the Ordes city council, a nice place with plenty of room and some really nice paints outside:

This was painted on a wall opposite the place where the barcamp was taking place. I found it amazing Another paint, this one was near what seemed to be a kindergarten or something like that.

Back inside the talks room, @TCRobotics led a workshop about setting up the development environment you need to play with arduino, that is, downloading and installing the software from http://arduino.cc and teaching us how to use the environment, where are the docs, etc.

r0sk had his own arduino board with him, so we were able to have some fun Lot of people attending @TCRobotics' workshop

In the picture on the left you can see @r0sk playing with his arduino board. It seems he was having some fun ;P

After a break for lunch two groups of people were formed. One of the groups was attending @TCRobotics' talk about Orugas, his personal project that consist on a rover-like robot that can be controlled using a Wii nunchuk (in a previous version) or a PlayStation2 (in its latest version). He also showed us a video of one of the first versions of the project, where the robot was able to move by itself, recognizing objects and obstacles.

It was really interesting to hear how this kind of projects are done, understanding the whole process, the problems you can find and how you can solve them with a bit of imagination and thinking.

I got a seat quite close to @TCrobotics while he was talking about Orugas Orugas v2.5, we were able to take a look at it quite closely

The Orugas project involves much more stuff, like lasers, proximity sensors, etc. If you want to learn more, just visit Alex blog: http://tcrobotics.blogspot.com

Orugas v2.5, that's what you can do with an arduino board and some time, imagination and patience Another shot of the version 2.5 of the Orugas robot

The other group was attending a talk about arduino's XBee shield, a small board that adds wireless communication support to your arduino board. Oscar (one of the guys behind Bricogeek) gave this talk (sorry, I've no pictures of this talk). Another good talk.

The Barcamp finished near 21:00, or at least we left it at that time (I'm quite sure some people keep talking and sharing experiences and thoughts for some more time).

It was really a good experience. The only thing I'd missed was a real workshop, like the one I attended some months ago in Santiago, where there was a table, some arduino boards and material and both people willing to learn and people willing to teach, something more like a jam session. That would be really amazing, but I understand that being 70 people that would be almost imposible.

Don't misunderstand me, it was great and I enjoyed every single talk during the barcamp, I'm just giving an idea for the next-to-be arduino barcamp (as I'm quite sure there is going to be a next one soon).

We got back in the car and drove our way back to Lugo, arriving at 23:00 or so. We had dinner in one of the usual places (dotmas) and then I came back home BUT @r0sk, @MarcosBL and @mameyugo had other plans... They went to @MarcosBL's place and they kept themselves busy during the night, until they published this video in youtube:

[ no-comments ]

Oh!, I almost forgot, you can take a look at the pictures I took visiting this album.

[1]anyone has Jose´s blog/twitter/whatever urls?

Posted by wu at 22:48 | Comments (0) | Trackbacks (0)
07 mayo

Hey there!

Yes, I'm still alive.

Hey there!

Wow, look at the date of my last post... 06/11/2011, that was like 548 days ago!

Well, I'm still alive, as you can see, but I've been way too busy to write stuff publicly here in the blog (I've been writing some tweets from time to time here though).

Too many things happened during the past few months to be able to write about them all here. One of the main reasons I did stop writing stuff here is that my workload increased a lot, and the other one is that I've a daughter now. Probably you can imagine how much life has changed for me.

I can't tell you how many times I've thought "wow, I should write something in my blog about this" during those 548 days. Really, that happened a lot.

So, here I am, taking 5 minutes to say hello. Let's hope I can be back to this healthy habit of writing about what happens to me everyday.

Hi! I'm glad to be back!

Posted by wu at 14:23 | Comments (4) | Trackbacks (0)
09 agosto

Got a new bike

and it took damned too long to get it!

Me and the new bike

I already wrote some stuff about my habit of moving around town by bycicle (here and here too for example) so this won't be a surprise.

For the last few years I've been riding an old mountain bike that wasn't even mine to begin with (dolo's brother wasn't using it at all, so I just borrowed it) and lately I've been riding my father's old trekking bike, which was nicer than the mountain bike, but not my bike:

This is the old MTB I've been ride for some time This is my father's old trekking bike

Also, after getting the bike trailer for lara, we have been doing rides^excursions more often now (dolo, lara and me) and we didn't have a bike that was really comfortable for dolo, so we started to think about getting a new bike for both of us (a proper one for her, and one for me so we could return those bikes to their real owners).

So, for now we have bought a Giant Argento rs4 GTS (from a local dealer, mtcbicis). The plan is that I will use this one when going for lone rides, and dolo will use it during family rides. This will get me back to the old mountain bike, but I don't think it will take too much time for dolo to decide herself about which new bike we should get for her.

The argento, tron-style The same pic as before, but without using the flash to take it Another shot of the new bike, different perspective.

UPDATE: This evening I did a test ride (around 7.5 kms) and the bike is really really good. Fast, comfortable... Really worth the money we've put in it.

Posted by wu at 09:41 | Comments (1) | Trackbacks (0)
Prev  1   2   3   4   5   6   7   8   9   10   11   12   13   [14]   15   Next