Tutoriales para crear plugins en jQuery

Lista de manuales/tutoriales que nos ayudan a realizar plugins para jQuery:

jQuery Plugin Development – 10 Tutorials To Get Started

Vía / CSS Globe

Lightcloud: BD clave-valor

Lightcloud es una base de datos basada en clave-valor muy rápida, desarrollada por la gente de Plurk, que llega casi al rendimiento de Memcachedb. Está basado en Tokyo Tyrant.

  • Puede almacenar millones de keys en pocos servidores
  • Escala horizontalmente
  • Los nodos se replican vía master-master, failover automático y balanceo de carga
  • Por ahora solo está para Python, pero el puerto puede ser desarrollado fácilmente en cualquier lenguaje

Lightcloud

Vía / High Scalability

Errores comunes a la hora de optimizar

Interesantes consejos que nos ofrece Ilia Alshanetsky sobre la optimización de nuestras aplicaciones. Resumiendo el PDF de una charla que dió que ha compartido, tenemos:

  • Ten claro que va a hacer tu aplicación antes de meterte a optimizar
  • Basa tus cálculos sobre crecimiento y escalabilidad sobre datos reales, no sobre pajaras mentales de los comerciales
  • Más código no implica más lentitud, modulariza tu código para obtener mejores resultados
  • Piensa sobre el tiempo/gasto de desarrollo por ingenieros y el gasto en nuevo hardware. Esta solución no siempre es válida, ya que evitar cuellos de botella añadiendo servidores puede ser causa de mayores problemas en el futuro. Si tu código o consultas a la BD no son eficiente, es mejor optimizarlas. Para conseguir una mejora de rendimiento del 5% mejor no te molestes en optimizar el código.
  • La optimización de código puede originar fallos en otras partes de la aplicación
  • Cuidado con los includes: la compilación puede tardar más que la propia ejecución
  • Cache, preferiblemente en memoria, tanto datos recuperados de la BD como procesos que tarden en ejecutarse
  • No todo tiene que ser en tiempo real
  • Fíjate sobre todo en la base de datos, suele ser lo primero que necesita optimización
  • Usa herramientas para encontrar los cuellos de botella
  • Micro-optimizaciones no solucionarán tus problemas de rendimiento
  • Si crees que vas a crecer, la escalabilidad es más importante que la velocidad
  • No reinventes la rueda, crearte funciones que hacen lo mismo que funciones nativas de PHP es inutil

Common Optimization Mistakes

Vía / iBlog – Ilia Alshanetsky

Editor de .htaccess online

Buena herramienta que nos permite crear ficheros .htacces de forma online, muy útil para aquellos que no tienen conocimientos de Apache pero que necesitan modificar el .htaccess.
Mediante diferentes opciones y formularios, nos permite rellenar los datos necesarios para que nos vaya devolviendo el .htaccess final. Este editor nos facilita la labor a la hora de: no permitir el acceso a ficheros, autenticacion, páginas de error, páginas por defecto, redirecciones y restricción de accesos.
.htaccess Editor

|

jQuery File Upload Plugin: subir archivos con jQuery y Flash

jQuery File Upload Plugin es un plugin para jQuery que usando Flash nos permite subir archivos a nuestro servidor con opciones ampliadas respecto a la ventana de selección de archivos que ofrece el navegador, ya que, entre otras cosas, permite indicar el tipo de archivos que se permiten subir o subir varios archivos de una sola vez.
Yo estoy en contra de este tipo de controles, ya que no es lo que viene por defecto en el navegador, pero siendo realistas, muchos clientes, sobre todo cuando se desarrolla para empresas y su visión de una aplicación web es que haga lo mismo que una aplicación de escritorio, siempre piden que al subir un archivo se pueda indicar el tipo de archivo que se permite subir.
jQuery File Upload Plugin
Vía / @benjarriola

Sobreescribir funciones internas de PHP mediante namespaces

Una de las novedades que trae PHP 5.3 son los namespaces, un modo de encapsulación de elementos. Gracias a los namespaces podemos ejecutar un mismo código usando diferentes namespaces y así obteniendo diferentes resultados.

Esta opción nos permite sobreescribir funciones de PHP y usarlas en nuestro código:

namespace Foo;
function file_put_contents( $filename, $data, $flags = 0, $context = null ) {
$return = \file_put_contents( $filename, $data, $flags, $context );
chmod($filename, 0444);
return $return;
}

What’s new in PHP V5.3, Part 3: Namespaces

openark kit: utilidades DBA para MySQL

openark kit es una serie de scripts en Python que nos facilitará las tareas de DBA (sobre todo para aquellos que no es nuestro fuerte). Consta de las siguientes aplicaciones:

openark kit