Camino

15 09 2011
Camino, originally uploaded by Ivan_Lopez.

La vida se va tejiendo delante de nuestras narices. De forma más o menos consciente vamos tomando pequeñas decisiones que marcarán irremediablemente nuestro porvenir futuro.

Hace menos de dos años que la mayoría de mis amigos y yo acabamos la carrera. ¿Qué hacer después? Unos optaron por empresas informáticas, otros por seguir formándose, otros haciendo oposiciones para policía nacional…

Yo opté por hacer oposiciones al cuerpo de profesores de ciclos formativos. No salió y conseguí una beca en el SAII. Un “trabajo” bien remunerado y en el que se trabaja sólo por las mañanas.

Hasta ahí se puede decir que llegue de manera más o menos inconsciente, pero, una vez dentro me propusieron colaborar con una investigación. Es en ése momento cuando tenía ante dos panoramas opuestos:
a) Decir que no. Ahorrarme mil preocupaciones y dedicarme tan sólo al SAII y a rascarme la barriga por las tardes.
b) Decir que sí y aceptar más trabajo sin saber siquiera si iba a cobrar. Tener que practicar el inglés y estar las tardes pringando.

Yo opté por arriesgar y lanzarme a por la b. Hay momentos en la vida en los que hay que apostar, apretar los dientes y luchar. Y creo que en estos momentos de crisis es necesario aprovechar cualquier oportunidad.

Y como suele ocurrir con estas cosas una cosa llevó a la otra y después de unos meses de duro trabajo echo la vista atrás y puedo ver cómo ha cambiado mi camino original:

  • He aprendido muchas cosas sobre cómo organizar un proyecto grande (reuniones score, repositorios, documentación doxygen…)
  • He trabajado con elementos que desconocía de ingeniería del software (esqueletos, patrones de diseño…)
  • He realizado mi primera publicación (en realidad fueron tres :-)
  • He asistido a mi primer congreso (con exposición de póster en inglés)
Y un largo etcétera en el que podría incluir que se me han abierto las puertas para hacer una estancia investigadora en Edimburgo, seguir creando artículos para conseguir mi primer artículo en revista…
Con esto quiero decir que a veces es importante involucrarse y dar lo mejor de uno mismo. El trabajo que uno realiza es su carta de presentación. Por eso no hay cosa que odie más que la mediocridad, la desidia, el “ya total”, el “qué más da, así mismo y punto”, el “yo de eso no sé”…
Y para ir concluyendo decir que poco a poco voy andando mi camino. Y, como ocurre con el de la foto, no es un camino recto. Sino que se va adaptando a lo que voy encontrando por el camino. Intentando obtener lo mejor de cada situación. Lo último ha sido conseguir un contrato de investigación. Gracias al esfuerzo invertido a priori conseguí unas condiciones un poco mejores. Y, ¿sabes qué? Dicho contrato me permite matricularme gratis en la Universidad. ¿Debería aprovechar la oportunidad?
De nuevo, la respuesta es un rotundo sí. Pienso hacer un máster en investigación. ¿Mi camino parece señalar ahora hacia la investigación? ¿A un doctorado? No lo sé. Ni tengo prisa en decidirlo. Tengo camino todavía por delante que recorrer. Con buena letra. Disfrutando de cada paso.




¿Existe la amistad después de la relación?

19 05 2011

Muerte a contraluz, originally uploaded by Ivan_Lopez.

El título, aunque parezca de broma, es un tema sobre el que no suele haber consenso entre mis amistades. Muchos piensan que es mejor cortar de forma radical. Guardar los regalos, quitar sus fotos, eliminarl@ del tuenti/facebook y no volver a quedar nunca más.

Yo no soy así. He tenido la suerte de que mis relaciones han acabado más o menos bien. Sin engaños ni ninguna cosa muy grave. Por lo tanto, me dolaría saber que la otra persona me borra totalmente de su vida. Es como negar lo que pasó. Es como decir “me equivoqué”. Si he estado contigo es porque me importas. Aunque ya no podamos estar juntos me sigo preocupando por ti. Me gustaría que todo te fuese bien y quiero que sepas que puedes seguir contando conmigo. Muchas veces, cuando estamos con alguien, no nos damos cuenta pero vamos robándole tiempo a nuestros amigos. Por eso, tras una ruptura estamos más indefensos de lo normal. Si alguien te ha hecho daño y no tienes con quién hablarlo… ¡puedes llamarme!

