Acarus: APT para Pentesting

Pocas cosas dan tanto miedo como las siglas APT: "Una amenaza persistente avanzada, también conocida por sus siglas en inglés, APT (Advanced Persistent Threat), es un conjunto de procesos informáticos sigilosos y continuos, a menudo orquestados por humanos, dirigidos a penetrar la seguridad informática de una entidad específica. Una APT, generalmente, fija sus objetivos en organizaciones o naciones por motivos de negocios o políticos. Los procesos de APT requieren un alto grado de cobertura…

Contenido completo del post en http://ift.tt/mDaonR o haciendo clic en el título de la noticia

desde Segu-Info – Noticias de Seguridad Informática http://ift.tt/1FnX6aJ
via IFTTT

jQuery Lazy Load Plugin

Jquery Logo 1

Quizás algo de lo que más pesa a la hora de cargar una página HTML es el conjunto de imágenes que la página necesita para visualizarse correctamente. En muchas ocasiones existe la necesidad de realizar la carga de forma vaga (lazy load). Esta carga se realizará según el usuario necesite las imágenes. Uno de los plugins más habituales para realizar esta operación es jQuery LazyLoad.

Configuración

El plugin se puede instalar a traves de npm, bower, o se puede descargar a través del site de jQuery plugins. Hacer uso de este plugin es sencillo ya que basta con cargarlo y definir un selector de clase que afectará al conjunto de imágenes que se van a cargar de forma vaga.

<html>
<head>
<script src="jquery-1.11.1.js"></script>
<script src="jquery.lazyload.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("img.lazy").lazyload({
effect : "fadeIn", });
 });
</script>
</head>
<body>
<img class="lazy" src="imagencarga.jpg" data-original="imagen1.jpg" width="640" height ="480"/>
<img class="lazy" src="imagencarga.jpg" data-original="imagen2.jpg" width="640" height ="480" />
<img class="lazy" src="imagencarga.jpg" data-original="imagen3.jpg" width="640" height ="480"/>
</body>
</html>

 

 

Según el scroll de la página vaya avanzando las diferentes imágenes se cargarán.

Jquery

El plugin soporta varios parámetros de configuración interesantes:

  1. threshold (px) : Carga los primeros pixels de cada imagen antes de que se muestre en el viewport.
  2. event: Carga las imágenes como respuesta a un evento asociado, como por ejemplo click.

El plugin permite también una integración sencilla con AJAX.

También te recomendamos

Ebook: Ritual virtual

rlightbox, un plugin jQuery para multimedia y diseño sensible

CSS3 Animaciones y Frameworks


La noticia jQuery Lazy Load Plugin fue publicada originalmente en Genbeta Dev por Cecilio Álvarez .

 

desde Genbeta Dev http://ift.tt/1ItaJG0
via IFTTT

Utilizando JSON Schema

JsonvalidatorLos conceptos en programación tienden a repetirse por mucho que cambiemos el lenguaje. Hoy se utiliza JSON como formato de intercambio de datos y XML parece más relegado a una segunda posición. Una de las funcionalidades que más se demandan a la hora de intercambiar datos es validar las estructuras de estos. XML dispone de sus XML Schemas y JSON dispone de los JSON Schemas que son relativamente modernos. Vamos a ver un ejemplo de estos.

JSON Schemas

