jueves, 3 de diciembre de 2009

Manifiesto «En defensa de los derechos fundamentales en internet»

Ante la inclusión en el Anteproyecto de Ley de Economía Sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de internet manifestamos nuestra firme oposición al proyecto, y declaramos que…

1.- Los derechos de autor no pueden situarse por encima de los derechos fundamentales de los ciudadanos, como el derecho a la privacidad, a la seguridad, a la presunción de inocencia, a la tutela judicial efectiva y a la libertad de expresión.

2.- La suspensión de derechos fundamentales es y debe seguir siendo competencia exclusiva del poder judicial. Ni un cierre sin sentencia. Este anteproyecto, en contra de lo establecido en el artículo 20.5 de la Constitución, pone en manos de un órgano no judicial -un organismo dependiente del ministerio de Cultura-, la potestad de impedir a los ciudadanos españoles el acceso a cualquier página web.

3.- La nueva legislación creará inseguridad jurídica en todo el sector tecnológico español, perjudicando uno de los pocos campos de desarrollo y futuro de nuestra economía, entorpeciendo la creación de empresas, introduciendo trabas a la libre competencia y ralentizando su proyección internacional.

4.- La nueva legislación propuesta amenaza a los nuevos creadores y entorpece la creación cultural. Con Internet y los sucesivos avances tecnológicos se ha democratizado extraordinariamente la creación y emisión de contenidos de todo tipo, que ya no provienen prevalentemente de las industrias culturales tradicionales, sino de multitud de fuentes diferentes.

5.- Los autores, como todos los trabajadores, tienen derecho a vivir de su trabajo con nuevas ideas creativas, modelos de negocio y actividades asociadas a sus creaciones. Intentar sostener con cambios legislativos a una industria obsoleta que no sabe adaptarse a este nuevo entorno no es ni justo ni realista. Si su modelo de negocio se basaba en el control de las copias de las obras y en Internet no es posible sin vulnerar derechos fundamentales, deberían buscar otro modelo.

6.- Consideramos que las industrias culturales necesitan para sobrevivir alternativas modernas, eficaces, creíbles y asequibles y que se adecuen a los nuevos usos sociales, en lugar de limitaciones tan desproporcionadas como ineficaces para el fin que dicen perseguir.

7.- Internet debe funcionar de forma libre y sin interferencias políticas auspiciadas por sectores que pretenden perpetuar obsoletos modelos de negocio e imposibilitar que el saber humano siga siendo libre.

8.- Exigimos que el Gobierno garantice por ley la neutralidad de la Red en España, ante cualquier presión que pueda producirse, como marco para el desarrollo de una economía sostenible y realista de cara al futuro.

9.- Proponemos una verdadera reforma del derecho de propiedad intelectual orientada a su fin: devolver a la sociedad el conocimiento, promover el dominio público y limitar los abusos de las entidades gestoras.

10.- En democracia las leyes y sus modificaciones deben aprobarse tras el oportuno debate público y habiendo consultado previamente a todas las partes implicadas. No es de recibo que se realicen cambios legislativos que afectan a derechos fundamentales en una ley no orgánica y que versa sobre otra materia.

Por favor difunde este manifiesto en tu blog, Twitter, en redes sociales, en foros o donde sea.

Es que esto es la polla, mientras la gente se busca la vida ampliando conocimiento y adaptándose a los nuevos tiempos y a las nuevas tecnologías, cosa que consume más del 50% de nuestro tiempo libre, otros pretenden seguir viviendo del cuento de puta madre a costa de los demás.

En apenas 10 años estamos cambiando mucho a peor en lo que a la ley se refiere, o hacemos algo o pasaremos los 30 ultimos años de nuestras vidas viviendo entre miseria y patetismo.

jueves, 29 de octubre de 2009

Proyecto Web (Parte 2)

A paso de tortuga la cosa sigue avanzando. Ya he registrado un dominio gratuito, pero no por ello malo (la verdad es que tiene muy buenas cosas este servidor) y ya he alojado lo que llevo de web. Aun no hay nada, pero ya he metido un sencillito formulario de registro y se puede acceder al sistema tras registrarse.

