Archivos para la Categoría 'Programación'

29
Sep
08

Git: scripts no tan inutiles parte 1

He hecho varios pequeños scripts para el usuario de git perezoso, por ejemplo git-solve (abre los archivos con conflictos luego de un merge en tu $EDITOR favorito):

#!/bin/sh

$EDITOR `git status|grep unmerged|cut -d ‘:’ -f2`

29
Jul
08

Emacs + PHP-mode + nXhtml = Super PHP IDE && quick emacs

Para quienes quieran usar emacs para editar archivos PHP, pueden utilizar la excelente herramienta nXhtml, la cual incluye, autocompletado de tags, soporte de multiples modos mediante MuMaMo (me encanta el nombre :P , significa Multiple Major Modes), resaltado de sintaxis de CSS embebido y validación automática de archivos XML e incluso mixtos (PHP + xml).

Para utilizarlo con cake tal vez quieran añadir a su ~/.emacs :

(add-to-list ‘auto-mode-alist ‘(“\\.ctp\\’” . nxhtml-mumamo ))

y remapear su tecla de autocompletado:

(define-key nxhtml-mumamo-map  (kbd “s-t”) ‘nxml-complete)

yo utilizo la tecla super (o tecla windows) y la t.

Despues de instalar nxhtml puede que quieran que su emacs arranque un poco más rápido al utilizarlo desde la consola, yo para estos casos utilizo un .emacs alternativo y cargo emacs con:

emacs -nw -q –load ~/.emacs-console.el

Espero que les sirva, a mi me resulta super útil.

10
Jun
08

Animaciones fáciles en C con Clutter

Ultimamente me he estado divirtiendo haciendo pequeños programas con Clutter, Clutter es una librería que permite la creación de animaciones y efectos bidimensionales, utilizando Pango, GDK y Cairo es capaz de generar graficos vectorials, texto y procesar imagenes.

De momento es posible utilizar la librería tanto en C (con GObject) como en Python, algunos de los proyectos de GNOME, como Cheese y Gnometris (ahora GNOMEFallingBlocks) estan incorporando esta tecnología.

He aquí screencast de un pequeño programita que hice con clutter, con aproximadamente 40~ lineas de código C (o al menos corto para ser un programa en C).

Esta librería puede resultar de gran utilidad a desarrolladores de juegos o desarrolladores de aplicaciones de escritorio que quieran enriquecer su aplicacion con efectos 2D.

23
May
08

Rails Migrations vs CakePHP Schemas

Yummy Cake!Some days ago Dardo showed me a post on CakePHP Google Group it was an interesting discussion that instead on ending on a useless flamewar I think it reached a really nice end, with both parts agreeing about pros and cons about both methods. Since he is too lazy to create a blog I’ll post the link here.

Basically the thread discussion is if CakePHP does really need migrations, or the Schema workflow proposed by Gwoo, which Dardo and I actually use, is good enough to work with. But while reading it, you can learn a lot of how Schema actually works (you can use it to impress girls on parties, they will go crazy!).

This is my first post in english, yeah I know, my english sucks.

Photography by chotda under a Creative Commons Attribution Non-commercial Non-derivative

14
May
08

Peor captcha de la historia

Esto si que es un WTF.

22
Abr
08

Gedit Trick

Trabajando mucho con PHP + XHTML 1.0 Strict, me da mucha fiaca tener que esperar al sitio de la W3C para validar las páginas web generadas mediante php, y me puse a pensar como podía tener el validador en mi editor de textos. Entonces aprovechando la excelente funcionalidad de gEdit para hacer uso de herramientas externas en unos minutos hice el siguiente script:

#!/bin/sh
cd /tmp;
CUT_NAME=`echo $GEDIT_CURRENT_DOCUMENT_NAME | cut -d ‘.’ -f1 `;
wget -q http://webdev/project/pagina.php?p=$CUT_NAME;
tidy -eq -asxhtml render.php?p=$CUT_NAME;
onsgmls -E0 -s /usr/share/sgml/xml.dcl render.php?p=$CUT_NAME;
rm /tmp/render.php?p=$CUT_NAME;

Simplemente hay que activar la plugin de herramientas externas de gEdit, y crear una nueva, copiar el script en el comando a ejecutar, y asignarle una combinación de teclas( en mi caso Ctrl+Shift+V). Es extremadamente útil, al menos para mí :D . Obviamente hay que cambiar la URL según donde tengamos el servidor web y el sitio, pero por ahora no resulta un problema.

Requiere obviamente, tidy y onsgml.

Creo que voy a ver de hacer otros para agregar archivos a git, y hacer commits. La verdad es que gEdit, esta muy bueno.

Espero que les sirva tanto como a mi.

12
Mar
08

CakePHP en magnolia

La gente de la lista cakephp-es ha creado un grupo en ma.gnolia, donde se pueden enviar enlaces con temas interesantes sobre desarrollo web y CakePHP en general.

No olviden visitarlo.

07
Mar
08

GNU sobre rieles

Simplemente quiero compartir esta herramienta que vi en el blog de Gastón, y ahora que empezé a trabajar con Rails me está resultando extremadamente útil.

Cabe destacar que es el modo de emacs más fácil de instalar que he visto hasta ahora, así que para quienes estén buscando un IDE para Rails, consideren Emacs aún si nunca lo han usado :) .

01
Mar
08

Herramientas imprescindibles

Hay varias aplicaciones de escritorio que me hacen la vida más fácil a la hora da road, and water dropse trabajar, así que creo que debo compartir:

  • Git: el mejor software de control de versiones.
  • FileZilla: para manejar uploads via FTP.
  • Firebug (Extensión de Firefox): creo que realmente aumenta mucho la productividad a la hora de desarrollar con HTML y JavaScript.
  • WebDeveloperToolbar: Varias herramientas simples pero útiles.
  • gEdit: la última versión de gEdit es sorprendentemente buena (lamentablemente emacs y PHP no se llevan muy bien, al menos no sin mucho tweaking).
  • Tomboy: Esta herramienta hecha en Mono no tiene que ver directamente con programación, pero es muy útil tener una herramienta para tomar notas rápidas, además posee un excelente buscador por lo que ni siquiera tengo que organizarlas :-) .
29
Feb
08

Gtk+: siempre se aprende algo nuevo :)

Gtk logo

Hasta ahora, más que nada por pura prudencia y respeto, no me había puesto nunca a programar en Gtk+ en su lenguaje nativo. El día de hoy me enganche con el tutorial (aunque esta medio desactualizado, a ponerse las pilas muchachos), y ya que estaba empecé a ver uno de los bugs/feature requests reportados para GNOME Love (son los más facilones). La verdad que si bien todavía tengo algunos problemas el manejo de objetos en C no es tan complicado como parecía (sobre todo porque los nombres de funciones son muy fáciles de recordar).

Si quieren ver un poco como funciona el hello world en Gtk+(igual esta mucho más completo en la pagina del tutorial):

Continuar leyendo ‘Gtk+: siempre se aprende algo nuevo :)’