Borrar archivos ._* en OSX

Varios

En OSX, los archivos que comienzan con ._, llamados AppleDouble, son archivos que contienen metadatos y otros atributos extendidos del finder.

Cuando estamos copiando archivos en un disco externo que usaremos en otro dispositivo pueden molestar un poco así que lo mejor es borrarlos pues no afectarán para nada al contenido.

find . -name '._*' -print0 | xargs -0 rm

Sencillo.

Para borrar el archivo DS_Store también de todos los directorios es idéntico

find . -name '.DS_Store' -print0 | xargs -0 rm

Creando un ToDo con Laravel 4 – Rutas

Laravel4

En esta entrada veremos como añadir las rutas necesarias para que nuestra aplicación funcione. Podemos ver más información en la documentación oficial sobre el enrutado.

En el fichero app/routes.php podemos ver la ruta que Laravel tiene creada por defecto para la raíz de nuestro dominio

tampoco voy a explicar nada nuevo que no podamos ver en la documentación así que expondré las dos formas que podremos usar en nuestro ToDo.

Una opción podría ser crear una ruta para cada petición que queramos hacer. Una para listar, una para mostrar, una para editar, crear, borrar…. tampoco es muy complicado pero puede resultar algo tedioso.

Otra forma es usar controladores de recursos que es la forma automática de crear una api RESTful sobre un recurso.

Si añadimos la siguiente línea en routes.php Leer más »

Creando un ToDo con Laravel 4 – Añadiendo datos de prueba

Laravel4

Antes de ponernos a crear y editar nuevas tareas veremos como podemos rellenar nuestra base de datos con datos de prueba. En Symfony2 se le llamaba Fixtures y aqui Seeds.

Primero añadiremos dos categorías.

Crearemos un fichero llamado CategoriasSeeder en la carpeta app/database/seeds con el siguiente contenido:

y tres tareas, 2 para la primera categoría y 1 para la segunda en el fichero TareasSeeder.php en la misma carpeta que el anterior Leer más »

Creando un ToDo con Laravel 4 – Creando las tablas con migraciones

Laravel4

Ya vimos en el capítulo anterior como dejar preparado Laravel 4 para trabajar con el. Así que empezaremos a configurar nuestra base de datos. Por ahora haremos algo sencillo. Dos tablas, tareas y categorías. Pues he decidido que nuestro ToDo esté organizado en categorías y que cada una de ella pueda tener tareas, así lo complicamos un poco más que tener solo tareas.

Migraciones

Podríamos crear las tablas directamente en la base de datos pero Laravel nos proporciona una herramienta llamada migraciones que nos permite tener ordenado, paso por paso, lo que vamos modificando de la base de datos de tal forma que ,en caso de necesidad, podamos descender por las migraciones para dejar la base como la teníamos varios cambios atrás.

Empezaremos por la tabla categorías ya que la otra estará relacionada con esta.

Leer más »

Creando un ToDo con Laravel 4 – Instalación y configuración

Laravel4

Antes de nada quiero reconocer que me siento mal usando Laravel4. Es como si traicionase a Symfony, pero reconozco que el no poder usarlo en un servidor compartido me fastidia un poco. Así que como parece ser que Laravel es más sencillo (sinceramente me parece que me faltan cosas por hacer, después de desarrollar varias páginas en Symfony2 tanta facilidad para hacer las cosas me tiene un poco mosca, pero bueno, voy a probarlo a ver que tal)

A la vez que voy leyendo libros y mirando cosas (me he comprado el Code Bright aunque sinceramente… no lo recomiendo, estoy dudando si ejecutar mi garantía de satisfacción y nunca lo he hecho, pero 25€ que cuesta… y que te tratan como niños … cosas en plan esto no se puede hacer… y al cabo de un rato… es broma que te he mentido, que mentiroso soy… y tonterías así. O que cada vez que quiere cambiar una línea de código vuelve a reescribir todo el fichero … de 450 páginas creo que lo realmente util se queda en menos de 200. Considero que la calidad/precio con otros libros deja mucho que desear) bueno a lo que iba…

A la vez que voy mirando cosas voy a realizar una pequeña página ToDo que parece que es lo que se suele hacer hacer en estos casos, bueno o ToDos o blogs pero como con Symfony2 ya puse un tutorial de un blog ahora toca de un ToDo.

