Tupí: Software de Animación 2D para Linux

Hace 3 años comenzó una aventura llamada Tupí. El objetivo: rescatar un proyecto previo de Software Libre para creación de animaciones 2D conocido como Ktoon. Y el objetivo más allá del objetivo? Traer al mundo del código abierto una herramienta en la que artistas digitales pudieran crear animaciones en 2D, con al menos, la misma calidad de las que se pueden realizar con el programa de Software Privativo Adobe Flash.

Este reto trajo consigo el desafió de diseñar una experiencia de usuario que permitiera que el proceso de creación fuese sencillo, agradable e intuitivo. En ese orden de ideas y a pesar de lo lento que avanza el proyecto (situación que nos encantaría cambiar), el ejercicio de buscar acercarnos a las mejores practicas de usabilidad nos ha permitido lograr una primera aproximación bastante aceptable. read more

Leer más » 3 Comentarios

Barato

Leer más » 2 Comentarios

Herencia en Java

La herencia es una caracteristica de los lenguajes orientados a objetos la cual nos da la posibilidad de reutilizar codigo, esto es definir una clase a partir de otra clase comun. Supongamos que tenemos la necesidad de registrar caracteristicas y funciones de Empleados y Clientes en un programa cualquiera. Nos damos cuenta que tanto empleados como clientes comparten muchas caracteristicas en comun, nombre direccion edad etc, y seria tonto definirlas en ambas clases, por lo que creamos una clase que comparta sus caracteristicas comunes (variables y metodos) y luego a partir de esa clase creamos las demas, las clases que heredan posteriormente pueden incluir sus propias caracteristicas que la diferencian de las demas, ESTO ES HERENCIA.

Leer más » 5 Comentarios

Lo mejor de mi RSS del 9 al 15 de septiembre de 2013

Leer más » 1 Comentario

Lo mejor de mi timeline del 8 al 14 de septiembre

Leer más » 1 Comentario

Modificar el tamaño de un vídeo de Vimeo o Youtube de forma dinámica (responsive)

Cuando insertamos un vídeo promocional o que pretendemos que esté siempre presente en una página de nuestra web lo mejor es que sea responsive, es decir, que cuando redimensionemos la ventana o se entre en la web con un dispositivo cuya resolución sea diferente todo quede conforme al tamaño de éste. Así siempre podrán ver el vídeo que colguemos sea cual sea la resolución o tamaño del render cliente. read more

Leer más » 1 Comentario

Otro año más: III WordPress Meetup Córdoba 2013 este año dos días, con talleres y mejores ponencias que nunca

Todavía recuerdo cuando organizamos la primera WordPress Meetup Córdoba, la acogida que tuvo y el buen sabor de boca que sacamos de esa primera edición. Un año después, se organizó la segunda edición y el éxito aumentó, ampliamos a dos líneas de ponencias en vez de una y la verdad que aumentó considerablemente el número de asistentes y conferenciantes.

Un año después, ya tenemos casi todo preparado para que la jornada sea la mejor que habéis vivido. Tenemos una gran novedad: además del sábado por la mañana, también incorporamos el viernes por la tarde. ¿Para qué? Para poder centrar esa parte técnica que se muestra mejor en caliente, con código y con todos disponiendo de un PC para ejecutar lo que os contamos. read more

Leer más » 2 Comentarios

Juego – Adivina la cueva del dragón – Python

Como ya dije otras veces, Invent Your Own Computer Games with Python es un libro gratuito y libre que te enseña a programar juegos de ordenador en Python. Cada ciertos capítulos te muestra el código completo de un nuevo juego y luego te explica los conceptos de programación de dicho código.

Uno de los juegos más sencillos y más interesantes para aprender es Adivina la cueva del dragón, aquí os paso el código completo para ejecutarlo en Python 3 en adelante.

import random import time def displayIntro(): print() print('Te encuentras en un lugar lleno de dragones. Delante') print('tuya ves dos cuevas. En una vive un dragon afable que ') print('tiene escondido un tesoro para ti. El otro dragon') print('es agresivo y no dudara en comerte.') print() def chooseCave(): cave = '' while cave != '1' and cave != '2': print('Elige una de las dos cuevas (1 o 2)') cave = input() return cave def checkCave(chosenCave): print('Te acercas a la cueva...') time.sleep(2) print('Esta oscura y silenciosa...') time.sleep(2) print('y de repente un dragon se abalanza hacia ti,') print('abre la boca y...') print() time.sleep(2) friendlyCave = random.randint(1, 2) if chosenCave == str(friendlyCave): print('Te da el tesoro!') else: print('Te come de un solo bocado!') playAgain = 'yes' while playAgain == 'yes' or playAgain == 'y': displayIntro() caveNumber = chooseCave() checkCave(caveNumber) print('Juegas de nuevo? (yes o no)') playAgain = input() read more

Leer más » 3 Comentarios

Comunicacion entre Procesos con Named Pipes

 
Las “Named Pipes” o “Tuberias Nombradas” son el nombre de una tecnica para lograr realizar una comunicacion entre procesos, a esto se le conoce como IPC (Inter Process Communication).  Permite a dos procesos en una misma maquina o de diferentes maquinas conectadas compartir mensajes entre procesos para comunicarse, esto es necesario en ocasiones en sistemas multitarea o multiproceso.

Leer más » 4 Comentarios

Juego – Adivina el número – Python

Como ya dije la semana pasada, Invent Your Own Computer Games with Python es un libro gratuito y libre que te enseña a programar juegos de ordenador en Python. Cada ciertos capítulos te muestra el código completo de un nuevo juego y luego te explica los conceptos de programación de dicho código.

Uno de los juegos más sencillos y más interesantes para aprender es Adivina el número, aquí os paso el código completo para ejecutarlo en Python 3 en adelante.

# This is a guess the number game. import random guessesTaken = 0 print('Hello! What is your name?') myName = input() number = random.randint(1, 20) print('Well, ' + myName + ', I am thinking of a number between 1 and 20.') while guessesTaken < 6: print('Take a guess.') # There are four spaces in front of print. guess = input() guess = int(guess) guessesTaken = guessesTaken + 1 if guess < number: print('Your guess is too low.') # There are eight spaces in front of print. if guess > number: print('Your guess is too high.') if guess == number: break if guess == number: guessesTaken = str(guessesTaken) print('Good, ' + myName + '! You guessed my number in ' + guessesTaken + ' guesses!') if guess != number: number = str(number) print('Nope. The number I was thinking of was ' + number) read more

Leer más » 1 Comentario