Playlist for a rainy day

This is my playlist for rainy days:

Disclaimer: If after listening to this you feel like staying inside all day, I’m not liable.

Slight improvements to the JS Timeline

I had been waiting for inspiration to correct some of the bugs of the timeline and also add a little bit of functionality, so here we go: version 0.002 ;)

New screenshot and link:

La respuesta

Con las debidas disculpas por haber tardado 10 veces más tiempo en publicar las respuestas de lo que había deseado originalmente, aquí van (explicación más abajo):

Click en “Read More” para ver todo el post.

Read more »

Un lindo problema

El Sábado pasado llovia a cántaros y no existía nada, absolutamente nada que pudiera mitigar el aburrimiento extremo… excepto una cosa: un buen probema de matemáticas.

Mi padre decidió seguir intentando resolver este problema hasta que tuviera éxito, o muriera de agotamiento, y su perseverancia me arrastró a intentarlo yo mismo. He aquí el problema:

El probema es simple:

  • Tenemos una balanza de dos platos
  • Hay que pesar cosas que fuctuan entre 1 Kg y 40 Kg.
  • Los pesos siempre son enteros.
  • Hay que encontrar 4 pesas que nos permitan lograr esta tarea.

Primera pista: se pueden poner pesas en ambos lados de la balanza (el lado que tiene el objeto a pesar, y el lado que solo contiene pesas)

Para no dejar a la audiencia con la duda, o resolvimos, o más bien, utilicé el “poder bruto” de mi laptop para calcular los 2,560,000 posibles combinaciones de pesas para encontrar al respuesta.

Mañana revelaré la respuesta y el código con el que la encontré, mientras tanto, intenten resolverlo :D

ICPC ACM — Competition

Overdue by a couple of days, I will write about it.

It all starts last Sunday (the 29th) at 6:30 in the morning. My cellphone wakes me up and I’m a man on a mission:

Yours truly in deep concentration

All we knew about the competition was that it would be a strictly programming competition, so no “advantages” depending on the language of choice, and that we could bring 30 pages with documentation.

  • The first part was very relieving: since we are all hardcore Java developers, its hard to compete against c/c++ code on time and memory management (even tho sometimes Java wins…)
  • 30 pages of documentation was more of a question than a rule. What do you mean by “documentation“? We had no clue of what it meant, but we assumed that it had to be related to simple operations that yet are not so common, for instance, painting to the screen, visualizations, etc etc. So I grabbed some of sample code to read files from a buffer and stuff  like that, and printed them.

Our surprise was great when we get to the event at 8:40am and find lots of people reading stuff… reading the Java API!!!!!!!!!! LOL LOL Someone was able to see what class they were reading about, it happened to be the String class… Obviously that didn’t make any sense, UNLESS, code completion was disabled in the computer that we were using… A friendly staff member was around and we proceeded to ask him about code completion:

Gabriel: “So, I’ve seen people reading the Java API, does it mean that we wont have any code completion, or the built in API in Eclipse?”
Staff Guy: “Yeah, you will have everything that eclipse has.”
Gabriel: “That means that I don’t need to have the API memorized, right?”
Staff Guy: “Well, the Eclipse version you will be using is customized, so it doesn’t have any code completion or anything like that…”

It was pretty clear that the guy either didn’t know what he was talking about, OR he didn’t understand my first question and that we were headed for a programming slaughter without autocompletion in Eclipse.

We step in the computer lab: every table has a computer, pencils, en envelope and a sign. It was pretty straight forward to find our group: the Pink Unicorns (Later I was reminded by a friend that a Pink Unicorn is a metaphor that atheists use lot, completely coincidental).

The competition starts, we realize that Eclipse has ALL the standard features, so the guy we talked to early was confused.

Four hours later, with 4/6 programs done, two of them working 100%, the other two completed but not working, the competition ended. We grabbed 8th place, but we could have been 2nd or 3rd. Let me explain our mistakes:

