I've spent the last 10 years of my life traveling around the world trying to give meaning to my life. I've experienced cosmopolitan, ascetic, bohemian and rural towns. And you know what?. After all this time, I can assure you that it's not about where you are...but with whom you are while sharing this experience!!.
And why do I emhasize this?...well, I've seen too many people trying to excell by their own, just to realize that in the end it doesn't matter...it's not your (job/whatever you do) what defines you, but whether or not you have someone to share it with...
And all of this just to say that in a few days Ingrid, my {colleague, partner, girlfriend, equal}, will join me in this experience in Guadalajara. In brief, I'm glad not just because I'm giving a new meaning to my life, but because I have someone important to share it with =):.
Y yo que siempre defendí que era una tontería, y yo que tan decepcionado estaba del amor, y tú llegaste a hacerme ver lo que yo no creía.
Recuerdo desde pequeño esos debates sobre que a los chilangos no se les aprecia mucho en el interior de la república...pero, como en muchas otras cosas, la experiencia me ha mostrado que no todo es tan sencillo como parece. Déjenme explicar.
Una de las principales críticas que siempre he escuchado de los (llamados) chilangos es que son gandallas (alguien que es abusivo y que tiene malas intenciones), y para probar si esto es exclusivo de este grupo o no, estas dos últimas semanas he interactuado con los jaliscienses haciéndoles ver (en ocasiones de manera exagerada) que no soy lugareño...
El resultado: me han cobrado mucho más por los servicios que he solicitado (transporte, limpieza y servicios en general) que lo que hubiera pagado de haber sido lugareño (contrastado con colegas del trabajo/vida diaria/foros de internet). No me he quejado, porque creo que si alguien abusa es porque tal vez necesite el dinero...pero no deja de ser interesante que de aquello que se quejan, sea lo mismo que los defina:.
Y todo esto sin discutir cómo definen por aquí a personas de otros lugares (tanto de la república como fuera del país)...por supuesto que no todos ellos, pero me ha tocado escuchar algunos comentarios un poco xenófobos...
Sin querer entrar en polémica, la gente del centro del país es mucho más incluyente...y eso me gusta =):.
Left a bag of bones A trail of stones For to find my way home
What do I think about my first days in a new city starting from scratch?...well, so far, so good!:.
I'm glad that most of my colleagues are just like me (in more than one sense). For example, most of us come from other places outside Jalisco (kudos to Guadalajara for attracting talent), we've all had a bad time trying to rent an apartment here (we're new in town, we don't know anybody!), and most importantly, we're passionate about technology and building things that matter.
I still don't know the city in detail (to be honest, I believe that the only way to truly know a city is to walk all of its streets at least once), but so far, I love the fact that I can use my scooter pretty much anywhere!.
Have you heard about those mythical [Mountain View* company] interviews where you must master red-black trees and remember all sorts for sorting algorithms?. Well, due to a NDA I can't tell you more...just that if you ever apply for any [Mountain View* company], you'll probably be interviewed by a programmer who thinks that a random algorithm test is a good way to tell a good developer from an average one...even when said programmer only cares to write the test five minutes before you meet him (his own words!!)...the result: you'll find so many grammar problems that when you point them out, said programmer will just blush and will try to move on:.
I could tell you about another [Mountain View* company] guy who wouldn't accept the use of a Java's Collections method in the middle of the interview...but that at the end of the interview will blame you for not relying on standard API's....say what??...When you remind him that he specifically said not to use the Collections framework(which is part of the standard API)...he will say, OK (but an OK which means: I'm letting you down, no chance I'm perceived as I'm no expert).
I'm just tired of people posing like they know what they're doing...
Besides programming, football and CoD4, there are few other things that I truly enjoy...but today I witnessed such a monstrosity in the Mexico-Panama match that I must stop supporting my football national team.
Corruption, blatant corruption everywhere!!, I cannot support that!!.
So, I promise not to watch any match (or for that matter, support my football national team) at least until the next world cup. Chances are they won't be there anyway...
Sadly...no... Even those companies ranked as "the best companies" to work in Mexico still run in an old fashioned manner.
Let me say it again: it's not the technical knowledge that matters, it's not how cool you talk (or how many swear words you know?), it's not even about the 'fictional' time you have to solve a problem...and you know why?: because all good designs evolve (it's not like they're born out of thin air)...
You don't know/remember an API? It doesn't matter, you can master it in a couple of hours. But I guess that from a worker's (programmer/second class citizen) point of view it makes all of the difference...which is really sad!.
To all of you who happen to read this blog...please remember that you're not just programmers (workers/second class citizens)!, you're developers!!. But please (oh! please) don't let that go into you head and demand people start calling you by some random animal name (true story!!) and start acting like the world doesn't deserve you...
He de confesar que, además de la programación, la música y las películas han sido mi gran pasión estos últimos años (y que gracias a ellas nunca he caído en depresión total).
Al final de cuentas todas ellas nos permiten lo mismo: crear mundos imposibles con nuestras propias reglas!. Libertad total!.
Tal vez por eso sea tan triste ver que las entrevistas de (una gran mayoría de) empresas que se dedican a generar estos mundos sigan un guión tan estático, tan mecánico, sin lugar a la imaginación...
Y me refiero por ejemplo a hacer preguntas que pueden ser fácilmente resueltas con una vista rápida al API (o al Sr. Google). Una vez más mantengo que: los detalles no importan!, o como dirían los Simpsons "Are you telling me you memorized that fact when anyone with a cell phone can find it out in 30 seconds?". It's what you've done (and how you can explain it) and what you can do (and how you can defend it) what matters. In brief (paraphrasing the KISS moto) it's the Big Picture, not the Details, St**id (BP.DS)!!.
Another problem arises when you defend an idea but the recruiter only cares about a pre-defined answer, and he won't accept yours, either because he doesn't understand it (which worries me) or because he doesn't care (which worries me more!).
Anyway, next Wednesday I'll have an interview that promises to be better...I can only hope it really is!!:.
Dejaré aquí pedazos de ti, como los que tú me diste a mi.
Summer 2001, I get into one of the best schools to study computer science (CS) in Mexico. Winter 2005, I graduate (with honors) from a top-tier institution in CS Summer 2009, I start a Master in CS (to try and fix what people working on CS actually do) Winter 2010, I graduate (with honors) from a top-tier institution in CS Sumer 2011, I start a PhD (France) in CS (to fix what people working on CS actually do) Winter 2014, nobody knows what they're doing (including me)...so, I resign. Spring 2015, I go back to developing a better world!!:.
A few days ago I had a programming interview (the first in a long time!), and I didn't like the way it went. Let me explain.
My first programming interview (2006) was in a small company where I thought I could work with smart and fun people. To get this job, I had to take a 1 month course about a particular development methodology (PSP/TSP), while solving some programming/mathematical problems. Each week we were evaluated on our (perceived) programming skills, and at the end of the month we were given either an offer or a farewell and goodnight.
They made me an offer, but they also told me that since I had barely made the cut, they would pay me less money compared to other newcomers. I didn't care, I just wanted to develop great software...
A year passed and management told me that I was in charge of evaluating the programming skills of newcomers, and all because some key people had praised my programming skills during the time I worked with them in that same company. Irony?, I don't think so. I just believe that it's really difficult to know whether somebody is a good developer or not before you hire them. The only way to know for sure if someone is a good fit is to develop an application with them side-by-syde and then decide whether or not you respect them as a colleague.
Almost ten years have passed, and, sadly, (at least in some companies) things haven't changed...it's 2015, we should know better than asking trivia questions and brainteasers to evaluate somebody's programming skills!.
There are better ways to do it...for example, you can analyze the code of a potential hire and then ask him to explain why he designed it that way. Or maybe how he would solve a particular problem, while staying at a high level of abstraction. And this, I believe to be key!.
Programming languages come and go. It doesn't matter if you memorize an API, chances are it will change. What matters is that you have an idea of how to solve a problem, and then look for the tools that let you implement that idea in an optimal way.
It's only worse when the person interviewing you makes mistakes (like saying you have to extend the Iterator interface to iterate a simple array in Java (?!?!)), and only admits his error once he's Googled the problem! (or to be fair, probably looked at the documentation). But that same person goes crazy when you claim that it's not important to know the particular package and name of a class in Java because you can always look it up in the API (or a simple Google search)...double standards anyone?.
What have I learned after spending all this time in the programming trenches?. Rather than evaluating people on what they know (or remember), do it on what they can develop...in the end, that's all that matters, that's what you're gonna need!:.
I recommend getting your heart trampled on to anyone, I recommend walking around naked in your living room.
It's been a while since I had my last job interview, but nonetheless, I think it went pretty well!..sure, I'm really rusty regarding programming skills, but nothing a couple of weeks of serious programming won't fix...
No problem, for the last part of 14 years, programming has been the thing that I've enjoyed the most...and I must ask, can you name something (besides money) that makes you feel the same way I do?.:.
I said, ooh, I think I do... I said, ooh, merci beaucoup.
Hace años escribía una entrada en mi blog en la que comentaba justo lo que siento ahora, que debo cerrar una etapa en mi vida (una etapa que define lo que he sido por bastante tiempo), con la esperanza de que lo que está por venir me acercará más a lo que debo (o siempre he estado destinado a) ser.
No lo sé, tal vez sea que estoy acostumbrado a pensar en ciclos (o que al final no importa si obtienes lo que esperabas o no), pero quisiera cerrar esta entrada con las mismas palabras que utilicé hace años:
They say an end can be a start
Feels like I've been buried yet I'm still alive
It's like a bad day that never ends
I feel the chaos around me
A thing I don't try to deny
I'd better learn to accept that
There are things in my life that I can't control
They say love ain't nothing but a sore
I don't even know what love is
Too many tears have had to fall
Don't you know I'm so tired of it all
I have known terror dizzy spells
Finding out the secrets words won't tell
Whatever it is it can't be named
There's a part of my world that's in the way
You know I don't want to be clever
To be brilliant or superior
True like ice, true like fire
Now I know that a breeze can blow me away
Now I know there's much more dignity
In defeat than in the brightest victory
I'm losing my balance on the tight rope
Tell me please, tell me please, tell me please...
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know
Hang on to the good days
I can lean on my friends
They help me going through hard times
But I'm feeding the enemy
I'm in league with the foe
Blame me for what's happening
I can try, I can try, I can try...
No one knows the hard times I went through
If happiness came I miss the call
The stormy days ain't over
I've tried and lost know I think that I pay the cost
Now I've watched all my castles fall
They were made of dust, after all
Someday all this mess will make me laugh
I can wait, I can wait, I can wait...
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know
It's like somebody took my place
I ain't even playing my own game
The rules have changed well I didn't know
There are things in my life I can't control
I feel the chaos around me
A thing I don't try to deny
I'd better learn to accept that
There's a part of my life that will go away
Dark is the night, cold is the ground
In the circular solitude of my heart
As one who strives a hill to climb
I am sure I'll come through I don't know how
They say an end can be a start
Feels like I've been buried yet I'm still alive
I'm losing my balance on the tight rope
Tell me please, tell me please, tell me please...
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know
If I ever feel better
Remind me to spend some good time with you
You can give me your number
When it's all over I'll let you know.
I feel the chaos around me, a thing I don't try to deny, I'd better learn to accept that there's a part of my life that will go away.
Durante meses (en realidad ya parecen años) he mantenido este dilema interno sobre si debo terminar o no el doctorado. (Guardando toda proporción) es como el dilema que enfrenta Walter White en Breaking Bad, que durante la mayor parte de la serie argumenta que todo lo que hace es por su familia (o por algo que lo trascienda), pero que en un momento de inmensa honestidad admite que lo hace sólo por él, por su gran ego!.
Y la verdad es que es así. Ya pronto serán 10 años de mi graduación de licenciatura, y por lo menos de los compañeros con los que mantengo algún (mínimo) contacto, ninguno de ellos está cerca de terminar un doctorado. Mi principal argumento es que sería el primero de ellos en obtener ese grado...ego total!!:.
Lo que también me molesta, porque la motivación no es que pueda o no hacerlo, es que quiera hacerlo...
Así estaba pensando hasta que hace un par de semanas, dos de mis asesores se pusieron también las pilas y parecen realmente interesados por que acabemos este ciclo. Un segundo aire?, espero que sí =).
De cualquier forma, también he estado cocinando algunos proyectos alternativos (algo que ver con cripto-monedas). Espero pronto tener algo que mostrar (tanto de la tesis como de los proyectos alternativos) y poder decir al mundo: soy King Crimson, Elton John y Supertramp!:.
Me he quedado atrás, en mi zona de seguridad. Pude investigar, decidí quedarme en el sofá.