Friday, June 19, 2015

Del IRC al Face

El tema surgio el otro dia a proposito de un post en un grupo de facebook al respecto del poco uso últimamente del IRC (Internet Relay Chat) y en general el chat, el chat como lo conocíamos antes (entrar en una página web o abrir tu cliente IRC favorito, seleccionar salas de conversación, ver la lista de gente desconocida al principio y comenzar luego a platicar) y les decía que parecen haber pasado de moda.

Todo tiene una explicación lógica, en este caso, considero que la proliferación de las redes sociales y en particular facebook es el causante, pero remontemonos un poco en lo que pasaba antes y en lo que ocurre ahora para tratar de descifrar por qué ocurrió lo que ocurrió.

En los tiempos del IRC la comunicación era totalmente impersonal, es decir, no veías a las personas a la cara, ni escuchabas su voz, así que lo primero que percibias era su manera de escribir, que en cierta forma era lo único que delataba su personalidad. Ahora bien, con la aparición de las redes no es que haya dejado de ser impersonal, las personas siguen estando cada una, detrás de un monitor (o pantalla táctil), sin embargo, ya no solo ves lo que escribe ya que de entrada, en la mayoría de redes debes contar con una imagen de perfil, una de fondo, etc. Lo cual obliga al usuario quiéralo o no a plasmar otro rasgo de su personalidad, le arrebata un poco de lo que le otorgaba el chat clásico, esa anonimidad ya no es total con estos perfiles.

Otro rasgo de las redes sociales es que, a diferencia del chat de antaño, los contactos son frecuentemente gente conocida, gente que en persona conocemos quiero decir, esa era una característica poco común del chat, esta característica definitivamente cambia la forma en que nos expresamos, mueve los límites de lo que decimos y compartimos.

El porqué se ha popularizado más una u otra, creo que es cuestión básicamente de dos factores:

Moda: Como las redes proliferaron con el boom del internet los nuevos usuarios llegaban a ver lo que había de nuevo, recordemos que el uso de internet en años anteriores no estaba tan extendido como hoy, tanto por el alcance del acceso a internet, como por la penetración de los moviles.

Afición a los gráficos: Es sabido de todos que las personas tenemos tendencia a seguir los medios que nos representan “menos trabajo”, las redes sociales son desde su nacimiento ricas en contenido gráfico y audiovisual, imágenes, videos, audio y decoraciones llamativas, el chat por su parte estaba lleno de texto, texto y texto, desde luego había chats con interfaz muy elaborada y colorida, pero el contenido no dejaba de ser el mismo, texto.

A pesar de todo, el IRC y el chat no han muerto, aún hay servidores IRC y páginas con chats, aunque cada vez menos, no han muerto, están solo adormilados, eso indica desde mi punto de vista que en realidad no van a morir, solo están esperando un aire de frescura, y seguramente resurgirán de sus cenizas en alguna nueva modalidad.

Monday, September 05, 2011

Joystick con java

En otro de mis proyectos, la primera parte, leer datos del
joystick esta desarrollado en Java usando la libreria
centralnexus,
el jlabel de swing, podemos decir que
estamos listos
para la siguiente.





Tuesday, December 15, 2009

Un nuevo proyecto

Pues se me ha ocurrido la idea de entrar en el mercado de forex, a ver que tal
me va, mientras tanto ya estoy estudiando todo el rollol, :D será mi nuevo
proyectin inconcluso por el momento.

Wednesday, September 30, 2009

Avance a la estacion de juegos

Ahora les traigo el avance de la estación de juego que documente
en una entrada anterior, le mande a hacer un cajoncito, de madera
y lo conecte a la PC y a jugar como en las arcadias.

Aqui una imagen:


Como se puede observar en la imagen -ademas de mis tenis apestosos
- el cajon cuenta con bisagra para poder hacer conexiones y dar
mantenimiento cuando algo falle.

Y otra:


Pero no se preocupen, queridos 20,000 lectores, este proyecto aun
sigue estando inconcluso pues falta el control secundario para echar retas.

RaY

Saturday, August 08, 2009

Too many open connections

Ese error del titulo aparecia una y otra y otra vez con mi aplicación hecha en struts + hibernate
me da un poco de verguenza aceptarlo pero me llevo como 6 meses repararlo - no me dedico diario a ella pero aun así es mucho tiempo - y ahora que lo resolví estoy algo euforico así que para
acordarme de este momento posteo la solución. Tal vez le ayude a alguien:

Lo primero que pense con ese error era que no estaba cerrando la sesion, dije claro por ahi
debe haber algun llamado a base donde olvide cerrarla, pero despues de revisar una por una,
varias veces ahi estaba session.close(); pues no era eso.

La segunda cosa en la que sospeche fue la base de datos (mysql) dije seguro tiene un bug
esa cosa, asi que hice pruebas, investigue y no solo me di cuenta de que no era sino que tambien
gracias a la respuesta de un participante en el bug tracking de mysql supe que no debia usar
el connection pooling nativo de hibernate para un ambiente productivo, asi que cambie a c3p0, pero tampoco era eso, el "too many open connections" seguia atormentandome despues de unas cuantas consultas.