Incluso poco después de dejarlo creo que quedar con la otra persona es beneficioso. Aunque es un arma de doble filo. Las primeras veces serán MUY DURAS. Y le darás vueltas a cada palabra que salga de su boca. Y te quedarás hecho polvo viendo como las cosas ya no son lo que eran. Pero es la forma más fácil de conseguir pasar página. Las siguientes veces irán siendo cada vez más fáciles y volverás a contar con una amiga. Una amiga muy valiosa porque te conoce muy bien por lo que han pasado juntos.

Los que optan por no volver a ver a sus ex. Cuando se los cruzan por cualquier motivo, de fiesta o lo que sea, se llevan un hachazo. Y seguirá así por mucho tiempo. Al final el tiempo todo lo cura. Pero de forma más lenta. Y habrás perdido por el camino una persona que seguramente vale la pena pues tomaste la decisión de estar con ella, ¿no?

También hay que ser realistas. A mí me gusta ser optimista pero eso no quita que haya que ser objetivo. Lo primero es que nunca se puede volver al punto anterior. Siempre se pierde “algo” por el camino. Se pierde algo de esa complicidad, algo de esa magia, química o como quieras llamarlo. También es verdad que cada persona puede necesitar un tiempo diferente para poder retomar la amistad. Hay quien necesita hacer un paréntesis. Incluso estar con terceras personas antes de poder hablar con naturalidad con la otra persona.

Como le dije no hace mucho a alguien: el mundo de los consejos es como un supermercado. Tú vas mirando y sólo coges aquello que te quieras llevar.

Con esa filosofía escribo este blog. Me ayuda a sacar todo eso que llevo dentro. Todas las ideas que hacen run-run en mi interior. Conversaciones a medias con mis amig@s. Comentarios, mensajes privados… al final me gusta plasmarlos por aquí. Es como lanzar botellas al mar con un mensaje en su interior.

No sabes quién las va a poder recibir. Pero mantienes la esperanza de que alguien lo haga. De que a alguien le pueda aportar un nuevo punto de vista, ayudarle a pasar un mal momento o sacarle una sonrisa ;-)





How to make GOOD measurements in NVIDA CUDA?

9 05 2011

It would be good read the previous anotation about measure time in NVIDIA CUDA platforms.

In this post you could find some information about the warming up of the device and the delays of some instructions.

Some people thinks that the first kernel call should not be measured because it takes more time than the following ones.

But, how much longer?

Simple kernels

With simple kernels like the following one:

// Kernel that executes on the CUDA device
__global__ void simple_kernel(float *a, int N)
{
int idx = blockIdx.x * blockDim.x + threadIdx.x;
if (idx<N) {
a[idx] += a[idx] * a[idx];
}
}

The output:

[ivan@machine]$ ./warm
Time for call of the kernel #0: 0.089000 ms
Time for call of the kernel #1: 0.053000 ms
Time for call of the kernel #2: 0.051000 ms
Time for call of the kernel #3: 0.051000 ms

The differences between the first call and the followings seem to be important. The first one spends about 68% more time than the following ones. In this case it takes about 0,04 ms more.

Complex kernels

But, what will happen with a more complex kernel like this?

// Kernel that executes on the CUDA device
__global__ void complex_kernel(float *a, int N)
{
int idx = blockIdx.x * blockDim.x + threadIdx.x;
if (idx<N) {
for (int i = 0; i < 1000; i++) {
a[idx] += a[idx] * a[idx];
}
}
}

The output:

[ivan@machine]$ ./warm
Time for call of the kernel #0: 1.624000 ms
Time for call of the kernel #1: 1.595000 ms
Time for call of the kernel #2: 1.589000 ms
Time for call of the kernel #3: 1.595000 ms

As you can see the first kernel takes a 0,03 ms more again. It represents only a 1,8% more than the followings exectutions!

The warming up is not here

It is necessary to avoid the measurement of the first kernel call? In my opinion, a delay of about 0,03 ms is too small to be considered.