Leer más »

Cambiar versión de PHP en MAMP

Mac, Programación

Ya escribí un artículo sobre esto pero considero que es una manera un poco chapucera de hacerlo. Buscando por la red creo que hay formas mas ortodoxas como por ejemplo

Primero buscamos donde está nuestra versión

which php

En mi caso

/usr/bin/php

Renombramos

sudo mv /usr/bin/php /usr/bin/php.back

creamos el symlink con la versión de php que quereamos por ejemplo 5.4.26

sudo ln -s /Applications/MAMP/bin/php/php5.4.26/bin/php /usr/bin/php

y finalmente comprobamos que tenemos la nueva versión

php -v

 

Y listo

Configurar Photoshop para Pixel Art

Photoshop

La verdad que el diseño no es mi fuerte…. bueno… directamente no es nada. Soy torpe en vez de manos tengo muñones pero bueno al final siempre hace falta hacer alguna cosilla así que para los juegos he decidido hacerlos en pixel art ya que  la ineptitud se me disimulará un poco digo yo.

Lo primero será configurar Photoshop para ello.

 

Primero vamos a crear un nuevo documento con la medida que queramos pero con resolución de 72.

Nuevo

 

Después vamos a Preferencias->Generales y en Interpolación de imagen seleccionamos Por aproximación(conserva bordes definidos)

 

Interpolacion de la imagen

Leer más »

Creando un entorno de trabajo para Javascript con Grunt

JavaScript

Navegando por la red encontré referencia a Grunt y he de reconocer que me llamo la atención aunque desconocía lo que era y para que servía. Así que me dispuse a investigar un poco y decidí empezar a usarlo pues tiene cosas muy interesantes.

Grunt es una aplicación de NodeJS que permite automatizar tareas para Javascript. Por ejemplo, de una manera muy sencilla podemos concatenar todos nuestros ficheros js en uno solo y a la vez minificarlos para ahorrar tamaño de descarga.

En mi caso me he creado un pequeño entorno que lo que hace abrirme una conexión de servidor web (a sí no tengo que tener activado MAMP) y a la vez que escucha cualquier cambio que realizo en mis ficheros js, cuando esto se produce me concatena todos los ficheros en uno solo a la vez que me recarga la conexión para tener la información actualizada de mis javascript. Suena bien no?

Leer más »

Actualizando MAMP

Mac

Para evitar perder nuestras configuraciones y bases de datos lo que primero haremos será sobreescribir la carpeta MAMP de Aplicaciones.

Ahora  ya podemos bajarnos la nueva versión e instalarla.

Ya solo nos queda copiar los datos que teníamos antes.

 

Sobreescribimos la carpeta htdocs si tuviéramos aquí nuestras webs, en mi caso como los tengo en otros directorios copiare la información de los virtual hosts en /conf/apache/extra/httpd-vhosts.conf

También sobreescribimos la carpeta db para disponer de nuestras bases de datos antiguas.

 

Arrancamos el servidor y ya tenemos nuestras webs otra vez listas.

 

Si por un casual no funciona hay que tener en cuenta que hay que dejar los puertos de Apache y MySQL (Preferencias / Puertos) como los teníais antes.

Creando juegos HTML5 con Phaser

Phaser

Como ya dije para mi CV online usé el framework de Phaser para juegos en Javascript. Por qué? y porque no.

La verdad que hay muchos tipos de frameworks diferentes y estuve ojeando unos cuantos pero en el fondo pasa como con todo, elijas lo que elijas con el tiempo te das cuenta que igual hubiera sido mejor elegir otro, así que tras mirar muy por encima unos cuantos me decanté por Phaser pues me pareció que tenía muy buena proyección, que tenía muchos ejemplos, tenía un foro, tenía documentación y era gratis :)

En la web de HTML5 Game Engines podemos ver un listado de frameworks con información variada sobre cada uno de ellos, si es gratuito o no, el tipo de licencia, la última actualización…

Una cosa a tener en cuenta es que cargaremos ficheros y por temas de seguridad para poder probar el juego en forma local deberemos tener un servidor web montado de forma local. No es complicado y ya lo he escrito en otro post. Así que vamos a escribir nuestro primer código.

Leer más »