Saturday, September 27, 2008

Como montar imagenes en WinXP sin gastar un centavo

Para aquellos que no sepan, se puede montar una imagen (.ISO, .UDF, .CDFS, .JO, ROCK) en Windows XP y no tienes que quemarlo en un CD o DVD, simplemente lo puedes cargar como un drive virtual y puedes hacer todo lo que necesites hacer como si estuviera en un lector de CD/DVD

Para aquellos que si saben sobre estas herramientas pero no confian instalar cualquier herramienta que se encuentren en Internet, hay una pequeña herramienta de Microsoft que hace el trabajo de manera sencilla y eficiente

Solo baja el Virtual CDRom Control Panel tool del sitio de Microsoft y sigue las instrucciones que vienen en el archivo readme:

1. Copia VCdRom.sys a tu directorio %systemroot%\system32\drivers folder.
2. Ejecuta VCdControlTool.exe
3. Click "Driver control"
4. Si el boton "Install Driver" esta disponible, dale click. Navega al folder %systemroot%\system32\drivers, seleciona VCdRom.sys, y da click en Open.
5. Click "Start"
6. Click OK
7. Click "Add Drive" para agregar un drive a la lista. Asegurate que el drive agregado no es un drive local, si lo es, continua dando click en "Add Drive" hasta que la letra del drive corresponda a una que este disponible en tu sistema.
8. Selecciona un drive que no este en uso de la lista de drives y da click en "Mount".
9. Navega a donde tienes guardada la imagen que quieres montar, seleccionala y da click
OK". UNC (los que son como \\servidor\folder...) no deben ser usados, aunque drives mapeados deberian funcionar bien.

Ahora puedes usar el drive que configuraste como si fuera un drive local de CD-ROM. Cuando termines puedes desmontar, detener y remover el driver de memoria usando la herramientita.

Eso es todo

Tuesday, August 05, 2008

CAPTCHA invisible

Checando la orden de mi iPhone =o))) en ATT me tope con este CAPTCHApense que solo tenia que dar enter, ya que no veia ningun caracter, pero...



