CSML

CSML es una pequeña clase (requiere PHP5) que permite generar tags de HTML, usando selectores de CSS sin salir de sus bloques de código, sin necesidad de hacer complicadas concatenaciones ni aprender sintaxis complicadas.

download-button

Hay una cosa que odio: mezclar bloques de PHP con bloques de HTML. Será que CakePHP me ha mal acostumbrado a tener separadas las vistas de la lógica, pero de verdad me molesta código que se ve así (tomado del tema default de WordPress):

No se a ustedes, pero a mí tanto <? ?> me marea y luego se me hace muy dificil entender donde empieza y donde termina un bloque. Desgraciadamente éste tipo de programación es muy común en el mundo de WordPress, algunos pupulares temas y plugins son verdaderos spaghettis indescifrables, y esto es en cierta manera porque asi es la manera en que WP está escrito.

CakePHP, por otra parte, tiene una solución interesante para este problema (en realidad, creo que es una solución para un problema distinto, pero denme chance) en la forma del HTMLHelper, pero para tags complicados y con muchos atributos, el código se vuelve demasiado y a mi siempre me cuesta recordar el orden de los parametros.

Cuando decidí aventarme a crear temas premium para WP, una solución para éste problema fue una de las principales razones para escribir el Duperrific Theme Engine de donde finalmente extraigo lo que ahora les presento como CSML.

Ejemplo:

Como verás csml::tag() toma un selector como parametro y regresa un tag de HTML, mientras que csml::entag() toma una cadena y la envuelve con el selector designado en el segundo parametro. En el caso de csml::entag() el segundo parametro tambien puede ser un array de selectores, lo que hará que anide los selectores uno dentro de otro, empezando por el último selector del array.

Aunque la forma más facil de utilizar csml, es usando las dos funciones incluídas: t() y en() que son wrappers para csml::tag() y csml::entag() respectivamente y además imprimen el tag.

Un ejemplo más de la vida real:

Apenas estoy empezando en esto de liberar cosas que he hecho, así que espero que les resulte tan útil como a mí me ha resultado. Si la usan me avisan y si encuentran algún bug me dicen o, mejor aún, forkean el proyecto y lo arreglan.

download-button

Mi diseño de CakePHP en un libro

Mi sitio de CakePHP en Web Designers Idea Book

Design Meltdown es una interesante galería de diseño de sitios que tiene la peculiaridad de ordenar los sitios en entregas temáticas. Ahora además han sacado uno de esos clásicos libros de inspiración para diseñadores titulado The Web Designer’s Idea Book donde tambien vienen diferentes sitios organizados por categorías o colores.

Además me complace compartirles que bajo la categoría de retro viene incluído el primer diseño que hice para el sitio de CakePHP. Hace ya más de un año que me pidieron mi autorización para poner el diseño en el libro y me parece que apenas acaba de salir a la venta. Dato curioso: me pidieron la autorización un día después de que enviara el rediseño a la fundación.

Si quieren comprarlo pueden hacer lo desde este enlace: The Web Designer’s Idea Book: The Ultimate Guide To Themes, Trends & Styles In Website Design que tiene un codigo de referencia y asi podrían patrocinarme una torta de jamón.

Reblog this post [with Zemanta]

Freshout abre oficina en Guadalajara y solicita desarrolladores

Se los pongo tal cual me lo pasaron:

Freshout es una agencia de desarrollo web con sede en Filadelfia, EUA que cuenta con un estilo interactivo y audaz; nuestro éxito se debe a las soluciones innovadoras que producimos para la Web. Mientras nuestro equipo internacional sigue creciendo, acabamos de abrir una oficina de producción colaborativa en Guadalajara conjuntamente con CoInteractivo, una agencia de diseño reconocida dentro de la zona metropolitana.

La nueva oficina, ubicada en la Colonia Americana, proporcionará un ambiente agradable e inspirador para los mejores desarrolladores y diseñadores de la región. Buscamos formar un equipo selecto de personas que pretenden traspasar los límites de la Red, y que esperan colaborar con otras más de esta misma esfera. Se trata de una oportunidad excelente para un individuo aplicado y apasionado, para que pueda trabajar en un espacio alternativo, con un equipo jóven, creativo y talentoso.

¿Cuáles son los requisitos para los puestos abiertos?

Desarrolladores Backend

Deben de tener una gran capacidad de manipular el código PHP y las bases de datos MySQL.

Conocimiento de CakePHP u otro framework parecido es un plus.

Desarrolladores Frontend

Deben de tener conocimientos amplios de Javascript, XHTML y AJAX, y deberán de contar con un portafolio que muestra un entendimiento de los principios de UI (interfaz de usuario) y Usabilidad.

Diseñadores

Deben de poder mostrar su sentido estético a través de su portafolio. Es muy importante que tenga un alto entendimiento del diseño dentro de los estandares web.

Para aprender más sobre las aperturas, pónte en contacto con Mike.

Si te interesa ser parte de nuestro equipo, favor de llenar el cuestionario que corresponda al puesto deseado: