Cl1p: el clipboard de internet

cl1p.pngLa verdad es que algunos pensarán que es una tontería teniendo correo, mensajería y otras cosas más, pero a mí alguna vez no me habría venido nada mal disponer de esta utilidad. Cl1p se trata de un portapapeles por internet, en el cual podemos almacenar texto, archivos de hasta 2Mb. y enlaces.
Su utilidad es sencilla, nos inventamos una url que empiece con http://cl1p.net, y ya accederemos al portapapeles, podremos copiar y pegar texto e indicar cuánto queremos que permanezca en el portapales.
Cl1p.net
Vía / dzone

Expresiones regulares en PHP

Creo que uno de los mejores inventos en la programación son las expresiones regulares, en otra ocasión ya hemos hablado de ellas, pero esta vez os mostramos un enlace bastante interesante en el que se nos explica su uso en PHP.
Aunque no se trata solamente del uso de funciones, sino también una lista de recursos, como este manual de expresiones regulares en Perl, en el cual recomiendo el apartado sobre grupos no capturables (no los solemos usar pero creo que son fundamentables), y también nos habla de la diferencia entre expresiones regulares POSIX y compatibles con Perl.
Se trata de un primer artículo y al menos deberá haber uno más, que espero sea tan bueno como este.
The Joy of Regular Expressions [1]
The Joy of Regular Expressions [2] (actualización)
The Joy of Regular Expressions [3] (actualización)

links for 2006-09-26

Snipplr: trozos de código

snipplr.pngA todos nos pasa que nos gusta reutilizar (copy/paste) aquellas trozos de código (snippet) que hemos creado en algún proyecto anterior y que no nos apetece volver a pensar cómo hacerlo. En vez de tener que buscar entre todo el código que tenemos y pasarse todo el tiempo diciendo “recuerdo haber hecho esto en tal sitio”, podemos usar Snipplr para guardar nuestros propios snippets o para usar los que comparten otros usuarios, organizados por lenguaje de programación y por tags.
Snipplr
Vía / Criterion

Resalta código en tu blog

Ya contamos en su día como formateamos el código en Sentido Web, consiguiendo que los scripts que contamos sean más fáciles de leer. Supongo que existen varios scripts que hacen la misma función, pero este que os muestro ahora me ha gustado bastante porque sirve para varios lenguajes (PHP, HTML, Java y Javascript y porque además usa los colores que se muestran en Eclipse (a los cuales estoy bastante acostumbrado).
rtsh.png
Real Time Syntax Highlighting JavaScript
Vía / dzone

Colors on the Web: ayuda para diseñadores

colorsontheweb.pngVisitando una entrada de Vecindad Gráfica, he encontrado una página que nos puede ser muy útil a los que diseñamos sin llegar a ser grandes diseñadores. Se trata de Colors on the Web, una página centrada en los colores y el diseño web. En ella encontraremos información sobre los colores (colores primarios, saturación, …), el significado de los colores (por ahora solo el rojo), el uso de colores en la web, combinación de colores (rueda de colores, colores análogos, …) y tres utilidades bastante interesantes: un selector de colores similar a las que ya existen, una rueda de color que selecciona aleatoriamente colores y nos muestra sus resultados en un diseño y una colección de esquemas organizada por categorías.
Colors on the Web
Vía / Vecindad Gráfica

Limita el tamaño de ficheros a subir mediante Apache

El otro día una amiga me escribía bastante agobiada preguntando cómo se podía saber mediante Javascript el tamaño de un fichero que se quería subir, porque si superaba cierto tamaño, no se debía permitir que se subiera (antes de que se intente mandar). Mi respuesta fue un “no se puede hacer desde el cliente” (espero no haberme equivocado).

El problema que tenía es que le obligaban a que fuera en el navegador, supongo que o el cliente (cabezón) o el analista/jefe (más cabezón aún). La solución, que creo que no aceptaban era controlarlo mediante Apache: se añade en el fichero .htaccess la siguiente directiva y ya no hay problemas:

LimitRequestBody tamaño

Siendo tamaño el número de bytes que ponemos como límite para subir ficheros.

A parte de este ejemplo, mi pobre amiga siempre anda enmarronada con peticiones increibles. Por ello, dos consejos:

  • No dejéis que el cliente imponga lo que le venga en gana, hay cosas que no se pueden/deben hacer y por mucho que se empeñe, seguirán sin poderse/deberse hacer. Entre ellas, siempre se comprueban las cosas en el servidor, nunca únicamente en el cliente, sobre todo por temas de seguridad.
  • El elemento input file es tal cual es, no se le puede cambiar el texto del botón, ni aplicarle filtro, ni que te vaya a la carpeta que quieran, ni cambiar el diseño de la ventana, ni modificar mediante Javascript el fichero que se quiere seleccionar. Aunque parezca mentira siempre acaban pidiéndonos alguna de estas cosas.

Pido disculpas si esta entrada no es la típica, pero es que las tonterías del cliente acaban sacándote de quicio.