jueves, 28 de noviembre de 2013

Vim for Dev: NERDTree


Hoy me gustaría mostrarles unos de los plugins más utilizado en Vim que nos va a permitir navegar por el árbol de directorios de forma más simple y rápida, llamado NerdTree.

NERDTree


Es sin duda un plugins esencial para Vim, ya que nos permite navegar entre los directorios y archivos del sistema por medio de nuestro teclado para no estar saliendo de la consola y buscar aquellos archivos que necesitamos editar, por otro lado nos permite administrar nuestros bookmark en directorios y archivos.

Quizás utilizas Vim para programar proyectos en Django o Symfony2 donde la cantidad de directorios es abrumadora, NERDTree en este aspecto es mucho más intuitivo que ir recordando uno a uno el PATH absoluto de los directorios más importantes dentro del Framework.

Instalación


El código fuente de NERDTree se encuentra alojado en GitHub, para lo cuál lo único que vamos a hacer es realizar un clon del repositorio en local y copiar su contenido al directorio oculto .vim/ de nuestro directorio home:

$ git clone https://github.com/scrooloose/nerdtree.git
$ cd nerdtree/
$ cp -R * ~/.vim/

Con esto es suficiente para instalar NerdTree, solo queda iniciar Vim de forma normal, ya sea editando un archivo y ejecutar el comando :NERDTree

Invito a todos a probar NERDTree en su labor diaria y dejarme sus comentarios.

Saludos!

Enlace | NERDTree

domingo, 24 de noviembre de 2013

POO y MVC en PHP

PHP, excelente lenguaje de programación para comenzar en el mundo de la Web, yo recuerdo claramente mis primeros script hace 8 años atrás, y es que PHP nos dejaba eso, jugar de forma simple y rápida.

Hoy les quiero dejar el enlace de un excelente libro escrito por una amiga de la casa, Eugenia Bahit llamado "POO y MVC en PHP"

El Paradigma de la Programación Orientada a Objetos en PHP con el patrón arquitectónico MVC.

A lo largo del libro, aprenderás a construir una aplicación orientada a objetos en PHP, utilizando el patrón arquitectónico MVC, desde cero, sin necesidad de utilizar ningún framework, incluso aunque tus conocimientos de programación sean básicos. Aprenderás a hacerlo tú mismo, logrando una abstracción completa y absoluta, tanto del modelo, la vista y el controlador, como de la independencia de lenguajes de programación y diseño.

jueves, 21 de noviembre de 2013

Introducción a Jinja2


Hoy les quería comentar sobre Jinja2, una librería que en los últimos días estaba utilizando para renderizar mis script en Python a una salida HTML de una forma muy simple y rápida de aprender, osea "Python style".

En palabras simple, Jinja2 es un motor de plantillas con todas las funciones de Python. Tiene soporte completo de Unicode, un entorno de ejecución, seguridad incorporada, utilizada por grandes proyectos y se encuentra bajo los términos de la licencia BSD.

Es simple entender en un fragmento de código como este, la forma en que podemos utilizar Jinja2

{% extends "layout.html" %}
{% block body %}
  <ul>
  {% for user in users %}
    <li>
        <a href="{{ user.url }}">{{ user.username }}</a>
    </li>
  {% endfor %}
  </ul>
{% endblock %}

Lo primero que encontramos en su documentación es que Jinaj2 está inspirado en el sistema de plantillas de Django y si pueden observar un poco más en detalle, van a notar que Jinja2 es muy similar a Twig que es el motor de plantillas en Symfony2.

Como característica adicional, posee un sistema automático para escapar en los posibles ataques XSS (Cross-Site Scripting), herencia y extensión de plantillas, alto rendimiento en tiempo de ejecución.

martes, 19 de noviembre de 2013

Por qué les recomiendo aprender #Python


Una vez un gran amigo me dijo "escribir un script en Python es tan estético y bello como leer un poema". Y valla que tenía razón.

Python es un lenguaje multiplataforma y multipropósito, la primera es que se ejecuta en cualquier plataforma y cuando digo cualquier es sorprendente ver lo portable que es y la segunda es que podemos enfocar su propósito a escribir script para administrar servidores, para realizar una aplicación de escritorio o simplemente hacer un proyecto web gracias a Django. Todo eso en un solo lenguaje.

