lunes, 23 de marzo de 2009

Efecto reflejo sencillo en Gimp

En este post vamos a explicar como lograr un efecto reflejo sencillo en una imagen como la de la cabecera de este blog. Para ello utilizaremos el programa Gimp.

El primer paso es seleccionar la imagen y abrirla


Luego vamos al menú Imagen > Tamaño del lienzo y tras desbloquear la relación de aspecto entre altura y anchura, le damos a la imagen una altura del doble de la que tiene, para poder colocar el reflejo.

A continuación hacemos click en Capa > Duplicar la capa y seguidamente en Capa > Transformar > Voltear verticalmente. Y colocamos la nueva capa en el espacio que hemos habilitado en el paso anterior.


El siguiente paso es aplicarle una mácara al reflejo. Asi que vamos al menú Capa y ahí elegimos la opción Máscara > Añadir máscara de capa. Se abrirá un menú que nos dará a elegir como iniciar la máscara de capa. Escogemos blanco (opacidad total) y hacemos click en el botón añadir.

Tras ésto cogemos la herramienta gradiente y la aplicamos a la capa del reflejo haciendo click de abajo hacia arriba.

Finalmente sólo nos queda aplicar la opacidad deseada al reflejo, para ello basta con ir a Diálogos > Capas. Cuando terminemos guardamos la imagen con el formato adecuado, aceptando las preguntas que nos hará el programa acerca de la exportación.


En el siguiente vídeo tutorial, se puede ver el mismo proceso que hemos seguido.


jueves, 19 de marzo de 2009

Alternativas de libre distribución

Muchas veces utilizamos software de pago sin licencia, principalmente porque estamos acostumbrados a utilizar un determinado programa pero en otras ocasiones puede ser que simplemente sea porque desconocemos que existen otras alternativas.

A continuación hablaremos de algunas pocas de las muchísimas alternativas de libre distribución, que además de ser totalmente gratis pueden ahorrarnos ese tiempo en buscar cracks o parches para nuestros programas sin licencia.


