desayunando delante del greader...

Estas filtrando por la etiqueta:

"Programación"

06/05Tutorial: Python para Todos

Python para Todos

Raúl González de Mundo Geek acaba de publicar su fantástico tutorial de python en formato PDF.

Este archivo recoge en 108 hojas los artículos publicados en su blog y que nos sirven para inciarnos en el mundo del lenguaje python que tan de moda está actualmente. Los temas tratados en el tutorial son:

  • Tipos básicos
  • Control de flujo
  • Funciones
  • Orientación a objetos
  • Programación funcional
  • Excepciones
  • Módulos y paquetes
  • Entrada / Salida
  • Expresiones regulares
  • Sockets
  • Interacción con webs
  • Threads

Desde aquí quiero agradecer el esfuerzo realizado por Raúl para llevar a cabo este trabajo tan bueno y haber publicado el PDF con licencia Creative Commons.


06/05SmoothTabs: Pestañas con mootools

SmoothTabs

SmoothTabs es un sistema de navegación mediante pestañas basado en mootools y que permite realizar transiciones entre diferentes secciones con un efecto muy profesional.

Para usarlo tan solo tenemos que incluir el archivo en la cabecera de nuestro HTML:

HTML:
  1. <script src=“Smoothtabs.js” type=“text/javascript”></script>

Definir una lista con las distintas secciones a modo de menú:

HTML:
  1. <ul class=“smoothtabs-menu”>
  2.     <li id=“inicio-current”>Inicio</li>
  3.     <li id=“portafolio”>Portafolio</li>
  4.     <li id=“contacto”>Contacto</li>
  5. </ul>

Y luego en bloques que se ocultarán automáticamente introducimos el contenido para cada sección:

HTML:
  1. <div id=“content” class=“smoothtabs”>
  2.     <div id=“inicio-data” class=“smoothtab-current”>
  3.       <p>Esta es la seccion inicial.</p>
  4.     </div>
  5.     <div id=“portafolio-data” class=“smoothtab” style=“display:none”>
  6.       <p>Esta es la seccion de portafolio.</p>     
  7.     </div>
  8.     <div id=“contacto-data” class=“smoothtab” style=“display:none”>
  9.       <p>Esta es la seccion de contacto.</p>     
  10.     </div>
  11.  </div>

Luego tan solo tendrás que aplicarle los estilos visuales más apropiados para el proyecto.

He publicado una pequeña prueba a modo de ejemplo y en la página oficial dispones de un ejemplo usando el script HistoryManager, que permite usar las teclas de página anterior y siguiente para moverte por las pestañas visitadas.

Yo ya lo estoy incluyendo en mi próximo tema para el blog [que saldrá en breve].


17/04MooFlow, Galería estilo Apple iTunes

MooFlow

MooFlow es una galería de imágenes realizada en javascript que simula el estilo del visor de carátulas de iTunes de Apple o el Finders CoverFlow™.

Inspirada en ImageFlow y usando las mootools como framework javascript, la nueva versión de esta galería viene con multitud de mejoras:

  • Agrupa todas las imágenes dentro de un bloque.
  • Se redimensiona automáticamente para ajustarse a la pantalla.
  • Opción de ver la galería a pantalla completa.
  • Desplazamiento por las imágenes con las flechas de dirección o la rueda del ratón.
  • Opción de “autoplay” para pasar las imágenes a modo de presentación.
  • Efecto “reflejo” generado por javascript.
  • Carga de imágenes mediante un archivo HTML o una consulta JSON.
  • Generación automática de la interfaz visual.
  • Estilo basado completamente en CSS.
  • Pueden ejecutarse múltiples instancias.

Permite además incluir un slimbox para visualizar las imágenes a tamaño completo haciendo doble click sobre ellas, y mostrar un tooltip con información ampliada al situar el ratón sobre la imagen.
Han preparado una página con varios ejemplos y una de documentación bastante completa.


03/04qGallery, Galería basada en Prototype

Muy al estilo .Mac Web Gallery, un sistema de galería web para imágenes y videos realmente impresionante, Sebastian Brink ha desarrollado una aplicación llamada qGallery.

Es muy simple de utilizar, solamente sube las imágenes a tamaño completo y un XML con los nombres de los archivos a un directorio. Luego añade el script y un div en una página web. La galería se monta automáticamente gracias a PHP.

Permite visualizar las imágenes como mosaico o como un carrusel, es decir, al estilo coverflow de las carátulas de Apple. Las miniaturas se visualizan con un reflejo inferior y su tamaño se puede controlar mediante una barra de desplazamiento. Al pulsar sobre una de ellas se muestra la imagen a tamaño completo al estilo Lightbox.

Es compatible con Safari 3.1, Firefox 2.x e Internet Explorer 7.

Igual me anote algunas ideas para mi fotoroom.

Vía: Ajaxian


01/04mooSwitch, Botón estilo iPhone

mooSwitch permite aplicarle a los radio inputs un estilo a lo iPhone mucho chulo. Basado en mootools.

26/02PrototypeJS Polar Clock

PrototypeJS PolarClock

Hace algún tiempo se puso de moda el protector de pantalla PolarClock de pixelbreaker. Para quien no lo conozca es un tipo de reloj que muestra las horas y días en forma de arcos que van aumentando de 0 a 360º en base a su valor.

