Oct
26

trac_logoEs curioso como algo tan sencillo como es añadir la autenticación de usuarios en un sistema Trac puede costar tanto y a la vez haber tan poca información en Internet sobre este tema que realmente resuelvan el “problema” que no hace más que lanzar mensajes como:

Internal Error: Authentication information not available. Please refer to the installation documentation.

Os pongo en situación, conforme instalas Trac, te encuentras con que el módulo de autenticación no está habilitado, lo que te impedirá acceder al menú de administrador entre otras tantas cosas, no sé si este problema se ha visto acentuado por que mi sistema Trac se encuentra instalado en un servidor compartido de Dreamhost haciendo uso del sistema One-click o si simplemente es tan complicado o de hacer siempre.

Antes de nada vamos a ver los requisitos necesarios:

  • Necesitamos tener instalado Trac en nuestro servidor.
  • Necesitamos acceso shell a nuestro servidor.

Suponiendo que tenemos todo esto, procedamos con la configuración e instalación de AccountManager plugin:

  • nos logueamos en la shell de nuestro servidor (sustituir SERVIDOR por el nombre del servidor de nuestra cuenta y USUARIO por el nombre de usuario):

ssh SERVIDOR -l USUARIO

  • Ahora os pedirá la contraseña, la tecleáis y presionáis intro.
  • Una vez logueados ejecutamos:

svn checkout http://trac-hacks.org/svn/accountmanagerplugin/0.11
cd 0.11
python setup.py bdist_egg
ls dist

  • Tras ejecutar estos comandos debería aparecer por pantalla algo parecido a:

TracAccountManager-0.2.1dev_r5836-py2.4.egg

  • Una vez que tenemos este dato, podemos ejecutar el siguiente comando (sustituimos TRAC por el dato que hemos obtenido anteriormente => TracAccountManager-0.2.1dev_r5836-py2.4.egg, y PATH lo sustituimos con el nombre de la carpeta o carpetas en las que se encuentre instalado nuestro Trac, en mi caso es trac.keopens.org):

cp dist/TRAC ~/PATH/plugins/TRAC

  • ahora nos dirigimos a:

cd ~/PATH/conf

  • Le decimos al Trac qué archivos queremos utilizar para loguearnos, para lo que añadimos el el archivo trac.ini que se encuentra en /conf (sustituimos USERNAME por el usuario con el que nos hemos logueado, y SVN con el nombre del repositiorio con el que se enlaza TRAC):

[account-manager]
password_file = /home/USERNAME/svn/SVN.passwd
password_store = HtPasswdStore

  • Añadimos nuestro usuario al grupo de administradores (sustituye USER por el usuario con el que te logueas en SVN)

trac-admin .. permission add USER TRAC_ADMIN

  • Por último habilitamos los componentes que nos permitan loguearnos, registrar nuevos usuarios,… (editamos de nuevo trac.ini)

[components]
trac.web.auth.LoginModule = disabled
acct_mgr.admin.* = enabled
acct_mgr.api.* = enabled
acct_mgr.db.* = enabled
acct_mgr.htfile.* = enabled
acct_mgr.http.* = enabled
acct_mgr.notification.* = enabled
acct_mgr.pwhash.* = enabled
acct_mgr.svnserve.* = enabled
acct_mgr.web_ui.* = enabled

Tags:
Categoría Open Source, Programación, Web | 1 Comentario »
Oct
14

the_pirate_bay_logo

The Pirate Bay, el tracker de torrents más grande del mundo, como probablemente ya sabrás, se encuentra frente a una serie de demandas que pueden hacerle pasarlo mal a sus dirigentes, dejando a un lado mi opinión sobre el tema, os dejo un enlace que contiene muchas (no sé si todas) las cartas que les han llegado a sus responsables con origen en grandes empresas del software, música,… “informándoles” sobre su postura frente a la página web y las medidas legales que éstas van a tomar si no se retiran determinados contenidos de la misma.

Las cartas están en inglés, y sé que lleva mucho tiempo leerlas (de hecho he de confesar que sólo h ledio algunas, las que me iban diciendo que merecían la pena) pero algunas de ellas son dignas de leer, y otras simplemente está bien leerlas para ver como está el panorama.

Tags:
Categoría Curiosidades, Legal / Leyes, Web | Sé el primero en comentar!
Oct
2

Google Wave es… no, no voy a explicaros que es Google Wave voy a poneros un video en inglés y que a decir verdad es un poco largo, pero merece la pena verlo.

