Torii: aplicación para crear portales

torii.pngTorii es una aplicación que desarrolla portales de forma sencilla mediante el uso y desarrollo de módulos. Incluye una extensa documentación y una serie de módulos iniciales como integración de feeds, tiempo, sistema de información, listas to-do y mucho más.
torii2.png
Además incluye temas que nos permite modificar el aspecto de nuestro portal de forma rápida.
No hace mucho uso de Javascript para evitar que el gasto innecesario de los recursos del navegador. A parte, el porta se cargan con mucha rapidez ya que los datos se cargan asíncronamente más tarde.
Es necesario disponer de PHP 5.2 y las siguientes extensiones: SimpleXML, DOM, PCRE y SPL, JSON, PDO y PDO/SQLite, y Curl. PDO/SQLite es necesario porque algunos módulos necesitan almacenar información.
Torii

WampServer 2.0: el nuevo WAMP5

WAMP5 ha cambiado y ahora se llama WampServer 2.0, el cambio no solo ser refiere al nombre, sino a una gran novedad, permite instalar distintas versiones de Apache, MySQL y PHP, pudiendo elegir la que más nos convenga en cada situación, teniendo en cuenta que no todas las versiones de PHP son compatibles con todas las versiones de Apache.
wampserver.png
Este cambio es muy importante, ya que los entornos de trabajo no son siempre los mismos y debido a imcompatibilidades es necesario crear nuestras aplicaciones en entornos de trabajo exactos al real.
Nos permite modificar las opciones de las versiones de MySQL, PHP y Apache que estén seleccionadas en ese momento, aunque aún echo en falta poder visualizar los logs de apache que desee (no solo el por defecto), elegir la aplicación para ver los logs y poder permitir modificar los virtual hosts de apache.
WampServer 2.0
Vía / OpenSourceCommunity.org

|

Hadoop: plataforma para trabajar con gran cantidad de datos

hadoop.pngHadoop es una plataforma que nos permite desarrollar aplicaciones que tengan que tratar con grandes cantidades de datos, hasta petabytes. Se trata de un subproyecto de Lucene, un proyecto de Apache que desarrolla software para realizar búsquedas.
Hadoop es muy útil cuando vamos a realizar proyectos que necesiten de escalabilidad, ya hemos dicho que puede almacenar y procesar petabytes de informacion. A su vez, es perfecto para un cluster de servidores, distribuyendo la información entre los nodos, siendo posible disponer de miles de nodos. Al disponer los datos de forma distribuida, la búsqueda se puede realizar muy rápidamente ya que Hadoop puede acceder a ella de forma paralela. Y aunque los datos estén distribuidos, no hay que preocuparse de fallos ya que dispone de un sistema de seguridad.
hadoop.gif
Hadoop implemente el MapReduce de Google, usando un sistema distribuido para dividir las aplicaciones en pequeñas tareas.
Hadoop se ha llegado a probar en un cluster de 2.000 máquinas y se está intentando alcanzar la cifra de 10.000 máquinas. Es necesario Java para su desarrollo y Linux, aunque se puede usar Windows para desarrollo, aunque el cluster no funciona del todo bien.
Hadoop

| |

Prism: aplicaciones web en tu escritorio

prism.pngPrism es una nueva forma de entender las aplicaciones web, se trata de un punto intermedio entre una aplicación web y una aplicación de escritorio.
Mediante Webrunner podemos ejecutar aplicaciones web en nuestro escritorio. No se trata como en el caso de Adobe AIR y Microsoft Silverlight que pretender crear una alternativa de la web. Se trata de extraer del navegador aplicaciones web y ejecutarlas (mediante XUL) en nuestro escritorio, por lo que estas aplicaciones web podrán hacer uso de HTML, JavaScript, CSS, y <canvas>.
Una buena alternativa para las aplicaciones web que se hacen para empresas.
Prism
Gracias Dani por el aviso

Recursos para un sitio compatible con navegadores

Uno de los mayores problemas con los que nos encontramos cuando estamos desarrollando una aplicación web es la compatibilidad con los diferentes navegadores, bueno, realmente la compatibilidad de estos navegadores con los estándares.

Para ayudarnos en esta lucha, nada mejor que esta serie de recursos:

Designing For Every Browser: How To Make Your Site Fully Cross Browser Compatible

Vía / dzone

Bitnami: simplificación del open source

Bitnami es una web que pretende simplificar el uso de las aplicaciones web open source. Para ello lo que hace es recopilar aplicaciones y agruparlas en paquetes (stacks) de fácil instalación para Linux, Windows y Mac.
bitnami.png
Además también agrupa los contenidos en aplicaciones para documentar, blogs, CMS o Wiki. Por ello podemos instalar aplicaciones como Joomla!, Drupal, Mediawiki y WordPress de forma muy sencilla. Además nos da la posibilidad de conocer algunas que nos pueden ser útiles y porder elegirlas por plataforma o licencia gracias al sistema de tags.
Los stacks son independientes a otras aplicaciones instaladas, completos, y pueden ser instalados en el directorio que se quiera, por lo que puede haber diferentes instancias del mismo stack. Algo bueno es que hasta que no se pulsa el botón finalizar, no se empieza con la instalación, evitando así instalaciones incompletas.
BitNami
Vía / dzone

Elements of Design: showcase de elementos web

Elements of Design es una galería de elementos contenidos en páginas web que nos puede ayudar a diseñar partes de la página y añadirlas al diseño general. Es como CSSMania pero en vez de diseños completos, enfocado únicamente a elementos.
elementsofdesign.png
Podremos encontrar diseños de formularios para comentarios de blogs, comentarios de blogs, calendarios, código, iconos, texto entrecomillado, formularios de registro, cajas de búsqueda y tipología de cabeceras.
Elements of Design

