Apesta2 S.A. se lanza al mercado comercial y necesita urgentemente incorporar a su plantilla jóvenes talentos.
Ofrece un puesto de alta responsabilidad que garantizará el desarrollo profesional.
Puesto: Programador con experiencia en el desarrollo de aplicaciones web J2EE.
Requisitos:
- Deseable persona desocupada y con más de dos años de experiencia como analista orgánico o superior.
Coste:
Por sólo 300 €/mes.
La persona interesada, hará entrega de un sobre negro de 20x15 con 6 billetes de 50€ el último día laborable de cada mes en concepto de formación.
Obviamente es broma.. y sí.. "rierse rierse"... pero si no hemos llegado a esto -que estoy seguro que sí en algunos sectores- falta muy poco. Pagaremos por trabajar, a cambio de... ¿experiencia (que ya tenemos)...?
Oferta de empleo
martes, 9 de noviembre de 2010
Revienta tu coche con una sencilla maniobra
Hola niños.
Sois muchos los que ponéis cara de murciélago asustado cuando os hablo del punta-tacón, sin saber de qué os hablo.
En esta entrada teórico impráctica, aprenderéis lo que es y seguro que os motivará a destrozar vuestra caja de cambios y puede que vuestras vidas. Es inevitablemente tentador.
Dicho en plata, un punta-tacón, consiste en frenar con la punta izquierda del pie mientras con el tacón (o el lado derecho del pie, más bien), pisamos el acelerador, con el objeto de reducir una marcha y que entre bien puesta de revoluciones. Suele llegar asociado pisar dos veces el embrague, una para obtener el freno de motor y otra para meter la nueva marcha, a eso lo llamamos doble embrague.
¿Para qué coño sirve? Básicamente, para coger curvas como Alonso y sus amigos... Se consigue frenar más fuerte que con la simple reducción de marcha (seguimos frenando aún con punto muerto una vez gastado el 'freno-motor') y salir a todo trapo de una curva (la marcha nueva entra con las revoluciones altas).
Por Internet tendrás más sesiones formativas si la necesitas, que dará igual..
El problema vendrá cuando lo intentes, que lo intentarás... seguramente habrás bebido algo, te cogerá subidito y harás algo raro.
Piensa en la seguridad de los demás y procura hacerlo con todos los niñatos de tu barrio dentro del coche.
Será casi inevitable que el coche se lleve una bonita 'rascada' al meter la marcha.. dado que como no es una maniobra muy común, la liarás parda al tener que pisar los tres pedales casi a la vez... pero será lo de menos.
Por supuesto, no frenarás lo suficiente, y la curva se te quedara muy pequeña... ahí empezarás a ver objetos subiendo por el capó de tu coche. Agradecerías haberte puesto el cinturón.
Aún así, inténtalo, total, si te cargas el coche... ¿será por dinero?
Malber lo hizo, y sigue vivo y escribiendo... ahora tú también puedes llevarte un gran susto cuando quieras.
Aquí tienes un vídeo ilustrativo de la maniobra:
martes, 19 de octubre de 2010
Código de la transformada de Hough en Matlab
Como el C parece que le da alergia a mucha gente, hacemos caso de las plegarias de muchos y ponemos la transformada de Hough en Matlab que es como 2000 veces más ineficiente que en C.
He modificado un programa de reconocimiento de colores escrito por un antiguo compañero, probablemente no funcionen todos los colores, ni lo he probado, pero solo nos interesa en este caso la transformada propiamente.
Para calcular la transformada vamos a usar una imagen simple de colores, vamos a binarizar un color, extraer los bordes y obtener la transformada de Hough.
La transformada se obtiene por democracia, es decir, cada vez que un punto es detectado, se vota a todas las rectas que pasan por ese punto, de manera que las más votadas al final serán las rectas presentes en la imagen, si no hay diferencia de votos apreciable se trata de un círculo u elipsoide.
A partir de la matriz de Hough podéis localizar los máximos y construir las rectas o círculos de la imagen sabiendo su angulo y módulo en coordenadas polares, lo que hagais con la matriz es cosa vuestra.
Vamos con el Código:
[X1,map1]=imread('foto.bmp','bmp');
[f c dim]=size(X1);
Xd=double(X1);
Xn=zeros(f,c);
ras=uint32(2*sqrt(c*c+f*f));
hough=zeros(181*ras,1);
X2=zeros(181,ras+1);
X3=zeros(f,c);
X4=zeros(f,c,3);
H = fspecial('average');
X4 = imfilter(Xd,H);
Xd=X4;
if color=='rojo'
for i=1:f
for j=1:c
if (Xd(i,j,1)>=200)&&(Xd(i,j,2)<=100)&&(Xd(i,j,3)<=100)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='verd'
for i=1:f
for j=1:c
if (Xd(i,j,1)<=70)&&(Xd(i,j,2)>=200)&&(Xd(i,j,3)<=150)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='azul'
for i=1:f
for j=1:c
if (Xd(i,j,1)<=70)&&(Xd(i,j,2)<=140)&&(Xd(i,j,3)>=159)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='negr'
for i=1:f
for j=1:c
if (Xd(i,j,1)<=50)&&(Xd(i,j,2)<=50)&&(Xd(i,j,3)<=50)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='amar'
for i=1:f
for j=1:c
if (Xd(i,j,1)>=180)&&(Xd(i,j,2)>=180)&&(Xd(i,j,3)<=80)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='cyan'
for i=1:f
for j=1:c
if (Xd(i,j,1)<=100)&&(Xd(i,j,2)>=140)&&(Xd(i,j,3)>=170)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='mage'
for i=1:f
for j=1:c
if (Xd(i,j,1)>=180)&&(Xd(i,j,2)<=120)&&(Xd(i,j,3)>=180)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
if color=='blan'
for i=1:f
for j=1:c
if (Xd(i,j,1)>=230)&&(Xd(i,j,2)>=230)&&(Xd(i,j,3)>=230)
Xn(i,j,1)=255;
else
Xn(i,j,1)=0;
end
end
end
end
X=uint8(Xn);
imwrite(X,'umbral.bmp','bmp');
X3=edge(Xn,'sobel');
%Aqui comienza Hough
for i=1:c
for j=1:f
gra=X3(j,i,1);
if ((gra>0)) %Si el punto existe votamos todas las rectas que pasan por el
for p=1:180 %p es el angulo de 1 a 180, que en realidad es 0 a 179
ro= ((i-1)*cos((pi/180)*(p-1))+(j-1)*sin((pi/180)*(p-1)));% calculamos el módulo del punto en polares
ro=ro+ras/2;
if (ro<0), ro=0;
else if (ro>=ras), ro=ras;
end
end
ro=uint32(ro);
hough((p)+(ro*180)) = (hough((p)+(ro*180)))+1; %efectuamos el voto
end
end
end
end
% recordemos que las coordenadas en ángulo con respecto al borde superior són: p-90 si p>90
% y 90+p si p<90
X=uint8(X3);
imwrite(X3,'umbralborde.bmp','bmp');
for ro=1:ras
for p=1:180
X2(p,ro)=hough((p)+(ro*180));
end
end
mesh (X2);
figure;
imshow(Xd)
figure;
imshow(X,map1)
Bien, al principio hacemos umbracolor 'negr' y aplica un filtro de media, binariza el color negro, utiliza una detección de bordes sobel.
Podía haber hecho el filtro de media y el sobel a mano, pero uso el de Matlab por comodidad y por que en este caso solo nos ocupa Hough y no su colega Sobel.
Podía haber metido la imagen en los argumentos de la función, acordaos de cambiarlo en el código para poner la imagen de entrada.
Bueno, si teneis alguna duda comentad, a continuación algunos resultados:
jueves, 30 de septiembre de 2010
La sociedad del honor
Día 29S de 2010... día de huelga para algunos y de esquiroles para otros.
No estamos aquí para escribir acerca del derecho de algunos a que le bajen el sueldo o trabajar hasta los 67. De hecho, a colación con las opiniones, voy a comentaros una de estas anécdotas que se graban y os gustará recordar, porque son bonitas y harían del mundo un lugar mejor en el que vomitar cada mañana.
El de la foto de la izquierda es Niquita Nipone. Tal vez no se llame así, pero eso no nos importa. Lo interesante de este señor es la cultura en su país de procedencia.
En especial, quedé perplejo cuando me explicaron una de sus reglas no escritas que choca frontalmente con nuestras costumbres cotidianas. Es impensable que algo así pudiera llegar a suceder en nuestro país de listillos y todo tipo expertos sin título en cualquier cosa.
Y es tan simple como que, dar un consejo sin que te lo pidan, se considera toda una falta de respeto. Qué día de nuestras vidas no recibimos 7.015 consejos camuflados de opiniones personales... "Yo que tú... etc... etc...", "¿Y por qué no haces esto así y tal...?"
¿Y por qué es una falta de respeto? Pues es obvio. Si Nikita no te ha pedido tu opinión, posíblemente sea porque ya tiene la suya propia y no tiene por qué ser peor que la tuya. Como adulto, siente que es capaz de hacer las cosas por sí mismo sin que nadie le diga lo que tiene que hacer.
Así que, aunque no me lo habéis pedido, ya sabéis lo que opino de todos los que me aconsejaron ir o no ir a la huelga.
Si eres más inteligente que una ameba, decide tú y no dejes que te aconsejen. (Incluido este consejo)
Felices huelgas.
miércoles, 29 de septiembre de 2010
Script para leer feeds RSS en Python pensado para su uso en conky
El otro día andaba yo pensando, pero tampoco mucho, en añadir un feed de la página de la ESI a mi conky para así poder ver las actualizaciones y observar si aparece algo interesante de beca o proyecto.
Heme yo en tales menesteres cuando descubro que sí, los añade, pero me arruinan el formato del conky y lo deforman hasta límites grotescos, perdiendo todo su propósito de ser un bonito a la vez que útil y ligero monitor de sistema.
Luego todos sabemos lo que hay que hacer, si no te gusta algo hazlo tú mismo y como no hay nada mejor que utilizar algo que ya está hecho y modificarlo hasta que se adapte a tus necesidades, pues usé un script que tenía para el gmail y que básicamente leía un feed atom, así que tras unos pequeños cambios y un poco de odio a las putas codificaciones de caracteres ésto fué lo que ocurrio.
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# esto nos permite usar caracteres como tildes y eñes en el código y en los comentarios
# Modificacion del gmail_parser de 2008 Hunter Loftis
# Por Alfredo Mantilla
# Time-stamp: Mon Sep 22, 2010 20:40 GMT+1
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
# ======================================================================
import sys
import urllib # For BasicHTTPAuthentication
import feedparser # For parsing the feed
from textwrap import wrap
_URL = sys.argv[1] #direccion del feed
maxlen = sys.argv[2] #número máximo de feeds a mostrar
titulorss = sys.argv[3] #título a mostrar encima de los feeds p. ej. nombre del blog al que
pertenecen
maxformatlen = 50 #maxima longitud a mostrar del título
def auth():
'''The method to do HTTPBasicAuthentication'''
opener = urllib.FancyURLopener()
f = opener.open(_URL)
feed = f.read()
return feed
def readrss(feed, maxlen):
'''Parse the feed and print a summary'''
rss = feedparser.parse(feed)
print '${color1} %s\n' %titulorss
for i in range(min(len(rss.entries), maxlen)):
title = rss.entries[i].title.encode('utf-8') #lo pasamos a utf-8 para que muestre
correctamente tildes, eñes y demás
if len(title) > maxformatlen:
print ' ${color2}%s...' % title[:maxformatlen] # para que no se deforme conky solo muestra 50 caracteres del título y añade ...
else:
print ' ${color2}%s' % title #el título del feed
#description = rss.entries[i].description.encode('utf-8') #para imprimir el contenido de los feeds en mi caso es código html que habría que interpretar, para la version 2.0 quizás, tb habria que usar el maxformatlen aquí
#print ' ${color2}%s' % description
if len(rss.entries) > maxlen:
print ' ${color3}más...'#el más este es un poco absurdo, algún día haré algo con el
if __name__ == "__main__":
f = auth() # Do auth and then get the feed
readrss(f, int(maxlen)) # Let the feed be chewed by feedparser
El modo de uso es python /rutaquetesalgadetufuerointerno/nombrequetedelaganaponerle.py rutadelfeed númerodefeeds títuloquequieresquepongaencimadelosfeeds.
Recordad que está hecho pensando en conky y que por tanto para eso estan los ${color}, así mismo habreis de llamarlo con execpi 3600 por ejemplo, para que se ejecute cada intervalo y parsee la salida (para que los ${color} los interprete el conky).
En mi caso:
{execpi 3600 python /home/frodus/scripts/RSS_parser.py http://www.esi.us.es/latest/rss.xml 5 'Noticias ESI'}
Por último y no menos importante tendreis que aumentar el buffer de texto por defecto del conky, añadid a vuestro .conkyrc la siguiente línea:
text_buffer_size 1024
El 1024 es orientativo, no te lo tomes al pie de la letra, puede que necesites más o menos.
Puede que haya otra versión algún día, tengo pensado añadirle algo más, pero de momento eso es todo amigos.
Actualizado:Corregido el uso de maxformatlen en el código, en la versión anterior no se usaba.
jueves, 23 de septiembre de 2010
Cómo saber si tu novio te pone los cuernos
Esto es un manual práctico e infalible para novias que desean conocer si su novio se la está pegando con otra o con otro -aspecto que no se revelará en este procedimiento-.
En primer lugar, debe fijarse si su novio le hace el amor sin preservativo.
Si esto es así, comprobaremos asíduamente su cartera y lugares de interés, como cajonera de la mesita de noche y otros rincones propicios para el almacenaje de artículos.
Si hay preservativos, tenemos un indicio de que ahí puede haber algo raro.
Por supuesto, podrá argumentar que están ahí por si algún día os hacen falta, entonces, en lugar de preguntar, usted tendrá que recurrir a la misma técnica del siguiente punto.
Si lo hacén con preservativo, entonces se trata de llevar a cabo lo que Arquímedes o uno de sus allegados egipcios denominó como 'operación de resta'.
Esta compleja operación matemática consiste en contar cuantos preservativos había antes y cuantos después de hacer el amor. O simplificadamente, contar cuantos desaparecen, si no acostumbran a utilizarlos.
Por supuesto tendrá que husmear todos los sitios calientes susceptibles de almacenar preservativos. Tenga en cuenta que el hombre, ese vago animal, no suele calentarse mucho la cabeza para esconder las cosas, así que estarán donde todo lo demás. Es decir, donde las pulseritas y cosas de psudovalor que nunca usa pero nunca conseguirá que regale o tire a la basura.
Allá donde nos gusta denominar, nuestro pequeño Diógenes.
La siguiente cuenta no puede fallar y ahora comentaremos por qué en cada caso:
Preservativos antes = Preservativos después + Nº Polvos
o lo que es lo mismo:
NºPolvos (Np) = Preservativos antes (Pa) - preservativos después (Pd).
Si esta cuenta no sale, no hay que alarmarse (de momento), porque puede ser por diversos motivos:
Lectura 1) Por número de polvos:
1. El número de polvos es menor que la comparativa Pa - Pd
No podemos negar que existe la posibilidad de que se la pegue. No lo condene hasta haberse cerciorado que a su novio no guste de jugar a los globos de agua con condones con sus amigos.
Si fuese el caso, ese problema no se analiza én este artículo.
2. El número de polvos es mayor que la comparativa Pa - Pd
Posiblimente sea usted un putón verbenero y sólo deba contar los que echa con tu novio.
Si cree que esto no es así en absoluto, lea los siguientes puntos, porque puede que solucione sus dudas al respecto.
Lectura 2) Por el número de preservativos después
Si el número de preservativos después, es mayor que antes, hay un indicio para sospechar.
Su chico, tan precavido como caliente, ha comprado por anticipado. Es lo que le dirá si le pregunta. Sin embargo, observe lo siguiente:
¿La nueva caja también está abierta?: Si es así, con esto debería bastar para convencer al juez y ganar la custodia hasta de las mascotas sin necesidad de más pruebas.
Si lo necesita, un abogado se encargará de explicarle por qué. Nuestro trabajo termina aquí.
Esperamos que este artículo le haya resultado de interés.
Un cordial salido.
miércoles, 14 de julio de 2010
La ventaja de ser feo
El otro día, puede que el otro mes, mientras charlaba con gusto entre cervezas con un alcóholico con nombre y apellidos, tuve el privilegio de que me desvelase una especie de dogma, puesto que reune todas las caracterísitcas de un misterio episcopalial: Es difícil de creer y no existen pruebas físicas, sino unos sospechosos testigos que juran y perjuran que todo sucedió tal como lo vamos a contar.
miércoles, 21 de abril de 2010
El acuse de recibo
La mayoría coincide en definir como acuse de recibo,(En Inglés; Acknowledgment of receipt), el documento, mecanismo, sello o firma que acredita la recepción de mercancía o documento aduanero. Wikipedia
Por tanto, es correctísimo definir como acuse de recibo, el agua fría -en ocasiones ya orinada- que te salpica en el culo al soltar un muñequito.
A partir de ahora, resultará mucho más elegante por su parte comunicar a sus invitados en sus reuniones sociales: "He ido al baño y he obtenido un acuse de recibo", en lugar de la chavacanería de "Ma saltao agua en er culo".
Disfrútenlo, compártanlo con sus amistades y sobre todo, no olviden preguntarlo cuando vean a alguien salir del baño.
sábado, 16 de enero de 2010
Si los reyes no vienen este año...
Si los reyes no vienen este año en Sevilla, sepa usted que no se debe a que haya sido malo. Posiblemente se deba a una de las siguientes causas:
martes, 5 de enero de 2010
Teoría de la segunda oportunidad
Esta teoría defiende que, de forma consciente o inconsciente, a todos se nos perdona la vida una y sólo una vez.
A lo largo de su existencia recordará varios momentos en los estuvo cerca de irse al otro barrio, sin embargo, hay uno en el que de verdad anduvo muy cerca y la suerte le acompañó para que pudiera decir: "he vuelto a nacer".
Como me toca a mí escribiros, os contaré cómo conocí a mi ángel de la guarda.
Era de noche y regresaba en moto a mi casa. Circulaba por una calle larga, donde había un único semáforo al final. La calle desembocaba en a una gran avenida de forma perpendicular.
Me encontraba a unos quinientos metros del final de la calle cunado el semáforo se puso verde, por lo que aún tardaría bastantes segundos en llegar a él y no era necesario que frenase más que lo necesario para tomar la curva al final de la calle.
Sin embargo, justo al llegar a la altura de aquel semáforo ya en verde desde hacía rato y extrañamente parado, había un hombre en una vespa blanca casi sobre la acera, que miraba hacia atrás, o sea hacia mí y que agitaba sus brazos haciéndome gestos para que frenase.
Al verlo, comencé a frenar sin saber qué sucedía, aunque ya no me daba tiempo de parar en el semáforo y lo sobrepasé.
Al asomar a la avenida, vi cómo un coche venía a toda velocidad saltándose su semáforo y en trayectoria de colisión. Apreté los frenos con todas mis fuerzas para detener la moto.
Aquel coche me pasó a más de cien por hora a escasos centímetros de la rueda delantera de mi moto. De haberme cazado, difícilmente no me habría matado.
Quedé en estado de shock, durante unos segundos hasta asimilar lo que cerca que me había pasado aquel asesino y me di cuenta que, de haber frenado décimas de segundo más tarde, me habría mandado a paseo. Fue entonces cuando comprendí que aquel señor en la vespa me había salvado la vida al avisarme antes que yo pudiera ver nada.
Al girar la cabeza, que como os he dicho, no fue de inmediato, él ya no estaba allí. Supongo que continuaría su marcha en otra dirección, pero a todos los efectos, fue mi ángel de la guarda.
Como hoy es 1 de Enero de 2010, acabaremos con una moraleja positivista…
Ya que tienes una segunda oportunidad, haz que tu vida sirva para algo.
viernes, 1 de enero de 2010
Teoría de la alianza femenina

