Entradas

Hospedar web en Github

Imagen
En el articulo  Probando Phaser: 3 en raya , aproveche la oportunidad para probar como crear una pagina web en Github. Una de las primeras cosas que aprendí es que en GitHub podemos hacer dos tipos de paginas: pagina de usuario , cuya dirección quedaría "http://<tu_nombre_de_usuario>.github.io", o pagina de proyecto , que quedaría "http://<tu_nombre_de_usuario>.github.io/<nombre_de_proyecto>". Esta es su primera ventaja, con respecto a hospedar una web en Dropbox , unas URLs mas amigables. Es importante saber que mientras paginas de usuario solo podemos hacer una, se pueden hacer tantas paginas de proyecto como proyectos tengamos o queramos hacer. Otra ventaja que tiene al respecto, es que aquí si que funcionan las URLs relativas, asi que nada de tener que reescribirlas al subir elementos adjuntos como css o imagenes. Voy a poner como caso de ejemplo el Conversor de imagenes a base64 . Antes de continuar, es importante recordar que es igual ...

Conversor de imagenes a Base64

Imagen
He creado una pequeña utilidad para convertir imágenes png en base64. Este es un sistema que permite incrustar imágenes en una pagina web directamente codificadas en forma de texto, en vez de tenerlo en un archivo a parte. Hablando "en código", seria algo como esto: <!--- Imagen en archivo aparte ---> <img src= "./image.png" alt= "image" /> <!--- Imagen en base64 ---> <img src= "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtA AAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABoSURBVFhH7dixDYAwDABBhwEYLgshFkIMRY +UBaBxQ5HqJeTir4nLlyI3bvd1PlHYkm9ZBlIGUtMt3o81p39sfeT05RdTBlIGUgZSBlIGUgZSBl IGUgZSBlIGUgZS5QO9sFIGUgYyES9xhA3UXdTL/AAAAABJRU5ErkJggg==" alt= "image" /> Dando como resultado esto: Imagen en archivo aparte Imagen en base64 Como se puede ver el resultado es el mismo en ambos casos. Su principal ventaja es que al no cargar las imágenes de un archivo externo se reduce el n...

GUI en Python con Glade

Imagen
Este es un pequeño ejemplo para realizar un programa en Python con una interfaz gráfica de usuario (GUI) clásica; que funcione tanto en Windows como Linux. He utilizado esto: Python 2.7 PyGTK 2.24 , un conjunto de módulos para crear GUI en Python Glade , un diseñador de interfaces de usuario Como lo he hecho desde Windows he utilizado los instalables disponibles en los enlaces de arriba. Para quien quiera hacerlo desde Linux: sudo apt-get install python2.7 sudo apt-get install python-gtk2 sudo apt-get install python-glade2 Para empezar, lo mas sencillo es diseñar la interfaz de usuario con Glade. Las diferentes partes del entorno son: Paleta de componentes: los diferentes elementos u objetos que se pueden utilizar (botones, combobox, diálogos, etc) Panel de edición: donde se van poniendo y distribuyendo los elementos Panel inspector: aquí aparecen organizados en forma de árbol los diferentes elementos según estén unos dentro de otros Panel de propieda...

Aplicacion de escritorio con PHP

Imagen
Este es un caso que me ha ocurrido trabajando. Tenemos en un servidor una aplicación web, escrita en PHP, que trabaja manipulando documentos, cumple con su función perfectamente y no ha necesitado mantenimiento. Puesto que no accede a ninguna base de datos, seria útil tener acceso a ella en una versión "offline" para no depender de la conexion a internet. "A bote pronto", la primera solución era volver picar toda la aplicación en otro lenguaje (Java, por ejemplo); otra solución era utilizar algún tipo de servidor local (WAMP, XAMPP, etc). Pero, ¿acaso no existía una forma rápida de aprovechar todo el código ya escrito sin tener que instalar un servidor local en cada pc que lo utilizara? "Googleando" he podido encontrar varias opciones mas o menos validas para crear apliaciones PHP de escritorio, hasta que he dado con phpdesktop :  un proyecto open-source que integra un navegador embebido (se puede elegir chrome o internet explorer), un servidor web y u...

Probando Phaser: 3 en raya

Imagen
El noviembre pasado se celebro un hackaton de videojuegos en Valencia, donde el requisito fundamental era utilizar el framework Phaser . Me parecio interesante, busque un poco de información sobre dicho framework e hice algunas pruebas. El resultado de una de esas pruebas fue un sencillo 3 en raya para dos jugadores. Para la creación de los graficos he utilizado la herramienta open-source Aseprite . Esta hospedado en Github , y el codigo lo teneis disponible para verlo, probarlo, mejorarlo, etc. Tu navegador no soporta iframes. Enlace: TicTacToe - Web TicTacToe - Código

Robotica con Lego Mindstorm

Imagen
La plataforma Lego Mindstorm son un conjunto de kits de piezas, controladores, sensores y actuadores fabricados por Lego, enfocados para el aprendizaje de la robótica y la automática en el ámbito educativo. Permite construir todo tipo de robots y mecanismos, se pueden desde los clásicos robots que siguen una linea negra hasta autenticas locuras como uno capaz de tocar la guitarra . Este es un ejemplo que hice hace unos años, fue mi primera experiencia con la plataforma de Lego. Es un sistema de aparcamiento automatico, empleando el sensor ultrasonico. Aquí el autómata avanza hasta que encuentra un hueco lo suficientemente grande, detectándolo con el sensor de ultrasonido, y maniobra para aparcar automáticamente. Después al detectar el chasquido de los dedos vuelve a salir. Para programarlo utilice RobotC, un IDE que permite programar este y otros automatismos en C. En este otro ejemplo que tuve la oportunidad de hacer con un sistema de vision artificial,utilizando una...

Hospedar web en Dropbox

Imagen
Importante: desde el 3 de octubre de 2016 Dropbox ha deshabilitado la posibilidad de realizar esto, por lo que este artículo ya no sirve Desde hace tiempo sabía de la posibilidad de que puede utilizarse Google Drive algún servicio de almacenamiento en la nube para hospedar paginas web simples que utilizaran tan solo HTML, CSS y Javascript; y en multitud de artículos se explicaba como. Así que he hecho una pequeña aplicación web con AngularJS para probar. Actualización 1: Mi idea original era escribir sobre hosting en Drive. Sin embargo, encontré una mala noticia: Google iba a eliminar esta posibilidad para el 31 de agosto de 2016 (fuentes aquí y aquí ), así que no valía la pena a largo plazo. Buscando alternativas a Google Drive, las dos que me han parecido mas interesantes son Github y Dropbox. Dropbox es un sistema de almacenamiento en la nube (el precursor de Google Drive) y Github es una plataforma para almacenar proyectos utilizando un sistema de control de...