Comprobar si una dirección de email existe sin enviar un mensaje

El email es uno de los datos más solicitados cuando se desarrolla una aplicación web. Para comprobar que se trata de una dirección de email válida, normalmente se envía un email de confirmación, pero se pueden dar circunstancias en las que no es posible o deseado el envío de ese email, por lo que es necesario realizar otras operaciones para comprobar su existencia.
El post que os paso a continuación nos indica cómo saber si la dirección de email existe usando comandos SMTP. Fácil y sencillo.
How to check if an email address exists without sending an email?
Vía / philsci

API de Bitacoras.com

Hoy hemos lanzado la API de Bitacoras.com, con la cual se puede acceder a los datos que ofrecemos en formato JSON, XML, PHP (seralized), RSS y Atom.
Las consultas se realizan mediante llamadas sencillas a una URL, por lo que crear una aplicación será muy fácil. Podemos obtener los datos de la portada, canales, búsquedas, geo, recomendaciones y descubrimientos de usuarios, quienes nos siguen o a quienes seguimos, comentarios, mensajería y top bitácoras y usuarios.
Esto no ha hecho más que comenzar, aún falta muchas funcionalidades que tenemos en mente y que poco a poco iremos añadiendo a la lista.
API de Bitacoras.com

Crear gráficas accesibles con jQuery y canvas

Buen plugin para jQuery que permite crear gráficas de datos accesibles mediante canvas. El script es bastante fácil de usar, se crea una tabla (sí, si, con <table>, que es para lo que se deben usar), y el script dibuja los datos en un canvas.
Ofrece la posibilidad de crear gráficas de pie, barras y líneas, para lo cual, en el class de la etiqueta canvas hay que especificar el origen y el tipo de gráfica (por ejemplo, fgCharting_src-dataTable_type-pie).
Creating accessible charts using canvas and jQuery
Vía / couch

Sincronicar scrolls entre capas con jQuery

Interesante script que permite sincronizar scrolls en diferentes divs para que al mover uno el resto también se muevan

jQuery.fn.synchronizeScroll = function() {
var elements = this;
if (elements.length <= 1) return;
elements.scroll(
function() {
var left = $(this).scrollLeft();
var top = $(this).scrollTop();
elements.each(
function() {
if ($(this).scrollLeft() != left) $(this).scrollLeft(left);
if ($(this).scrollTop() != top) $(this).scrollTop(top);
});
});
}

Synchronizing Scrollbars using JQuery

XSS cheat sheet

Interesante recopilación de ataques XSS. No es un documento válido para aquellos que no sepan nada sobre XSS, sino para quienes tengan ya algún conocimiento y quieran profundizar más sobre el tema.
Además de los ejemplos de posibles ataques, también ofrece herramientas online como codificador de caracteres en hexadecimal, decimal y Base64, y un ofuscador de IP.
XSS (Cross Site Scripting) Cheat Sheet
Vía / abcphp.com

| |

Añadir variables a CSS mediante PHP y htaccess

Curioso script que nos permite añadir variables a nuestras CSS usando para ello PHP y htaccess. No es algo que recomendaría hacer por tema de rendimiento, pero sí para proyectos en los que quienes realicen las páginas no tenga demasiado conocimiento de desarrollo web.
El proceso es sencillo, las css mediante Apache se redireccionan a un script PHP, en las CSS se crean variables del siguiente modo $color: #FFF; y luego el nombre de la variable se usa en cada estilo. El PHP parsea el fichero CSS y sustituye cada aparición de la variable por su correspondiente valor. Se cachea el resultado y se muestra.
Puede que haya modos más eficientes, como que el archivo CSS realmente no exista, y cuando sea así, se ejecute el script y se cachee, así la próxima vez que se acceda, no se pasa por el script PHP.
How to Add Variables to Your CSS Files
Vía / CSS Globe

Convertir WordPress en un CMS

Aunque como usuario me gusta WordPress (aunque cada vez un poquito menos), como desarrollador no me gusta demasiado (por no decir casi nada), pero no quita que su puesto se lo tiene bien ganado y que a veces es imposible no tener que usarlo.
Si además de las funcionalidades de WP, necesitas algo más que te puede aportar un CMS genérico, te puede venir bien este tutorial que explica en pocos pasos cómo convertir WordPress en un CMS.
Para ello el autor mueve el blog a la carpeta /blog y en la home de la página crea una página principal en la que se mostrará un portfolio y los resúmenes de sus diferentes trabajos (teniendo cada trabajo una página individual).
Los cambios incluyen la creación de archivos nuevos para el theme, que recoge los resúmenes de cada apartado del portfolio, los cuales son páginas estáticas que cuelgan de la página principal del portfolio.
Seguro que existe algun plugin que te lo permite hacer, pero la explicación es muy buena y la idea la podemos aprovechar para otras necesidades.
WordPress as CMS tutorial
Vía / dzone

Utilidades para comprobar la calidad del código PHP

5 herramientas para comprobar la calidad de código PHP:

  • PHP_CodeSniffer comprueba si falta algún elemento de código estándar en los scripts PHP, Javascript y CSS
  • phpmd busca en el código PHP posibles problemas como bugs, código no óptimo o expresiones complicadas.
  • phpcpd detector de código PHP copiado/pegado.
  • PHP_Depend herramienta de métricas PHP.
  • PHPUnit framework de unidades de test.

Quality Assurance Tools for PHP

Vía / PHPDeveloper.org

Detección de caras con Javascript y Canvas

Interesante script que usa canvas para detectar rostros en las fotografías. Se basa en openCV y en el post de John Resig para evitar un captcha.
Permite la opción de reconocer una cara o varias caras, este último lo he probado con una foto y no me ha funcionado, pero como bien dice el autor, aún tiene que mejorar más el script.
Interesante opción para servicios como Facebook o Flickr para sus opciones de asociar elementos (usuarios, comentarios, …) a las fotografías. También es útil para avisar de que no se ha subido una cara cuando alguien cambia de avatar.
Face detection in javascript + canvas
Vía / @rafabayona

Bases de datos para tener en cuenta

No solo de MySQL vive el desarrollador web, por lo que está bien conocer estas otras bases de datos:

Alternativas opensource de BigTable de Google:

Alternativas opensource de Amazon Dynamo, almacenamiento distribuido:

Otros proyectos interesantes:

QCon London 2009: Database projects to watch closely

Vía / High Scalability