Como ya os amenacé no hace mucho, voy con otra de esas teorías que tanto os gustan.
La que nos ocupa hoy es universal y todo el mundo la conoce, pero por si acaso, la dejamos por escrito.
Como se acaba el año 2009 y no sabemos si sobreviviremos otro año, es mejor crear la mayor polémica cuanto antes y en esto de los sexos se consiguen buenas trifulcas.
La teoría de la alianza femenina dice que, cualquier mujer socialmente aceptada*, en primera instancia, defiende a cualquier otra mujer, incluso si no la conoce, de una acusación de ‘fea’ promulgada por un hombre. Esto es así, desde que se inventó el lenguaje.
Posteriormente, si la evidencia es incuestionable, irá aceptando poco a poco los hechos suavizándolos en la medida de lo posible en lo que denominaremos, sucesión de ataques y defensas hasta el deterioro de la alianza.
Dicho así, puede sonar complejo, pero es muy sencillo y lo bonito de nuestras teorías, es que las puedes comprobar empíricamente y no sólo eso, sino que te enseñamos un diálogo de ejemplo para que cualquier simio amaestrado pueda reproducirlo.
Damos por hecho que tú eres un hombre, o algo parecido, así que no debes tener problemas.
En cualquier reunión entre amigos en la que haya al menos una mujer y salga el nombre de alguna amiga suya o común (que no sea un pivón, si no parecerás tonto y a ser posible, con medio kilillo de más –no hace falta más-), sigue este guión:
Conversación: Bla bla bla bla bla…. FULANITA… bla bla bla….
Tú: Uff… fulanita… es fea ¿eh? [First Impact. Hazlo serio y pensativo. No te rías y al terminar, mira a la mujer]
Mujer: (indignada) ¡Fea no es! ¡es normalita! [Teoría de la alianza. Salta de forma natural, está escrito en sus genes. Salvo una evidencia clamorosa, será la respuesta que obtendrás sea cual sea el sujeto inicial.]
Tú: Es fea y está gorda. [Se aumenta el ataque. Sentencia rápida y enérgicamente.]
Mujer: Está rellenita, pero es graciosa. [Admitirá pero rebajará y adornará el ataque]
Tú: A mí no me parece graciosa. [Jaque mate]
Mujer: Pues a mí sí…
Tú: (silencio. Mírala a los ojos sin parpadear. Creará la tensión necesaria para que hable)
Mujer: ...hombre tiene sus cosas (o similar). [Teoría de la alianza deteriorada por los ataques. Si sigues atacando con datos que tú conozcas, lo más posible, es que acabe poniéndola a parir].
Tú: Pero tú eres más guapa. [Evita reírte o trata de que parezca una sonrisa de cortesía. Decirle guapa a una mujer en mitad de una conversación sin venir mucho a cuento es como darle un caramelo a un niño hambriento. Acabas de ganar un aliado.]
Mujer: ¡Hombre claro! (o similar) [Si no tiene la autoestima por los suelos, será la respuesta lógica. Si no, invítala a un helado a la pobre. Si acertamos, comete el error de relajarse para que terminemos con la estocada final. Nuestra teoría ya está demostrada y sólo nos queda reirnos]
Tú: Y eso que tú… [Déjalo ahí y sonríe. Que parezca que todo es broma, si no eres un sociópata es fácil de conseguir. Si se ríe y te pega e insulta (cabrón, normalmente), hemos terminado, si no, termina la frase para expresar la broma…] (…que noo, que es broma..) [rie y cruza los dedos]
Reflexión:
Podéis pensar que la primera respuesta es normal si la chica a la que dices fea no lo es, pero pensad en lo siguiente:
Aunque fuera guapa, la respuesta correcta no es un alterado.. ¡noooo!¡ no lo es!.. sería un ¿Por qué te parece fea?, sin que fuera necesaria la opinión contraria. Los gustos son relativos y respetables.
Imagina que una tía te dice que un amigo tuyo es feo, lo normal es que pases tres pueblos y digas… si tú lo dices… así te parecerá, y no te podrás a defenderlo –salvo que seas muy marica-.
Sirva esto, como aclaración de que la teoría es correcta y sólo aplica a mujeres.
Nadie sabe por qué, con lo retorcidas que son y lo difícil que es para ellas no criticar a sus propias amigas, tendrán esta curiosa necesidad de defenderlas de los hombres. Eso sí, como se junten dos mujeres a criticar, no se escapa nadie. Es lo que en la antiguedad llamaban las marujas.
* LLamamos Mujer socialmente aceptada a una mujer femenina, que gusta de salir con varones y se arregla para salir de fiesta.
jueves, 31 de diciembre de 2009
Mi grabadora o regrabadora de CD o DVD no funciona...
Yo mismo tuve ese problema y como me siento magnánimo, tras tardar varios días en encontrar la solución, voy a deciros como arreglar un problemilla que a todo el mundo le viene a ocurrir al menos una vez en la vida.
lunes, 28 de diciembre de 2009
¿Por qué quebró el Blockbuster?
Muchos pensaréis, que esta famosa cadena multinacional dedicada al arriendo y venta de películas en formato DVD y VHS quebró debido a la facilidad para bajarse películas de Internet y al pirateo en general, pero nada más lejos de la realidad. De hecho, sirva este documento para salvar otras empresas que están al borde de la ruina.
domingo, 27 de diciembre de 2009
El teorema del enredo
A lo largo de mi vida, he desarrollado múltiples teorías y conjeturas que pienso que os pueden ser de utilidad para tratar de defenderos en conversaciones eruditas o polémicas, como por ejemplo, excusaros del desorden de vuestro cuarto y pienso que debo compartirlas debido al éxito arrollador que tienen entre los privilegiados que han escuchado algunas.
Las iré soltando así, sin previo aviso, para los asiduos al Blog antes que se me olviden.
Mi teorema del enredo es el siguiente:
Un cable cualquiera (Ci), tiene una capacidad de enredo (0<= Ce <= MAX(100)) directamente proporcional a su longitud en metros (Li), al tiempo en segundos (t) y es múltiplemente proporcional al número de puntos con los que entra en contacto con otros cables (Nc).
%Ce de Ci = (t / (3600 x 24)) x ((Li)^Nc / (100))
Y el número probable de nudos a deshacer (Nd) se calcula mismamente como:
Nd = (Li/100) x %Ce.
Por ejemplo, un simple cable de 5 metros, en contacto en 3 puntos con otros cables, o consigo mismo, según mi teorema, tiene una capacidad de enredo de acuerdo a la siguiente tabla:
| Tiempo | Capacidad de Enredo | Número de nudos |
| Pasado 1 día | 1,25% | Puede que 1 |
| Pasados 2 días | 10% | Posiblemente 1 |
| Pasados 3 días | 33’75% | 1 ó 2 |
| Pasados 4 días | 80% | 4 |
| Pasados 5 días | >100% | Más de 6 |
De esta forma, asumimos que cualquier cable, tiene por naturaleza una capacidad innata para anudarse y formar una maraña al contacto con otros cables sin la aparente interacción humana.
Tu madre ahora ya no te puede decir que tú eres el responsable de tener todos los cables del ordenador liados porque eres un desastre, porque no es así. Es más que normal que pasados los meses, los cables del teclado, ratón, impresora, monitor, corriente… etc, hayan creado su propio ecosistema.
Además, como organismo con vida propia, trata de garantizar su supervivencia realizando nudos prácticamente imposibles de deshacer por el ser humano y haciéndose cada vez más y más grande y más y más complejo.
Lo mismo sucede con cables de instrumentos musicales o los de la tele con los aparatos que le rodean.
A cualquiera que te diga la frase “Hay que ver como tienes esto de liado”, le puedes argumentar tranquilamente el teorema del enredo de Malber y hacerle una demostración empírica con un par de cables cualesquiera: Los pones quietos encima de una mesa y al cabo de cinco días, estarán convertidos en una maraña por arte de magia. Los mejores mentalistas como el mismísimo Anthony Blake utilizan este truco para dejar las bocas abiertas.
Aunque las fórmulas están sujetas a revisiones, el teorema es igualmente válido en lo que al argumento se refiere.
Podéis comentar vuestras experiencias si lo consideráis oportuno.
PID con ajuste borroso de parámetros (Primera parte)
Gracias a los grandes avances producidos en el área de la teoría de sistemas, electrónica e informática, hoy día se pueden usar complejos sistemas de control que permiten abordar el control de un sistema desde diversos ángulos (control predictivo, robusto, óptimo...)
No obstante, en cuanto al control de procesos industriales, el controlador PID sigue siendo el más utilizado (más de un 90% de los procesos en la industria son controlados por PIDs o variantes), principalmente debido a su robustez y a la clara identificación de sus parámetros (kp,ki,kd ) y su relación con la respuesta del sistema.
Aquí no os voy a explicar lo que es un PID, en el enlace anterior teneis algunas explicaciones, pero sin embargo es posible hacer que un PID se beneficie de los avances de los avances en estos campos.
En nuestro caso vamos a utilizar la teoría de conjuntos borrosos y lógica borrosa (fuzzy logic) para el autoajuste de los parámetros del PID.
Los pasos que explicaremos durante los próximos días, semanas o meses serán, grosso modo y sin que éste sea el orden en que se tratarán:
- El sistema que controlaremos.
- Como caracterizarlo para obtener unos valores de kp y kd que luego usaremos como máximos u mínimos en los ajustes (ganancia estática, identificación frecuencial...).
- Funciones de pertenencia.
- Reglas borrosas.
- Product inference engine.
- Singleton fuzzifier.
- Defuzzifier center average.
- Saturación del término integral y antiwindup.
- Límites en la señal de control.
- El código en C++ y una pequeña simulación en Matlab + Simulink.
- Resultados sobre el sistema real.
- Posibles mejoras.
A día de hoy con productos como el Arduino y otros chips similares es posible realizar un controlador PID como el que aquí se tratará para, por ejemplo, controlar la temperatura del flujo de aire de un secador o bién controlar los servos de un robot móvil.
Algún día dentro de un periodo no superior a 10 eones aparecerá el segundo capítulo con el sistema a controlar y probablemente su caracterización.
Casi se me olvida, para hacer todo esto, habremos de discretizar el sistema, naturalmente, usando la transformada Z .
miércoles, 23 de diciembre de 2009