Pues bien, como Gareth Evans se aburría un poco en casa y no tenía nada que hacer, decidió montarse un PolarClock en javascript. Y como le seguía sobrando el tiempo y es tan majo el chico, pues se preparó un estupendo tutorial donde muestra todos los pasos que siguió para programar el reloj.

Impresionante!!


11/02Mejorando mBox gracias a Mootools

Recientemente he subido la versión 1.2 de mi plugin mBox a los repositorios de Wordpress Extend.

Uno de los inconvenientes a la hora de programar plugins para Wordpress que usan archivos css o javascript es que esos archivos se tienen que incluir en la función de cabecera de Wordpress para que nos añada las llamadas en el head. En el plugin lo veríamos tal que así:
add_action('wp_head', 'nuestra_funcion');

Lo malo de esta llamada es que esos archivos se incluyen siempre, aunque en las entradas que estemos visualizando no se use nuestro plugin. Si estamos programando un plugin con una cantidad considerable de javascript, provoca un aumento de tiempo de carga de la web excesivo total para no ser utilizado.

En mi plugin he podido solucionar ese inconveniente haciendo uso del objeto Assets que nos ofrece el framework mootools.

Assets nos permite proporcionar una carga dinámica de imágenes, hojas de estilo y ficheros javascript. En mi caso, en la función de mi plugin, si se detecta la llamada a la galería, se inyectarán el archivo JS y el CSS necesarios.

Tan solo tendremos que crear un nuevo objeto Asset y llamar a su propiedad javascript, pasándole la ruta del archivo a incluir en la página y un identificador:
new Asset.javascript('/js/mbox.js', {id: 'mBox_script'});

Otro de los usos del objeto Asset de mootools, y puede que el más utilizado, es el método images. Images nos va a permitir hacer una pre-carga de un archivo de imagen y devolvernos el elemento img, pero sin inyectarlo en la página.
Este método dispone de las opciones onComplete y onProgress, permitiendo trabajar con el array de elementos img una vez cargados en el cache del navegador:
new Asset.images(['/images/001.png', '/images/002.gif'], {
onComplete: function(){ alert('se han cargado las imagenes!'); }
 });


27/01Geany, Editor para Programadores

Geany

En mi equipo personal, el editor de texto que uso para programar desde mi Ubuntu es Geany.

Geany es un pequeño entorno de desarrollo integrado. Ha sido desarrollado para proporcionar un ligero y rápido IDE, con muy pocas dependencias de los paquetes. Es independiente del escritorio, lo único que necesitas es tener las GTK2 instaladas para ejecutarlo.

Entre sus características se encuentran:

  • Resaltado de sintaxis.
  • Soporte para completar código automáticamente.
  • “Call Tips”, ventanas de ayuda que muestran los argumentos necesarios de una función.
  • Soporte para múltiples lenguajes: C, Java, PHP, HTML, Python, Perl, Pascal..
  • Generación automática de arbol de variables, funciones, etiquetas… usadas en el código.
  • Opción de compilar directamente desde el editor.
  • Terminal integrado.
  • Pequeño tiempo de carga para iniciar.

Además tiene plantillas por defecto para los archivos más comunes. Así, al hacer click en Nuevo -> Archivo de fuente C++ aparecerá un documento con:

C++:
  1. /*
  2. *      sin título.cpp
  3. *     
  4. *      Copyright 2008 Hanok <hanok@V6216EA>
  5. *     
  6. *      This program is free software; you can redistribute it and/or modify
  7. *      it under the terms of the GNU General Public License as published by
  8. *      the Free Software Foundation; either version 2 of the License, or
  9. *      (at your option) any later version.
  10. *     
  11. *      This program is distributed in the hope that it will be useful,
  12. *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. *      GNU General Public License for more details.
  15. *     
  16. *      You should have received a copy of the GNU General Public License
  17. *      along with this program; if not, write to the Free Software
  18. *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  19. *      MA 02110-1301, USA.
  20. */
  21.  
  22. #include <iostream>
  23.  
  24. int main(int argc, char** argv)
  25. {
  26.    
  27.     return 0;
  28. }

Para instalarlo en Ubuntu puedes hacer click aqui o utilizar apt-get:
sudo apt-get install geany


Sigue leyendo mis entradas: 1 2 3 ... 6

extras

buscador

borrar

lo + comentado

  • 20# - Todo en Uno v.7 Hoy he acabado de bajarme el DVD Todo en Uno v.7. En cuanto lo pruebe os comentare que tal esta [tiene buena pinta]. Copio y pego de la pagina del au...
  • 11# - Nuevo plugin para Wordpress: NoIE Partiendo de la idea de juntar a todos los desarrolladores web y realizarle un boicot al navegador de Microsoft, he desarrollado un pequeño plugin pa...
  • 10# - Kamelo Punto Semos: Jonathan Kamelo Punto Semos es el grupo formado por estos dos personajes y que se definen como "rumba-pop". Han dado el salto a la fama con su aparicion en el ...
  • 9# - mBox, mi nuevo plugin para WP Por fin me han habilitado la cuenta en Wordpress Extend y os puedo presentar mi nuevo plugin. mBox es un plugin que permite incluir presentaciones ...
  • 8# - Ya tengo un Asus EEE PC 900 ¡Por fin me ha llegado el Asus EEE PC 900 que tenia encargado! Apenas he podido trastear algo con el pero os comento las primeras impresiones [aunque...

flickr

El RavalESCAuditoriumSiesta, Typical SpanishSit Down