Archivo de la categoría ‘General’

Integrar los usuarios de moodle con Joomla 1.5

moodleSi tenemos un sitio web en Joomla y además disponemos de un aula virtual gracias al maravilloso moodle, existe una manera de compartir los usuarios de Joomla y los de moodle, es decir que los usuarios de moodle se pueden autentificar utilizando el usuario que utilizan para el portal. De esta manera la integración es total, y nos permite facilitarle la vida a los usuarios, ya que de lo contrario deberían utilizar un usuario para acceder a nuestra aula virtual moodle, y otro para joomla, que podrían tener claves diferentes, y esto es díficil de recordar.

En primer lugar si el sitio es grande deberiáis instalar Community Builder para la gestión de los usuarios y los permisos.

1. Accedemos a moodle como usuario administrador :

Administración Usuarios Autenticación Usar una base de datos externa

host: Índicamos el servidor de la base de datos (localhost o la dirección ip del gestor de la base de datos donde tenemos instalado Joomla)

Configuración conector base de datos externa

En la sección de script de sincronización con el cron

Hay tres opciones: mantener interna, suspender interna, borrado.

En entornos de explotación recomiendo elegir la opción suspender interna, ya que si el usuario moodle existe en joomla con el mismo nombre, suspende la autentificación con moodle y utiliza la autentificación joomla para ese usuario: Por ejemplo admin. Además podemos comprobar si la integración ha sido correcta para realizar el borrado de usuarios posterior. Ya que si eliminamos los usuarios se realizará un borrado completo

Las demás opciones se utilizan para realizar sincronización con los datos del usuario.

Recordar que el conector usar una base de datos externa se tiene que encontrar habilitado (se hace pulsando sobre el icono de ojo)

Si tenemos un desarrollo grande, es recomendable utilizar también la sincronización de las matriculaciones. Esto lo podremos configurar desde moodle.

Fidelizar a un usuario utilizando diferentes proveedores de identidad

Una de las cosas que la web 2.0 sin duda va a cambiar es la forma en la que los usuarios acceden al sitio, permitiendo identificarse con proveedores externos (facebook, msn, yahoo, msn…). Como usuaria estoy harta de rellenar el mismo formulario una y otra vez para ver las imágenes de la cena con mi cuadrilla en hi5, facebook, msn, gmail, yahoo….

Los regist1251059699_icontexto-user-web20-twitterros en sitios pequeños, son incómodos para el usuario, que maneja tantas identidades que al final hacer otro registro en un sitio web para acceder a contenidos especializados es una barrera a la navegación y una mala experiencia para el usuario, harto de tener que crear una cuenta para cada servicio: flickair, facebook, msn, myspace, hi5…

Se acabó el tiempo de fidelizar al usuario mediante crear una cuenta en el sitio (aunque esto se pueda hacer igualmente), si integramos la identificación con diferentes proveedores conseguiremos:

  • 1251059696_icontexto-user-web20-facebookEvitarnos problemas en la administración del sitio web (menos carga en la parte de la administración de usuarios)
  • Fidelizar a nuestros usuarios eliminando la barrera psicológica que supone crear otro usuario, ya que si integramos a los grandes proveedores, probablemente el 90% de los usuarios tendrán un usuario facebook, gmail, msn, etc… y no tendrán que completar ningún formulario, y para el 10% restante lo ofreceremos la posibilidad de crear un cuenta de usuario.

1251059683_icontexto-user-web20-myspaceAl fin y al cabo lo importante ahora no es tener muchos usuarios y muchos menos con los lectores de marcadores dinámicos que permiten a nuestro asiduo visitante leer las noticias, sin tener que ver ni siquiera la publicidad del sitio. ¿Entonces dónde está el negocio? En la información que provee el usuario sobre lo que más le interesa, el prestigio, el asesoramiento…El número de visitas, aunque no sean usuarios con clave y contraseña.

Facebook es el primero de los grandes que se ha dado cuenta de esto y ofrece amplia documentación y facilidades para su integración en otros sitios, no le importa que el usuario visite otros sitios al final vuelve a la nave nodriza a poner sus fotos, aplicaciones, etc…

Para joomla:

http://www.cmsmarket.com/extensions-directory/social+networking/community/jfbconnect

Para experimentar un poco:

http://developers.facebook.com/connect.php

Por la parte de los desarrolladores, la única parte con la que tendremos especial cuidado será en la transferencia de estos datos desde nuestro sitio web al del proveedor,  manejar estos datos de una manera segura, utilizando conexiones encriptadas para evitar la filtración a ningún otro sitio, al fin y al cabo, como usuarios exigimos nuestro derecho a la privacidad en la navegación.

Recomendaciones para crear una web comercial

La página web de una empresa es su imagen al mundo. Y en ella se debe transmitir la idea de lo que la empresa es. De una web comercial mal hecha, dependerá la impresión y la idea que el cliente percibe de esa empresa.

Extraída de devianart, hecha por Guidezin

1. Integrar la imagen marca de la empresa, el logotipo y todo el grafismo (papel, boletínes), en la página web.

2. Ser original, ofrecer contenidos da valor añadido. Sé que es muy tentador ver lo qué hace la competencia, y proponer algo muy similar, pero en tiempos de crísis, solo sobresalen las empresas que tienen algo nuevo que aportar. Esto incluye que no se te ocurra hacer un copia pega, de un quiénes somos, y retocarlo un poco.

3. No añadir nunca jamás y bajo ningún concepto publicidad en una web de empresa. Ni banners parpadeantes, ni textos rojos moviéndose por la web, ni publicidad de politono paco paco…

4. Utilizar tecnologías anticuadas y obsoletas (bueno, aunque si tu empresa quiere dar esa imagen…). Señores de Telefónica no me digan que son innovadores, y maravillosos, si no puedo completar un formulario de la web con mi navegador linux. Esto ejemplo es más de lo que no se debe hacer en una web comercial: http://www.nuevarumasa.com/ sobran las palabras. (y éstos quieren que invierta 50.000 €? Me imagino que será para hacer una web decente)

5. No robar las imágenes por internet. Existen catálogos que ofrecen imágenes profesionales a precios asequibles. Una web de empresa, nunca debe contener imágenes recién robadas, que da muy mala imagen.

6. Ser accesible, usable y estándar. Y probada por lo menos con tres navegadores, y dos sistemas operativos.

7. Utilizar alojamiento de pago. Todavía algunas empresas, utilizan alojamientos gratuitos. Es como si le dijeras al cliente final: Soy una empresa importantísima, pero nos vamos a reunir en el bar Manolo, el rey de la papa brava, que compartimos el local, y mi despacho está en las mesas del fondo.

8. Ofrecer contenidos actualizados y de calidad e información clara, precisa y veraz. Ofrece promociones especiales, para fidelizar a los usuarios, etc…

9. Posicionar la web en los motores de búsqueda y utilizar correctamente las metaetiquetas.

10. Poner correos electrónicos del dominio de la empresa, por ejemplo: info@empresa.com en vez de personales o gratuitos, por ejemplo (hotmail).

La imagen es de Guidezin (podéis ver el enlace en la imagen) y la he visto en http://www.deviantart.com/

Creando copias de seguridad de un sitio.

Cuando administramos un sitio web, por muy pequeño que sea debemos realizar un plan de contingencia, que nos permita recuperar el sitio ante una eventual contingencia: errores por programación, instalación de nuevos componentes, nueva programación, actualización de programas, instalación de parches…

1242125662_system-software-updateSi tenemos un sitio web hecho con Joomla podemos utilizar componentes que nos permitan automatizar todas estas tareas, y realizarlas diariamente.

También podemos crear algún cron en el servidor que nos ejecute de manera automatizada las copias de las bases de datos y los ficheros del sitio.

Esto nos permitirá que ante una eventual contingencia podamos recuperar el sitio en cuestión de horas o minutos (y evitar perder el trabajo de meses, ficheros actualizados, etc…)

Para crear una copia de seguridad de un sitio Joomla podemos hacerlo principalmente de dos maneras:

De manera manual:

  1. Copiar toda la estructura del sitio web. Volcar todo el sitio vía ftp, ficheros y directorios conservando la estructura original.

  2. Copiar la base de datos. Para ello podemos utilizar el gestor de base de datos y realizar la exportación de un fichero que contenga la estructura de nuestra base de datos.

    Para evitar problemas con el archivo de exportación generado por mysql, os recomiendo la siguiente configuración (estos dos parámetros dan error en la importación):

  • Deshabilitar revisión de llaves extranjeras.

  • Valor auto increment desactivado.

3. Importar el fichero sql a través del gestor de la base de datos utilizando importar.

joompackAutomatizadajoompack

Existen diferentes componentes que nos permiten realizar la copia completa de nuestros sitios web Joomla de una manera automatizada, entre todos los existentes mi favorito sin duda es JoomlaPack.

Joomlapack es una excelente herramienta para crear copias de seguridad del sitio, de las bases de datos, y para la creación de paquetes autoinstalables.

Crea un instalador joomla, que regenera nuestro sitio web sólo con descomprimir el paquete generado, y realizando una instalación Joomla “normal”.

Este componente nos permite copiar:

  • Todo el sitio

  • La(s) base(s) de dato(s)

  • Crear un paquete de instalación, este lanza un instalador joomla que recrea todo el sitio web.

  • Programar tareas de respaldo.

Es muy útil cuando tenemos un desarrollo en local y lo queremos instalar en un servidor de producción, ya que nos pedirá los datos de conexión a la base de datos y recreará nuestra estructura y esquema.

JoomlaPack dispone de dos versiones normal y especial, la versión especial permite realizar copias de seguridad con funciones avanzadas sobre las bases de datos, directorios, exclusiones, etc…

En general el 95% de los administradores de un sitio Joomla verán cubiertas sus necesidades con el componente en su versión normal.

Si os gusta y le sacáis rendimiento no olvidéis de hacerles una donación vía paypal (para que se tomen una caña)

http://www.joomlapack.net/

Gestores de proyectos de desarrollo colaborativos

Cuando estamos creando un proyecto entre varias personas, se hace imprescindible montar un entorno colaborativo.

Existen excelentes programas de libre distribución que nos permiten hacer esto vía web (CMS de gestores de proyectos), de todas las alternativas posibles dependerá el uso que le vamos a dar, mis favoritos:

Gestores de proyectos con controlador de versión de código, y aplicación de tecnologías de programación extremas y/o ágiles como SCRUM, XP, y que nos permiten tanto gestionar los diferentes usuarios, tareas, proyectos, etc…como controlar los cambios realizados en el código, de modo que todos los desarrolladores trabajen sobre el mismo código, y generar un informe sobre quién ha hecho cada cambio, y la posibilidad de recuperar versiones anteriores de ficheros.

logo_collabnetCollabnet svn: Collabnet Subversion.  Integración del ciclo de vida del software, binarios certificados de subversion (asegura que todos los desarrolladores trabajan con la misma versión que la de subversion). Repositorio centralizado de código fuente. Versión para escritorio y multiplataforma.

firstlogofveFVE Project Manager: Integración de tecnologías ágiles y de programación extrema como SCRUMP, XP…Es una versión modificada de dotnet hecha en españa! Incluye también subversion.

Gestores de proyectos vía web sin control de versiones: En esta categoría se encuentran los gestores de proyectos enfocados a la gestión de soporte técnico, y/o herramienta de comunicación con el usuario, y la mayoría disponen de un sistema de incidencias. Todos disponen de creación de grupos, asignación de tareas, creación de roles, control del estado del proyecto, generadores de informes, envío de solicitud de asistencia (ticket…)

phprojekt_logo2

Sobran los comentarios para este sistema. Excepcional, aunque el estilo no está completamente cuidado es fácil modificarlo utilizando plantillas.

phpeasyproject

PhpEasyProject: Sin duda uno de los más prometedores. Múltiples funcionalidad y sobre todo, facilidad de uso, para quienes necesitan un gestor de proyectos, fácil de instalar y de gestionar.

Utiliza el motor de plantillas Smarty, y entre otras cosas permite la exportación de datos a otras aplicaciones mediante xml.

Prueba tus servidores

Una parte muy importante en un sitio web y que se tiene muy poco en cuenta son las pruebas sobre el sitio web, tanto si tenemos un servidor dedicado, o un alojamiento compartido, deberemos comprobar que nuestro sitio aguanta repuntes de visitas, está bien programado, y responde de una manera rápida.

Para hacer pruebas sobre un servidor web, habrá que diferenciar dos partes fundamentales:

  • El rendimiento de la máquina

Para ello tendremos los controladores siempre actualizados con las versiones estables.

Pruebas sobre el procesador, rendimiento de la tarjeta gráfica, tarjeta de red, chequeo de disco duro.

  • El rendimiento de los aplicativos web.

Para ello deberemos hacer pruebas sobre el envío de todos los formularios, comprobación de programación redundante, cierre correcto de las conexiones a la base de datos, eliminación de las variables de sesión transcurrido un tiempo x desde la primera conexión.

Actualización y parcheado del sistema operativo,  software y aplicaciones de terceros.

  • La velocidad de la red.

Debemos asegurarnos un caudal constante, fluido y adecuado al tráfico de nuestro sitio web.

Para ello podemos realizar pruebas, realizando peticiones simultáneas con múltiples usuarios que realicen peticiones constantes al servidor, en diferentes formularios. Esto además de ayudarnos a comprobar la solidez de nuestros aplicativos, comprobará la velocidad de respuesta de la base de datos, carga de memoria, balanceo de aplicaciones…

Estos programas nos ayudan a realizar todo tipo de pruebas automatizadas, son de libre distribución :

Funkload Emula un navegador web (monohilo), con comprobación envío de formularios, funcionamiento de aplicativos web, monitorización de serviedores… Sólo Linux

testmakerTestMaker Test de escalabilidad, funcionalidad y mejora. Se crean agentes que nos permiten emular pruebas inteligentes, como si fuerámos un usuario navegando (multihilo). Buen centro de soporte. Todas las plataformas.

pro_box_med_whiteJblitz Puede hacer pruebas sobre scripts ASP, scripts JSP, Servlets, CGI scripts etc. (Multihilo). Hecho en java, funciona sobre windows. Todas las plataformas, buen entorno gráfico.

Migración

En este momento no tengo mucho tiempo de escribir, y espero que la próxima entrada que se publique sea ya desde el nuevo sitio. Actualmente me encuentro ajustando algunos detalles del tema, y espero tenerlo todo completado como muy tarde a finales de esta semana.

Elegir la mejor distribución linux

Debian

Debian

Cuando se cruza la línea roja, y se prescinde de windows (como principal sistema operativo), y descubrimos el amplio abanico de posibilidades del mundo linux, ante tanta variedad, siempre surge la duda.

¿Qué distribución utilizo? Entre un centenar es díficil elegir… En la informática hay que ser prácticos y utilizar lo más adecuado al uso que se le va dar al pc.

Las ventajas de instalar sistemas operativos linux:

Por lo general instalan los controladores de todo el equipo, además reconocen NTFS (por si trabajas con ficheros de windows, o dos sistemas operativos o más), paquete ofimático, editores de programación, servidor web. Además acaban de liberar el controlador de Atheros (wifi), aunque yo lo único que he tenido que configurar es la capturadora de televisión.

  • Debian Gnome, es lo que necesitas si vas a utilizar tu pc como estación de trabajo. Quizás los escritorios no son tan espectaculares como los de KDE, pero ofrece soluciones sencillas y estables.
  • Si vas a utilizar tu equipo para realizar entornos gráficos, diseños, infografías, seguramente tu elección debería ser Debian KDE o KUbuntu (si tienes un pc potente), también te vale, si te gusta tener escritorios bonitos, a la par que elegantes.
  • Si quieres pasar de Windows, pero tienes miedo, utiliza Ubuntu, es lo más parecido a un windows, también permite hacer la migración desde un sistema windows a un ubuntu, con un cd de arranque, migrando los datos y los usuarios existentes. Es uno de los más utilizados actualmente, auque cuanto más se parece a windows, más le cuesta arrancar.
  • Para montar un Servidor de Explotación, necesitarás distribuciones como CentOS, RedHat. Debian con XAMPP, cualquiera de ellas son buenas elecciones para montar un servidor ofrecen robustez, seguridad, y entornos gráficos muy cuidados.
  • Si vas a ejecutar un linux desde una llave usb (incluso dentro de windows), pc’s inferiores a P-II y 64 Mb RAM. Navegación. Redacción de textos. y cosas sencillas, puppylinux, es tu solución.
  • Para instalar un Terminal Punto de Venta. En un comercio o en una PYME te recomiendo Ubuntu y openbravo POS.

Cada una ofrece las herramientas básicas para realizar esas tareas, y algunos están tan especializados para ciertas tareas, que la instalación estándar ofrece todo lo necesario, para empezar a utilizarlo sin instalaciones adicionales en dos horas. Acostúmbrate a que para instalar un simple programa de grabación necesites instalar 27 librerías adicionales, windows se escacharra, pero el instalador, trae todas las librerías necesarias. Por otro lado el sistema de repositorios hace que incluso esta tarea sea agradable. Otra ventaja es que encontrarás programas para casí todo…Y sino, siempre puedes hacer tu propia distribución…

Enlazo a un programa de Zegeniestudios para encontrar la distribución que se adapta a tus necesidades, te va haciendo unas preguntas y te recomienda las dos distribuciones que más se adaptan a tus necesidades, me ha recomendado !justo las dos que más utilizo.!.

  • ¿Cuál es la mejor distribución linux? Artículo de infomicros.

Sobretodo, utiliza la distribución que mejor se adapte a tus necesidades , hay distribuciones especializadas para equipos dedicados a una sola tarea.

* Tengo la impresión de que Gnome administra mejor los sistemas ntfs en discos duros usb que KDE.

** En todos estos sistemas se puede instalar una imagen de windows como sistema operativo virtualizado con virtualbox, con su propia dirección ip.

Los 8 mandamientos para crear una página web

1. Sé consciente de las necesidades de tu cliente, y haz consciente a tu cliente de tus limitaciones.

El cliente habrá visto algo muy bonito en no sé qué página y debería comprender que técnicamente puede ser una cutrada. Hay que ser inflexible en la no compatibilidad con explorer, limitar el uso de flash y negarse, alegando incluso motivos religiosos, los marcos y el diseño con tablas.

2. Elige un alojamiento adecuado a tus necesidades.

Para un sitio web que vaya a recibir pocas visitas, seguramente nos servirá cualquier alojamiento compartido con una base de datos, para un proyecto más complejo habrá que pensar en la posibilidad de montar incluso un servidor dedicado. Factores muy importantes que tendrás que tener en cuenta al elegir tu proveedor de alojamiento: acceso ftp, espacio, tráfico permitido, cuentas de correo, arquitectura del servidor: apache, windows, linux, si permite la ejecución de script, perls, cgi´s (esto a veces impide que podamos generar direcciones amigables, estadísticas y componentes de terceras partes.

3. Elige la tecnología que utilizarás para crearlo.

Un Sistema Administrador de Contenidos (CMS), puede ser un buen punto de partida para una página segura, con multitud de funcionalidades y un buen diseño. Joomla!, Drupal y WordPress, correctamente configurados y personalizados ofrecen soluciones estables y fáciles de instalar.

4. Define la jerarquía del sitio.

Realiza una maqueta o prototipo que permita mostrar una serie de secciones, para que posteriormente el cliente añada las que crea oportunas.

5. Adios a los malos hábitos.

No utilices diseño con tablas, ni marcos, ni colores estridentes que puedan causar epilepsia. No abuses de las presentaciones flash.

6. No contribuyas a dificultar la programación.

Está prohibido que el sitio solo sea compatible con un navegador, si es estándar le ofreces suficientes alternativas al usuario.

7. Mejora la experiencia del usuario.

Haz que tu sitio sea accesible, estándar y usable. Siempre en la medida de tus posibilidades.

8. Mantén limpia la red

Realiza pruebas sobre tu sitio, existen multitud de programas de libre distribución que permiten realizar pruebas de estrés y de caja blanca y negra, son una excelente herramienta de auditoría, antes de que el sitio se encuentre en explotación.

Estadísticas para todos

Las estadísticas son un método que nos permite conocer los puntos débiles de nuestro sitio, para mejorar su contenido, ponerlo en un sitio más llamativo y mejorar la usabilidad de nuestro sitio. En general los Proveedores de servicios ofrecen estadísticas del sitio previo pago, si te lo quieres montar por tu cuenta, aquí tienes unas ideas.

Existen muchas soluciones de libre distribución tanto para CMS como para montarlo con paquetes .

122_joomlastatspngComponente JoomlaStats: Estadísticas para Joomla !, válido para las versiones 1.0 y 1.5.

Se instala desde el panel de administración -> Instalador de componentes (1.0) y en 1.5 desde el panel de administración -> Instalador de extensiones. Leer el resto de esta entrada »