Cómo hacer capturas de pantalla en Ubuntu, Mac OS X y Windows (desde el teclado)

"captura" de pantalla

Muchas veces nos encontramos con la necesidad de efectuar una captura de pantalla, o «tomar una foto» de ésta o de una zona, para insertarla en un documento, enviarla por correo electrónico, o para cualquier otra cosa. Para ello, muchos usuarios descargan e instalan aplicaciones creadas para tal fin.

Pero aún hay mucha gente que desconoce que todos los sistemas operativos permiten hacerlo sin tener que instalar nada, de manera nativa. Vamos a ver qué opciones tenemos, en el caso que utilicemos Windows, Mac o Ubuntu (Linux):

Seguir leyendo «Cómo hacer capturas de pantalla en Ubuntu, Mac OS X y Windows (desde el teclado)»

Curso de jQuery (I): Selectores básicos

JavaScript está de moda, eso es un hecho. Y esto es así debido a librerías como jQuery, que simplifican mucho la forma de trabajar con él. Todo lo que se puede hacer con jQuery se puede lograr también con JavaScript directamente, pero teniendo que teclear mucho más código y sufriendo adaptándolo para que funcione en todos los navegadores; jQuery nos libera de ésto y de mucho más.

No soy ningún experto en jQuery, ni mucho menos, pero con este pequeño curso básico intentaré enseñar, de manera práctica, a dar los primeros pasos y de paso pondré en orden lo que he aprendido hasta ahora. Iré mezclando jQuery y también jQueryUI, mostrando cosas básicas de uno y cómo trabajar con controles del otro.

En éste primer post veremos cómo utilizar los selectores básicos de jQuery para interactuar con los diferentes elementos de una página HTML. En la siguiente entrada mostraré otros selectores más avanzados, para no hacer de cada entrada un libro. Pero lo primero de todo es saber cómo incluir jQuery en nuestra web, y qué opciones tenemos. Vamos a ello:

Seguir leyendo «Curso de jQuery (I): Selectores básicos»

Emprendedores: Los nueve puntos que debe cumplir un proyecto

Me estoy leyendo el libro la aventura de emprender, de Ángel María Herrera, un libro muy recomendable y motivador en el que narra sus experiencias a la hora de crear sus empresas, entre ellas bubok, un portal para que los escritores puedan autoeditar sus obras. Y hablo de este libro porque aparece una idea que encuentro extremadamente interesante y que quiero compartir y recordar, con el permiso de su autor.

La idea en sí es un comentario que le hizo Antonio González-Barros, uno de sus inversores, y que se reduce a que un proyecto o idea debería cumplir los nueve puntos siguientes para tener éxito:

Seguir leyendo «Emprendedores: Los nueve puntos que debe cumplir un proyecto»

Javascript: Conocer si una variable u objeto existe (diferencia entre null y undefined)

 

Actualizado: Si trabajas con jQuery y quieres saber si un selector existe en la página, revisa esta entrada.

Trabajar en Javascript implica, entre otras cosas, acceder a variables y objetos. Y siempre que accedemos a éstos nos hemos de asegurar de que existen, o correremos el riesgo de provocar un error que impida que se ejecute el resto del script.

Javascript tiene dos formas de avisarnos de que algo pasa con la variable u objeto al que deseamos acceder: las palabras null y undefined. La diferencia entre ambas radica en que mientras que undefined nos informa que el objeto o variable no está definido, null es un objeto vacío. Entonces, un objeto o variable contendrá algún valor, o será null o undefined. Pero, ¿cuándo es null y cuándo undefined? El siguiente ejemplo nos lo dejará más claro:

Seguir leyendo «Javascript: Conocer si una variable u objeto existe (diferencia entre null y undefined)»

Transacciones en Grails: cómo aplicar Commit y Rollback

Las bases de datos se operan mediante sentencias, generalmente SQL, si la base de datos es relacional. Una sentencia es una operación que se aplica sobre uno o varios registros, y dicha sentencia puede tener éxito (modificándose la base de datos) o no (no se modifica la base de datos).

A diferencia de una sentencia, una transacción es un conjunto de sentencias diferentes que se envían a una base de datos y que se ejecutan en lote. Pero cualquiera de las sentencias pueden fallar, y es posible que no convenga que si falla una se guarde el resto.