Pues bien desde que se hecho pública esta nueva aplicación, han empezado a surgir miles y miles de mensajes de personas que deseaban tener una cuenta en esta nueva aplicación de Google, muchos ofrecían “invitaciones” y muchos más las pedían hasta aquí todo normal ¿no?, pues bien me ha llegado a los oidos que se están subastando invitaciones por ebay y que una sola invitación ha llegado a pujarse por unos 5.000$USD, afortunadamente, los de ebay han borrado la subasta a esta hora.

google wave ebayAhi lo dejo, ¿cómo lo veis?

Por cierto, si quieres pasar a ser uno de los que posean una cuenta lo antes posible, has de rellenar el formulario que encontrarás en http://wave.google.com

Tags:
Categoría Web | 1 Comentario »
Jul
28

logo_facebookEstoy seguro de que en mayor o menor medida conocerás facebook, la red social que ha revolcionado internet y hecho de Mark Zuckerberg uno de los multimillonarios más jóvenes de la historia, si no el que más.

Para los que anden una poco más apartados del tema Facebook es una red social (la primera y la que más éxito tiene en la actualidad) que nació inicialemente como un sitio exclusivo para los estudiantes de Hardvard, pero que en la acualidad admite la creación de cuentas de todo aquel que disponga de una cuenta de correo electrónico, es decir todo el mundo, ya que éstas son gratuitas.

Pues bien, vamos a ver como algo que nació para un grupo reducido de personas ha ido creciendo poco a poco gracias a los ingenieros que trabajan día a día en la misma.

Antes de nada comentar que los datos que voy a utilizar en este artículo los he sacado de una presentación (que he encontrado en Pensamientos Ágiles) de Aditya Agarwal, el director de ingeniería de facebook.

Facebook está programado principalmente en PHP, MySQL y Memcache (LAMP), esto es así lógicamente porque es el conjunto de herramientas con las que comenzó la aplicación (por aquello de que iba a ser una aplicación y tal, supongo), y aunque hoy en día para grandes aplicaciones suele utilizarse lenguajes como .NET (que es un lenguaje que permite una mayor interacción con los procesos del equipo), los del equipo de desarrollo han sabido ingeniárslas para poder sacar adelante el proyecto, aunque para ello hayan tenido que hechar mano de varios tipos de lenguajes (C++, Java, erlang)…

Estadísticas de facebook:

  • Más de 120 millones de usuarios activos.
  • Más de 5 billones de páginas vistas (50 billones del sistema ingles).
  • Más de 1 billón de fotos subidas a sus servidores (10 billones en el sistema inglés).
  • Más de 1.000 millones de conexiones.
  • Más de 50.000 aplicaciones hechas para Facebook.
  • Cuenta con el apoyo de más de 400.000 desarrolladores.

PHP (impresiones varias, antes y después):php

  • Definen inicialmente PHP como un lenguaje rápido, bueno y que cuenta con una gran comunidad de desarrolladores y de librerías.
  • Es un lenguaje no tipado lo que dificulta el entendimiento del código y de la pila de ejecución.
  • Es un lenguaje con malas opciones de escalabilidad y optimización.
  • Cada archivo incluido aumenta la complejidad de manera lineal.

MySQL:mysql_logo

  • Una de sus mayores impresiones con el sistema es que es “realmente rápido”.
  • Utilizan pares <key, value> (clave, valor) para almacenar los datos en las bases de datos.
  • No realizan ningún join en producción, ya que al tratarse de una base de datos distribuida, consume recursos innecesariamente.
  • Los datos más antiguos se archivan, ya que éstos son los que menos probabilidades tienen de ser accedidos.
  • A pesar de que la mayor parte de d los datos tienen consistencia, éste no es un hecho que les preocupe mucho, ya que no hace falta ningún tipo de inconsistencia para la maoyoría de los datos.
  • Hay una base de datos que contiene un grafo de los usuarios del sitio, para así poder acceder fácilmente a los datos de cada usuario.
  • Las modificaciones que han hecho en MySQL son prácticamente nulos.

Memcache:

  • Este sistema dota a Facebook de la velocidad que lo caracteriza.
  • Dota a facebook con una latencia < 200 ms.
  • Cuentan con 25TB (1TB = 1024GB) de memoria.
  • Hacen uso de multi-gets.
  • Han cambiado el protocolo de comunicación, que pasa de ser TCP a UDP para reducir al máximo el cosumo de memoria por los buffers.
  • Han modificado el núcleo de Linux (sistema operativo sobre el que corre facebook) para permitir que Memcache trabaje con equipos de más de un núcleo.

Inconvenientes de PHP y otras cuestiones:

PHP no es precisamente el lenguaje más rápido que existe, ya que se trata de un lenguaje interpretado y si a eso le sumamos que hay ciertas tareas que no se pueden llevar a cabo sólo con el uso de PHP, llegamos a la conclusión de que quizá no haya sido una buena elección para este tipo de aplicación, lo que les ha llevado a intentar migrar el núcleo de facebook a python vaias veces, pero ninguna de ellas llegó a tener el resultado esperado.

Por este motivo, el equipo de facebook creó Thrift, un sistema que permite (de forma más eficiente que otros similares) hacer que PHP interactue con otros lenguajes de programación, como Java, C++,…

Otra característica importante es que si ya existe una librería en Java y no en PHP no se preocupan en migrarla, directamente hacen uso de ella, como por ejemplo la librería para realizar el envío de SMS.

Todo este rollo ha venido inspirado por una serie de conversaciones que tengo con gente de mi entorno en las que discutimos si PHP merece o no la pena, lo que me ha hecho investigar un poco, y si bien no he cambiado de opinión tras averiguar algo más sobre Facebook, he de reconocer que puede llegar a ser un fastidio tener que recurrir a otros lenguajes de programación en determinadas ocasiones, así como que se trata de un lenguaje interpretado y no es el más rápido ni mucho menos o que simplemente se trata de un lenguaje no tipado, lo que puede dificultar un poco la interpretación de código, de manera que a la hora de enfrentarnos con proyectos con un prebisible importante crecimiento, tengamos que plantearnos otras tecnologías, como son .NET y Java.

Tags: , , ,
Categoría Web | 16 Comentarios »
Jul
27

logo_contrastScribd es una página web que cuenta con un tiempo ya a sus espaldas que se dedica a poner a disposición de sus visitantes libros completos y presentaciones online de manera totalmente gratuita.

La página dispone de un visor hecho en flash para leer los libros/presentaciones online si así lo deseamos, pero (cosa importante) también nos permite descargarnos los libros en el formato que deseemos:

  • *.pdf
  • *.doc
  • *.txt
Categoría Web | 2 Comentarios »
Jun
30

ibex-35En estos tiempos de crisis… nah no voy a empezar a hablar con una coletilla tan utilizada…

La verdad es que todas las mañanas visito los periódicos online, y llevo un tiempo fijándome en que a la derecha (suele ser ahí) se puede observar una gráfica con la evolución de la bolsa en el día hasta el momento actual, lo que me ha despertado una curiosidad en lo que a bolsa se refiere, por lo que he decidido aprender como funciona esto.

Mi primer paso ha sido buscar una página para hacer un seguimiento de la bolsa en tiempo real, pero las páginas que ofrecen este servicio realmente son de pago, pero podemos encontrar algunas alternativas que creo que, para empezar están bien:

  1. BolsaMadrid
  2. BolsaMania

Y hasta aquí mi andanza hasta el momento, a ver si ganamos algo.

Tags:
Categoría Economía, Web | Sé el primero en comentar!
Jun
23

Es posible, que si eres desarrollador web, te hayas visto en la situación de tener que instalar un servidor web en un ordenador que no es el tuyo a toda prisa para modificar determinados archivos de la aplicación utilizando paquetes como wampServer, AppServ o Xampp (suponiendo que con las aplicaciones que estos ejecutables nos baste), para acto seguido poder ejecutar los archivos que ya llevas en el pendrive.

webserver

Pues bien, con Usb Webserver esto se ha acabado, esta pequeña aplicación nos permite de una manera muy sencilla, llevar nuestro servidor en un pendrive y ejecutarlo en el ordenador que nos plazca sin tener que instalar nada en absoluto.

Pero no todo lo que reluce es oro, al descomprimirlo, me salta una alarma diciéndome que tiene un Troyano, sin embargo navegando por varios sitios web he visto que afirman que está limpio, mientras que otras lo están examinando

Tags:
Categoría Programas, Web | Sé el primero en comentar!
Jun
18

tuenti

Al publicar contenidos en tu perfil -fotos, archivos, textos, vídeos, sonidos, dibujos, logos o cualquier otro material- conservas todos tus derechos sobre los mismos y otorgas a TUENTI una licencia limitada para reproducir y comunicar públicamente los mismos, para agregarles información y para transformarlos con el objeto de adaptarlos a las necesidades técnicas del Servicio. Esta autorización es mundial, no exclusiva (lo que significa que puedes otorgar otra licencia sobre tu contenido a cualquier persona o entidad, además de a TUENTI), por todo el tiempo que tengas vigente tu perfil y con la única y exclusiva finalidad de que TUENTI pueda prestarte el servicio en los términos explicados en estas Condiciones de uso.