However, you probably find that in your CUDA code there are some instructions that spend a bigger time than the expected time. Why? Lets see some examples:

cutStartTimer(select);
cudaSetDevice(0);
cudaThreadSynchronize();
cutStopTimer(select);

float *a_h, *a_d;  // Pointer to host & device arrays
const int N = 10000;  // Number of elements in arrays
size_t size = N * sizeof(float);
a_h = (float *)malloc(size);        // Allocate array on host
// Initialize host array and copy it to CUDA device
for (int i=0; i<N; i++) a_h[i] = (float)i;
int block_size = 4;
int n_blocks = N/block_size + (N%block_size == 0 ? 0:1);

cutStartTimer(Malloc);
cudaMalloc((void **) &a_d, size);   // Allocate array on device
cutStopTimer(Malloc);

cudaMemcpy(a_d, a_h, size, cudaMemcpyHostToDevice);
// Do calculation on device:
int i;
for (i = 0; i < 4; i++) {
cutStartTimer(kernel);
complex_kernel <<< n_blocks, block_size >>> (a_d, N);
cudaThreadSynchronize();
cutStopTimer(kernel);
times[i] = cutGetTimerValue(kernel);
cutResetTimer(kernel);
}

// Retrieve result from device and store it in host array
cudaMemcpy(a_h, a_d, sizeof(float)*N, cudaMemcpyDeviceToHost);
cudaFree(a_d);

printf (" Time for selecting the device: %f ms\n", cutGetTimerValue(select));
printf ("           Time for the malloc: %f ms\n", cutGetTimerValue(Malloc));
for (i = 0; i < 4; i++)
printf ("Time for call of the kernel #%d: %f ms\n", i, times[i]);

You could see that there are some instructions that are being measured:
  • The cudaSetDevice
  • The cudaMalloc
  • The kernel’s calls

The output:

[ivan@machine]$ ./warm
 Time for selecting the device: 3816.443115 ms
           Time for the malloc: 0.116000 ms
Time for call of the kernel #0: 1.620000 ms
Time for call of the kernel #1: 1.596000 ms
Time for call of the kernel #2: 1.585000 ms
Time for call of the kernel #3: 1.588000 ms

The cudaSetDevice instruction takes about 3,5 s!! It is a big time! More than 2000 times greater  than a kernel execution! So lets to comment the cudaSetDevice:

cutStartTimer(select);
//cudaSetDevice(0);
//cudaThreadSynchronize();
cutStopTimer(select);

And it’s corresponding output:

[ivan@machine]$ ./warm
 Time for selecting the device: 0.000000 ms
           Time for the malloc: 3824.311035 ms
Time for call of the kernel #0: 1.618000 ms
Time for call of the kernel #1: 1.595000 ms
Time for call of the kernel #2: 1.593000 ms
Time for call of the kernel #3: 1.588000 ms

What happened? In this case, the malloc instruction takes almost 4 s!

1st conclusion – The first CUDA sentence takes a long time

The first CUDA instruction (cudaSetDevice, a kernel launch, cudaMalloc) will take about 3,5 s more than usual. This CUDA overhead only occurs in the first instruction of a program.

But, there is the only overhead we can find in a CUDA program? Not, lets see what happens if we measure some cudaMalloc:

cutStartTimer(Malloc);
cudaMalloc((void **) &a_d, size);   // Allocate array on device
cudaThreadSynchronize();
cutStopTimer(Malloc);
cutStartTimer(secondMalloc);
cudaMalloc((void **) &a_d2, size);   // Allocate array on device
cudaThreadSynchronize();
cutStopTimer(secondMalloc);

cudaMemcpy(a_d, a_h, size, cudaMemcpyHostToDevice);
cudaMemcpy(a_d2, a_h2, size, cudaMemcpyHostToDevice);
// Do calculation on device:
int i;
for (i = 0; i < 4; i++) {
cutStartTimer(kernel);
complex_kernel <<< n_blocks, block_size >>> (a_d, N);
complex_kernel <<< n_blocks, block_size >>> (a_d2, N);
cudaThreadSynchronize();
cutStopTimer(kernel);
times[i] = cutGetTimerValue(kernel);
cutResetTimer(kernel);
}