Así que finalmente cuando todo estaba perdido era hora de leer el manual, a refinarme mas teoria de Hibernate, pues ahi estaba el pex, en realidad no sabia lo que estaba haciendo, eso pasa por aprender esta clase de cosas al vapor, muchas veces solo entiendes una embarrada, vamos al grano:

El problema.

Al abrir la sesion llamaba un metodo llamado abreConexion que al principio llamaba al siguiente codigo:


Configuration cfg = new Configuration();
cfg.setProperties(System.getProperties());
cfg.configure();
SessionFactory sessions = cfg.buildSessionFactory();

return sessions.openSession();



Pues claro, como ese codigo se ejecutaba con cada conexión, tenia una nueva fabrica de sessiones cada vez, y por consiguiente un pool de conexiones por cada fabriquita, así cada busqueda abria varias conexiones sin cerrarlas (pues estan en pool) hasta que me salia el mensajito del demonio.

La solucion.

Sencillo separar en una clase independiente la creacion de la fabriquita, con su respectivo metodo get para obtener la fabrica (la misma cada vez):


import org.hibernate.*;
import org.hibernate.cfg.*;


public class HibernateUtil {

private static final SessionFactory sessionFactory;


static {
try {

sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Throwable e) {

System.err.println("Initial SessionFactory creation failed:" + e);
throw new ExceptionInInitializerError(e);
}
}

public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}



Lo demas es historia en mi metodo abreConexion solo llamo el metodo getSessionFactory y listo
adios problemas, ademas de que no aparece el error la aplicacion es mucho mas rapida pues la creación de la fabrica es muy lenta.


RaY... RTFM!!!

Monday, July 21, 2008

Siguiente

Por fin me dieron ganas de escribir de nuevo en este blog, que estoy
pensando seriamente en renombrar, creo que quedaría bien "El blog
de los proyectos inconclusos", en fin, en el capitulo anterior les
mostre mi bracito feo, que aun quiero terminar, pero no le he
dedicado tiempo, esta vez debido a mi recaida en las drogas
-si, debo aceptarlo- les presento mi nuevo proyecto inconcluso:


Así es, un tablero de arcadia, tal como lo jugaba en los locales de
videojuegos (o maquinitas), pues hace algún tiempo compre un
joystick tipo arcadia de alguna marca, este:


Pero definitivamente no era lo mismo, me dejaba una pequeña
insatisfacción, que se volvio frustración y luego casi odio cuando
uno de los micropulsadores que tiene se descompuso, entonces
uno de esos dias de vagancia por el país me encontre con una
tienda de refacciones de arcadias, una lagrima rodo por mi mejilla
y de inmediato compre la tabla, palancas, botones y pulsadores:


Solo faltaba la electrónica, así que tuve una idea que a la vez
serviría de venganza...



Y manos a la obra:





Después de unas cuantas horas de trabajo quedo lista para
usarse, ahora juego felizmente mis reliquias como street fighter II,
KOF97, y la no tan reliquia KOF2002, el joystick es compatible con
PS y PC lo que resta es hacer el segundo control y armar
un cajon para sujetar el tablero, así se ha convertido en uno mas
de mis proyectos inconclusos.

Monday, July 02, 2007

El bracito feo

En dias pasados publique un escrito en la BC donde lloriqueaba de varios aspectos de mi vida, entre ellos un proyecto inconcluso, que ahora sigue inconcluso, pero... ya no tanto y me dieron ganas de publicarlo por aqui, aprovechando que este es un blog de pruebas, el proyectito consiste en lo siguiente:




Este es mi proyecto, un bracito feo robotico, esta hecho con materiales muy rudimentarios pero me he divertido mucho haciendolo -y mi papá también, pues me ha ayudado mucho en la programación de los pics-.

Lo divertido:



Programar los pics en lenguaje ensamblador, estos leen una señal enviada del puerto paralelo de la pc, y según el valor de esa entrada varian el ancho de pulso de una señal PWM (Poulse Width Modulation), esto
es necesario pues estoy usando servomotores para mover el bracito feo.

Del lado de la pc, la programación la quería hacer en Winbugs -si aunque no lo crean- pero me tope con
muchas cosas raras a la hora de manejar el puerto paralelo con C, asi que mejor regrese a mi confiable
Linux y ahi como en casa de nuevo.

La electrónica es muy básica, solo un buffer a la salida del puerto paralelo -por si las moscas- de ahi a los pics con un bus de 8 bits y de los pics directo a los servos.

Lo frustrante:




Tuve muchos problemas para grabar los PIC con el ICPROG, de hecho jodi unos 2 pics y otro por insuficiencia motriz -jujuju-, inicialmente queria sacar la señal PWM con la PC, pero el pulso era muy inestable, por eso decidi usar los PIC, luego lo del puerto paralelo en windows que mandaba lo que se le daba la gana y solo de vez en cuando hacia lo correcto.

Lo que sigue:

Pues tengo ganas de hacerle varias modificaciones, espero no dejarlo como muchos otros proyectos, entre las mas importantes:

-Ajustar bien el periodo (aunque los servos funcionan me dejan la sensacion de que pueden estar mejor)
-Mejorar el cableado en las protos porque lo hice feo.
-Agregarle una pinza.
-Obtener el modelo matemático para poder hacer cosas mas interesantes.
-Agregar sensores para grabar posiciones.
-Hacer la interfaz grafica en java.

Eso y mucho mas, pero de entrada esas.

El Fin.