Describe en SQL Server

Acostumbrado a utilizar MySQL, cuando tuve que hacer unas pequeñas cosas en SQL Server, lo primero que empecé a extrañar fue el comando describe.

El comando describe en MySQL me permite conocer la estructura de una tabla. Si bien en SQL Server lo podía hacer navegando por la sysobjects, yo heredaba mis vicios de MySQL.

No quedaba otra alternativa que escribir por cuenta propia un stored “describe”. Por suerte, esto ya estaba hecho y publicado en la web.

Leer más »

Linux: reinstalar GRUB

Algo muy usual, de hecho en mi caso me ha pasado varias veces, es reinstalar Windows en alguna partición u otro disco, y perder el grub del Master Boot Record que me había instalado mi distro de Linux. Y por lo tanto, no poder acceder a mis particiones Linux o de otro sistema operativo que tenía configurado.

Para reinstalar el grub debemos bootear con un LiveCD y montar la partición de nuestro Linux e instalar/reinstalar el grub

mkdir /mnt/hda2
mount /dev/hda2 /mnt/hda2
chroot /mnt/hda2
grub-install /dev/hda

Es probable que además haya que editar el /boot/grub/menu.lst para tener todos los accesos, de hecho deberiamos agregar el acceso al Windows recién instalado que había modificado nuestro MBR.

VMware: deshabilitar el BEEP!

En VMware para Windows, una de las cosas más molestas que me ha tocado soportar es el beep cuando el sistema operativo virtualizado nos notifica un error. Estas notificaciones suelen ser muy usuales al utilizar la terminal de cualquier *X y al tipear mal, por ej: un nombre de directorio.

El problema es que este beep, de acuerdo al equipo, puede sonar muy fuerte, como fue en mi caso. Por suerte, podemos cambiar esta configuración de manera muy simple, buscando el archivo de configuración del VMware.

Para deshabilitar el BEEP:

  • En Windows, buscar el archivo C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini y agregar la linea: mks.noBeep = “TRUE”
  • En Linux, el archivo debería encontrarse en /etc/VMware/config

Ejecutar Python con WAMP

Luego de la incursión en python de algunos post atrás, mi próximo paso fue poder ejecutarlo sobre un servidor web. Para ello partí de la base que en mi sistema tenía instalado:

  • WAMP 2.0a (hoy ya está disponible la 2.0b)
  • ActivePython-2.5.1.1

Lo único que tuve que bajar e instalar fue el Mod_pyhton. Mod_python es un modulo apache para interpretar python scripts.

mp_long.gif

Leer más »

¿Como reconocer un buen programador?

Este es una interpretación y resumen del texto original publicado en How to recognize a good programmer?

Indicadores positivos:

  • Son apasionados por la tecnología
  • Programan como hobby
  • Hablan de cualquier asunto técnico que escuchen
  • Realicen numeroros proyectos personales a traves de los años
  • Aprenden acerca de nuevas tecnologías por su cuenta
  • Tiene opiniones acerca de cuales tecnologías son las mejores para varios usos
  • No trabaja bien cuando no se siente cómodo con la tecnología con la que trabaja.
  • Son listos, pueden tener gran variedad de conversaciones acerca de diferentes tópicos.
  • Empezaron a programar mucho antes de la universidad o el trabajo
  • Tienen escondidos muchos proyectos debajo del alcance de un CV.
  • Conocen de variedad de temas no relacionados con la tecnología, generalmente no incluidos en el CV.

Indicadores Negativos:

  • Considera la programación como un trabajo (como un trabajo rutinario)
  • Aprende nuevas tecnologías solo por cursos brindados por la empresa
  • Estan felices de trabajar con cualquier tecnología que le toque (todas las tecnologías son buenas)
  • No parece demasiado listo
  • Empezaron a programar en la universidad
  • Toda su experiencia en programación está en su CV
  • Estan focalizados en una o dos tecnologías, sin experiencia fuera de eso.

Excepciones en MySQL

El tema de excepciones no suele ser del gusto de lor programadores dada la cantidad de condiciones a las que se someten sus aplicaciones durante su ejecución. Al momento de tratar un condición, podemos tratarla según dos enfoques:

  • Enfoque conservador: consiste en comprobar primero y luego actuar.
  • Enfoque optimista: consiste en probar primero y analizar despues.

Tomando en enfoque optimista, analizaremos el caso de un stored procedure en MySQL que ejecute una INSERT, y si el mismo dio error (por ejemplo por PK duplicada) realice un UPDATE. Como se observa, cumple con el enfoque:

  1. Intentamos ejecutar el INSERT
  2. Luego analizamos sus consecuencias y tomamos medidas correctivas

Para hacer esto veremos un poco de handlers en MySQL.
Leer más »

Concurso de Blogs

Bloguea acerca de NetbBeans 6.1 Beta gana algunos premios.

61blog-contest-logo-trans.gif

Leer más »

BgInfo

Aveces se torna dificil recordar ciertos aspectos de la configuración del sistema, ni hablar, si debes administrar varios equipos. A tal fin, BgInfo le será, probablemente, de mucha utilidad.

BgInfo es una utilidad que puedes encontrar en la sección Windows Sysinternals de Microsof, que permite mostrar automáticamente información del equipo (dirección IP, mac address, espacio disponible en disco, version del OS, SPs instalados, IP, hostname, etc) como fondo de pantalla (inclusive manteniendo su wallpaper).

Leer más »

Shutdown remoto

El comando shutdown de Windows, sirve para apagar o reiniciar el equipo. Entre los parametros que admite, se encuentra:

-m \\equipo    Equipo que se apagará/reiniciará/anulara

Ante el primer intento de hacer la prueba, es probable, que si no modificamos una política se seguiridad del “Equipo que se apagará/reiniciará/anulara” no vayamos más allá que un “Acceso denegado”.

Leer más »

Mis primeros pasos con Python

Mis primeros pasos con Phyton fueron con esta guía: http://almacen.gulic.org/diveintopython-5.4-es/toc que es una traducción del libro Dive Into Python.

 

diveintopyton.jpg

 

Leer más »


Búsqueda personalizada

Suscripción

       Add to Google Reader or Homepage

      

       Subscribe in NewsGator Online

       Add to netvibes

       Subscribe in Bloglines

Categorias

Licencia de uso

Usuarios

       web counter