// Retrieve result from device and store it in host array
cudaMemcpy(a_h, a_d, sizeof(float)*N, cudaMemcpyDeviceToHost);
cudaMemcpy(a_h2, a_d2, sizeof(float)*N, cudaMemcpyDeviceToHost);
cudaFree(a_d);
//cudaFree(a_d2);

In the preceding code there are two identical cudaMallocs. But the measured times are very differents:
[ivan@machine]$ ./warm
Time for selecting the device: 3818.165039 ms
Time for the malloc: 0.163000 ms
Time for the 2malloc: 0.026000 ms
Time for call of the kernel #0: 3.207000 ms
Time for call of the kernel #1: 3.166000 ms
Time for call of the kernel #2: 3.165000 ms
Time for call of the kernel #3: 3.165000 ms

The first cudaMalloc spends 8 more times than the second one.

Second conclusion – The first cudaMalloc takes longer time than the following ones

Maybe this overhead is used to perform some bus initialization.

Third conclusion- The cudaThreadSynchronize sentences are very important

The measured times could differ a lot if cudaThreadSynchronize are not used properly. An example:

for (i = 0; i < 4; i++) {
cutStartTimer(kernel);
complex_kernel <<< n_blocks, block_size >>> (a_d, N);

cutStopTimer(kernel);
times[i] = cutGetTimerValue(kernel);
cutResetTimer(kernel);
}

The output:

[ivan@machine]$ ./warm
Time for selecting the device: 3829.884033 ms
Time for the malloc: 0.113000 ms
Time for the 2malloc: 0.018000 ms
Time for call of the kernel #0: 0.021000 ms
Time for call of the kernel #1: 0.004000 ms
Time for call of the kernel #2: 0.002000 ms
Time for call of the kernel #3: 0.003000 ms

The corrected code:

for (i = 0; i < 4; i++) {
cutStartTimer(kernel);
complex_kernel <<< n_blocks, block_size >>> (a_d, N);
cudaThreadSynchronize();
cutStopTimer(kernel);
times[i] = cutGetTimerValue(kernel);
cutResetTimer(kernel);
}

The new output:

[ivan@machine]$ ./warm
Time for selecting the device: 3837.173096 ms
Time for the malloc: 0.159000 ms
Time for the 2malloc: 0.026000 ms
Time for call of the kernel #0: 0.272000 ms
Time for call of the kernel #1: 0.243000 ms
Time for call of the kernel #2: 0.237000 ms
Time for call of the kernel #3: 0.235000 ms

I hope this post will help you with the NVIDA CUDA delays, overheads and help understanding the time measures in this platform.





How to measure time in NVIDA CUDA?

9 05 2011

This post will show you some points about how to measure time in Cuda.

Reading the documentation about Cuda you could find two ways:

  • cutStartTimer(myTimer)
  • Events

Events are a bit more sophisticated and, if your code uses asynchronous kernels, you must to use it. But, how could you know if a code has an asynchronous kernel or not?

To let a code be asynchronous the programmer must create streams with the input data and transfers it to the device using the instruction:

cudaMemcpyAsync

In conclusion, if in the code there is not any instruction like ‘cudaStreamCreate’ and ‘cudaMemcpyAsync’ you cold assume that your code is synchronous (simplifying the measurements).

Measuring with the cut{Start|Stop}Timer

It is very important to use the instruction cudaThreadSynchronize() to avoid erroneous measurements.

The code is bellow:

 uint kernelTime;
  cutCreateTimer(&kernelTime);
  cutResetTimer(kernelTime);

  cudaMalloc((void **) &a_d, size);   // Allocate array on device
  cudaMemcpy(a_d, a_h, size, cudaMemcpyHostToDevice);
  cutStartTimer(kernelTime);
  // Do calculation on device:
  square_array <<< n_blocks, block_size >>> (a_d, N);
  cudaThreadSynchronize();
  cutStopTimer(kernelTime);

  // Retrieve result from device and store it in host array
  cudaMemcpy(a_h, a_d, sizeof(float)*N, cudaMemcpyDeviceToHost);
  cudaFree(a_d);
  printf ("Time for the kernel: %f ms\n", cutGetTimerValue(kernelTime));

The output:

[ivan@machine]$ ./timer
Device name : Tesla C2050
Time for selecting the device: 3423.731934 ms
Time for the kernel: 0.068000 ms

Measuring with events

The events are more precise and an example of use is bellow:

  cudaEvent_t start, stop;
  float time;
  cudaEventCreate(&start);
  cudaEventCreate(&stop);

  cudaMalloc((void **) &a_d, size);   // Allocate array on device
  cudaMemcpy(a_d, a_h, size, cudaMemcpyHostToDevice);
  cudaEventRecord(start, 0);
  // Do calculation on device:
  square_array <<< n_blocks, block_size >>> (a_d, N);
  cudaEventRecord(stop, 0);
  cudaEventSynchronize(stop);

  // Retrieve result from device and store it in host array
  cudaMemcpy(a_h, a_d, sizeof(float)*N, cudaMemcpyDeviceToHost);
  cudaFree(a_d);
  cudaEventElapsedTime(&time, start, stop);
  printf ("Time for the kernel: %f ms\n", time);

The ouput:

[ivan@machine]$ ./event
Device name : Tesla C2050
Time for selecting the device: 3819.466064 ms
Time for the kernel: 0.041632 ms

In short

If the code is asynchronous you could use any of the two ways introduced before. If the kernel is a bit more complex the differences between them are smaller:

[ivan@garoe tiempo]$ ./timer
Device name : Tesla C2050
Time for selecting the device: 3824.726074 ms
Time for the kernel: 1.619000 ms

[ivan@garoe tiempo]$ ./event
Device name : Tesla C2050
Time for selecting the device: 3859.903076 ms
Time for the kernel: 1.600992 ms




Make everyday count

16 02 2011
Pareja de palmeras

Pareja de palmeras

He decidido empezar la anotación con una frase que resume en pocas letras una idea muy poderosa: “Make everyday count” o lo que es lo mismo, haz que cada día cuente.

Según voy ganando años esta máxima cobra importancia. Cuando eres más pequeño sueles tener varias obligaciones que no te gustan: estudiar la carrera, escuela de idiomas, cuidar de tu hermano pequeño… Pero llega un momento en el que te deberías quedar sólo con una obligación: ir a trabajar. Mención aparte merece el tema de que es posible disfrutar en el trabajo pero eso será en otra entrada. Aún si lo pasamos mal en el curro nos quedan un buen puñado de horas libres. Ésas son las que están en nuestro poder. Ésas son las que tenemos la obligación de hacer que cuenten.

Que cuando llegues a la cama llegues con una sonrisa. Con algo más. Me da mucha pena cuando pienso en que para algunas personas los días de lunes a viernes son una monótona sucesión de días grises. Para algunos incluso los fines de semana son días grises.

Pero ¿por qué? Ojalá les pudiese comprar el tiempo que no saben aprovechar! Ni aunque mis días tuviesen 48 horas me llegaría a aburrir! Si es que, sin moverse de tu cuarto, hay un montón de cosas por hacer. Me encanta pintar con acrílicos o descubrir nuevas canciones con el Spotify. Hace poco me leí de un par de sentadas “Juicio Final” de John Katzenbach y ahora estoy con una novela romántica:  ”El primer día” de Marc Levy.

Series. Hay tantas y tan buenas que ojalá tuviera cuatro ojos. Algunas de las imprescindibles:

  • Lost
  • Cómo conocí a vuestra madre
  • Californication
  • Hijos de la anarquía
  • Otras que he oído que están bien: Dexter, Big bang theory…

Siempre me ha llamado la atención aprender la guitarra eléctrica pero me falta tiempo. Y por supuesto, siempre hay blogs interesantes (kirainet.com, distorsiones.com) o páginas (fogonazos.es, cuantarazon.com)…

Y por si no te has dado cuenta, todo lo que he dicho se puede hacer SIN MOVERTE DE TU HABITACIÓN. Ése es el primer paso para hacer que cada día cuente. No tienes por qué hacer una locura. Ayer vi el penúltimo capítulo de la primera temporada de “Hijos de la anarquía” y me quedé satisfecho. Ese capítulo me gustó más que muchas películas con un presupuesto mil veces mayor.

Una vez hayas completado el primer paso: no aburrirte en tu casa. Vendrá el segundo. Porque todo esto está genial. Pero todas estas actividades las puedes seguir haciendo cuando tengas 40 años, te molesten las articulaciones o tengas algún hijo. Por lo tanto, por qué no aprovechar el dicho ese de “Juventud, divino tesoro”?

Dale una oportunidad a un deporte distinto, este trimestre estoy encantado dejándome la piel con el bádminton. Sí, parecerá muy suave y tal pero sudas lo que no está escrito. Y lo mismo para el resto de cosas: si nieva, sube al Teide y tírate con lo que sea. Aprovecha la falta de responsabilidad y pégate un viaje para ir a ver a un amigo. Bucea, tírate en parapenting, vete a la playa en Febrero…

Pero, por favor, hazme caso en por lo menos una cosa:

No dejes para mañana el divertirte.





La receta de la felicidad

17 01 2011

Flor, originally uploaded by Ivan_Lopez.

Parece que después de una época en la que he tenido que aguantar mucho malrollo el Iván del mundo de Yupi se abre paso hasta el exterior. Y para qué? Para hablar de uno de mis temas favoritos: la felicidad. El resumen de la entrada sería algo así como que los ingredientes de la misma varían de persona a persona.

Es decir, para mí, el llegar a mi piso y que no haya nadie me produce una sensación de bienestar increíble. Me gusta que las cosas estén como las he dejado. Me gusta que haya silencio cuando quiero silencio y música a todo volumen cuando estoy animado. Me gusta la soledad. Me gusta la independencia. Yo hago mis horarios.

Pero para otra persona esta situación podría ser tristísima. Llegar a casa y no tener a nadie con quien comentar las tonterías del día a día. Cocinar para uno, comer solo… Por lo tanto, y aquí viene la moraleja, tienes que hacer aquello que te gusta. Para unos será bajarse un capítulo de su serie favorita y cogerse la botella de Coca-Cola y disfrutar tranquilamente. Para otros será quedar con los colegas y echar un partido de fútbol. O salir al cine o a emborracharse.

Lo importante es que no le dejes para mañana. Aplaza el trabajo, elude los problemas, da un rodeo para evitar una discusión pero no dejes para mañana ser feliz. Y es que muchas veces no nos damos cuenta de lo tremendamente fácil que es empezar a postergar aquello que nos gusta. Y hundirnos en un mundo de “tengo que hacer esto”, “pues se supone que ahora tengo que ir allí”, “pues me da vergüenza decirle a fulanito que no”… y quedarnos en un mundo gris. En un trabajo que no te gusta, en una casa que no te gusta, con unas amistades que no te llenan, con una relación que hace tiempo que te da más disgustos que beneficios…

Ayer estaba viendo “La flaqueza del bochevique”. Una gran película y española además ;-)  Pues en una de las escenas, la actriz principal (una niña de unos 14 años) le pregunta al protagonista:

“¿Y por qué no haces lo que te gusta?”

Y esa pregunta me llegó como un mazazo. Es una pregunta con una fuerza interior brutal. Es una pregunta y, a la vez, un enorme empujón para pegar un cambio a todo y lanzarte detrás de aquello que te gusta.

Porque, después de todo…

¿Qué hay más importante que ser feliz?





La delgada línea entre el bien y el mal

20 12 2010
 

Ivan y vienen, originally uploaded by Ivan_Lopez.

Normalmente hablo en este blog de lo que me gusta, de lo que me emociona. Hoy, sin embargo, tomaré el camino opuesto. Hablaré de lo que menos me gusta: los enfados.

Yo soy una persona alegre y positiva. Pero eso no es fácil. Requiere un esfuerzo. Pero tengo mis estrategias y funciona. Intento hacer cosas que me reporten felicidad, rodearme de gente con buenas vibraciones. Son las personas y situaciones que, como en la foto, atraigo hacia mí. Me construyo un mundo perfecto. Donde todo es bonito. Mi “Mundo de Yupi”. Me hace gracia, porque gente muy variopinta me ha dicho a lo largo de los últimos años que vivo en dicho mundo.

Lo mejor de todo es que estoy orgulloso de vivir en mi Mundo de Yupi. Y no quiero que nada lo estropee. Y la forma más rápida de convertirte en algo que sale de mi mundo (como las luces rojas de la foto) es una discusión.