La sintaxis de un JSON Schema define los diferentes campos que una estructura concreta posee :

 { "$schema": "http://ift.tt/1h69xvr;, "properties": { "nombre": { "type": "string", "minLength": 3, "maxLength" : 20 }, "apellidos": { "type": "string", "minLength": 3, "maxLength" : 20 } "edad": { "type": "number", "description": "edad de la persona", "minimum" : 0 }, }, "required": [ "nombre", "apellidos", "edad", ] }

En este caso se definen tres propiedades (nombre,apellidos,edad) con su diferente tipología. Ademas se obliga a que todas ellas sean obligatorias. Eso implica que una estructura JSON como la siguiente será válida:

 { nombre:"juan", apellidos:"fernandez", edad:20 }

En cambio las siguientes estructuras no lo serán:

 { nombre:20, apellidos:"fernandez", edad:20 }
 { nombre:"juan", apellidos:"fernandez", }

Para validar de forma rápida las estructuras JSON contra sus Schemas podemos usar como herramienta online jsonschemavalidator.

Jsonvalidatorschemaonline

Si necesitamos usar las validaciones a nivel de programación muchas plataformas ya disponen de sus propias librerías (.NET, Java, Javascript).

También te recomendamos

Convierte tus XML a JSON y viceversa, online

Centro de innovación BBVA

Interoperabilidad en el siglo XXI


La noticia Utilizando JSON Schema fue publicada originalmente en Genbeta Dev por Cecilio Álvarez .

 

desde Genbeta Dev http://ift.tt/1JiVaHv
via IFTTT

Arc Theme, un nuevo tema para tus ventanas en Ubuntu

Arch Theme es una nueva forma de personalizar tu gestor de ventanas que ofrece temas visuales con elementos transparentes para escritorios basados en GTK 3 y GTK 2, así como para GNOME Shell. Es una nueva opción que se añade a las ya existentes para dar a nuestro escritorio el aspecto visual que más nos convenza,…

El artículo Arc Theme, un nuevo tema para tus ventanas en Ubuntu ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1ET01rH
via IFTTT

Ubuntu libera el código que usaba en Ubuntu One

Hace ya mucho que Ubuntu cerró el servicio de Ubuntu One y sorprendentemente hoy conocemos que el proyecto al fin revivirá aunque no de la forma que hubiéramos esperado. Ubuntu ha publicado bajo licencia AGPLv3 todo el código que se usaba para Ubuntu One, más en concreto el programa que se utilizaba para sincronizar sus…

El artículo Ubuntu libera el código que usaba en Ubuntu One ha sido originalmente publicado en Ubunlog.

desde Ubunlog http://ift.tt/1h17os8
via IFTTT

18 Essential Plugins to Get More Out Of Sublime Text – Hongkiat

Even though SublimeText comes with a bunch of great features that help our work as web developers, like any other tool, there will always be a room for enhancements. This is when plugins can be real useful (and we are huge fans of plugins). Before we proceed, maybe

Origen: 18 Essential Plugins to Get More Out Of Sublime Text – Hongkiat

La lista definitiva de los mejores sitios para descargar ROMs

Este post les va a gustar a los nostálgicos de los juegos, sobre todo aquellos que tienen más de 30 años. Quiero dejarles una lista con buenos sitios para descargar ROMs y poder revivir aquellos tiempos en los que jugábamos cuando éramos niños o adolescentes, sea cual sea la consola. Obviamente, para poder jugar y […]

Este artículo La lista definitiva de los mejores sitios para descargar ROMs fue publicado originalmente en Punto Geek.

desde Punto Geek http://ift.tt/1EeoUgR
via IFTTT

5 de los mejores plugins para crear Formularios de Contacto para WordPress | GeeksRoom

Una parte importante del blog para que los lectores se puedan comunicar con ustedes los webmasters o editores es la página de contacto. En esa página de contacto en su blog pueden tener una dirección de email para que el usuario haga clic y con su cliente de email les envíe directamente un email o algo más profesional y mucho más cómodo para el lector, un formulario de contacto. En WordPress hay muchos plugins que permiten agregar un formulario de contacto y 5 de los mejores son los siguientes, Contact Form 7 Es el que utilizamos en este blog.  Ofrece muchas características y permite al usuario crear un formulario personalizado.  Si no quieren personalizar, viene con un formulario preestablecido que solicita al lector escribir su nombre (obligatorio), dirección de email (obligatorio), página web (opcional) y la caja de texto para escribir el mensaje.  Ahora no es algo fácil de personalizar intuitivamente, pero muestran varios ejemplos como para en poco tiempo poder crear uno formulario

Origen: 5 de los mejores plugins para crear Formularios de Contacto para WordPress | GeeksRoom

Los mejores mazos de Hearthstone para trollear a base de combos

Hearthstone0

Ya se ha cumplido un año de la publicación de nuestra guía de mazos para ‘Hearthstone’ y, desde entonces, la situación en el juego de cartas de Blizzard ha cambiado lo suficiente como para que parte de aquellas colecciones hayan quedado algo desfasadas debido a las nuevas incorporaciones que han ido aterrizando en ‘Hearthstone’.

El metajuego ha cambiado casi por completo con la llegada de las nuevas cartas de Goblins vs. Gnomos y el modo aventura de Montaña Roca Negra, así que ya va siendo hora de actualizar nuestros mazos. Podríamos hacerlo con lo básico, a base de coleccions para alcanzar el modo leyenda o conseguir monedas fáciles, pero aquí hemos venido a divertirnos, y si algo tienen los mazos que encontraréis a continuación es que controlarlos a la perfección es todo un espectáculo.

Mazo: el Cazador que fingió su muerte

Hearthstone2

Empezamos por mi clase preferida, más aún después de convertirse en una de las más potentes y divertidas de jugar gracias a las nuevas cartas que han ido aterrizando en ‘Hearthstone’ durante los últimos meses. Si aventurarse a jugar con él era poco más que una locura hace apenas un año, ahora es una de las opciones más elegidas por los jugadores.

La gracia de este mazo reside en intentar aprovechar al máximo las posibilidades de Fingir muerte, la carta que activa el último aliento de todos los esbirros que tengamos en nuestra zona de la mesa. A base de secretos controlaremos el juego durante los primeros turnos y luego intentaremos llenar la mesa de legendarias o cartas fuertes con último aliento para aprovecharnos de sus poderes sin que desaparezcan de la lucha.

Para este mazo necesitarás una copia de cada carta salvo las siguientes, que requieren dos copias para alcanzar las 30: Tejerred, Fingir muerte, Arco de cuerno de águila, Crinalta de la sabana, Acaparador de botín, Científico loco, Gólem de la cosecha, Trituradora pilotada y Eructador de lodo.

mazo-de-cazador

image01 image01 image01 image01

Mazo: el Pícaro aceitoso te parte la cara

Hearthstone3

Si hay una clase que controle los combos a la perfección es la del Pícaro, no sólo por hacer uso de esa estrategia en gran parte de sus cartas al jugarlas después de otras, también por la sinergia que puedes montar entre ellas si tienes la suerte de montar una buena mano mientras aguantas los primeros embistes del rival.

Nos interesan dos cartas, el Aceite afilaespadas con su combo de +3 de ataque a tu arma y +3 a un esbirro aleatorio, y la Profesora violeta para invocar aprendices 1/1 pegándole una patada a una piedra para que aparezcan tres o cuatro por turno. Aprovecha la carta de Preparación para sumar otro hechizo más cuando te hayas quedado sin cristales y mantén tu vida a controlada a base de Chamanes clarividentes y Sanabots.

Para montar este mazo necesitarás dos copias de las cartas que encontrarás a continuación. Las únicas que sólo incluyen una copia son: Sprint, Marinero de Mares del Sur, Chamán clarividente, Sanabot antiguo, Subastador de Gadgetzan y las legendarias.

mazo-picaro

image01 image01 image01 image01

Mazo: el Sacerdote de los 30 puntos de daño

Hearthstone5

No soy un gran fan del Sacerdote (de hecho el estilo de juego de los mazos habituales de esta clase me mosquean con facilidad), pero debo reconocer que el combo que encontraréis a continuación es todo un espectáculo y, aunque difícil de ejecutar, lo suficientemente espectacular para que el esfuerzo valga la pena.

Ahí va un caso práctico. Acabas de jugar el Emperador Thaurissan para reducir el coste de todas tus cartas un punto al finalizar cada uno de tus turnos, y al llegar el turno 10 tienes cristales suficientes para lanzar el Profeta Velen, bufarlo con el hechizo El elegido de Velen (daño duplicado y +1) y reventar al enemigo con una Punición Sagrada y dos Explosión mental (0 y 2 cristales gracias al amigo Thaurissan) alcanzando los 30 puntos de daño en el décimo turno. GG y a por otro pobre infeliz.

No es un mazo excesivamente caro si ya llevas una temporada jugando porque algunas de sus legendarias son de las primeras que habrás creado. Si no es el caso, ya sabes, al menos para probar si te sale bien la jugada. Las únicas cartas incluidas que sólo necesitan una copia son: Resurrección, Acólito de dolor y legendarias.

mazo-sacerdote

image01 image01 image01 image01

Mazo: el ejército infinito del Guerrero

Hearthstone6

Cerramos la selección con otra de las clases que no acostumbraba a jugar a menudo, la del Guerrero, ¿pero cómo iba yo a resistirme a la posibilidad de llenar la mesa de esbirros atacando en manada si es lo que más disfruto de ‘Hearthstone’?

Las gracias tenéis que dárselas a la amistad entre Comandante Grito de Guerra (todos los esbirros con 3 puntos de ataque o menos reciben cargar) y Parroquiano lúgubre (un 3/3 que cada vez que recibe daño invocas a otro Parroquiano lúgubre), y como ese sentimiento se convierte en amor al utilizar el último aliento de 1 punto de daño a todos los esbirros de la Picadura de la Muerte. Cargad, mis zumbados con hacha, cargad.

Sólo una aclaración antes de que saltéis a la galería, necesitas una copia de: Grito de orden y las legendarias, el resto las metes en el mazo a pares sin olvidarte a nuestro querido amigo Thaurissan para que el tramo final de la partida se nos haga más fácil y el Torbellino (otro punto de daño a todos los esbirros) nos salga completamente gratis.

mazo-guerrero

image01 image01 image01 image01

En VidaExtra | Los mejores mazos de cartas para triunfar en Hearthstone

También te recomendamos

La perdición por Goblins vs. Gnomos, primera expansión de Hearthstone, comenzará en una semana

Mi vida en videojuegos: 11 expertos españoles escogen los títulos que más les marcaron

Más de 120 nuevas cartas en Goblins vs. Gnomos, la primera expansión de Hearthstone


desde Vidaextra http://ift.tt/1EKyf3V
via IFTTT

12 Most Useful WordPress Custom Post Types Tutorials

WordPress allows you to create your own custom content types. These content types are called custom post types. You can use them to add custom content like products, reviews, recipes, etc. In this article, we will share the 12 most useful WordPress custom post types… Read More »

To leave a comment please visit 12 Most Useful WordPress Custom Post Types Tutorials on WPBeginner.

desde WPBeginner http://ift.tt/1Hnu1jt
via IFTTT

Los perfiles sombra al descubierto, Facebook sabe qué hacemos incluso si no se lo decimos

6328264579 B5f6dfb5f6 B

Hace casi dos años Facebook ocupó todos los titulares de la prensa al exponer por accidente información sobre más de 6 millones de cuentas. Cuando los usuarios afectados fueron notificados de los datos filtrados, algunos se sorprendieron al encontrar entre ellos correos alternativos o teléfonos que nunca habían compartido con la red social.

Fue entonces cuando empezaron las sospechas sobre los perfiles en la sombras, con los que parecía que la red de Zuckerberg almacenaba sin consentimiento datos que no se compartían con ellos, y es ahora cuando un estudio encargado por la comisión de privacidad belga ha confirmado las sospechas y demostrado que Facebook viola las leyes europeas… y nuestra privacidad.

Este estudio apunta a que la red social ha estado recopilando la información de sus usuarios mientras navegaban por la red, aun habiéndose deslogueado de su web, gracias a plugins sociales como el botón Like. De esta manera se ha descubierto que han almacenado datos incluso sobre personas que ni siquiera tienen una cuenta creada.

Facebook, de nuevo saltándose las leyes europeas

Según las leyes europeas, cualquier página tiene que tener el permiso de sus usuarios antes de colocar cookies en los ordenadores. Facebook no sólo coloca cookies sin permiso, sino que estas interactúan con las de las webs por las que hemos navegados e incluyen sus plugins sociales cada vez que accedemos de nuevo a la red social.

Y es que la comisión de privacidad belga se toma muy enserio las violaciones de las leyes europeas por parte de Facebook, y hace apenas un mes denunció con otro estudio la manera en la que la utiliza el contenido creado por sus usuarios con ánimos comerciales y sin haberles pedido su permiso de manera clara y concisa.

Y es que nuevamente, una de las cosas que más escuecen en la comisión belga son los complejos menús de configuración de Facebook, que contienen parámetros demasiado complicados y difíciles de entender, de manera que sólo los usuarios más experimentados son capaces de encontrar la forma de proteger su propia privacidad.

Imagen | zeevveez
Vía | ICRI/CIR y iMinds-SMIT
En Genbeta | Facebook sabe mucho más de ti de lo que piensas… aunque ni siquiera tengas cuenta

También te recomendamos

Facebook acusada (otra vez) de violar la privacidad de sus usuarios

Cómo revisar la privacidad de todas las fotografías de Facebook en las que aparezcas

5 actividades de la vida real que no te imaginabas que se pueden hacer 100% online


desde Genbeta http://ift.tt/1NDirlW
via IFTTT

HTML Inspector, define tus propias reglas para validar código HTML

HTML Inspector

HTML Inspector es un herramienta orientada a mejorar la calidad del código que tanto tú como tu equipo escribís en la parte front. Una de las principales ventajas es su simplicidad de uso y customización para definir las reglas que más os interesen “validar” del código. Se puede ejecutar directamente en navegador.

Con el validador del W3C guarda pocas similitudes. Son herramientas muy diferentes. Mientras que el del W3C es completamente estricto con sus advertencia y validaciones, con HTML Inspector podemos customizarlo para que cumpla una serie de reglas propias (guía de estilo del equipo, como por ejemplo, usar camelCase u otra notación). Por supuesto, mantiene toda la convecciones sintácticas que las recomendaciones W3C marcan (actualmente con HTML 5.1): elementos deprecated o atributos, así como los nuevos componentes.

Es totalmente extensible y más que un último proceso de validación sirve como guía de desarrollo. Escribir un código coherente entre todos los miembros del equipo es complicado, por eso HTML Inspector ayuda a tomar convenciones comunes.

HTML Inspector es un complemento ideal para usar con JSLint y CSSLint, todos ellos totalmente extensibles.

Para poder instalar HTML Inspector tenéis distintas alternativas: simplemente importar el JS sobre vuestro HTML y probarlo; o usar npm o bower para descargar e importar; también se puede hacer uso de grunt para utilizar su implementación el código.

Github | HTML Inspector


La noticia HTML Inspector, define tus propias reglas para validar código HTML fue publicada originalmente en Genbeta Dev por Txema Rodríguez .

desde Genbeta Dev http://ift.tt/13IOm2w
via IFTTT

Empieza tu proyecto Open Source en las plataformas más conocidas. Github

alta_en_github_01.jpg

Voy a seguir la mini serie de tutoriales “paso a paso” en donde mostrar las plataformas más utilizadas para compartir proyectos Open Source en las diferentes comunidades y lenguajes.

Ahora voy a mostrar la plataforma que se ha erigido como la más utilizada y valorada por toda la comunidad de desarrollo, en todas las tecnologías: GitHub. Y en donde, seguramente, están los proyectos Open Source más suculentos.

Un excelente repositorio de código público y más

Lo primero que noto nada más introducir los tres datos para dar de alta la cuenta en GitHub, es que tiene muchas más opciones y servicios que CodePlex.

Así en el menú de la cuenta tengo acceso a servicios como:

  • La ficha de usuario.
  • La configuración de las cuentas
  • La configuración de los emailes.
  • La configuración del centro de notificaciones.
  • Información de facturación (se empieza a pagar a partir del primer repositorio privado).
  • La generación de claves SSH, para acceso seguro.
  • Configuración de la seguridad. En donde puedo activar la autenticación de dos pasos.
  • Acceso a las aplicaciones, en donde se genera el token para utilizar la API de Github en nuestras aplicaciones.
  • La gestión de repositorios
  • La gestión de las organizaciones.

Nada más entrar en mi cuenta, debo de verificar mi email principal para lo cual pulso en el botón de "Enviar verificación", espero a que me llegue el correo a la cuenta, pulso en el enlace, y ya estoy listo para seguir los pasos para dar de alta mi proyecto.

Alta en Github

Desde la pantalla inicial de mi cuenta, pulso en el símbolo de “+” que está al lado del nombre de mi cuenta, en la parte superior derecha. Y en donde escojo el crear un nuevo repositorio.

Alta en GitHub

En la ventana que se me abre, escojo el nombre del repositorio, si es público o privado, marco que quiero inicializar el repositorio vía README (así puedo hacer un git clone de forma inmediata), y escojo la licencia que en este caso también es Apache V2 – como hice en CodePlex.

Alta en GitHub

En cuanto pulso el botón de crear el repositorio, el sistema se pone a trabajar y finalmente se me muestra la pantalla principal del repositorio enseñando el contenido de la rama master.

Alta en GitHub

Conectando el IDE con GitHub

El siguiente paso es abrir mi IDE favorito, Visual Studio 2013 (cualquier versión te permite conectarte), y dar de alta un nuevo proyecto ASP.NET indicándole que lo quiero añadir al control de código fuente.

Alta en GitHub

Como en todos los ejemplos anteriores, doy de alta un proyecto MVC, con su proyecto de Test asociado. Y cuando me pregunta el tipo de control de código, le indico que voy a utilizar Git.

Alta en GitHub

Si abro ahora el Test Explorer, pulso en la opción de Settings, y configuro la situación física en mi equipo de mi repositorio local.

Alta en GitHub

Pulsando en el nombre del repositorio, obtengo un menú desplegable en donde escojo la opción “Unsynced Commits”.

Lo cual me lleva a la pantalla en donde voy a realizar la publicación inicial. Para ello lo primero es indicarle la url del repositorio en GitHub, la cual obtengo en la pantalla de mi repositorio recién creado, en una pequeña caja de texto titulada “HTTPS clone URL”.

Alta en GitHub

Me vuelvo al Visual Studio e introduzco la URL en la dirección de mi repositorio remoto. A continuación pulso el botón “Publicar”, lo cual me responde con una ventana de seguridad en donde tengo que meter los datos de mi cuenta GitHub.

Alta en GitHub

Lo siguiente es un workaround que he realizado al encontrarme un error cuando lancé la publicación en GitHub, y que me indicaba que la rama “main ya existía y que no podía hacer una publicación. Dejo a ti, lector, el que encuentres o describas lo que hice mal o el paso que me salté para mejorar lo que hice.

Al devolverme el error lo que hice fue irme otra vez a “Unsynced Commits”, borre el branch main, y cree un nuevo branch con otro nombre, desde la raíz.

Alta en GitHub

Y ahora sí me acepta la publicación, viéndose el nuevo branch en la página de GitHub.

Alta en GitHub

De vuelta al Visual Studio, me voy a Changes (también desde el Explorador de la solución se puede hacer) e intenté hacer un Pull. Pero no se activa hasta introducir una descripción del Commit.

En vez de pulsar directamente en el botón, escojo la opción Commit & Push del menú despegable. La cual no solo me hace un commit a mi repositorio local, si no que también lo hace al remoto.

Alta en GitHub

Y ahora si, he finalizado. Si me voy a la página de Github, y escojo el Branch “GenbetadDev_GitHub”, veo que ya tengo el código subido de forma pública, y en donde puedo mostrar mi trabajo, y aceptar Pull request de miembros de la comunidad.

Alta en GitHub

En el próximo capítulo voy a hacer un análisis de otro repositorio que se utiliza mucho: Bitucket.

Más información | CodePlex
En Genbetadev | Empieza tu proyecto Open Source en las plataformas más conocidas, CodePlex


desde Genbetadev http://ift.tt/1tgoAtk
via IFTTT

Diez librerías de PHP indispensables

 

Tiene muchos (y muy beligerantes) detractores pero ni siquiera estos podrán negar que PHP es uno de los lenguajes más utilizados de la actualidad. Y el uso masivo de un lenguaje tiene un efecto: que casi cualquier cosa que se te ocurra hacer, ya la ha hecho alguien antes y seguramente la haya empaquetado en forma de librería y ofrecido al mundo (y muy posiblemente en formato open source) para su uso y disfrute. Hoy os traemos, amigos de Genbeta Dev, una selección de diez librerías de PHP que consideramos indispensables ya que hará tu vida profesional más sencilla, cómoda y feliz. Son todas open source y funcionales para PHP5 (salvo que se indique expresamente lo contrario) por lo que las puedes utilizar en tus proyectos sin problemas y hemos evitado las más obvias como mCrypt, cUrl, PDO o incluso PHPUnit ya que estas debes tenerlas instaladas si o si. Y me dejo ya de preliminares, vamos al turrón:

pChart

Para realizar gráficos hay multitud de librerías de pago en PHP, sin embargo no mejoran excesivamente los resultados de pChart, todo un clásico del desarrollo PHP y que parece que no pasa de moda nunca (raro debe ser el desarrollador peachepero que no la ha usado alguna vez). Genera gráficos de diversos tipos a partir de ficheros CSV, queries SQL o datos introducidos manualmente. Depende, eso si, de tener instalada la librería GD.

Descarga | pChart (SourceForge)

Upload

Upload es una librería (gratuita y con licencia MIT) que te ahorra el tedioso cometido de subir y validar ficheros al servidor. Tan sólo unas cuantas líneas y p’alante. Librería top.

Descarga | Upload (GitHub)

PHP Excel Reader

Parsear ficheros Excel o CSV… ¿hay cosa más odiosa y menos gratificante? Pues con PHP Excel Reader es coser y cantar. Fácil de instalar, más fácil todavía de utilizar y prácticamente a prueba de bombas. De verdad, quiero más a esta librería que a algunos de mis amigos.

Descarga | php-excel-reader (Google Code)

Gaufrette

Realmente trabajada librería que te facilita una capa de abstracción para trabajar con sistemas de ficheros de distintos tipos (locales, servidores FTP, sistemas en la nube como Amazon S3, Azure o Rackspace…) de manera transparente y un sistema de caché para ficheros lentos.

Descargar | Gaufrette (GitHub)

Omniplay

Potente paquete de librerías para procesamiento de pagos en PHP que ofrece una API consistente para validar tarjetas de crédito y poder trabajar de una manera transparente con una veintena de pasarelas de pago. En un principio, ninguna de estas pasarelas salvo PayPal y pocas más, es de mucha utilidad para el usuario español pero, por suerte, es un sistema escalable que te permite añadir tus propias pasarelas con poco esfuerzo (apenas extendiendo una librería llamada AbstractGateway). Además incluye una completa aplicación de prueba para que puedas comprobar todo su potencial.

Descarga | Omnipay (GitHub)

FPDF

Alternativa libre, gratuita y sorprendentemente funcional y rápida a la popular PDFLib a la hora de crear y manejar archivos PDF dede PHP. Tan sólo necesita de zlib y GD instalados para funcionar correctamente. Acepta imágenes, fuentes TrueType y Type1 y compresión. Muy apañada.

Descarga | fpdf.org

PHPMailer

Después de penar con la función mail() de PHP, utilizar la librería PHPMailer, otro clásico que casi seguro que todos hemos catado alguna vez, es poco menos que ambrosía para nuestros paladares. Con soporte para SMTP (y diversos métodos de autenticación), emails alternativos para clientes sin soporte HTML, capacidad para múltiples TOs, CCs y demás. Hay muchas más opciones en este mundo del emailing vía PHP pero PHPMailer es con diferencia la más utilizada..

Descarga | PHPMailer (GitHub)

Krumo

Básicamente lo que hace es poner bonito el var_dump con un poco de HTML y CSS. Parece poca cosa pero nuestros ojos lo agradecen y mucho. Ya viene integrado en muchos proyectos como Drupal.

Descarga | Krumo (SourceForge)

Carbon

Supongo que no soy el único que odia trabajar con fechas. Es algo realmente terrible… y eso que con la inclusión de la clase DateTime en PHP5.3, la cosa ya no es para cortarse las venas. Pero con Carbon es otra cosa. Carbon es una librería que hereda de DateTime y le añade un componente semántico muy importante además de facilitar el formateo y la localización. Muy útil. Eso si, como DateTime, sólo funciona a partir de PHP 5.3.

Descarga | Carbon

Underscore

Pues si, es como underscore.js pero portado a PHP. Y como su hermano mayor javascriptero, es rabiosamente útil y fácil de utilizar. Eso sí, sólo funciona para instalaciones de PHP 5.3 y superiores.

Descarga | Underscore