La unica diferencia por ahora es el boton de logout.

Por ahora la autenticación y el método para mantenerse conectado son mediante el uso de cokies, pero mas adelante implementaré el uso de sesiones y, si el usuario lo desea, guardar la informacion mediante cookies, ya que las cookies dependen del navegador y podemos tenerlas desactivadas o desactivarlas, y si permitimos que solo se mantenga conectado con cookies pues es posible que la web no nos mantenga logados.

Podemos ver como va el proyecto en la url http://turkos.freetzi.com

El proyecto final, debido a la coña de montar una empresa de asesinos a sueldo debido a la crisis financiera y economica mundial, se ha titulado "The Turks", es decir, "Los Turkos" o "los Turcos", porque como todas mis cosas, o al menos la mayoría, están relacionadas con Final Fantasy VII ^^.

El sitio tiene la siguiente estructura:

[raiz del sitio]
|__[images]
|_______ contiene imagenes del sitio
|__[includes]
|_______ header.php (cabecera de la web)
|_______ footer.php (pie de la web)
|_______ funciones.php (archivo donde colocar las funciones usadas en la web)
|_______ configuracion.php (parámetros de configuracion del sitio)
|__ template_css.css (hoja de estilo en cascada)
|__ animatedcollapse.js (javascript de menus interactivos)
|__ index.php (cuerpo de la web)
|__ registrar.php (script que registra a los usuarios)
|__ ingresar.php (script que loguea a los usuarios)
|__ login.php (script qur comprueba las cookies y si el usuario está logado)

Primero hablaré del registro. Yo lo tengo en el mismo index.php pero puede estar en cualquier sitio. La cuestion es un formulario simple que envie una serie de datos mediante POST a otro archivo, que los procesará para realizar el registro. Esto se consigue con el parámetro ACTION="registrar.php". Se pone así porque el archivo registrar.php lo tengo en el mismo directorio que el archivo que ejecuta el codigo (en este caso el index.php). Si registrar lo tuvieramos, por ejemplo, en un directorio llamado "reg" entonces tendriamos que poner ACTION="reg/registrar.php". Y si el archivo que tiene el formulario está en la carpeta "reg" y el archivo registrar.php estuviera un nivel por debajo pondríamos ACTION="../registrar.php". Basta de tonterías, el código del formulario es el siguiente:

                <FORM ACTION="registrar.php" METHOD="post">
                <table align="left" border="0" cellspacing="0" cellpadding="1">
                    <tr><td align="left">Nick:</td><td align="right"><input type="text" name="nick" size="14"></td></tr>
                    <tr><td align="left">Pass:</td><td align="right"><input type="password" name="password" size="14"></td></tr>
                    <tr><td align="left">Name:</td><td align="right"><input type="text" name="nombre" size="14"></td></tr>
                    <tr><td align="left">Email:</td><td align="right"><input type="text" name="email" size="14"></td></tr>
                    <tr><td colspan="2" align="center"><INPUT TYPE="submit" CLASS="boton" VALUE="Registrar"></td></tr>
                </table>
                <br>       
                </FORM>

Cada input, es decir, cada caja de texto le damos un nombre para identificarlo. Cuando enviémos el formulario, registrar.php recibirá por POST informacion contenida en cada input, que capturaremos con la variable $_POST["nombreDeCajaDeTexto"].

Ahora vamos al archivo registrar, que lo explicaré por partes. Este archivo empieza así:

<?php
//incluimos datos de configuracion del servidor
require('includes/configuracion.php');
//incluimos archivo con funciones a usar
require("includes/funciones.php");
conectar() or die('No se puede conectar a la Base de Datos!');

Tendremos que conectarnos a la base de datos, y para ello requerimos los parámetros de configuración, así que por eso, antes de conectar con la base de datos, tendremos que tener presente el contenido de estos dos archivos, uno que define los parámetros del servidor para la base de datos y otro porque es donde se alojan las funciones que hacemos. conectar() llama a la funcion, sin require("includes/funciones.php"); no tendríamos nada que hacer.