El éxito de Python sin duda es su capacidad de implementar cosas de forma rápida, aprender el lenguaje es muy divertido, tiene un poder en la identación que lo hace único y encontramos un importante numero de librerías para hacer sencillamente lo que se nos ocurra.

A los que les gusta utilizar GNU/Linux, muchas de sus herramientas se encuentran programadas en Python, por ese motivo, se encuentra instalada en todas las distribuciones. En lo personal, desde que aprendí a utilizar Python no encontré algo similar tan potente, simple, escalable y rápido de implementar y aprender.

Me gusta mucho por que se implementa Programación Orientada a Objetos, instalarlo es sumamente simple, en mi labor diaria lo utilizo para crear junto con Bash, AWK y Sed algunos script de administración de servidores y seguridad, en algún momento programé aplicaciones de escritorios con librerías gráficas como QT, GTK y WxWindows.

Por eso, si estas por aprender algún lenguaje y no te decides por cuál, tienes algunos conocimientos básicos pero muy básicos de programación y realmente estas con ganas de divertirte? Comenzá con Python ahora!

Saludos!

jueves, 14 de noviembre de 2013

Algunas características de Django 1.6


Este último 6 de Noviembre se anunció el lanzamiento oficial de la nueva versión del framework web de Python, Django 1.6

Los objetivos de esta versión se destaca el incremento de la seguridad en los proyectos incorporados por defecto, la simplificación en algunas tareas, la revisión del manejo de las transacciones y el soporte para la persistencia de las conexiones con la base de datos.

Camilo Nova realizó una presentación indicando algunas de estas características en una charla llamada "Que hay de nuevo en Django 1.6"

Saludos!

Enlace | Django 1.6
Descarga | Django 1.6

martes, 12 de noviembre de 2013

Como configurar un proyecto de Symfony2 y Git

En esta pequeña guía vamos a explicar como configurar de una forma simple, un proyecto de Symfony2 junto a al sistema de control de versiones Git.

Teniendo como escenario un servidor de desarrollo LAMP (Linux, Apache, MySQL, PHP), lo primero que vamos a hacer es descargar del sitio oficial de Symfony2 la última versión estable sin los vendors o librerías.


Ahora tenemos que descomprimir el paquete recién descargado y mover todos los archivos a nuestro directorio raíz de nuestro VirtualHost para mi ejemplo se encuentra en /var/www/proyecto, la misma nos va a quedar de la siguiente manera:


Con un editor de texto, vamos a crear un archivo llamado .gitignore, éste es un archivo oculto que Git es capás de interpretar y aprender ciertas directivas, como por ejemplo “ignorar en el control de versiones todo aquello que se encuentre en este archivo”. Su contenido es el siguiente:

