sábado, 24 de septiembre de 2011

Ejercicios de Matemáticas V (Parte 2)

En este post podrán descargar la segunda parte de los ejercicios de Matemáticas 5 del Instituto Tecnológico de Toluca, semestre Agosto-Diciembre de 2011.

Estos ejercicios son los 4 problemas de aplicación que la profesora dictó el viernes pasado. Simplemente da click sobre el enlace que se presenta a continuación.

Descargar Ejercicios: problemas de aplicación

domingo, 18 de septiembre de 2011

Videos y tutoriales para comenzar a programar el PIC 16F628A

A continuación se encuentra una serie de videos que encontré y que pueden ser muy útiles en la programación del PIC 16F628A, que es el que actualmente utilizamos en el curso de Arquitectura de Computadoras. Quizá alguno de ellos parezca demasiado sencillo e introductorio para quienes ya cuentan con un poco de experiencia, pero para los que aún somos neófitos en este tema, pueden ser de gran ayuda.

Estos son también tutoriales acerca de cómo utilizar MPLAB, la herramienta que manejaremos a la hora de programar el PIC. Por supuesto existen muchos más videos, así que si tienen alguna sugerencia será bienvenida.

Ejercicios Matemáticas V (Parte 1)

En el siguiente enlace pueden descargar la primera parte de los ejercicios de Matemáticas V (Ecuaciones Diferenciales). De acuerdo con la profesora, solamente faltan 2 temas por anexar pero podemos ir resolviendo los que se encuentran en esta primera parte.

Descargar ejercicios

domingo, 11 de septiembre de 2011

Diagrama Sakila DB

En septiembre del año pasado inicié una serie de SQL y posteriormente publiqué un par de posts describiendo cómo formular ciertas consultas (trivia sql y filtrar por columnas resultado de agrupado)

En el primer post de la serie de SQL, también proporcioné un enlace a un diagrama de la base de datos para tener mayor referencia al crear las consultas. Sin embargo, mientras preparaba un nuevo post, noté algo raro en el diagrama.

El archivo zip de sakila contiene tres archivos: uno con comandos para crear la base de datos, otro para poblarla y el último es un archivo del modelo de base de datos que se puede abrir con MySQL Workbench.

Hasta el momento no había usado el modelo de Workbench, pero al ver que las relaciones del diagrama parecían invertidas, decidí instalar MySQL Workbench y abrir el modelo. Esto me permitió corroborar que las relaciones del diagrama que se encuentra en la página principal de Sakila están invertidas.

Observen las siguientes dos imágenes. La primera es el diagrama en la página principal de Sakila: los símbolos de 'muchos' no están del lado de film_actor. La segunda es una imagen del modelo de Workbench: los símbolos de 'muchos' sí están del lado de film_actor.

Diagrama Página Sakila

Diagrama Workbench

Así que recomendaría mejor usar el modelo de Workbench (también subí la siguiente imagen del modelo de Sakila versión 0.8).

Ahora sí podemos hablar de la siguiente consulta en el próximo post.

sábado, 27 de agosto de 2011

LibreOffice corrección ortográfica

En enero hablamos sobre LibreOffice como una alternativa a OpenOffice. Con el lanzamiento de Ubuntu 11.04, LibreOffice se convirtió en la suite de productividad oficial de Ubuntu. De hecho cuando actualicé a 11.04, OpenOffice fue desinstalado y LibreOffice ocupó su lugar.

Sin embargo, noté que no tenía instalada la revisión ortográfica en español. Afortunadamente es muy fácil agregar esta funcionalidad. Primero debemos abrir el administrador de paquetes (system > administration > synaptic package manager) y en el recuadro de búsqueda teclear myspell-es. Asegúrate de tener cerrada cualquier instancia de LibreOffice e instala el paquete myspell-es.

Ahora abre alguna instancia de LibreOffice como Writer, pon el lenguaje en Spanish (México) y teclea una sentencia en español para verificar si funciona el paquete. En caso de que no aparezca el lenguaje deseado, selecciona la opción more para tener más opciones.

Como podemos observar en la siguiente imagen, la revisión y corrección ortográfica está funcionando adecuadamente.