We (three of us) worked in ONE problem at the time, we did this for over 45 minutes, compete waste of time.

Solution: Every team member has to work in their own problem. Don’t ask for help before you have read your problem

Don’t open the envelope and read one problem at the time and try to solve it.

Solution: Read 2 problems, determine which one is the easiest, and solve that one first

Finally, have a good night of sleep and a good breakfast before the competition.

We think we have potential, and in 25 days when the next (and this time important) competition will take place, we will do better than 8th.

Some of the participants. The teams that did very bad had already left. Guys in yellow are organizers/staff. I'm around the center of the picture, with a brown shirt. To my left and right are Gio Ascencio and Javier Soto.

Less dangerous sports

By popular demand, my sports of choice have become less daring and for now I’m sticking to “tying a cherry stem into a knot” (yes, I had to google that) with one’s mouth, only

As a little background, I never thought this was actually possibly done by a normal human with a 10cm tongue (thats the real size, wikipedia doesn’t let me lie), but yet against all my predictions, I was able to pull it off. Proof below:


Get ready for tomorrow: finally a more technical post. I will be talking about my experience in the preliminary ACM ICPC Monterrey competition this morning. Sneak preview? even with out inexperience in this kind of competition we got 8th out of 30 teams… more tomorrow.

Good night peoplessss

R.I.P Skateboard

“Forever in my memory”

Disclaimer: The skateboard breaking shows nothing else than my undeniable mediocrity and amateurism in this sport. It wouldn’t be too outlandish to assume that the board broke itself so I would stop making a fool of myself riding it.
I guess having the words “IRON MAN” on the top was a bad augury anyway…

My first attempt at a Javascript Timeline

Its late, tomorrow I need to be up at 6:00am at most, and I’ve spent so far 3 hours doing this thing.

If you ask me, three hours is right in the edge between too little and too much time spend in something like this, and the breakdown is:1:45 hours developing it and the rest of the time trying to get the info and finish some other work, which makes me feel better about myself, since all of the unfinished details can be blamed upon the lack of time ;) oh yeah, my excuses rock!

Sometime in the future I will clean up the code and let anybody use the it (hopefully somebody will find it useful)

Obligatory screenshot and link:

Good night!

UPDATE: New version of the timeline here.

Gotta start somewhere…

So here I am, after realizing how hypocritical my attitude was when I told other people “why don’t you upload your website?”… Change made feel its presence and the gods gave me just enough courage to finish this website and upload it.
Did it take as long as I expected? No, it took much longer, but its finally here. Tweaks here and there DO make a big difference in the long run.
The big question in my mind right now is the language: this blog could be exclusively written in English, but at the same time, I don’t want to loose the freedom of writing in Spanish from time to time, so lets label it bi-lingual.
And finally the content. Content is the most important part of any blog and it determines the public that will read it, yet it wouldn’t be too wild to assume that most people that study any kind of engineering or computer science share many interests, and following that rationale, I will publish about technology and things that interest me, with the hopes that when something sounds good to me, it will also sound good for you.
Yes, I hear you: you’re telling me this is too general and you want some specific topics that will be discussed here… fair enough, bellow is a list of things (some already prepared, some others half-way done) that in the near future will be showcased in this blog:
  • Javascript, Javascript & more Javascript (this is one of my favorite topics)
  • Zooming User Interfaces (ZUI) (need to do one of these for  a class this semester)
  • 3D projection (my thesis project)
  • Flex/Flash/Air (at work we develop using Adobe technologies, I will write about that)
  • CSS Techniques (sharing is good)
  • Open Source (its a lifestyle and writing about it can help humanity, therefore, why not?)
  • Photography (since I spend relatively a lot of time taking photos, discussion about techniques is a must)
  • Politics (not the “this candidate sucks” politics. Mostly world politics)

That wraps up the “starting somewhere” post.

PD: Before I forget, please click ‘n drag the logo ;)