Infrarecorder: (http://www.infrarecorder.org/) software para grabación de discos ópticos. Pues sí, se pueden grabar cd's y dvd's con otro programa que no es el Nero. Disponible en Microsoft Windows entre otras, funciona igual que el resto de grabadores comerciales. Está disponible en 31 idiomas, incluido el castellano. Además existe una versión portable.



Gimp: (http://www.gimp.org.es/) es un programa para el tratamiento de imágenes. Está dentro del proyecto GNU y aunque fue una aplicación pensada inicialmente para Linux, existen versiones para MAC y Windows. Dispone de un amplio abanico de herramientas útiles y ágiles para la edición de imágenes. Quizás lo que más sorprende de este programa cuando lo utilizas por primera vez es su interfaz, puesto que separa la barra de herramientas de la pantalla principal, en lugar de mostrarlo todo junto, como es lo habitual. De todas formas, el interfaz es configurable, asi que si el usuario es capaz de superar este "trauma" inicial, descubrirá en Gimp una seria alternativa al Photoshop.


OpenOffice.org: (http://es.openoffice.org/) es un paquete de ofimática que incluye software procesador de textos, hoja de cálculo, base de datos y presentaciones. En otras palabras, tiene un Word, un Excel, un Access y un PowerPoint. También incluye otras herramientas como un editor de html y un programa para dibujo vectorial. Disponible en castellano y para muchas plataformas (Windows, Linux, MAC,...).



Eclipse: (http://www.eclipse.org/) está basado en Java y se trata de un marco de desarrollo y un conjunto de servicios para construír un entorno de desarrollo a partir de componentes conectados (plug-ins).




Mozilla Firefox:
navegador de Internet que incluye navegación por pestañas, corrector ortográfico, marcadores dinámicos, administrador de descargas y un sistema de búsquedas integrado que utiliza como motor de búsqueda el que desee el usuario. Además permite añadir extensiones creadas por terceros que amplian su funcionalidad como filtros, aceleradores de descargas, información metereológica, etc.



Mozilla Thunderbird:
es un cliente de correo electrónico que dispone de potentes filtros, permite la instalación de extensiones y personalizar la barra de herramientas.



Este ha sido un pequeño esbozo de algunas de las aplicaciones de libre distribución que tenemos disponibles y con las que podemos obtener el mismo o mayor rendimiento (depende de gustos) que con las que requieren licencia, pero de forma totalmente abierta y gratuíta.

Seeds y Leechers

Si alguna vez has utilizado un cliente de intercambio de ficheros basado en torrents, tipo Bittorrent o Azureus, es posible que a la hora de descargarte un .torrent te hayas preguntado que significa la información asociada al mismo, en especial que es eso de los leechers y seeds. O quizás te hayas preguntado porque se bajan más rápido torrents de contenido más reciente.

Pues bien, como seguramente ya sabéis, en una red de intercambio de ficheros p2p basada en Bittorent los ficheros se dividen en partes con el objetivo de aliviar la carga en la descarga.

Los agentes de usuario o pares, que son las aplicaciones cliente que nosotros ejecutamos en nuestro ordenador, se encargan de descubrir que otros nodos disponen de las partes del archivo que nos faltan y de conectarse a ellos para realizar la descarga. Al mismo tiempo, atienden peticiones de otros clientes con el mismo propósito.

Evidentemente, para poder llevar a cabo la descarga de un fichero con éxito, es necesario que inicialmente por lo menos exista en la red un nodo con todas las partes. A estos nodos se les llama seeds (semillas) ya que únicamente comparten y no descargan. Al resto de nodos se les llama leechers (sanguijuelas).

Por lo tanto, contra más seeds haya presentes en la red, más seguridad tengo de que mi agente de usuario podrá descargarse las partes que me faltan para completar el archivo.

Los seeds tratan de maximizar su velocidad de subida (upload), con el objetivo de que los leechers completen sus partes y pasen a ser seeds. Por eso como en los primeros días de un torrent hay muchos usuarios pidiendo un fichero, se crean nuevas semillas rápidamente. Esta es la razón por la que contra más nuevo es el torrent, más rápida es la descarga. Y conforme más antiguo se va haciendo la probabilidad de que un seed "aguante" en la red es menor, ya que progresivamente van abandonando la misma.

Si una red se queda sin semillas, se dan dos situaciones posibles:
  1. Que juntando las partes de los leechers se tengan todas las partes
  2. Que juntando las partes de los leechers no se tengan todas las partes
En el primer caso es posible que alguno consiga descargarse el archivo. En el segundo caso se llegará a un estado de "estancamiento" en el que todos los leechers llegarán a tener las mismas partes y claro está, a faltarles las mismas y no llegarán a completar la descarga del archivo.

miércoles, 18 de marzo de 2009

Sé un manager: Comunio




Se trata de la nueva página web de moda para los aficionados al fútbol. Entrando en la página http://www.comunio.es/ el usuario pasa a convertirse en mánager de fútbol, al más puro estilo Txiki Beguiristáin

¿En que consiste? Muy sencillo, primero se requiere de un grupo de personas que quieran formar un campeonato. Uno de ellos, que será el encargado de realizar las labores de administración, escogerá una de las múltiples ligas a elegir: española, italiana, inglesa, alemana, etc. A partir de ahí el resto de usuarios se unirán a la liga creada por el administrador, previo registro en la página.

Cada usuario comienza con un equipo totalmente aleatorio de jugadores y con 2.000.000 de puntos para comprar en el mercado. Éste es precisamente uno de los mayores atractivos del juego, ya que cada día aparecen nuevos jugadores en el mercado y los usuarios deben pujar como si fuera una subasta. Cada usuario desconoce el dinero que ofrecerá el resto, así el contratar jugadores para tu equipo se convierte en un claro dilema entre pagar el precio justo u ofrecer un montón de pasta y quedarte en números rojos (mala decisión con los tiempos que corren) para llevarte al jugador pretendido.

Evidententemente los propios usuarios pueden poner a sus jugadores en el mercado para vendérselos a otros competidores o incluso al propio sistema y así hacer dinero.



La clasificación se realiza según los puntos que saquen en la jornada liguera real el equipo titular que haya elegido cada usuario. Para los puntos que obtiene un jugador se tienen en cuenta diversos aspectos como el número de goles que ha marcado, tarjetas recibidas, expulsiones y en el caso de la liga española, los puntos que le den en el diario As. Este último sistema de puntuación es quizás uno de los aspectos a mejorar ya que muchas veces no es del todo objetivo.

Otro aspecto interesante es como algunos jugadores suben de precio mientras que otros se devalúan según su estado de forma durante la temporada. Esto hace que el fichar un "crack" por mucho dinero no te asegure el éxito, y que se potencien las labores de ojeador de los usuarios para fichar jugadores rentables (buenos, bonitos y baratos).

A todas estas características hay que sumarle una interfaz muy sencilla y fácil de usar y un tablón de noticias donde los usuarios pueden intercambiar sus opiniones. Todo ello gratuitamente, aunque existen una opción plus en la que pagando una cuota se amplía la información de la página y se puede ver que jugadores están sancionados o lesionados.

En definitiva, se trata de un auténtico pasatiempo, ya que no solo hay que invertir horas en la gestión de tu equipo sino que hay que sumarle las de "investigación", ya que puede ser que algún jugador tuyo se quede en el banquillo esa jornada. Y cómo no, los incontables ratos de tertulia que te proporciona el dichoso juego si participas con tu cuadrilla de amigos.

El control PasswordRecovery en .NET

En toda aplicación web que se precie es importante dar la posibilidad al usuario de poder acceder a su cuenta en caso de que haya olvidado su contraseña. El proceso de recuperación es el siguiente:
  • Se solicita al usuario su login (nombre de usuario)
  • Se le formula una pregunta de seguridad
  • Si la respuesta es correcta se le envía a su cuenta de correo su contraseña o una nueva con la acceder a su cuenta

En .net existe una clase que automatiza este proceso, PasswordRecovery. No obstante existe un problema asociado, y es que no vamos a poder hacer llegar el correo al usuario si nuestro servidor requiere de algún tipo de cifrado (protocolo SSL), ya que el control PasswordRecovery por defecto no utiliza el cifrado al enviar. Para solucionarlo debemos indicárselo.

Vayamos por partes:

  1. Lo primero que hay que hacer es configurar correctamente el cliente smtp. Si utilizas Visual Studio, ésto es muy sencillo: hay que seleccionar Definir configuración de correo electrónico en la pestaña Aplicación del menú Sitio Web -> Configuración de ASP.Net y ahí indicar los parámetros de nuestro correo smtp.

  2. Rellenar la propiedad From de PasswordRecovery con nuestra dirección de correo.

  3. Ahora debemos reescribir el método SendingMail de nuestro control para poder permitir el envío cifrado:

Protected Sub PasswordRecovery1_SendingMail(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.MailMessageEventArgs) Handles PasswordRecovery1.SendingMail
(1)Dim smtp As SmtpClient = New SmtpClient()
(2)smtp.EnableSsl = True
(3)smtp.Send(e.Message)
(4)e.Cancel = True
End Sub

El código esta en Visual Basic. En la primera línea creamos una nueva instancia del cliente smtp, en la línea dos activamos el envío con ssl y las líneas tres y cuatro simplemente se encargan de que el envío se realice como queremos y de evitar que se envíe dos veces el mismo correo.

Espero que os sea útil.

Bienvenidos

Bueno pues este es mi primer blog. Lo he creado porque se trata de una actividad de las asignaturas web 2.0 del g9 (http://www.uni-g9.net/) que he escogido de libre elección.

Aquí intentaré publicar información lo más interesante y útil que pueda, relacionada con la informática en general, como alguna página web interesante, el cómo resolver algunos problemas de programación que personalmente me he encontrado y alguna curiosidad que he aprendido durante la carrera.

Pues nada, esta ha sido la presentación. Un saludo a todos y gracias por pasaros por aquí.