Antes de seguir viendo registrar.php veamos estos dos archivos, donde configuration.php sería algo así:

<?php
//BASE DE DATOS
define('SERVIDOR', 'servidor'); //en local, por ejemplo, seria "localhost"
define('USUARIO_BD', 'usuariodelabasededatos'); //por defecto "root"
define('PASSWORD_BD', 'contraseñadelabasededatos'); // Con xampp, por defecto sin contraseña
define('NOMBRE_BD', 'nombredelabasededatos'); //nombre de la BD cuando la creamos con phpmyadmin, por ejemplo
?>

Mientras que funciones.php sería un recopilatorio de funciones. Yo pondré mis 2 funciones que tengo por ahora, una para conectar, y la otra para eliminar de lo que se escriba en las cajas de texto simbolos html o espacios, para que no nos intenten joder la web con simple inyección SQL:

<?php
  function conectar($server = SERVIDOR, $username = USUARIO_BD, $password = PASSWORD_BD, $database = NOMBRE_BD, $link = 'db_link') {
    global $$link;
    $$link = mysql_connect($server, $username, $password);

    if ($$link) mysql_select_db($database);
       return $$link;
  }
 
function quitar($mensaje)
    {
    $mensaje = str_replace("<","&lt;",$mensaje);
    $mensaje = str_replace(">","&gt;",$mensaje);
    $mensaje = str_replace("\'","'",$mensaje);
    $mensaje = str_replace('\"',"&quot;",$mensaje);
    $mensaje = str_replace("\\\\","\\",$mensaje);
    return $mensaje;
    }
?>

Bien bien, ahora sigamos con registro.php. Lo unico que tenemos en un if-else que nos comprueba primeramente que si los campos a rellenar estuvieran vacíos. De no rellenar ningun campo mandaría la página a index pasando una variable por GET con un mensaje. Este mensaje, en el index, podremos capturarlo y mostrarlo con una simple linea:

if ($_GET["msg"]) echo "<font color='ff0000'>".$_GET["msg"]."</font><br>";

Veamos el if-else

if(trim($_POST["nick"]) != "" || trim($_POST["pass"]) != "" || $_POST["nombre"]) != "" || trim($_POST["email"]) != "")
    {

    }
else
    {
    header('Location: index.php?msg=Rellene bien los campos');
    }

mysql_close();
?>

Ahora veamos lo que habrá dentro de la sentencia if. Básicamente hacemos una consulta a la base de datos que nos diga si hay algun usuario con ese nick enviado. Si lo hay, enviamos al index.php con un mensaje (igual que el mensaje si los campos estaban vacíos), y si no lo hay pues insertamos en la base de datos los datos puestos por el usuario y mandamos al usuario al index.php con un mensaje de exito al registrar:

    $sql = "SELECT id FROM usuarios WHERE nick='".quitar($_POST["nick"])."'";
    $result = mysql_query($sql);
    if($row = mysql_fetch_array($result))
        {
        header('Location: index.php?msg=¡Nick ya existente!');
        }
    else
        {
        $sql = "INSERT INTO usuarios (nick,pass,nombre,email) VALUES (";
        $sql .= "'".quitar($_POST["nick"])."'";
        $sql .= ",'".md5(quitar($_POST["password"]))."'";
        $sql .= ",'".quitar($_POST["nombre"])."'";
        $sql .= ",'".quitar($_POST["email"])."'";
        $sql .= ")";
        mysql_query($sql);
        mysql_free_result($result);
        header('Location: index.php?msg=¡Registro Exitoso!');
        }

Y con esto ya hemos registrado al usuario y acabado esta entrada

miércoles, 14 de octubre de 2009

Final Fantasy RPG en "Flash"

La gente se aburre mucho, y eso me gusta. No se cuantas horas de trabajo tiene que tener hacer algo como esto que voy a poner, pero seguramente serán muuuchas horas.

Os dejo esta maravilla, cutre, pero hay que valorar el trabajo:


viernes, 18 de septiembre de 2009

Nuevo Proyecto Web (Parte I)

Hace tiempo que no me dedico a mi mismo mis progresos informáticos. Llevo toda mi vida basándome en la comunidad que tanto aprecio y que lleva en funcionamiento ya para 8 años.