=o(

Tuesday, July 29, 2008

Como borrar directorios .svn recursivamente de manera facil

De hecho puedes usar esto para borrar cualquier directorio que necesites borrar recursivamente, pero hoy lo necesitaba especificamente para los folders .svn y google solo me daba la respuesta para linux y unas soluciones muy extrañas para Windows.

Aqui esta una solucion muy simple que funciona desde la linea de comando (la forma facil =oP):

for /f "usebackq" %d in (`"dir *.svn /ad/b/s"`) do rd /s/q "%d"

mas que nada dejo esto aqui para mi porque se que lo necesitare en el futuro, pero espero que pueda ayudar a alguien mas por ahi J

Delta corre Linux en sus aviones

Tomada este fin de semana pasado en un viajecito que nos aventamos a las Vegas, son las pantallas que estan detras de los asientos

Sunday, July 20, 2008

No se puede actualizar funcion de SQL mientras la estas debugueando

El articulo aplica a: SQL debugging
keywords: SQL, debugging, VS2005, functions, stored procedures

Esto lo aprendi en dias pasados mientras que estaba conectado usando RD (Remote Desktop) a mi computadora del trabajo y estaba debuggeando una funcion SQL desde VS2005; luego encontre un bug en esta y procedi a actualizar la funcion externamente usando Microsoft SQL Server Management Express (uff, que cansado decir todo eso), pero al ejecutar el alter function tomaba muchisimo tiempo y nunca regresaba, pense que era algo que tenia que ver con mi sesion RD, asi que me conecte directamente al servidor e intente de nuevo con el mismo resultado, despues de algunos minutos de esperar a SQL a que actualizara mi funcion me di cuenta que estaba debugueando y estaba detenido en un breakpoint en esa funcion, cerre VS, intente de nuevo y listo, funciono instantaneamente.

Pues si, fue mi culpa, pero nunca me dio un timeout ni tampoco un mensaje indicando cual era el problema, que pasaria si dos desarrolladores estuvieran trabajando en la misma cosa?
Talvez podrian hacer algo en esa area para arreglar ese problema, no creo que sea demasiado dificil, despues de todo sabe que esta bloqueada, porque no dar un mensaje al usuario?

Creo que esto mismo aplica a stored procedures pero no lo he probado

Pero bueno, queria compartir mi experiencia con ustedes, y espero que esto le sirva a alguien.

Friday, June 27, 2008

Bienvenido a la familia



Pues al fin sucumbi y me uni al club, compre la iMac 24" 3.06 GHz =o), la pantalla de 24 pulgadas es buenisima, hace que mi "viejo" monitor de 21" se vea chiquito

Hasta ahora he encontrado varias cosas que me han decepcionado sobre la "usabilidad" de la Mac, supongo que tenia expectativas demasiado altas por los comentarios de la mayoria de la gente que tiene Macs; simplemente el hecho de que la primera aplicacion en el sistema es el "Finder" ya me hace sospechar que algo no estas en su lugar, hasta ahorita los problemas mas grandes que tengo:

- los short cut keys son muy diferentes (estoy batallando bastante para escribir esto)
- Instalas una aplicacion y desaparece, tienes que encontrarla usando el Finder (por supuesto
- click derecho, donde esta el #$%&** click derecho!!! - lo encontre, tienes que dar "ctrl+click" lo cual no me gusta nada, despues encontre que lo puedes configurar pero no funciona muy bien, tienes que retirar bastante tu dedo izq
- los botones del mouse (o la falta de estos)
- window resizing, porque es que solo puedo hacer resize desde la esquina inferior derecha???
- cuando estas escribiendo el HOME no se va al inicio, y el END no se va al final, aaarggh, esto me esta matando ahora mismo

Ya le instale el Fusion y Windows Vista dentro de este, hasta ahorita todo ha funcionado bien, veamos si esto mejora ya que me familiarice mas

El "Bienvenido a la familia" es lo que nos dijeron en la tienda cuando compramos la Mac, aqui les seguire actualizando sobre mis quejas experiencias

Wednesday, May 14, 2008

Twitter esta caido, yo culpo a tweetwheel.com

Twitter esta caido de nuevo, a este paso va a ser muy dificil que alguna otra de las redes sociales populares de estos tiempos le quite la posicion #1 como la peor red social en cuando a "up time" se refiere; pueden checar la lista aqui:

Social network downtime Jan-Apr 2008

Yo culpo a tweetwheel.com jeje, y ustedes a quien culpan??

Monday, March 31, 2008

Asi es como NO se manejan los errores

Visto en cierto sitio popular de futbol, se me ocurrio ver el resto del mensaje y obtuve version del OS, servidor web, PHP, algunos directorios y la direccion ip interna del servidor.

por favor jovenes atrapen errores y guardenlos en algun log y solo muestren errores amigables al usuario, por ejemplo "los datos no estan disponibles en este momento, por favor intentelo mas tarde", o algo asi

Thursday, March 13, 2008

Lo que quisiera ver en la siguiente version de C#

Mitch Denny escribio sobre lo que el quisiera para la siguiente version de C# (mucha otra gente ha escrito sobre este tema ultimamente)

Lo que Mitch propone es tener un atajo para formatear strings, lo cual nos permitiria ir de algo asi
string s=string.Format(”{0}{1}{2}”, a, b, c);
a esto:
string s=@(”{0}{1}{2}”|a|b|c);

En este caso particular no me gusta la alternativa que propone, lo unico que esta haciendo es reemplazar la "," con el caracter "|" y haciendo el nombre mas corto.
Uno podria escribir su propia funcion "de envoltura":
//*** podrias llamarla "f" si quisieras
static string fmt(string format, params object[] parameters) {
return string.Format(format, parameters);
}

y la usarias asi:
string s=fmt("{0}{1}{2}",a,b,c);

Lo cual nos da practicamente el mismo resultado que lo propuesto por Mitch

Otro problema es que esta propuesta resuelve un problema muy especifico el cual es formatear strings y podemos obtener casi el mismo resultado escribiendo una funcioncita

El caso es que con tanta gente dando su opinion sobre lo que les gustaria ver en la siguiente version de C#, pues yo tambien tengo mi idea
lista de argumentos sin coma

algo asi:
string s=fmt("{0}{1}{2}" a b c);

El alcance de este cambio seria muchisimo mayor y de hecho le quitaria algo de "azucar de sintaxis" (syntactic sugar) al lenguaje

Ahora bien, este cambio seguramente no ocurrira, debido a que esta es la familia de los lenguajes C y ademas me parese que el cambio seria bastante significativo, pero como este es mi blog pues yo pongo mi idea =o)

Por cierto una de las ideas que me ha parecido buena es la de tener argumentos nombrados, con lo cual se podrian mandar llamar funciones de la manera

AlgunaFuncion(Parametro1 = "Algun valor", Parametro2=10);

Esta idea me parece excelente, una de las cosas que eliminaria seria la confusion que generan los parametros booleanos, y ya no tendriamos que usar Enum para esos casos