Para evitar que esto ocurra, se suelen utilizar las sentencias begin transaction para indicar el inicio de la transacción, commit para confirmar los cambios si todo ha ido bien, y rollback, para descartar todos los cambios si se ha producido algún error.

Pero en Grails no existen estas sentencias, así que en este post voy a mostrar cómo podemos realizar una transacción que se confirme si todo va bien, o se rechace si hay algún problema.

Seguir leyendo «Transacciones en Grails: cómo aplicar Commit y Rollback»

Cursos online gratuitos: Python y Ruby

Iniciarse con un nuevo lenguaje de programación puede ser una tarea costosa que requiere de nuestro tiempo libre e incluso de una inversión monetaria inicial (comprar un «libraco»), por lo que echa para atrás a más de uno.

Pero imaginemos que en lugar de ser así, aprender un nuevo lenguaje fuera un juego: la cosa cambiaría bastante, y mucha gente que a priori no se embarcaría en tan magna tarea lo haría ahora con ganas.

Ésa es la idea que han tomado los chicos de codecademy y codeschool al proponernos dos magníficos cursos introductorios a Python y a Ruby, en los que podremos iniciarnos en la sintaxis y control de flujo básicos de estos lenguajes, haciendo los ejercicios que nos proponen en el mismo navegador, como si de niveles de un juego se tratara, y viendo nuestros resultados instantáneamente.

Code Cademy:Python
Code School: Try Ruby

Tooltips con flecha o bocadillos y triángulos en CSS

Un efecto muy vistoso que podemos obtener al desplazarnos con el ratón sobre una página web son los tooltips o mensajitos informativos con una flecha que aparecen al situarnos sobre un elemento, como podemos ver en la imagen del post. En esta entrada (después del salto) voy a explicar cómo crear el efecto de triángulos CSS para representar a la flecha del tooltip.

Seguir leyendo «Tooltips con flecha o bocadillos y triángulos en CSS»

Aprende GIT en 15 minutos

GIT es un sistema de control de versiones diseñado por Linus Torvalds que está pasando por un muy buen momento: cualquier desarrollador que se precie debería conocerlo o utilizarlo, hasta el punto que muchas ofertas de empleo piden que el solicitante incluya su repositorio público de proyectos para poder echarles un vistazo.

GIT se ha popularizado gracias a GitHub, un servicio de hosting de repositorios que proporciona desde cuentas públicas gratuítas hasta cuentas privadas de pago, según el número de repositorios. Si poseemos una cuenta pública gratuita el contenido de los repositorios podrá ser accedido por todo el mundo, pero podremos seleccionar quién puede subir contenido, mientras que las cuentas de pago son privadas.

Aunque existen GUI’s (interfaces gráficas de usuario) para trabajar con GIT (disponemos de ejemplos en la página de GitHub), es posible trabajar con más agilidad desde la línea de comandos, pero ello puede echar para atrás a más de uno; por eso, GitHub junto con Code School, han desarrollado un simulador de GIT para practicar  los comandos y dominar este CVS (sistema de control de versiones).

Recopilación de las diapositivas de SpainJS 2012

Del 5 al 7 de Julio se ha celebrado en el parque del Retiro de Madrid el evento SpainJS, una conferencia de desarrolladores centrada en el ecosistema JavaScript, y de enfoque internacional, ya que muchos de los ponentes y asistentes eran de habla inglesa.

Como no he podido ir y el tema me interesa, en éste post intento recopilar los enlaces a todas las slides o diapositivas de las charlas, y lo iré actualizando según éstas estén disponibles, aunque también se pueden consultar aquí.

La ansiada lista, tras el salto.

Seguir leyendo «Recopilación de las diapositivas de SpainJS 2012»

Cropp.me, retoca imágenes desde el navegador

Cropp.me es un servicio que permite redimensionar y recortar imágenes desde el mismo navegador. Es tan sencillo como subir la imagen que deseamos retocar, seleccionar los tamaños que necesitemos (los más comunes están preseleccionados, aunque también podemos seleccionar un tamaño personalizado), aplicar un recorte a la imagen original si nos hace falta, y finalmente descargarnos un zip con la imagen recortada en cada uno de los tamaños que hayamos especificado.

Si bien es cierto que es bastante sencillo hacer esto mismo con Paint o cualquier otra alternativa, no debemos despreciar la utilidad que nos puede brindar esta web, y que seguro que más de uno sabrá sacarle beneficio.

Visto en The Next Web