Si tienes más tips para mejorar la funcionalidad de LibreOffice, compártelos en los comentarios.

domingo, 7 de agosto de 2011

Respaldar en Ubuntu

Ahora que ha llegado el verano y ha terminado el semestre, es un buen momento para dar una buena limpieza a nuestra computadora y realizar un respaldo. De hecho, siempre debemos tener respaldada nuestra información en caso de que nuestra máquina principal falle.

La primera opción que viene a la mente es tener que comprar un disco externo para realizar respaldos. Sin embargo, en nuestro caso, tenemos dos computadoras y ambas tienen bastante espacio; además, vamos a respaldar sólo aquella información realmente valiosa. Por ello decidimos que cada computadora guardaría un respaldo de la otra. De esta forma aprovechamos el espacio libre y ahorramos al no tener que comprar un disco externo. A continuación mostramos los pasos que seguimos así como algunas recomendaciones. La siguiente imagen muestra la configuración que estamos usando.

1) Instalar Back In Time

Buscando en varios foros y sitios de tecnología todo apuntó a usar Back In Time. Sólo tenemos que agregar el repositorio e instalarlo desde el Centro de Software, verifica que elijas la opción correcta: Gnome o KDE.

  sudo add-apt-repository ppa:bit-team/stable 
  sudo apt-get update

2) Configurar la red

Back In Time no soporta respaldos remotos. Pero usando SSH es posible simular que Back In Time está escribiendo localmente cuando en realidad es una carpeta remota. El siguiente post describe de manera excelente los pasos a seguir. Antes de seguir los pasos del post, sólo realizamos tres pasos adicionales:

  1. Asignamos ip's fijas a cada computadora, esto lo realizamos directamente en el ruteador.
  2. En cada máquina instalamos un servidor de SSH.
      sudo apt-get install openssh-server
  3. Creamos cuentas en cada máquina para poder conectarnos.

3) Cifrar datos sensibles

Es posible que tengamos información que deseemos respaldar pero que no queramos que sea vista por otras personas. Para ello usamos TrueCrypt, que permite crear discos o particiones virtuales cifradas. Debido a que estamos copiando información sensible sin cifrar a un volumen cifrado, es importante que después de copiarla, borremos la información sin cifrar de una manera segura usando Secure-Delete o shred.

  sudo aptitude install secure-delete

Por el momento Secure-Delete nos está dando algunos problemas, que describiremos en otro post, así que decidimos usar shred. Para borrar un archivo:

  shred -u -z -n 32 archivo.txt

Para borrar todos los archivos de un directorio y sub-directorios:

  find -type f -execdir shred -u -z -n 32 '{}' \;

4) Realizar el respaldo.

Ahora sí ya podemos iniciar Back In Time, si es la primera vez, nos presenta un diálogo donde podemos seleccionar dónde guardar el respaldo (en nuestro caso es la carpeta configurada en el paso 2) y qué carpetas deseamos respaldar, entre otras opciones. El siguiente post describe las opciones más comunes.

El primer respaldo fue de unos 5 Gb y duró aproximadamente unas dos horas; sin embargo para el siguiente respaldo, sólo se copiarán aquellas cosas que cambiaron, por lo que será más rápido.

Esperamos haberlos motivado a respaldar sus datos y a que compartan sus experiencias al respecto.

jueves, 14 de julio de 2011

ANSI C extra: Control de versiones con Mercurial

Durante la sesión anterior, se comentó lo peligroso que puede ser el mal uso de algunos comandos en la terminal que pueden ocasionar la pérdida de la información que contienen archivos que tal vez para nosotros son muy importantes y representan quizá el trabajo de varios días y varias noches.

Y aunque es inevitable equivocarse, afortunadamente existen herramientas que pueden ayudarnos a reducir el impacto de un error que se cometió bajo la presión de alguna fecha de entrega de proyectos y una alternativa para no perder completamente nuestra información es el uso de Control de Versiones.

Existen varias herramientas de Control de Versiones y una de las que he explorado es Mercurial. Para conocer más acerca de Mercurial, puedes echar un vistazo a los posts Mercurial y Bitbucket (parte 1) y Mercurial y Bitbucket (parte 2).