Monthly Archives: Marzo 2011

Router Wifi en el móvil o como salir de un apuro sin internet

WifiDesde que tengo un móvil de HTC con Android, nunca pense en que iba a utilizar una aplicación llamada "Router Wifi", hasta la otra noche. "Router Wifi" es una aplicación, en mi caso de HTC para Android, aunque ya casi todos los móviles modernos disponen de alguna opción similar y que básicamente, lo que hace es simular un router como el que podemos tener en casa pero utilizando el teléfono móvil y su red 3G. Al activar esta aplicación se genera una red wifi, a la cual podemos conectarnos desde otros dispositivos entre ellos un portátil.

Os pongo en contexto: 2:30 de la madrugada, subiendo los últimos cambios de un proyecto y pensando en ir a dormir ya que al día siguiente toca estar a las 7 en pie. Cuando solo queda un archivo por subir pero quizás sea mas importante que el resto de archivos que ya había subido, el FTP deja de funcionar, pero me fijo y no funcionaba internet. Me voy del despacho al salón, reinicio el router de Telefónica pero sigue sin funcionar, pero no podía acostarme sin subir ese último archivo.

HTC Android Router Wifi

Medio desesperado y sin saber que hacer, se me ocurre utilizar la aplicación "Router Wifi" del teléfono móvil, ya que pensé que quizás era el momento de utilizarlo por primera vez. Activo el "Router Wifi" de HTC para Android, configuro los datos de seguridad de la red y me conecto con el portátil. Hago una primera prueba con Google y veo que se conecta, vuelvo a abrir la conexión FTP y veo que también, así que termino de subir con éxito el archivo y pruebo el proyecto. Todo funcionaba genial, me salvó de un autentico apuro.

Después de ese momento, estoy un poco mas feliz por tener un Android.

RockMelt el navegador social basado en Chrome

RockMeltLeyendo el otro día a @manoloruiz, descubrí un nuevo navegador social llamado RockMelt, basado en Google Chrome. RockMelt es un navegador, basado en Google Chrome, con una apariencia muy similar al Chrome de Google, salvo por algunos pequeños detalles. Lo que mas me llama la atención es que nada mas iniciar RockMelt, aparece una ventana, similar a la conexión que realiza Chrome con GMail, pero en este caso de acceso a Facebook, para importar nuestra cuenta de Facebook. Una vez lo hallamos realizado el login en Facebook, aparecerá una barra lateral con nuestros contactos de facebook, permitiendonos chatear con ellos. En el otro lateral encontramos una barra con las aplicaciones instaladas, por defecto Facebook y Twitter, aunque de momento también se puede Youtube, donde podremos ver las actualizaciones de nuestras redes sociales y añadir contenido directamente desde esta barra. Por último destaca junto a la barra de direcciones, el botón de compartir, que nos permitirá compartir la página actual en cualquiera de nuestras redes sociales.

La verdad es que este navegador tiene muy buena pinta y creo que se va a convertir en mi navegador secundario para e trabajo, ya que así de un vistazo puedo ver el twitter. Tiene muy buena pinta, el único problema es que aún no esta en español, pero todo se andará.

Os dejo algunas capturas del navegador.

RockMelt página de descarga

RockMelt acceso a Facebook

RockMelt página de inicio

Un rack en la cocina 2: las goteras

Hace tiempo publique el post de "un rack en la cocina" donde se veia entre microondas y neveras un curioso armario que era en realidad un rack de servidores. Hoy os traigo una segunda parte de "un rack en la cocina".

Una tranquila mañana, como cada día al llegar al trabajo, fui a la cocina a hacerme un café para entrar en calor y despertarme, al ver esta imagen, no pude evitar sacarle una foto. Que cada uno, fregona en mano, saque sus propias conclusiones.

Rack en la cocina, fregona

 

Actualizando Microsoft Windows en todas sus versiones desde Windows 1.0 hasta Windows 7

Os dejo un video que he encontrado de Andriew Tait. El video es un experimento de una actualización de Microsoft Windows en todas sus versiones, desde Windows 1.0 hasta Windows 7. Me llama especialmente la atención este video ya que salvo la versión 1.0 y la versión 2.0, el resto las he instalado cientos de veces, salvo el Windows 7 que solo una vez y la verdad es que ver este video me trae gratos recuerdos de juventud. Os dejo el video donde en la misma maquina instala Windows 1.0, Windows 2.0, Windows 3.0, Windows 3.1, Windows 95, Windows 98, Windows 2000, Windows XP, Windows Vista y Windows 7.

Resaltar como mantiene algunas configuraciones de por ejemplo color de fondo y compatibilidad de programas antiguos como editores y juegos aparte de las pruebas que se realizan en cada versión con el Monkey Island y el Doom 2. También resaltar que se hecha en falta algunas versiones con menos éxito como Windows Millenium mas conocido como Windows Me y bueno no se puede tener todo ya que son de otra rama, pero versiones Windows NT y posteriores Windows Server que sería interesante ver si mantiene la misma compatibilidad.

Por qué usar StringBuilder en lugar de concatenar Strings

Ando un poco liado y llevo una temporada sin escribir. Hay un apunte, que es común para varios lenguajes que son Java y por ejemplo .Net, tanto Visual Basic .Net y C#, así como el resto de lenguajes de la plataforma .Net que es la clase StringBuilder. Hay gente que no sabe por que o cuando utilizar la clase StringBuilder y realmente es uno de esos pequeños detalles de buenas prácticas, que a simple vista en un proyecto pequeño no se aprecian, pero cuando entre manos tenemos un gran proyecto que recibe millones de peticiones diarias, estas pequeñas nuevas practicas pueden suponer un gran referente de ahorro en el consumo de memoria y procesador de un servidor.

Tanto en Java como en .Net, cuando creamos un nuevo String, instanciamos un objeto String en una variable, cuando con la sentencia "+=" vamos concatenando mas texto, lo que hacen estas plataformas es crear una nueva instancia del objeto con la concatenación de las dos variables de texto. Por otro lado, cuando tenemos un StringBuilder instanciamos una clase StrringBuilder, llamando al método "append" en Java y "Append" en .Net, lo que hacemos es realizar una concatenación real de texto en el buffer de texto para luego instanciar un nuevo objeto String cuando llamemos al método "toString" en Java y "ToString" en .Net. A simple vista parece una tontería, cuando tenemos un texto que concatenamos 2 o 3 veces, realmente no merece la pena generar un StringBuilder, pero cuando concatenamos repetidamente texto varias veces el rendimiento es mayor si utilizamos StringBuilder, ya que si tenemos 20 concatenaciones seguidas, utilizando Strings normales concatenados, tendríamos 20 instancias de objetos, mientras que con StringBuilder solo 2. Como he dicho antes, en un pequeño proyecto, esto es prácticamente inapreciable, pero cuando tenemos un proyecto que recibe millones de peticiones diarias, algo tan tonto como utilizar concatenaciones de texto o StringBuilder puede suponer tener que añadir mas memoria al servidor para soportar tantas instancias de objetos e incluso un procesador mas potente para soportar el paso del recolector de basura para tantos objetos instanciados, esto en el mejor de los casos, si no llegamos al caso de tener que añadir un servidor al cluster para soportar todo esto.

Un cumulo de buenas practicas pueden suponer un gran ahorro de recursos, que se traducen en ahorro de dinero, cuando se trata de grandes proyectos.