10 ficheros que debería tener cualquier web

Cuando se realiza una web suelen ser necesarios una serie de ficheros que en algunas ocasiones no existen:

  • 404.html: para mostrar un mensaje de error que indique que la página visitada no existe, algo que ocurrirá más veces de las que pensamos.
  • about.html: una buena página about ofrece información de forma rápida sobre lo que el sitio hace, indicando por qué ha sido creada, qué deben tener en cuenta los usuarios, algunos enlaces de navegación. Eso sí, ante todo debe ser concisa y no muy extensa, porque entonces la gente no obtiene la información deseada.
  • contact.html: información sobre quién está detrás de la página y un medio para comunicarse con ellos, ya sea por internet u otros medios.
  • copyright.html: protege tus contenidos, ya sea con copyright o Creative Commons, pero que quede claro a quién le pertenece el contenido y que se puede hacer sobre él.
  • index.html: aunque tu página principal no sea esa, es conveniente que este fichero apunte a tu página principal. Si se es generoso también habría que hacerlo con el fichero index.htm e index.cgi.
  • index.rss: para aquellos que quieren leer la información que se ofrece de forma rápida mediante feeds.
  • privacy.html: si vas a obtener información de los usuarios, es necesario indicar qué se va a hacer con esta información y cómo se va a tratar.
  • robots.txt: para que los contenidos que deseas de tu web sean indexados automáticamente por los buscadores.
  • security.html: el uso no es siempre el mismo, pero si existen temas que conciernan a la seguridad es conveniente usarlo, por ejemplo si se usan datos sensibles de los usuarios o si existen procedimientos de seguidad.
  • sitemap: un lugar donde el usuario puede tener un vistazo de la estructura general de la web y así poder moverse con facilidad.

Web development tips: Ten (or a few more) files every Web site needs

10 razones para seguir estrategia Open Source

Actualmente algunas empresas son poco partidarias de utilizar herramientas open source a la hora de realizar sus proyectos. Aquí os paso algunas razones que nos pueden animar a hacerlo, aunque claro, esto es según gustos y habrá otras razones que invaliden las que se indican.

  • Disminuir la dependencia a vendedores de código propietario: esto suele ser debido a la necesidad de actualizar la versión del producto, esperando mejoras o nuevas funcionalidades, ocasionando en algunos casos un gasto de dinero y tiempo importante.
  • No hay necesidad de presupuestar el coste de mantenimiento de software y de personal encargado: el gasto que suponen las licencias de software y el salario de personal conocedor de esas herramientas suele ser bastante elevado, incrementando así los costes del proyecto y repercutiendo en los beneficios.
  • Acceso a más herramientas: se puede acceder a un casi ilimitado número de herramientas (desarrollo, testing, CMS, seguridad, …), sin necesidad de solicitar permiso para obtenerlo debido a su coste.
  • Pruébalo antes de comprarlo: aunque muchas de las herramientas propietarias si ofrecen versiones Trial o gratuitas para desarrollo, sí que es imposible a veces ver cómo funciona un producto sin tener que comprarlo antes.
  • Soporte por parte de una comunidad de usuarios: esto es algo que a las empresas les suele echar para atrás, el no tener un soporte oficial. Como desarrollador puedo asegurar que normalmente el soporte lo da Google y no el soporte oficial, del cual el 90% de las veces no se utiliza.
  • Acceso al código y la posibilidad de modificarlo según tus necesidades: algo bastante típico es tener que esperar a una nueva versión o tener que comprar una versión actualizada de un producto para conseguir una funcionalidad necesitada. Si dispones del código es posible que puedas modificarlo a tu gusto. Algo parecido hizo Google con MySQL.
  • Poder de negociación con vendedores de software propietario: con esta no estoy muy conforme, pero bueno, quizás nunca se me haya el caso, como dice, de poder obtener mejores condiciones de Microsoft si tienes Ubuntu instalado en 20 ordenadores como experiencia piloto.
  • No hay exceso de características inútiles: en los proyectos open source, las nuevas funcionalidades suelen venir dadas por las necesidades de los usuarios, no por las ideas de un departamento de desarrollo o marketing.
  • Más seguridad: algo que crea mucha controversia, pero estudios como el de Trend Micro muestra que el open source es más seguro.
  • Solución de errores y nuevas implementaciones con más rapidez: en algunos casos los errores se solucionan mucho antes incluso de que lo detecten los usuarios.

10 Reasons why you need an Open Source Strategy

Vía / OpenSourceCommunity.org

Crear ventanas tipo Netvibes con Prototype

Crear ventanas flotantes en HTML es una de las cosas más difíciles de realizar en una página web. En alguna ocasión hemos hablado de cómo realizar ventanas con HTML y Javascript.

En este caso se trata de una extensión para Prototype que con unas simples líneas de código seremos capaces de crear nuestras ventanas de forma rápida.

ventanas_prototype.png

Para usarlo primero nos deberemos crear la estructura HTML:

<div id="page">
<div id="widget_col_0"></div>
<div id="widget_col_1"></div>
<div id="widget_col_2"></div>
</div>

Con sus CSS:

#page {
margin: 10px auto;
}
#widget_col_0 {
float:left;
width: 30%;
}
#widget_col_1 {
width: 50%;
float:left;
}
#widget_col_2 {
float:left;
width: 20%;
}

Instanciar la clase:

var  portal = new Xilinus.Portal("#page div")

Y por último añadir el contenido:

portal.add(new Xilinus.Widget(), 0)
// O con título y contenido
portal.add(new Xilinus.Widget().setTitle("Widget Title").setContent("El texto que sea"), 1);

Prototype Portal Class

Vía / WebAppers