Dentro de unos días hará un lustro justo que tengo un blog en la coctelera. No se puede decir que haya sido un tio muy constante escribiendo, pero en definitiva tampoco me he sentido nunca obligado a hacerlo.
Recuerdo cuándo lo abrí: estaba trabajando en masmadera, y fue Ana Álvarez la que me habló de La Coctelera. Meses más tarde estaba trabajando en The Cocktail y viviendo una de las épocas más felices de mi vida.
Este pequeño espacio ha significado muchísimo para mi. Tanto que creo que merece el mismo tratamiento que ha sufrido casi todo lo que me importa en los últimos meses: punto y aparte.
Me gusta que sea en una fecha bonita, redonda, cuando mamuso.net pase a ser old.mamuso.net a falta de que se me ocurra un subdominio mejor.
Volver a empezar es refrescante. Tanto, tanto que no se por qué no lo he hecho antes.

Esta semana pude echarle un vistazo al video de Chris Williams hablando sobre la comunidad js y sobre promotejs.com. Utopías aparte, podría firmar prácticamente cada una de las líneas del discurso. Sospecho de todas maneras que cuando Chris Williams dice "We have made it almost impossible to learn proper JS, a language with both beauty and warts." está viendo la realidad desde un punto de vista muy distinto al de mi entorno cercano.
La realidad que me viene a la cabeza se parece mucho más a este tweet de @richmanblues:
"Tenían que catalogar como especie dentro del ecosistema web a los maquetadores cuya idea de mejorar es conocer más plugins en vez de pensar"
No es tanto el que sea imposible (difícil) aprender, es que a este tipo de maquetadores, muchos o pocos, les funciona bien tener un conocimiento superficial y aplicarlo.
Vivimos una época de consultoría agresiva y agencias creativas todavía más agresivas donde es muy rentable coger algo que hace casi lo que necesitas y que por lo general lo ha probado alguien más que tú. Los problemas de rendimiento o el exceso de peso en las webs parecen problemas taaaan de los 90 que raramente se piensa en ellos. Es la evolución del copypaste, y os aseguro que todo está mucho mejor documentado que cuando lo que molaba era el DHTML.
Estoy de acuerdo con la gente de promotejs: la buena documentación sobre Javascript existe, y está enterrada en toneladas de basura. Pero al copypaster le va a dar igual que le rompas los dientes con ella. El objetivo no es aprender un lenguaje, es conseguir un carrusel, o unos tooltips bonitos, implementar y seguir. Y de proyectos como node o ringo hablamos otro día.
Hace (muchos) meses, antes de tener mejores cosas en las que pensar, me permití uno de los lujos más bonitos y tal vez más caros de esta vida: volver a empezar. Y nunca me faltó apoyo.
Soy un apasionado por mi trabajo, que no significa que lo haga bien. Trato de abarcar tantas cosas que es imposible no ser mediocre, y con eso vivo todos los días, y no, no es falsa modestia.
Levatarte con la sensación de que no le estas dedicando suficiente tiempo a estudiar, que hay mucha gente interesante, muchos puntos de vista que te estás perdiendo y que cada vez estás menos orgulloso del resultado de tus horas de trabajo es más fácil para uno que para otros. Aunque es obvio lo que hay que hacer en estas situaciones, a mi estas cosas siempre me cuestan mucho.
De todas las decisiones que he tenido que tomar en estos últimos meses, sin duda la más difícil ha sido la de dejar el sitio que durante casi 4 años ha sido mi casa, con gente que era como mi familia. Jamás voy a poder reproducir en ningún otro lugar el componente emocional que ha hecho que salir haya sido tan difícil, y tan necesario. Y cualquiera que me tuviese cerca esos meses lo sufrió.
En este punto salir a medir tus conocimientos a casas ajenas y quedarte en blanco o no llegar técnicamente es un alimento rico en proteinas para tus propias frustraciones.
Ya hace unos (pocos) meses que tengo otro tipo de vida, y que he trasladado la implicación emocional a otros sitios más importantes. Tengo claro que recuperar la ilusión es un camino desagradecido que me va a exigir ser constante, y que el cambio es mucho más gradual de lo que desearía.
Pero vuelvo a tener ganas y curiosidad, por algo se empieza.
Sí, lo se... siempre me acuerdo de decir que voy a los sitios cuando ya he vuelto :)
La gente de theevnt me invitó a dar una charlita en Cáceres este fin de semana, junto con unos ponentes majísimos. Al final el tema fueron "javascript y los pequeños detalles". Fué una charla muy ligera, sin profundizar mucho repasé algunos puntos que a mi me gusta tener en cuenta cuando programo cositas en javascript, aunuque como a todos a veces se me olvidan.
En lo referente al evento, si no habéis ido este año al que viene no os lo podéis perder. El planteamiento del evento fué bastante interesante, y Cáceres es un lugar precioso.
Me he propuesto ir dejando público todo lo que vaya generando para cursos/charlitas, me encanta transmitir el poco conocimiento que tengo y post-procesarlo después para que se pueda consumir en un formato html muy sencillito. Así que lo dejo por aquí por si le interesa a alguien.
Me encanta dar cursitos. En realidad me gusta todo lo que implique hablar e intercambiar opiniones.
Hace unos meses tuve la suerte de dar un cursete para un pequeño puñado de almas pacientes. Todo empezó con un mensaje de Raul Murciano en la lista de madrid-rb y de ahí salió una propuesta de temario sobre temas variados de front dirigido a desarrolladores y preparados para degustar en una tarde de viernes y una mañana de sábado.
En resumen, me lo pasé genial, y encima ellos me trataron como un rey.
Como todo el mundo sabía algo de html (algunos sabían mucho) la idea era reforzar conceptos, jugar con ejemplos y aprender truquitos para usar todos los días.
Al terminar el curso quedamos en que les enviaría material, pero la verdad es que había preparado una presentación con tan poquito texto que enviar un pdf con notas y unos ejemplos se me quedaba muuuy cortito.
Tras darle un par de vueltas la docu del curso ha quedado tal que así, y por aquí queda por si alguien más puede sacarle partido.
Hace mucho mucho tiempo, al final de mi época universitaria, tenía la suerte de salir a correr de vez en cuando con un par de profesores del departamento donde trabajaba. Ambos tenían más de 50 años por muy poquito y mucha más práctica que yo.
Siempre hacíamos el mismo circuito, y siempre en el mismo tiempo más o menos. A mi me llevó un mes y pico pillar su ritmo y no ir con la lengua fuera a 50 metros del segundo. A partir de ahí empezamos a recortar tiempos.
Nunca me dijeron que no daban un duro por mi como corredor de fondo, aunque imagino que el primer día lo pensaron. Tampoco bajaron el ritmo de carrera por mi porque, ellos lo sabían, me harían un flaco favor. Siempre había palabras de ánimo. Y, en lo más profundo de mi flato, siempre sabía quién iba a marcar el ritmo a los dos minutos de empezar a correr.
Y todo eso no tiene nada que ver con correr, y mucho con el grupo.
Ahora toca correr solo.
Revisando los diseños de formularios que últimamente pasan por mis manos no está de más revisitar las técnicas que nos permiten "poner bonito un input file".
Las más populares son la clásic de shaun inman, y una elaborada por Michael McGrady (según PPK). Por mi parte estoy mucho más de acuerdo esta última, aunque creo que si la vamos a usar varias veces en un proyecto necesitamos que sea un poquito más flexible.
He escrito un plugin pequeñito que hace el trabajo sucio y nos permite centrarnos en estilizar el input file falso y no en todo lo demás. Depende de jquery porque la mayoría del tiempo trabajo con este framework, pero sería fácil dejarlo limpio de dependencias.
Por el momento funciona, echadle un vistazo a la demo :)
El código fuente lo podéis encontrar en su correspondiente repositorio en github..
Hace unos días andaba buscando alguna solución que cuadrase para la interfaz de la zona de clientes de la web de The Cocktail. Los requerimientos eran fáciles: teníamos una lista de proyectos tagueados con el sector al que pertenecen (ocio, servicios financieros, educación) y con las áreas que han intervenido (front, back, marketing, hci...) y teníamos que poder filtrarlos combinando ambos parámetros.
Sin rascar demasiado encontré filterable, y la verdad a simple vista parecía cuadrar así que me guardé el enlace y seguí trabajando. Cuando me tocó ponerme manos a la obra entendí que filterable sólo me iba a servir como inspiración para empezar a trabajar.
Ya con el filtro de The Cocktail hecho empecé a pensar que seguro que podía hacerlo un poquito más genérico y darle un poquito más de alma. El resultado es jquery.filterprojects, un plugincillo que facilita esta tarea y que no está especialmente atado a la sintaxis de tu html.
Puedes personalizar unas cuantas cosillas:
- filterTagSelector: Debe de ser un array con una colección de enlaces cuyo href sea el tag a filtrar (href="#enanos-de-jardin")
- animationSpeed (900): Puedes ajustar la duración de la animación que se va a ejecutar al filtrar
- animationPulse (100): Esto me encanta :) Es el tiempo que va a dejar entre el comienzo de cada animación, hace el efecto menos mecánico. Si prefieres todo al mismo tiempo pon un 0.
- animationEase ("linear"): puedes usar también "swing" o instalar cositas extra para poder aplicárselo al animate.
- activeClass ("active"): Qué clase vas a usar en los selectores de filtrado cuando esté la clase activa.
- allTag ("all"): Es el tag que queremos usar en los selectores de filtrado para decir que seleccione todos los tags del grupo
- randomize (true): Hace que al filtrar los elementos estos aparezcan y desaparezcan en ordern aleatorio. Si tenemos animationPulse a 0 no se nota nada :)
- show: ({ width: 'show', opacity: 'show' }): parámetros para mostrar los elementos, basados en los necesarios para animate.
- hide: ({ width: 'hide', opacity: 'hide' }): parámetros para ocultar los elementos, basados en los necesarios para animate.
Y la sintaxis es facilita:
$("#posts").filterprojects({
animationSpeed: 1000,
animationPulse: 80,
randomize: false,
show: { height: 'show' },
hide: { height: 'hide' },
filterTagSelector: [ '#issues a' ]
});
Pero como esto es mucho más fácil verlo que contarlo (como siempre) échale un vistazo a estas demos o descárgatelo en github. Durante los próximos días le casco unos tests, le paso la podadora y le amplio la documentación.
Me lo disfruten :)