Archivo de la categorÃa ‘A Fondo [Desarrollo Web]’
Asegurar un sitio Joomla! en 4 pasos
Si tenemos un sitio web Joomla básico, aquà os van cuatro sencillos consejos que os permitirán subir mucho el nivel de seguridad de una instalación predeterminada en media hora.
1. Configurar los permisos:
Los permisos se debe configurar 755 a las carpetas y 644 a los ficheros.
2. Cambiar la ruta al administrator
Si hemos realizado la instalación predeterminada y no hemos movido/renombrado ningún directorio, el atacante sabe perfectamente la ruta donde se encuentra instalada nuestra parte de administración. Para poner dificultades: Leer el resto de esta entrada »
Añadiendo funcionalidad a drupal [instalar y configurar módulos]
La segunda entrega de la instalación de drupal, artÃculo publicado en webmasterlibre.com.
En este artÃculo comenzamos a crear nuestro sitio web mediante módulos que nos permiten añadir funcionalidades.
Leer más [artÃculo en webmasterlibre.com]
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.
Collabnet 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.

FVE 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…)
Sobran los comentarios para este sistema. Excepcional, aunque el estilo no está completamente cuidado es fácil modificarlo utilizando plantillas.

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
TestMaker 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.
Jblitz 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.
Estándares web, un paso de gigante
Para muchas empresas, la accesibilidad web y el uso de estándares, es algo que se va a implantar, aunque no se sabe muy bien cuándo. En principio puede parecer un trabajo más costoso, pero esto es desde una visión simplista y de poco proyecto de futuro.
Esa empresa que se ocupa del mantenimiento (y con la alta rotación laboral que hay en la informática) y nuevos desarrollos, tardará el doble de tiempo en cambiar un código mezclando diseño y código, ya que probablemente la persona que tiene que hacer la modificación tardará más en encontrarlo, y la persona que lo hizo ya no trabajará allÃ.
Una buena programación y estructuración del código (además de la separación de código, estilos y elementos gráficos, y abundante documentación del proyecto), permite un mantenimiento menos costoso, y una implementación o migración mucho más sencilla, mejora la calidad del proyecto y facilita el mantenimiento del código.Esto permite ahorrar mucho dinero y el producto acabado es de mayor calidad.
Para un proyecto público deberÃa ser obligatoria su implementación, puesto que no concebimos la idea de un edificio público sin accesos para minusválidos, no se puede pensar en la creación de un proyecto web, sin tener claro que hay que separar el contenido del código, y facilitar el acceso universal a la web, hasta la medida que técnicamente sea posible.
Otro de los factores que no se tienen en cuenta, aunque pueda tratarse de uno de los más importantes es el nombre del dominio:
- Se debe escoger un nombre fácil de recordar
- Permitir encontrar la web con www o sin www.
- Impulsar el uso de microformato en los navegadores web. (De esto me ha convencido entusiasta2.0)
- Se debe elegir un dominio acorde a los contenidos de la web (esto es muy importante para la categorización de internet), esto ayudarÃa mucho a los buscadores y a los navegadores web, y mejorarÃa la experiencia del usuario.
- Utilizar subdominios coherentemente, para la parte del panel de control, es más sencilo de administrar http://midominio.com/estadisticas/ que http://estadisticas.midominio.com/, esto todavÃa lo discuten los talibanes que administran los dominios, subdominios y nombres de red. Aunque se deberÃa considerar de uso obligatorio en intranetes corporativas y en accesos que requieran seguridad adicional, no deberÃa salir de ese ámbito, y sigue de moda en muchos sitios.
Utilizando estándares web contribuyes a mejorar la red, y deberÃa ser un proyecto global y estar incorporado en todas las metodologÃas de desarrollo existentes, y esto es lo que se debe cambiar para promover su uso.
Debido al crecimiento exponencial de internet la organización de la misma deberÃa ser ejemplar, y en estos momentos ni siquiera los proveedores de internet pueden dar un cifra exacta de las webés o información que contiene. La organización de la web mediante estándares es imprescindible para asegurar la supervivencia y crecimiento de la web. Para ello hay que partir de la base, si todos los desarrolladores utilizarán estándares web, serÃa más fácil la colaboración entre diferentes departamentos, y permitirÃa un uso más eficente de los recursos de la red.
Aunque viendo la web del W3C, es normal que muchas empresas piensen que ser accesibles y usando estándares no van a conseguir páginas bonitas e impactantes visualmente, aunque este no sea el objetivo final, ayuda a aumentar el prestigio de la empresa.
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 .
Componente 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 »