En lugar de usar un sistema de webs o códigos ya funcionales, para mi satisfacción personal voy a programarme yo solito absolutamente todo. Hombre, eso no quiere decir que me busque scripts ya hechos para aplicar, pero lo que es la base de datos, los registros, la encriptación, accesos restringidos, los permisos, el diseño, la hoja de estilos en cascada (css)... entre otras cosas, me la voy a comer con papas yo solito.

Ahora mismo solo he hecho un diseño plano, sin logotipos ni nada (En lugar de logos he puesto colores planos para diferenciar las partes y comprobar que todo encaja a la perfección). Me he llevado varias horas entre decidirme y encajar las piezas del puzzle y me he llevado un par de horitas solo para solucionar algunos espacios que quedaban entre las capas (divs), cosa que ya he solucionado.

Antes de poner la imagen de cómo queda, diré que el proyecto aun no tiene nombre y que pienso incluir dentro de la web todas las cosas en las que vaya trabajando, como el RPGCP (RPG Control Panel) con el que le meto presión a Ixidro, o el control de puntos para los amigos con el que bromea Charles y Dani ^^.

Este es el diseño base:



lunes, 7 de septiembre de 2009

Las vacaciones se fueron :(

Wau! No disfruto de unas vacaciones bien merecidas desde hace años, al menos no tan largas, pero me ha dado para tan poco... Como la economía va regular teniendo en cuenta mis proyectos de futuro y adquisiciones, yo no he salido de casa y las vacaciones han venido a mi.

Ha sido estupendo, he desconectado de manera brutal, solo he cogido el pc para tontear un rato y sobre todo jugar (Tales of Pirates NV 45 powa!), y he conocido en persona a gente maravillosamente encantadora como Laia y Alvaro (Tsuni e Ichi), con quienes he compartido momentos junto con Alvaro y Eva (Nekodeko y Karmatrix).

No es que haya sido algo grandioso pero al menos ha sido diferente, siempre es bueno conocer gente buena y agradable, cuyas vidas tienen por finalidad no hacer gilipoyeces ni frikadas desbordantemente estúpidas.

Pero agosto ya se ha ido y tras el ha llegado el horror, el comenzar de nuevo el trabajo, con más trabajo todavía si cabe que en cualquier otra epoca del año.

Ains, yo que quería aplicar muchas soluciones informáticas en mi blog y al final solo tengo una entrada pestosa sobre los archivos HTACCESS xDDDD.

Por otra parte, a parte de felicidad, agobio, trabajo, cansancio y mil cosas más, siempre uno tiene que seguir topándose con más tonterías de las necesarias. Como siempre, podría sentirme feliz el auto-daño que se hace la gente por culpa de sus propias tonterías, luego me parto la caja cuando la esta gente se pone a llorar con palabras estúpidas haciendose las victimas y ya para colmo es que me quieren asesinar de la risa cuando me mencionan entre lineas para tomar medidas contra mi.

Ains, si es que no puede ser, qué aburrida sobremanera está la gente que lo unico que hace es seguir desenterrando mierda, cuan cobarde es la gente como para decir tal cantidad de gilipoyeces en un blog y luego verte pasar por la calle y decirte "Escoria" mientras trata inutilmente de lanzar un rayo destructor con los ojos. Cobarde y estúpida gente que insulta a terceras personas que no tienen nada que ver.

Pero bueno, como dice una buena amiga mia, hay gente que si no le entra la vena psicotica unas poca veces al año, no se siente contenta.

En fín, por si la vida no fuera suficientemente complicada y con responsabilidades cada vez mayores, dejaré de hacer caso (aunque nunca le hice demasiado) a estas tonterías que la gente se toma tan a pecho y seguiré ascendiendo por mi escalera de cristal quebradizo, mientras otros se entretienen en hacer de la vida la patraña más grande de la historia.

Que a cada cual le duela su pecaminosa vida, y que cada insensato se ahogue en sus propias mentiras y hechos barbaros.

¿Por qué la gente es tan estúpida?