No las soporto. Yo soy una persona muy fácil de tratar. Soy flexible. Me adapto a los demás. Si alguna vez alguien hace algo que me hace daño lo “entierro” y me olvido. No le doy importancia. Pienso que no lo ha hecho aposta. Mi hermano se ha dado cuenta de esta cualidad mía. Se asombra de hasta dónde soy capaz de “aguantar”.

Y, sin embargo, luego me encuentro con gente que monta un follón por cualquier tontería. Y eso me duele. Me duele muchísimo. Porque yo trato de evitar a toda costa una situación incómoda y hay gente que por una frase mal dicha ya me crean una discusión. Y esas personas tienen los días contados en mi Mundo de Yupi.

He dado por casi acabada una relación por dos discusiones. Incluso hay alguien que me reprocha que soy “alérgico” a discutir.

Es que de verdad, no lo entiendo. La vida es demasiado corta para tomarte los problemas en serio. Para perder el tiempo con “tú me dijiste”, para situaciones incómodas, para reproches…

Si tienes un problema, sé claro, dímelo y se soluciona. No hace falta crear un cabreo, no hace falta un “pues ahora me enfado”, pues “ahora no te lo digo”… todo eso lo quiero fuera de mi vida.

Larga vida a mi Mundo de Yupi!!!!





Lucha

14 12 2010

Desde hace tiempo y como muchos saben mi vida familiar está muy revoltosa.  Tengo que sufrir situaciones “la mar” de complicadas pero tengo que hacer como la roca. Y aguantar. La maresía no durará eternamente.

Resiste!

Resiste!

Intento hacer cosas que me gusten y me permitan evadirme. Ver una serie, salir a escalar o irme de fiesta con los amigos. Los amigos, qué sería de estas situaciones si no te pudieses apoyar en ellos. Yo me siento afortunado y aprovecho para darles las gracias a todos.





Pintando mi vida

15 10 2010

Para empezar esta entrada, una cita:

Soy un artista del vivir; mi obra de arte es mi vida.

SUZUKI

Ésa es la cita que guía mis pasos en estos momentos. Por fin, después de mucho tiempo, lo tengo todo de cara para poder disfrutar de la vida. Lo mejor de todo es un trabajo en horario de mañana que me permite tener toda la tarde para mi y un sueldo que me permite tener una agitada vida social.

Al hilo de lo que decía en el post anterior me he decidido a dedicarme tiempo para hacer aquellas cosas que me gustan y cultivar tanto el espíritu como el cuerpo. ¿Cómo? No hay receta mágica. Aquí está la mía:

Spotify

Spotify

Escuchar más música: Antes escuchaba lo mismo de siempre.Tanto en el coche (los mismos cds) como en el ordenador. Me daba pereza buscar nuevos artistas y grabar cds. Mi salvación fue encontrar Spotify.

Así he encontrado fácilmente un montón de música nueva y lo que es aún mejor, tengo amigos que me sueltan música interesante en mi buzón (gracias Yasmina!).

Salir más: Muchas veces nos dejamos vencer por la vaguería y dejamos de hacer cosas que nos gustan. Sin embargo, si te fuerzas un poco al final siempre te alegras de haber cambiado una noche delante del ordenador por estar con los amigos (gracias María, Yohana, Caramelito, Bea, Jose, informáticos…)

La metamorfosis - Franz_Kafka

La metamorfosis - Franz_Kafka

 

Ver más cine: Me encanta ir al cine! Pero como trabajo me lo puedo permitir más frecuentemente sin remordimiento de conciencia. He disfrutado con Origen, Machete, Los mercenarios…

Leer más: Una afición que por falta de tiempo abandoné casi completamente el año pasado. Ahora estoy leyendo como un loco. Algunos de los títulos:

  • Como agua para chocolate (Gracias Gara!)
  • El Monje que vendió su ferrari
  • Metamorfosis
  • Déjame que te cuente
  • Sicario
  • Asfixia