/web/bundles/
/app/bootstrap*
/app/cache/*
/app/logs/*
/vendor/
/app/config/parameters.yml

Ahora si, iniciamos nuestro proyecto en Git con el siguiente comando:

$ git init
Initialized empty Git repository in /var/www/proyecto/.git/


lunes, 11 de noviembre de 2013

Tarjeta de referencia básica de Vim

Toda aquella persona que utilizó Vim en alguna oportunidad, sabe lo importante que es tener este tipo de tarjeta al alcance de la mano.


Enlace | Creada por Eugenia Bahit

viernes, 8 de noviembre de 2013

La guía sencilla de Git

Siempre escuche decir que lo bueno y breve es doblemente bueno, y de eso se trata el enlace que les quería recomendar ahora.

Una guía sencilla para comenzar con Git, sin complicaciones ;)


Saludos!

Enlace | Git - la guía sencilla

jueves, 7 de noviembre de 2013

Presentaciones en deSymfony 2013


El 21 y 22 de Junio de este año, se realizó en Madrid (España) una nueva edición de deSymfony 2013, un evento cuyo objetivo es promover y difundir temas relacionado con el Framework de programación de PHP5 Symfony2.

Una vez más, como en el año pasado, contaron con la presencia de Fabien Potencier, creador y Project Leader de Symfony2 junto a otros conferencistas de primer nivel.

Ya se encuentran publicadas todas las presentaciones para aprender un poco más sobre este maravilloso framework de programación.

Vídeos deSymfony 2013


Viernes 21 de junio




Sábado 22 de junio




Saludos!

martes, 5 de noviembre de 2013

Google Charts

Hoy les quería comentar sobre una herramienta que desde hace tiempo está entre nosotros y que sin duda es la forma más simple, rápida y prolija de presentar datos, estadísticas por medio de recursos gráficos.

Hace un tiempo estaba parseando varios datos y sentía la necesidad de expresarlos en Gráficos de Sectores, Líneas de Tiempo o simplemente en Gráficos de Barras, como esta programación estaba basada en HTML5 y CSS3 como sus componentes principales de las Templates, era lógico que los gráficos que estaba por crear lo haría con alguna librería JavaScript.

Librerías para hacer estos gráficos, realmente hay muchísimo, la verdad que tengo que reconocer que todas son muy flexibles y escalables, que no requieren de mucho conocimiento para poner en funcionamiento y comenzar a crear los primeros gráficos y por es justa razón comencé mis primeros pasos con algunos plugins en jQuery y las cosas salían bastante bien.


Pero en solo un instante encontré Google Charts y desde ese momento todo lo que ya era simple se convirtió en algo mucho más simple. Y es que este proyecto impulsado por el Google I/O 2011 era lo que todo programador sin duda estaba buscando para la web.


Sus gráficos disponibles son Gráficos de Sectores, Graficos de Dispersión, Tablas, Gráficos Geográficos, Treemap, Gráfico de Líneas, Gráfico de Barras, Gráfico de áreas, Timeline, Gráficos de burbujas y algunos gráficos más.

Si tomamos como ejemplo el Gráfico de Sectores, podríamos obtener algo similar a esto:


Simplemente escribiendo estas 29 líneas de código.


Además podemos complementarla con algunas opciones, como el uso de un pequeño 3D, rotación del gráfico, la explosión de sus segmentos, el color de sus áreas y algunas cosas más. Y eso que todas estas cosas es solo para el gráfico de Sectores.

Es por ello que cada uno de los gráficos a utilizar tiene sus propias opciones para customizar su apariencia de forma muy simple y bastante bien documentada.

Por eso es que si hoy, nuevamente necesito representar información en diferentes gráficos para tener una perspectiva mucho más amplias de las cosas que estoy trabajando, Google Charts sin duda va a estar en la primera opción de todas las alternativas ya existentes.

Saludos!

Enlace | Google Charts

lunes, 4 de noviembre de 2013

La premisa es compartir


Por qué regresé con este proyecto? La realidad es que nunca me fui de la web, luego de sufrir algunos problemas con un proveedor de hosting, suspensión de cuentas hace un par de años, decidí no quedarme sin nada y comenzar un nuevo proyecto llamado Cacería de Spammers, un blog sobre seguridad y hacking que por supuesto voy a seguir trabajando duro en ello sumado a la continuación de este proyecto.

Luego de un par de años de inactividad en El CoDiGo K sin dudas un proyecto que llegó a tener muchos seguidores y que a lo largo de los años me ha dado tantas satisfacciones, amigos y reconocimiento, les cuento que voy a volver a escribir sobre programación y software libre, dos de mis pasiones en las que siempre estoy investigando.

En Julio del 2007 daba inicio a El CoDiGo K desde la plataforma de Blogger y hoy decidí darle una continuidad en esta misma plataforma, simplemente por una cuestión de comodidad a la hora de administrar los otros blogs, por lo cuál voy a estar utilizando el subdominio de blogger por un tiempo más.

A los que se preguntan ¿Qué es lo que van a leer en el blog?, la idea es aprender y difundir algunos proyectos libres, comentar muchas cosas sobre programación, publicar y comentar algunas cuestiones que tiene que ver con el tema pero desde una perspectiva más profesional gracias a la experiencia adquirida en los últimos años.

Voy a estar preparando algunos temas interesantes para iniciar una vez más este blog y darle continuidad a las publicaciones, solo te pido que me ayudes a difundir los contenidos, un simple +1, Like o tweet es suficiente para juntar nuevamente a toda la comunidad de entusiastas.

Un saludo grande y bienvenidos una vez más a El CoDiGo K!

sábado, 2 de noviembre de 2013

Volvemos?

Entre las idas y vueltas de la vida, terminar la carrera de grado, dedicarse al trabajo y a la familia, me estoy preguntando nuevamente si vuelvo a escribir sobre temas relacionados a la programación.

Para comprender más de seguridad informática les recomiendo darse una vuelta por Caceria de Spammers mi actual proyecto con una gran comunidad.

Si hay alguien por estos lugares, hágamelo saber, así vamos juntando a la comunidad!

Saludos!

Entradas populares