La anterior licencia quedará rescindida una vez que elimines tu contenido del Servicio o des de baja tu perfil. A partir de ese momento, TUENTI interrumpirá la comunicación de tu contenido a la mayor brevedad posible.

En relación con el contenido que publiques en el Servicio, garantizas:

  • Que eres el propietario o el titular de cualquier otro derecho que te permite conceder a TUENTI la licencia para su publicación.
  • Que no vulnera leyes aplicables tales como las relativas al derecho a la intimidad, a la imagen y/o al honor, derechos de propiedad intelectual o industrial o similares ni ningún derecho de un tercero, ya sea una persona o una entidad.

Por ello, mantendrás indemne a TUENTI ante cualquier demanda o reclamación presentada por un tercero en relación a cualquier derecho legítimo sobre el contenido que hayas publicado en el Servicio.

Como habréis podido leer en la cita anterior, Tuenti ha cambiado su política  de derechos de los contenidos que sube el usuario a la red social, de manera que a diferencia de la política que tenía anteriormente, Tuenti ya no es propietario de todos los derechos de contenido, sino que simplemente le das a Tuenti la licencia de publicar sendos contenidos. Todos esto, lógicamente les sigue protegiendo igual ante la subida de contenido ilegal.

Pero realmente, ¿en qué consiste esa licencia que se le cede?, yo no lo sé.

Tags: , ,
Categoría Web | Sé el primero en comentar!
May
29

wordpressSé que ya hay muchos post circulando por la web en los que cuentan como migrar WordPress de un hosting a otro, y otros tantos que que cuentan cómo hacer un cambio de dominio en las bases de datos, pero no he encontrado ninguno que plasmase todos los errores que me han aparecido a mí, por lo que procedo a hacer una pequeña guía de como migrar WordPress y a la vez solucionar algunos de los posibles errores que te podrán suceder al hacerlo.

Guía de Migrado:

  1. Hacer una copia de la base de datos antigua.
  2. Hacer una copia de seguridad de la careta wp-content.
  3. Instalar wordpress en el nuevo servidor.
  4. Importar en la base de datos del nuevo servidor la base de datos que previamente hemos exportado, sobreescribiendo completamente la última.
  5. (Sólo si se ha cambiado el nombre de dominio) Cambiar en la base de datos la url del blog y de  la página principal.
  6. Redireccionar las visitas del dominio antiguo al nuevo, para lo cual escribimos en el .htaccess:

Options +FollowSymLinks

RewriteEngine on

RewriteRule (.*) http://www.nuevodominio.com/$1 [R=301,L]

Solución de problemas:

Las imágenes que subí en mi host anterior, no se visualizan porque tienen la url antigua

Ejecuta en la base de datos en la que está instalada la nueva versión de wordpress:

UPDATE wp_posts SET post_content = replace(post_content, ’http://www.dominioantiguo.com’, ‘http://www.dominionuevo.com’);

No me deja subir imágenes, dice que no se puede crear el directorio /update/

Bien, la respuesta es sencilla, como has cambiado de servidor físico, es muy posible que el path en el que están alojados los ficheros del CMS sea distinto, por lo que, hemos de ir a Opciones > Miscelánea y poner el path del nuevo servidor.

Tags: ,
Categoría Manuales, Web | 2 Comentarios »
May
29

logo

Como algunos de vosotros habréis podido observar, aprovechando que he migrado Bit’n'Byte de servidor, también he aprovechado a cambiar el nombre de la página, de manera que pasa de llamarse Bit’n'Byte a Dipler, Dipler es el nombre de un antiguo proyecto que empecé con unos compañeros y que por suerte o por desgracia no fuimos capaces de sacarlo adelante.

¿Por qué este cambio?

Muy sencillo, cada vez que le digo a alguien el nombre de mi página (www.bitnbyte.org), me da la impresión de que les cuesta quedarse con el nombre, justo lo contrario que pasaba cuando hacíamos uso del nombre de www.dipler.org.

¿Está todo 100% operativo?

El blog está completamente migrado y 100% operativo, pero las aplicaciones que se encontraban en los subdominios no.

¿Qué va a pasar con Bit’n'Byte.org?

Nada en absoluto, ahora si intentas acceder utilizando la antigua url, simplemente serás redireccionado a la nueva.

¿Y el feed?

Como estábamos utilizando el servicio de Feedburner para contabilizar los lectores, he redireccionado la cuenta de FeedBurner al nuevo feed, de manera que no tendrás que hacer nada (en caso de que quieras continuar siguiéndonos).

Categoría Web | Sé el primero en comentar!