Hasta ahora hemos visto algunas de las cosas para cultivar el espíritu. Todo esto combinado con ricas comidas en el te&chocolat, ratos de charla (gracias Esther!), estar más con la family… Pero ¿y el cuerpo? Los años van pasando y si no nos cuidamos ahora “luego” ya será demasiado tarde. Además, la falta de ejercicio hace que estés más cansado. Lo he comprobado personalmente, te dicen de hacer algo y te cansas de pensarlo. Pero si te fuerzas un poco luego cada vez te cuesta menos y poco a poco vas ganando vitalidad.

Hacer senderismo: Una actividad de la que nunca me canso. Para este año toca las ventanas de Güimar (gracias Juanki!) y subir al Teide de nuevo (gracias informáticos!).

Bailes latinos: he aprovechado la oportunidad de apuntarme a clases con la universidad (gracias Omar!). Un sólo día a la semana pero menos es nada ;-)

Pádel: un deporte del que disfruto un montón (gracias informáticos!). Adjunto la foto de la raqueta que me he comprado.

Correr: me gustaría aumentar un poco el fondo físico. Correr me parece muy cansado y algo aburrido pero es sólo la impresión inicial. Después de escalar me obligaré a correr un fisco.

Escalada: el descubrimiento del año (gracias Alicia!). Es un deporte que estoy practicando también con la universidad y que me está enganchando :-) En otra entrada daré más detalles.

Así que así estoy: pintando mi vida con los colores que más me gustan :-)

Mi raqueta

Mi raqueta

Mis pies de gato

Mis pies de gato

Mis tenis

Mis tenis





Fracaso u oportunidad

12 09 2010

Después de un verano que se ha pasado tan rápido como siempre vuelvo con las pilas cargadas. Algunos que se estarán preguntando qué paso con mis oposiciones. Bien, aquí está el relato de lo que sucedió.

Un nuevo amanacer

Un nuevo amanacer

Estuve todo el año preparando las oposiciones a informática de secundaria. ¿Por qué? Porque se gana algo más que en las de FP y porque en 2008 en Canarias al menos no salió ninguna plaza para FP. Preparé el temario de secundaria y preparé la programación didáctica. Cuando te presentas por secundaria la programación puede ser sobre ESO, bachillerato o FP. Yo elegí hacerla sobre FP porque resultan más amenas.

Bien, pasa el tiempo y se publica la oferta de plazas para Canarias. Para FP hay el doble de plazas que para secundaria. El temario es prácticamente idéntico y como yo tenía mi programación sobre FP pues decidí presentarme por FP. Craso error. Resulta que las asignaturas que un profesor de secundaria puede dar en FP son DISTINTAS de las asignaturas que un profesor de FP puede dar en FP. ¿Raro? Pues sí. Resulta que un profesor de FP de informática no puede dar todas las asignaturas del módulo de informática.

¿Conclusión? Hice un exámen teórico muy bueno, hice un exámen práctico muy bueno (el 2º mejor de todos) pero me escacharon en la programación. Aún con eso conseguí llegar al aprobado. Así que por lo menos no he tirado por la borda todo el trabajo. Se supone que he entrado en la bolsa de interinidad y que algún día me llamarán. Pudiendo lograr así los puntos de experiencia tan necesarios a la hora de aprobar de los primeros una oposición.

Así que al final me voy con un sabor agridulce. Sin embargo, hay un detalle que me gustaría comentar. En la agenda que he utilizado a lo largo de todo este año hay una cita distinta para todas las semanas. ¿Sabes cuál era la cita para la semana en que hice la oposición? “Se aprende más de los fracasos que de los aciertos”. Y con eso me gustaría quedarme. He obtenido un montón de experiencia para la próxima vez que me presente y ahora tengo la oportunidad de hacer algo distinto antes de hacerme funcionario.

Donde se podría ver una situación de fracaso total, pues me dediqué a tiempo completo 9 meses para la oposición, también se puede ver una oportunidad de hacer otras cosas. Por ejemplo, acabo de aceptar una beca que me va a permitir trabajar para la universidad en un cómodo horario de 6 horas al día. En dicha beca espero aprender un montón de cosas y, sobre todo, tener tiempo para cultivarme. Este curso me he propuesto un montón de cosas nuevas de las que pienso ir hablando en los siguientes posts :-)








Seguir

Get every new post delivered to your Inbox.