martes, 12 de julio de 2011

lunes, 11 de julio de 2011

LIBERTAD

Canaima Linux

Canaima GNU/Linux es un proyecto socio-tecnológico abierto, construido de forma colaborativa, centrado en el desarrollo de herramientas y modelos productivos basados en las Tecnologías de Información Libres (TIL) de software y sistemas operativos cuyo objetivo es generar capacidades nacionales, desarrollo endógeno, apropiación y promoción del libre conocimiento, sin perder su motivo original: la construcción de una nación venezolana tecnológicamente preparada.

Actualmente Canaima impulsa grandes proyectos nacionales tanto a nivel público como privado, entre los que se encuentran el Proyecto Canaima Educativo, el Plan Internet equipado de CANTV, entre otros.
Descarga imagen iso 32 bits 2.6GB click aqui

domingo, 10 de julio de 2011

El primer bug de Ubuntu

El primer bug de Ubuntu



Este es el primer bug registrado en la lista de seguimiento de errores de Ubuntu. Fue reportado por Mark Shuttlewoth el 20 de Agosto de 2004, un par de meses antes de salir Warty Warzhog, la primera versión de Ubuntu:

Microsoft acapara la mayoría del mercado
Este es un bug que Ubuntu ha sido diseñado para remediar.

El software propietario está retrasando la innovación en la industria de las TI, limitando el acceso a las TI a una pequeña parte de la población mundial y restringiendo la capacidad de los desarrolladores de software para alcanzar su verdadero potencial. Este bug es fácilmente observable en la industria del PC.

Pasos para reproducir el error:
1. Visitar una tienda de informática.

Qué ocurre:
2. Observar que la mayor parte de los PCs en venta tienen software propietario pre-instalado.
3. Observar que muy pocos PCs llevan Ubuntu y otro software libre pre-instalado.

Qué debería ocurrir:
1. La mayoría de los PCs a la venta deberían incluir sólo software libre, como Ubuntu.
2. Ubuntu debería ser publicitado de forma que sus increíbles características y sus beneficios fueran aparentes y conocidos por todos.
3. El sistema debería hacerse más y más amigable con el usuario a medida que pase el tiempo.

Visto en Mundo geek.

MYSQL

MYSQL

EJEMPLOS EN MYSQL

Creación de una tabla y mostrar sus campos (create table – show tables – describe – drop table)
Problema: Crear la tabla usuarios con los campos nombre y clave. Previamente borrar la tabla usuarios si ya existe en el servidor. Finalmente mostrar la estructura de la tabla usuarios que acabamos de crear.
Importante: Tengamos en cuenta que intentamos borrar la tabla como primer paso ya que otro visitante al sitio de mysqlya.com.ar puede haberla creado anteriormente, inclusive haberla definido con otros campos distintos. Pruebe luego de borrar el comando drop y vea que ocurre si trata de crear una tabla ya existente en nuestra base de datos.
drop table if exists usuarios; create table usuarios ( nombre varchar(30), clave varchar(10) ); describe usuarios;
drop table if exists usuarios;
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
describe usuarios;
Carga de registros a una tabla y su recuperación (insert into – select)
Problema: Insertar tres registros en la tabla usuarios y luego mostrar todos los registros de la tabla.
Primeramente eliminamos la tabla, si existe:
drop table if exists usuarios;
Creamos la tabla:
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
Insertamos 3 registros:
insert into usuarios(nombre,clave) values (‘MarioPerez’,'Marito’);
insert into usuarios(nombre,clave) values (‘MariaGarcia’,'Mary’);
insert into usuarios(nombre,clave) values (‘DiegoRodriguez’,'z8080′);
Para ver los registros ejecutamos el comando select:
select nombre,clave from usuarios;
drop table if exists usuarios;
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
insert into usuarios(nombre,clave) values (‘MarioPerez’,'Marito’);
insert into usuarios(nombre,clave) values (‘MariaGarcia’,'Mary’);
insert into usuarios(nombre,clave) values (‘DiegoRodriguez’,'z8080′);
select nombre,clave from usuarios;
Modificación de registros de una tabla (update)
Problema: Trabajamos con la tabla “usuarios” que guarda el nombre de usuario y su clave.
Eliminamos la tabla, si existe:
drop table if exists  usuarios;
Creamos la tabla:
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
Ingresamos algunos registros:
insert into usuarios (nombre, clave) values (‘Leonardo’,'payaso’);
insert into usuarios (nombre, clave) values (‘MarioPerez’,'Marito’);
insert into usuarios (nombre, clave) values (‘Marcelo’,'River’);
insert into usuarios (nombre, clave) values (‘Gustavo’,'River’);
Visualizamos todos los registros:
select * from usuarios;
Para actualizar los valores de todas las claves, por ‘RealMadrid’ tipeamos:
update usuarios set clave=’RealMadrid’;
Visualizamos todos los registros para verificar la actualización:
select * from usuarios;
Cambiamos el valor correspondiente a la clave de nuestro usuario llamado ‘MarioPerez’, por ‘Boca’:
update usuarios set clave=’Boca’
where nombre=’MarioPerez’;
Verificamos el cambio:
select nombre,clave from usuarios;
Cambiamos el valor correspondiente al nombre de usuario ‘Gustavo’ por ‘GustavoGarcia’:
update usuarios set nombre=’GustavoGarcia’
where nombre=’Gustavo’;
Podemos actualizar varios campos en una sola instrucción:
update usuarios set nombre=’MarceloDuarte’, clave=’Marce’
where nombre=’Marcelo’;
drop table if exists  usuarios;
create table usuarios (
nombre varchar(30),
clave varchar(10)
);
insert into usuarios (nombre, clave) values (‘Leonardo’,'payaso’);
insert into usuarios (nombre, clave) values (‘MarioPerez’,'Marito’);
insert into usuarios (nombre, clave) values (‘Marcelo’,'River’);
insert into usuarios (nombre, clave) values (‘Gustavo’,'River’);
select * from usuarios;
update usuarios set clave=’RealMadrid’;
Clave primaria.
Problema: Trabajamos con la tabla “usuarios” que contiene el nombre de usuario y su clave.
Eliminamos la tabla, si existe:
drop table if exists usuarios;
Creamos la tabla:
create table usuarios (
nombre varchar(20),
clave varchar(10),
primary key (nombre)
);
Vemos la estructura de la tabla:
describe usuarios;
Note que en la columna “KEY” del campo “nombre” aparece “PRI”, esto significa que ese campo es clave primaria.
Ingresamos algunos registros:
insert into usuarios (nombre, clave) values (‘Leonardo’,'payaso’);
insert into usuarios (nombre, clave) values (‘MarioPerez’,'Marito’);
insert into usuarios (nombre, clave) values (‘Marcelo’,'River’);
insert into usuarios (nombre, clave) values (‘Gustavo’,'River’);
Al intentar ingresar un valor repetido para el campo clave, aparece un mensaje de error indicando que el registro no se cargó pues el dato está duplicado; veámoslo en un ejemplo, ingresemos un registro con un nombre de usuario repetido.
insert into usuarios (nombre, clave)
values (‘Gustavo’,'Boca’);
rop table if exists usuarios;
create table usuarios (
nombre varchar(20),
clave varchar(10),
primary key (nombre)
);
describe usuarios;
insert into usuarios (nombre, clave) values (‘Leonardo’,'payaso’);
insert into usuarios (nombre, clave) values (‘MarioPerez’,'Marito’);
insert into usuarios (nombre, clave) values (‘Marcelo’,'River’);
insert into usuarios (nombre, clave) values (‘Gustavo’,'River’);
insert into usuarios (nombre, clave) values (‘Gustavo’,'Boca’);
Clave foránea.
Problema: Trabajamos con las tablas “libros” y “editoriales” de una librería.
Eliminamos las tablas, si existen:
drop table libros, editoriales;
Creamos las tablas:
create table libros(
codigo int unsigned auto_increment,
titulo varchar(40) not null,
autor varchar(30) not null default ‘Desconocido’,
codigoeditorial tinyint unsigned not null,
precio decimal(5,2) unsigned,
cantidad smallint unsigned default 0,
primary key (codigo)
);
create table editoriales(
codigo tinyint unsigned auto_increment,
nombre varchar(20) not null,
primary key(codigo)
);
En este ejemplo, el campo “codigoeditorial” de “libros” es una clave foránea, se emplea para enlazar la tabla “libros” con “editoriales”.
Ingresamos algunos registros:
insert into editoriales values(2,’Emece’);
insert into editoriales values(15,’Planeta’);
insert into editoriales values(23,’Paidos’);
insert into libros values(1,’El aleph’,'Borges’,23,4.55,10);
insert into libros values(2,’Alicia en el pais de las maravillas’,'Lewis Carroll’
,2,11.55,2);
insert into libros values(3,’Martin Fierro’,'Jose Hernandez’,15,7.12,4);
Si modificamos el tipo, longitud o atributos de una clave foránea, ésta puede quedar inhabilitada para hacer los enlaces.
Veamos un ejemplo:
alter table libros
modify codigoeditorial char(1);
Veamos cómo afectó el cambio a la tabla “libros”:
select * from libros;
El libro con código de editorial “23″ (“Paidos”) ahora tiene “2″ (“Emece”) en “codigoeditorial” y el libro con código de editorial “15″ (“Planeta”) ahora almacena “1″ (valor inexistente en “editoriales”).
Si buscamos coincidencia de códigos en la tabla “editoriales”:
select l.titulo,e.nombre
from libros as l
join editoriales as e
on l.codigoeditorial=e.codigo;
El resultado es erróneo.
Las claves foráneas y las claves primarias deben ser del mismo tipo para poder enlazarse. Si modificamos una, debemos modificar la otra para que los valores se correspondan.
Intentemos modificar la clave en “editoriales”:
alter table editoriales
modify codigo char(1);
No lo permite porque si la modifica los valores para el campo clave quedan repetidos.
rop table libros, editoriales;
create table libros(
codigo int unsigned auto_increment,
titulo varchar(40) not null,
autor varchar(30) not null default ‘Desconocido’,
codigoeditorial tinyint unsigned not null,
precio decimal(5,2) unsigned,
cantidad smallint unsigned default 0,
primary key (codigo)
);
create table editoriales(
codigo tinyint unsigned auto_increment,
nombre varchar(20) not null,
primary key(codigo)
);
insert into editoriales values(2,’Emece’);
insert into editoriales values(15,’Planeta’);
insert into editoriales values(23,’Paidos’);
insert into libros values(1,’El aleph’,'Borges’,23,4.55,10);
insert into libros values(2,’Alicia en el pais de las maravillas’,'Lewis Carroll’,2,11.55,2);
insert into libros values(3,’Martin Fierro’,'Jose Hernandez’,15,7.12,4);
alter table libros
modify codigoeditorial char(1);
select * from libros;
select l.titulo,e.nombre
from libros as l
join editoriales as e
on l.codigoeditorial=e.codigo;
alter table editoriales
modify codigo char(1);
Fuente: http://www.mysqlya.com.ar/

HTML



MANUAL PRÁCTICO DE HTML





NOTA PREVIA

La primera versión de este trabajo se desarrolló en el marco de mi trabajo como becario en la Escuela de Ingenieros de Telecomunicación, durante mayo de 1995. Tanto su creación como su posterior mantenimiento son una aportación personal desinteresada a la comunidad hispanohablante de Internet, y no están ligadas a ningún interés comercial. No está permitido copiar o modificar este manual sin autorización expresa de su autor (o sea, yo :-). Se permite hacer enlaces a este manual desde páginas personales y comerciales, con la única restricción de que en las páginas de origen de dichos enlaces no haya lugar a confusión sobre la autoría y motivación de este manual.



INTRODUCCIÓN

Este manual pretende ser una introducción básica al lenguaje HTML, que permite escribir páginas de WWW. Su orientación es más bien práctica, por lo que no se han tenido en cuenta cuestiones como las diferentes versiones de HTML a las que pertenece cada directiva (lo cual resulta a veces más importante de lo que parece, porque implica que algunas directivas sólo funcionen con los programas de WWW más modernos: por ejemplo <center>). Según creo, esta es una de las pocas (o la única) referencias sobre HTML escritas en castellano (que alguien me corrija si me equivoco). Para referencias más amplias (aunque en inglés) ver el final de esta página.
Mi agradecimiento a todas las personas que me han hecho llegar sus opiniones y consejos acerca de este manual. En sucesivas versiones iré mejorándolo para sea todo lo útil y completo que espero que sea. Si quieres dejarme algún mensaje, puedes mandar correo electrónico a alvaro@etsit.upm.es.


CONTENIDOS


QUÉ ES HTML

HTML (HyperText Markup Language) es un lenguaje muy sencillo que permite describir hipertexto, es decir, texto presentado de forma estructurada y agradable, con enlaces (hyperlinks) que conducen a otros documentos o fuentes de información relacionadas, y con inserciones multimedia (gráficos, sonido...) La descripción se basa en especificar en el texto la estructura lógica del contenido (títulos, párrafos de texto normal, enumeraciones, definiciones, citas, etc) así como los diferentes efectos que se quieren dar (especificar los lugares del documento donde se debe poner cursiva, negrita, o un gráfico determinado) y dejar que luego la presentación final de dicho hipertexto se realice por un programa especializado (como Mosaic, o Netscape).

CÓMO ESPECIFICAR EFECTOS DEL TEXTO

La mayoría de los efectos se especifican de la misma forma: rodeando el texto que se quiere marcar entre dos etiquetas o directivas (tags, en inglés), que definen el efecto o unidad lógica que se desea. Las etiquetas están formadas por determinados códigos metidos entre los signos < y >, y con la barra / cuando se trata de la segunda etiqueta de un efecto (la de cierre). Por ejemplo: <efecto> para abrir y </efecto> para cerrar. Ciertas directivas sólo se ponen una vez en el lugar del texto donde queramos que aparezca el efecto concreto. Esto es lo que ocurre, por ejemplo, cuando queremos poner un gráfico, caso en el que se usa algo parecido a <poner_gráfico_aquí> (más adelante ya veremos la directiva concreta que se utiliza). A veces es necesario ofrecer datos adicionales en una directiva. Por ejemplo, cuando se define un hiperenlace hay que especificar su destino. Para ello se incluyen parámetros en la directiva inicial (la de apertura), de la siguiente forma: <efecto parametro1 parametro2 ...>. La directiva de cierre, caso de ser necesaria, queda como antes: </efecto>.
Más adelante en el presente documento se muestra el efecto de las directivas más usadas en la creación de un documento HTML. Para cada una de ellas, primero se muestra el texto fuente, y bajo éste, el efecto que produce.


ESTRUCTURA BÁSICA DE UN DOCUMENTO HTML

Un documento HTML comienza con la etiqueta <html>, y termina con </html>. Dentro del documento (entre las etiquetas de principio y fin de html), hay dos zonas bien diferenciadas: el encabezamiento, delimitado por <head> y </head>, que sirve para definir diversos valores válidos en todo el documento; y el cuerpo, delimitado por <body> y </body>, donde reside la información del documento. La única utilidad del encabezamiento en la que nos detendremos es la directiva <title>, que permite especificar el título de un documento HTML. Este título no forma parte del documento en sí: no aparece, por ejemplo, al principio del documento una vez que este se presenta con un programa adecuado, sino que suele servir como título de la ventana del programa que nos la muestra. Por ejemplo, en el encabezamiento de este manual se ha especificado:
<title>Manual práctico de HTML</title>
en minúsculas. Obsérverse que el título que encabeza este texto se ha escrito con mayúsculas, para distinguirlo del título global del documento. El cuerpo de un documento HTML contiene el texto que, con la presentación y los efectos que se decidan, se presentará ante el hiperlector. Dentro del cuerpo son aplicables todos los efectos que se van a mencionar en el resto de esta guía. Dichos efectos se especifican exclusivamente a través de directivas. Esto quiere decir que los espacios, tabulaciones y retornos de carro que se introduzcan en el fichero fuente no tienen ningún efecto a la hora de la presentación final del documento. Por ejemplo, escribiendo:
Estas
      palabras
forman          una
    frase.
producimos exactamente lo mismo que con:
Estas palabras forman una frase.
A la hora de la verdad lo que se ve es: Estas palabras forman una frase.
En resumen, la estructura básica de un documento HTML queda de la forma siguiente:
<html>
<head>
<title>Título</title>
</head>
<body>
Texto del documento, menciones a gráficos, enlaces, etc.
</body>
</html>


ESTILOS Y EFECTOS BÁSICOS

Como ya hemos dicho, la estructura lógica del texto y los diferentes efectos que se le apliquen se especifican mediante directivas. En este punto vamos a repasar algunas de las más importantes. En cada uno de los casos que veremos, primero se presenta el texto original HTML, es decir, lo que nosotros editamos, con las directivas situadas en los lugares adecuados; y después se presenta el efecto que dicho texto fuente produce una vez que se interpreta y se representa con el programa adecuado.

TÍTULOS

Mediante los títulos, en sus diferentes niveles de importancia, podemos definir el esqueleto del documento, su estructura básica.
<h1>Mucha importancia</h1>

Mucha importancia

<h2>Menos importancia</h2>

Menos importancia

<h3>Mucha menos importancia</h3>

Mucha menos importancia


ATRIBUTOS DEL TEXTO

Mediante estos atributos determinamos el estilo y el tipo de letra que tendrá la presentación del documento final. El primero en el que nos deberíamos detener es el texto normal entendiendo como tal el que no tiene ninguna característica especial. Para definir un párrafo como normal no es necesario poner ninguna etiqueta. Lo único que hay que tener en cuenta, como ya se ha dicho antes, es que al presentar el documento se hace caso omiso de los espacios, tabulaciones y retornos de carro que se encuentren en el texto fuente. Por ello cuando se quiera forzar un final de línea es necesario utilizar dos directivas especiales: <p> para marcar un fin de párrafo, y <br> para un único retorno de carro. La diferencia entre ambas es que la separación de líneas que provoca <p> es algo mayor que la de <br>, para que los párrafos se distingan bien entre sí. Las dos directivas mencionadas se sitúan en el punto en que queremos poner la separación. Por ejemplo:

Este será un texto normal (párrafo 1, línea 1).<br>
El primer párrafo estará formado por 2 líneas (párrafo 1, línea 2).<p>
Este ya es el segundo párrafo (párrafo 2, línea 1).<p>
Este será un texto normal (párrafo 1, línea 1).
El primer párrafo estará formado por 2 líneas (párrafo 1, línea 2). Este ya es el segundo párrafo (párrafo 2, línea 1).
Por supuesto, estas dos etiquetas se puede aplicar donde queramos, no sólo en el texto normal.
El texto preformateado (etiqueta <pre>) se aplica cuando queremos que en la presentación final del documento se respeten los espacios y retornos de carro que hayamos puesto en el texto fuente. Además se utilizará un tipo de letra de espaciado fijo, parecido al de una máquina de escribir, más pequeño que el del texto normal. Este estilo de texto puede ser adecuado, por ejemplo, para una tabla numérica sencilla:

<pre>
Texto preformateado
---------------------
|  1 |  2 |  3 |  4 |
|  5 |  6 |  7 |  8 |
|  9 | 10 | 11 | 12 |
---------------------
</pre>
Texto preformateado
---------------------
|  1 |  2 |  3 |  4 |
|  5 |  6 |  7 |  8 |
|  9 | 10 | 11 | 12 |
---------------------
Para hacer una cita textual dentro de nuestro documento, se puede utilizar la directiva <blockquote>:

<blockquote>Muchos años después, frente al pelotón de fusilamiento,
el coronel Aureliano Buendía había de recordar aquella tarde remota
en que su padre lo llevó a conocer el hielo.<br>
(Gabriel García Márquez, Cien años de soledad)</blockquote>

Muchos años después, frente al pelotón de fusilamiento, el coronel Aureliano Buendía había de recordar aquella tarde remota en que su padre lo llevó a conocer el hielo.
(Gabriel García Márquez, Cien años de soledad)
Las direcciones de correo electrónico se suelen marcar con esta directiva:

<address>Dirección: webmaster@etsit.upm.es</address>
Dirección: webmaster@etsit.upm.es
Se pueden dar también los atributos más tradicionales: negrita y cursiva:

<b>Esto en negrita</b> y <i>esto en cursiva</i>
Esto en negrita y esto en cursiva Se puede utilizar un tipo de letra similar al de una máquina de escribir:

<tt>Máquina de escribir</tt>
Máquina de escribir Para centrar texto (o, en general, cualquier cosa: un gráfico, por ejemplo) se usa la directiva <center>:

<center>Verde que te quiero verde</center>
Verde que te quiero verde


LISTAS

Las listas se definen de forma muy sencilla: se dice dónde empieza la lista, dónde empieza cada punto y dónde acaba la lista. Las etiquetas que se utilicen en cada caso deben aparecer al principio de línea, o al menos sin texto por delante (sólo espacios o tabulaciones). Podemos recurrir a tres tipos distintos de listas, cada una con una presentación diferente: no numeradas, numeradas y listas de definiciones (glosarios).
Las listas se pueden anidar, es decir, en el lugar donde debería ir uno de los términos de la lista se pone una nueva lista, que por supuesto no tiene porqué ser del mismo tipo.
Esto es una lista no numerada:
<ul>
<li>Tomates
<li>Zanahorias
<li>Puerros
</ul>
  • Tomates
  • Zanahorias
  • Puerros
Esto una lista numerada:
<ol>
<li>Miguel Induráin
<li>Tony Rominger
<li>Eugeni Berzin
</ol>
  1. Miguel Induráin
  2. Tony Rominger
  3. Eugeni Berzin
Un glosario está formado por una serie de parejas de término (marcado con <dt> al principio de línea) y definición (con <dd>). Por ejemplo, podríamos crear un pequeño diccionario con los términos perro, gato y pescadilla, de la siguiente manera:

<dl>
<dt>Perro (<i>n. masc.</i>)
<dd>Animal de cuatro patas que ladra.
<dt>Gato (<i>n. masc.</i>)
<dd>Animal de cuatro patas que maúlla y se lleva muy mal con el perro.
<dt>Pescadilla (<i>n. fem.</i>)
<dd>Animal que vive en el mar y está recubierto de escamas.
</dl>
Perro (n. masc.)
Animal de cuatro patas que ladra.
Gato (n. masc.)
Animal de cuatro patas que maúlla y se lleva muy mal con el perro.
Pescadilla (n. fem.)
Animal que vive en el mar y está recubierto de escamas.


VARIOS

La directiva <hr> sitúa en el documento una línea horizontal de separación. En este documento, por ejemplo, se han utilizado líneas horizontales para separar las diferentes secciones:
<hr>

Para poner un comentario en un documento HTML, es decir, una aclaración que no aparece en la presentación final del documento, se encierra el texto que formará el comentario entre los símbolos <!-- y -->. Por ejemplo, un caso típico podría ser:

<!-- Modificado por Álvaro el viernes 2 de junio -->


ENLACES Y GRÁFICOS

INTRODUCCIÓN

Además de los muchos estilos y capacidades de presentación que nos ofrece HTML para estructurar el documento en sí, disponemos de varias directivas que nos permiten definir relaciones entre diferentes documentos y estructurar todo un conjunto de documentos para crear una unidad lógica. La facilidad para definir este tipo de enlaces es una de las razones de la potencia y versatilidad de HTML. Por la similitud de tratamiento que tienen los enlaces y los gráficos, tocaremos también en esta sección cómo pueden incluirse estos últimos en un documento. Los enlaces en HTML se expresan rodeando con la directiva <a> el objeto (que puede ser un fragmento de texto o un gráfico) que vaya a servir como anclaje para el enlace. Por ejemplo, si marcamos con <a> un gráfico, cuando en el documento final se pulse con el ratón sobre dicho gráfico saltaremos al objeto referenciado en el enlace: otro documento, un vídeo musical, o un servidor de información meteorológica.

QUÉ ES UN URL

Para especificar de manera uniforme el objeto al que apunta nuestro enlace, se utiliza una forma estandarizada que se denomina URL (Uniform Resource Locator, es decir, Localizador Uniforme de Recursos ). Un URL está formado de la siguiente manera: esquema://maquina/ruta (en realidad, como se verá dentro de un momento, la barra / puede considerarse parte de la ruta). El esquema es un nombre que identifica el tipo de servicio que va a proporcionarse en el destino del enlace. La razón de esta aparente complicación es que el WWW pretende unificar el acceso a servicios de información que previamente eran incompatibles entre sí, como ftp, gopher o telnet. El esquema más utilizado es http, correspondiente al propio WWW (es decir, que cualquier referencia a un documento HTML debería comenzar con http://). Otros esquemas muy frecuentes son ftp, telnet, gopher o wais.
La máquina y la ruta sirven para localizar el objeto al que apunta nuestro enlace. La máquina es la identificación del servidor en el cual está situado el objeto al que apunta el enlace. Puede ser simplemente el nombre de un ordenador (como www.etsit.upm.es) o también un nombre y un puerto (por ejemplo www.etsit.upm.es:8000).
La ruta es el nombre del fichero que contiene el documento en concreto, incluyendo el nombre del subdirectorio en el que se encuentra. Los diferentes nombres que constituyan la ruta completa al archivo se deben separar con la barra / (inclinada hacia la derecha), tal y como se hace en el sistema operativo UNIX (y al revés que en MS-DOS). La razón de este convenio es precisamente que la mayor parte de los servidores de WWW que hay en Internet son ordenadores basados en UNIX, debido a la gran superioridad tecnológica de este sistema sobre MS-DOS. Esto se nota también en que por lo general los nombres de los ficheros no tienen muchas limitaciones: pueden ser casi tan largos como queramos, contener varios puntos, etc. Por ejemplo, el nombre de cierto fichero situado en un servidor podría ser /info/documentos/ciencia/fisica/relatividad.html. Debemos tener en cuenta que en UNIX las mayúsculas y las minúsculas son distintas en los nombres de los ficheros: no es igual FICHERO que fichero.
Conviene que nos detengamos momentáneamente en la estructuración habitual de los ficheros en un servidor de WWW. Para empezar, siempre hay una página de bienvenida (home page) que podría compararse con la portada de un periódico o revista: si no sabemos exactamente qué es lo que buscamos, o no sabemos dónde encontrarlo, la portada es lo primero que vemos. Para acceder a la home page de cualquier servidor de WWW, basta con escribir una barra en el lugar de la ruta (es decir, reclamamos al servidor el directorio raíz). Por ejemplo, para acceder a la página de bienvenida de la ETSIT, hay que dirigirse a http://www.etsit.upm.es/, y para ir a la de la NASA habría que contactar con http://www.nasa.gov/.
El resto de la información que se puede encontrar en un servidor de WWW se distribuye a partir de ese directorio raíz en distintos subdirectorios y archivos. Un convenio muy habitual relativo al nombre de los ficheros es hacer que los archivos que contengan documentos HTML terminen en .html.

ENLACES

Con lo que ya hemos dicho, podemos abordar sin problemas el asunto que originalmente nos ocupaba: cómo se introducen enlaces en un documento HTML. Para definir un enlace es necesario marcar con la directiva <a> el objeto del cual va a partir dicho enlace. Dicha directiva debe incluir el parámetro href="URL" para especificar el destino del enlace. Es decir, que antes del objeto elegido debemos abrir con <a href="URL">, y después cerrar con </a>. Por ejemplo, si queremos que el texto pulse aquí para visitar la NASA nos conduzca a la home page de la NASA, debemos escribir en nuestro texto HTML:
<a href="http://www.nasa.gov/">Pulse aquí para visitar a la NASA</a>
Lo cual producirá el resultado: Pulse aquí para visitar la NASA
Por lo general no nos preocupa irnos tan lejos, sino sencillamente enlazar con otro documento que se encuentra en el mismo servidor, puede que incluso que en el mismo subdirectorio. En este caso no es necesario escribir el camino completo al destino del enlace, sino que basta con dar la mínima información imprescindible. El programa que se use para leer el documento final suele ser lo bastante listo como para deducir el resto. Es decir, que si desde cierto documento queremos enlazar con otro que se encuentra en el mismo subdirectorio, basta con poner su nombre: <a href="el_otro_fichero">pulse aquí</a>. O si se encuentra en otro subdirectorio del mismo servidor, es suficiente con poner <a href="/la/ruta/que/sea/fichero.html">pulse aquí</a>. También pueden utilizarse rutas relativas: <a href="ruta/relativa/cosa.html">cosa</a>.

GRÁFICOS

Para incluir un gráfico en un documento HTML se utiliza la directiva <img>. En dicha directiva debe incluirse un parámetro src="URL", con el cual indicamos dónde está el fichero con el gráfico concreto que queremos para nuestro documento. Esto pone a nuestra disposición una gran flexibilidad, ya que podemos complementar el contenido de nuestro documento tanto con gráficos que se encuentren disponibles en nuestro servidor de WWW como con una foto situada en un servidor de la NASA o del Ministerio de Cultura, por ejemplo, sin que el lector final tenga por qué apreciar ninguna diferencia. Existe alguna limitación respecto a los formatos gráficos que los programas lectores de HTML puede interpretar sin problemas. El formato fundamental es el GIF, que cualquier programa con capacidades gráficas debería poder mostrar directamente en nuestro texto (Mosaic y Netscape pueden hacerlo). Si utilizamos otro formato diferente, lo más probable es que cuando un lector esté accediendo al documento, el programa no comprenda ese formato y se tenga que solicitar la ayuda de otro programa, con lo cual al final el gráfico no se insertará en el lugar estratégico de nuestro documento, sino que aparecerá en otra ventana diferente.
Hay un parámetro optativo de la directiva <img> que sirve para proponer un texto alternativo a un gráfico. Este texto aparecerá cuando se esté usando para leer el HTML un programa sin capacidades gráficas (por ejemplo Lynx, que sólo trabaja con texto). Se trata de alt="texto". Conviene utilizarlo cuando los gráficos sirven como origen a hiperenlaces, porque si no los programas sin capacidades gráficas no podrían mostrar los enlaces que nosostros queremos.
Como ocurría antes con los enlaces, por lo general no es necesario escribir el URL completo, sino que basta con dar la mínima información. Por ejemplo, para colocar en este punto del documento un monigote que está en el mismo subdirectorio que este manual, en el fichero monigote.gif, escribiremos:

<img src="monigote.gif" alt="MONIGOTE"><p>
Lo que se traduce en: MONIGOTE
Como se ve, hemos especificado el texto alternativo "MONIGOTE", con lo cual una persona que no dispusiera del programa adecuado hubiera visto algo parecido a [MONIGOTE] en lugar del dibujo.
Podemos también incluir un dibujo que esté en otro lugar especificando un URL completo, por ejemplo:

<img src="http://naic.nasa.gov/images/nasa-logo.gif"><p>
Y además podemos hacer que un gráfico sea un enlace, utilizando la directiva <a>. En este caso no debemos olvidar utilizar la opción alt="texto" para que todos los usuarios puedan seguir el enlace:

<a href="http://www.nasa.gov/"><img src="http://naic.nasa.gov/images/nasa-logo.gif" alt="NASA"></a><p>
NASA


CARACTERES ESPECIALES

Durante todo este manual hemos hecho una pequeña trampa a la hora de explicar las directivas y poner ejemplos, para facilitar la comprensión de las ideas fundamentales sobre HTML. Dicha trampa ha consistido en ocultar ciertas exigencias de HTML respecto al uso de caracteres especiales, denominación que, para nuestra desgracia como hispanohablantes, incluye a las vocales acentuadas y a la letra eñe. Existen también ciertas limitaciones relativas al uso de ciertos símbolos que significan algo en HTML, como el de menor que (<) o el signo inglés de and (llamado ampersand: &). Trataremos primero el caso más sencillo. Existe una razón evidente que impide que podamos escribir ciertos símbolos directamente en un texto HTML, como por ejemplo el <: dichos símbolos tienen un significado en HTML, y es necesario diferenciar claramente cuándo poseen ese significado y cuándo queremos que aparezcan literalmente en el documento final. Por ejemplo, como ya sabemos, < indica el comienzo de una directiva, y, por ello, si queremos que aparezca en el texto como tal tendremos que dar un rodeo escribiendo algo que no de lugar a confusión, en este caso &lt;. Los símbolos afectados por esta limitación, y la forma de escribirlos, se detallan a continuación:

  • < (Menor que): &lt;
  • > (Mayor que): &gt;
  • & (símbolo de and, o ampersand): &amp;
  • " (comillas dobles): &quot;
Es decir, que para escribir <"> en nuestro texto HTML original debemos poner &lt;&quot;&gt;.
El otro caso especial se da cuando en un texto HTML se quiere escribir una eñe, por ejemplo. Existen dos formas de hacerlo. La primera, que es a la que obliga el estándar de HTML, consiste en utilizar entidades, es decir, palabrejas como las que antes se presentaron para escribir ciertos símbolos. Las entidades comienzan siempre con el símbolo &, y terminan con un punto y coma (;). Entre medias va un identificador del carácter que queremos que se escriba. Las entidades necesarias en nuestro idioma son:

  • á: &aacute;
  • é: &eacute;
  • í: &iacute;
  • ó: &oacute;
  • ú: &uacute;
  • Á: &Aacute;
  • É: &Eacute;
  • Í: &Iacute;
  • Ó: &Oacute;
  • Ú: &Uacute;
  • ü: &uuml;
  • Ü: &Uuml;
  • ñ: &ntilde;
  • Ñ: &Ntilde;
  • ¿: &#191;
  • ¡: &#161;
Como puede verse, las vocales acentuadas se identifican añadiendo el sufijo acute a la vocal sin acentuar (puesto que se trata de un acento agudo). Para la u con diéresis y la eñe se usan uml tras una u y tilde detrás una ene, respectivamente. La equivalencia de los signos de abrir interrogación y exclamación es algo más oscura: a falta de una denominación más evidente, tenemos que usar el valor numérico de dichos caracteres en el código estándar latin1 (ISO-8859-1). Esto se puede hacer con cualquier otro carácter del código latin1, que es el código de caracteres básico en HTML, escribiendo &#numero;.
La segunda manera, que sin duda es más cómoda, consiste en no preocuparse por esta limitación y escribir literalmente los caracteres afectados. A pesar de que este método suele funcionar en las conexiones WWW directas (porque el protocolo HTTP, que transporta el HTML por los vericuetos de Internet, requiere un canal de 8 bits), no tiene por qué funcionar bien cuando los documentos HTML se envían por correo electrónico, por ejemplo. Por tanto, y a pesar de los inconvenientes, es absolutamente recomendable respetar la norma especificada en HTML.
En cualquier caso, no resulta muy complicado escribir un programa que traduzca todas las apariciones de los caracteres especiales por sus correspondientes entidades HTML, o viceversa. Con un programa así, uno puede escribir los documentos sin preocuparse por estos problemas, y luego traducir a HTML correcto. Al final de este manual encontrará un enlace a un programita en C que hace precisamente eso.
Volviendo al reconocimiento de culpa que antes de hizo por haber ocultado estos detallitos, debemos decir que muchos de los ejemplos que antes se pusieron no eran totalmente correctos. Por ejemplo, cuando se escribió:

<dd>Animal de cuatro patas que maúlla y se lleva muy mal con el perro.
En realidad debería haberse puesto:
<dd>Animal de cuatro patas que ma&uacute;lla y se lleva muy mal con el perro.
Y en lugar de:
<a href="http://www.nasa.gov/">Pulse aquí para visitar a la NASA</a>
Debería haberse escrito:
<a href="http://www.nasa.gov/">Pulse aqu&iacute; para visitar a la NASA</a>

Direcciones en las que puedes conseguir mas informacion sobre HTML


Proyecto GNU

La Definición de Software Libre

Mantenemos esta definición de software libre para mostrar claramente qué debe cumplir un programa de software en concreto para que se le considere software libre. De vez en cuando modificamos esta definición para clarificarla. Si quisiera revisar los cambios que hemos hecho, por favor vea la sección historial más abajo para más información.
El «software libre» es una cuestión de libertad, no de precio. Para entender el concepto, debería pensar en «libre» como en «libre expresión», no como en «barra libre».
El software libre es una cuestión de la libertad de los usuarios de ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software. Más precisamente, significa que los usuarios de programas tienen las cuatro libertades esenciales.
  • La libertad de ejecutar el programa, para cualquier propósito (libertad 0).
  • La libertad de estudiar cómo trabaja el programa, y cambiarlo para que haga lo que usted quiera (libertad 1). El acceso al código fuente es una condición necesaria para ello.
  • La libertad de redistribuir copias para que pueda ayudar al prójimo (libertad 2).
  • La libertad de distribuir copias de sus versiones modificadas a terceros (la 3ª libertad). Si lo hace, puede dar a toda la comunidad una oportunidad de beneficiarse de sus cambios. El acceso al código fuente es una condición necesaria para ello.
Un programa es software libre si los usuarios tienen todas esas libertades. Entonces, debería ser libre de redistribuir copias, tanto con o sin modificaciones, ya sea gratis o cobrando una tarifa por distribución, a cualquiera en cualquier parte. El ser libre de hacer estas cosas significa, entre otras cosas, que no tiene que pedir o pagar el permiso.
También debería tener la libertad de hacer modificaciones y usarlas en privado, en su propio trabajo u obra, sin siquiera mencionar que existen. Si publica sus cambios, no debería estar obligado a notificarlo a alguien en particular, o de alguna forma en particular.
La libertad de ejecutar el programa significa la libertad para cualquier tipo de persona u organización de usarlo en cualquier tipo de sistema de computación, para cualquier tipo de trabajo y propósito, sin estar obligado a comunicarlo a su programador, o alguna otra entidad específica. En esta libertad, el propósito de los usuarios es el que importa, no el propósito de los programadores. Como usuario es libre de ejecutar un programa para sus propósitos; y si lo distribuye a otra persona, también es libre para ejecutarlo para sus propósitos, pero usted no tiene derecho a imponerle sus propios propósitos.
La libertad de redistribuir copias debe incluir las formas binarias o ejecutables del programa, así como el código fuente; tanto para las versiones modificadas como para las no lo están. (Distribuir programas en forma de ejecutables es necesario para que los sistemas operativos libres se puedan instalar fácilmente). Resulta aceptable si no existe un modo de producir una formato binario o ejecutable para un programa específico, dado que algunos lenguajes no incorporan esa característica, pero debe tener la libertad de redistribuir dichos formatos si encontrara o programara una forma de hacerlo.
Para que la 1ª y 3ª libertad, para realizar cambios y publicar versiones mejoradas, tengan sentido; debe tener acceso al código fuente del programa. Por consiguiente, el acceso al código fuente es una condición necesaria para el software libre. El «código fuente» ofuscado no es código fuente real, y no cuenta como código fuente.
La 1ª libertad incluye la libertad de usar su versión modificada en lugar de la original. Si el programa se entrega con un producto diseñado para ejecutar versiones modificadas de terceros, pero rechaza ejecutar las suyas, una práctica conocida como «tivoization» o «arranque seguro» (en la terminología perversa de los que la practican); la 1ª libertad se convierte más en una ficción teórica que en una libertad práctica. Esto no es suficiente. En otras palabras, estos binarios no son software libre, incluso si se compilaron desde un código fuente que es libre.
Una manera importante de modificar un programa es fusionando subrutinas y módulos libres disponibles. Si la licencia del programa dice que no puede fusionar un módulo existente con una debida licencia, así como si le requiere ser el titular de los derechos de autor de lo que agregue, entonces la licencia es demasiado restrictiva para calificarla como libre.
La 3ª libertad incluye la libertad de liberar sus versiones modificadas como software libre. Una licencia también puede permitir otras formas de relicenciarlas, en otras palabras, no tiene que ser una licencia de copyleft. No obstante, una licencia que requiera que las versiones modificadas no sean libres, no se puede considerar como una licencia libre.
Para que estas libertades puedan ser reales, deben ser irrevocables siempre que usted no cometa ninguna equivocación; si el programador del software tiene el poder de revocar la licencia, o de cambiar retroactivamente sus términos, sin que usted se haya equivocado para justificarlo, el software no es libre.
Sin embargo, ciertos tipos de reglas sobre la manera de distribuir software libre son aceptables, cuando no entran en conflicto con las libertades principales. Por ejemplo, el copyleft (definido muy resumidamente) es la regla en base a la cual, cuando redistribuye el programa, no puede agregar restricciones para denegar a las demás personas las libertades principales. Esta regla no entra en conflicto con las libertades principales; más bien las protege.
«Software libre» no significa «que no sea comercial». Un programa libre debe estar disponible para el uso comercial, la programación comercial y la distribución comercial. La programación comercial de software libre ya no es inusual; tal software libre comercial es muy importante. Puede haber pagado dinero para obtener copias de software libre, o puede haber obtenido copias sin costo. Pero sin tener en cuenta cómo obtuvo sus copias, siempre tiene la libertad de copiar y modificar el software, incluso de vender copias.
Si una modificación constituye una mejora es un asunto subjetivo. Si sus modificaciones se limitan, en esencia, a los cambios que otra persona considera una mejora, eso no se trata de libertad.
No obstante, las reglas acerca cómo empaquetar una versión modificada son aceptables si no limitan substancialmente su libertad para publicar versiones modificadas, o su libertad para hacer y usar versiones modificadas en privado. Así que es aceptable que una licencia le obligue a cambiar el nombre de la version modificada, eliminar el logotipo o a identificar sus modificaciones como suyas. Son aceptables siempre y cuando esas obligaciones no sean tan agobiantes que le dificulten la publicación de sus modificaciones. Como ya está aplicando otras modificaciones al programa, no le supondrá un problema hacer algunas más.
Las normas del estilo «si pone a disposición su versión de este modo, también debe hacerlo de este otro modo» también pueden ser, bajo la misma condición, admisibles. Un ejemplo de una norma admisible, sería una que planteara que si ha distribuido una versión modificada, y uno de los programadores de versiones anteriores le pide una copia, deberá mandarle una (tenga en cuenta que esta norma le sigue permitiendo elegir si distribuye, o no, su versión.). Las normas que obligan a liberar el código fuente a los usuarios de las versiones que publica también son admisibles.
En el proyecto GNU, usamos copyleft para proteger legalmente estas libertades para todos. Pero también existe software libre sin copyleft. Creemos que existen razones importantes por las que es mejor usar copyleft, pero si su programa es software libre sin copyleft, sigue siendo ético de todos modos. (Vea en categorías del software libre una descripción de cómo «software libre», «software con copyleft» y otros tipos de software libre se relacionan).
En algunos casos las regulaciones de control de exportación y las sanciones comerciales pueden limitar sus libertades de distribuir copias de programas intencionalmente. Los desarrolladores de software no tienen el poder de eliminar o pasar por alto estas restricciones, pero lo que pueden y deben hacer es rechazar imponerlas como condiciones para el uso del programa. De este modo, las restricciones no afectarán a las actividades ni a las personas fuera de las jurisdicciones de dichos gobiernos. Por ende, las licencias de software libre no deben requerir la obediencia a ninguna regulación de exportaciones como condición de cualquiera de las libertades esenciales.
La mayoría de las licencias de software libre están basadas en el copyright, y existen límites en los tipos de requisitos que pueden ser impuestos a través del copyright. Si una licencia basada en el copyright respeta la libertad en las formas antes mencionadas, es poco probable tener otro tipo de problema que no hayamos anticipado (a pesar de que esto ocurre ocasionalmente). Sin embargo, algunas licencias de software libre están basadas en contratos, y los contratos pueden imponer un rango mucho más grande de restricciones posibles. Esto significa que existen muchas maneras posibles de que tal licencia pueda ser inaceptablemente restrictiva y que no sea libre.
Posiblemente no podamos enumerar todas las formas en las que eso puede pasar. Si una licencia basada en un contrato restringe al usuario de un modo que no puedan hacer las licencias basadas en el copyright, y que no está mencionado aquí como legítimo, tendremos que pensar sobre ello; y probablemente concluyamos que no es libre.
Cuando se habla de software libre, es mejor evitar usar términos como «regalar» o «gratuito», porque dichos términos implican que el asunto pasa por el precio, no la libertad. Algunos términos comunes como «piratería» implican opiniones con las que esperamos no concuerde. Vea palabras y frases confusas que vale la pena evitar para el debate sobre esos términos. También tenemos una lista de traducciones de «software libre» a varios idiomas.
Finalmente, tenga en cuenta que los criterios, como los establecidos en esta definición de software libre, requieren pensar con cuidado su interpretación. Para decidir si una licencia de software específica es una licencia de software libre, la juzgamos en base a estos criterios para determinar si concuerda su espíritu, conjuntamente con la terminología precisa. Si una licencia incluye restricciones demasiado grandes, la rechazamos, incluso si no anticipamos la cuestión en este criterio. Algunas veces, los requisitos de una licencia muestra una cuestión que hace necesaria una reflexión más profunda, incluyendo la discusión con un abogado, antes que podamos decidir si el requisito es aceptable. Cuando llegamos a una conclusión sobre una nueva cuestión, solemos actualizar estos criterios para que resulte más fácil ver por qué ciertas licencias se califican o no.
Si está interesado en saber si una licencia específica califica o no como licencia de software libre, vea nuestra lista de licencias. Si la licencia que busca no está en la lista, puede preguntarnos enviándonos un correo electrónico a <licensing@gnu.org>.
Si está contemplando escribir una nueva licencia, por favor contacte a la FSF escribiendo a esa dirección. La proliferación de distintas licencias de software libre significa mayor trabajo para los usuarios para entender esas licencias; podemos ayudarle a encontrar una licencia de software libre que ya exista que satisfaga sus necesidades.
Si eso no es posible, si realmente necesita una nueva licencia, con nuestra ayuda puede asegurarse que la licencia sea realmente una licencia de software libre y evitar varios problemas prácticos.

Más allá del software

Los manuales de software deben ser libres, por las mismas razones que el software debe ser libre, y porque en efecto los manuales son parte del software.
Los mismos argumentos también tienen sentido para otros tipos de trabajos de uso práctico; es decir, trabajos que incorporen conocimiento útil, tal como trabajos educativos y de referencia. La Wikipedia es el ejemplo más conocido.
Cualquier tipo de trabajo puede ser libre, y la definición de software libre se ha extendido a una definición de trabajos culturales libres aplicable a cualquier tipo de trabajo.

¿Código abierto?

Otro grupo ha comenzado a usar el término «código abierto» (del inglés «open source») que significa algo parecido (pero no idéntico) a «software libre». Preferimos el término «software libre» porque, una vez que ha escuchado que se refiere a la libertad en lugar del precio, le hace pensar en la libertad. La palabra «abierto» nunca se refiere a la libertad.

Historial

De vez en cuando modificamos esta definición de software libre para clarificarla. A continuación, proporcionamos una lista de dichas modificaciones, junto con enlaces para ilustrar exactamente qué cambió, para que puedan revisarlos si quieren. [Nota del traductor: el historial es el del documento original en inglés, no de esta traducción].
  • Version 1.92: Aclarar que el código fuente ofuscado no se puede considerar código fuente.
  • Version 1.90: aclarar que la 3ª libertad significa el derecho a distribuir copias de sus propias versiones modificadas o mejoradas. No el derecho de participar en el proyecto de otro.
  • Version 1.89: La 3ª libertad incluye el derecho a liberar versiones modificadas como software libre.
  • Versión 1.80: la primera libertad debe ser práctica, no sólo teórica. Por ejemplo, nada de tivoización.
  • Versión 1.77: Clarificación acerca que todos los cambios retroactivos a la licencia son inaceptables, aún si no representan reemplazos completos.
  • Versión 1.74: Cuatro clarificaciones de puntos no del todo explícitos, o definidas en algunos lugares pero no reflejadas en todos:
    • «Mejoras» no significa que la licencia puede limitar sustancialmente qué tipo de versiones modificadas puede publicar. La 3ª libertad incluye la distribución de versiones modificadas, no sólo de los cambios.
    • El derecho a fusionar módulos existentes se refiere a aquellos que estén debidamente licenciados.
    • Definición explícita de la conclusión sobre los puntos de controles de exportación.
    • Imponer un cambio en la licencia constituye una revocación de la antigua licencia.
  • Versión 1.57: Agregada la sección «Más allá del software».
  • Versión 1.46: Clarificar de quién es el propósito que importa en la libertad para ejecutar el programa para cualquier propósito.
  • Versión 1.41: Clarificar definiciones sobre licencias basadas en contratos.
  • Versión 1.40: Explicar que una licencia libre debe permitirle usar otro software libre disponible para crear sus modificaciones.
  • Versión 1.39: Nota acerca que es aceptable para una licencia requerir proveer el código fuente para versiones del software que ponga en uso público.
  • Versión 1.31: Es aceptable para una licencia requerirle que se identifique como el autor de las modificaciones. Otras clarificaciones menores a lo largo del texto.
  • Versión 1.23: Anotados problemas potenciales relacionados a licencias basadas en contratos.
  • Versión 1.16: Explicar por qué la distribución de los binarios es importante.
  • Versión 1.11: Una licencia libre puede requerirle que envíe una copia de las versiones modificadas al autor.
Existen brechas entre los números de versión porque existen muchos otros cambios que no afectan la sustancia de la definición en absoluto. En cambio, corrigen enlaces, agregan traducciones y demás. Si usted quiere revisar la lista completa de cambios, puede hacerlo en nuestra interfaz cvsweb.

Comunidades Virtuales

Haciendo una aproximación abordando desde la definición, Comunidad Virtual es una combinación de dos conceptos que suelen usarse para denominar un conjunto de características, elementos o componentes existentes en el marco de su propio contexto. Entre ellos podemos reconocer a las personas, a las relaciones que se establecen entre ellas, a las motivaciones que las impulsan a agruparse, a los intereses en común y a los canales y medios que éstas utilizan para la interacción y el intercambio de experiencias. El tiempo y las buenas prácticas facilitan que nazcan entre los miembros sentimientos por los otros, como el aprecio y el respeto.
Más allá de delimitar el espacio del contexto a un espacio físico geográfico, las fronteras de éste se encuentran en la psiquis del colectivo que participa de la misma, apoyando su estructura en las relaciones que se establecen entre las personas.
Las personas Humanas, son los extremos de estas relaciones y su comunicación e interacción es motorizada por elementos tecnológicos que cada día van haciéndose más sutiles a la percepción, al punto de no percatarse de su existencia.
Sin embargo, son éstos elementos o componentes tecnológicos los que permiten crear la virtualidad, la emulación del mundo real, imaginario o no, que facilita la inmersión en la hiperrealidad. Pero también estos elementos permiten saltarse las fronteras físicas y en este mundo real, conectar a personas distanciadas por tiempo y espacio con comunicación sincrónica y asincrónica, a través de mensajes contentivos de su expresión, sentimiento, preguntas, respuestas, dentro siempre del contexto que el común decide.  Es así que las comunidades virtuales facilitan el trabajo en equipo, con miembros separados por grandes distancias, intercambio de mensajes, documentos, información y abarcan infinidad de contextos ya sean reales o imaginarios.
Hacia el aspecto humano, el sentido de propiedad de una comunidad virtual va desapareciendo dando paso al sentido de pertenencia, la expresión “Mi Comunidad” ya no se refiere a la comunidad que me pertenece sino la comunidad a la que pertenezco o la comunidad de la que soy miembro, siendo la participación libre y abierta la fuente generadora de la dinámica que facilita el florecimiento, éxito y crecimiento de la misma.
Como cualquiera, una Comunidad Virtual, es sensible al caos o el desorden, ya sea generado por miembros internos o del exterior de sus fronteras, por lo cual siempre se hace presente la necesidad de regular las relaciones entre miembros, con el colectivo y con los propósitos, siendo lo mas apropiado un acuerdo de respeto sobre: el trato entre miembros, el lenguaje utilizado, el propósito, la misión, la visión, los valores y los objetivos de la misma subordinando la participación a aceptar adherirse al acuerdo y alinearse con la misión, visión, objetivos y valores que rigen el modelo de organización. Los administradores son los constantes veladores del cumplimiento del acuerdo también llamado conjunto de normas, ésta es su principal función y el dios que justifica sus acciones.

Jornada de Exposiciones

UNIVERSIDAD BOLIVARIANA DE VENEZUELA
PROGRAMA DE FORMACIÓN DE GRADO
INFORMÁTICA PARA LA GESTION SOCIAL
SEDE – MONAGAS

Jornada de Exposiciones para el uso de las Tecnologías de Información Libre (TIL) como parte de las actividades
que promueven el desarrollo científico – tecnológico – social, fundamentadas en los planes de estudio
correspondientes del PFG Informática para la Gestión Social
El programa de Formación de Grado de Informática para la Gestión Social, cumpliendo con el plan de Gobierno
que impulsa el uso de las Tecnologías de Información Libres como herramientas indispensables para la independencia
Científica y Tecnológica, promoviendo como elemento esencial el manejo y tratamiento de la información, en toda la
estructura de la Universidad Bolivariana de Venezuela, afianzando así, la adaptación preferencial al software desarrollado
con Estándares Abiertos, en sus sistemas, proyectos y servicios informáticos con el fin de mejorar la gobernabilidad y
estimular la soberanía nacional acorde con el proyecto de cambio social que adelanta el país como lo establece el decreto
3390.
Estas jornadas involucran a todo el personal universitario y a las comunidades en la participación directa de este
evento, con la finalidad de ir incorporando las TIL en todos los Programas de Formación de Grado, incluyendo de manera
exclusiva el uso de la Distribución Venezolana Canaima GNU/Linux que ofrece a usuarias y usuarios informáticos una
interfaz gráfica que enaltece la naturaleza de nuestro país representada a través de aplicaciones que con sus nombres e
iconos hacen referencia a la fauna nacional (Cunaguaro, Guácharo y Turpial) y fondos de pantalla que muestran paisajes
locales. Dando a conocer los valores ecológicos que viene impulsando el Gobierno Bolivariano, desde diversos sectores, y
ahora son aplicados en el ámbito de la informática como un recurso tecnológico necesario para nuestra liberación e
inclusión social.
Por medio de esta solicitud, agregamos la iniciativa de crear, consolidar y afianzar una Comunidad de Software
Libre en la Universidad Bolivariana de Venezuela, con la misión principal de promover el uso de las Tecnologías de
Información Libre, brindando soporte informativo, migración, educación, eventos, jornadas entre otros. Todo esto nace
además como una alternativa de soluciones para los distintos Programas de Formación de Grado, para investigar y
desarrollar las herramientas necesarias en la elaboración de sus actividades utilizando las TIL y haciendo énfasis en la
transdisciplinariedad como factor necesario para construir juntos la patria libre y socialista por la que trabajamos día a día.
Desde el enfoque educativo lo sustenta:
• La educación como proceso dialógico y transformador.
• Aprender a aprender y desaprender.
• La educación basada en el privilegio de lo colectivo.
• Creatividad.
• Interacción e interdependencia.
• Contextualización.
• Interdisciplinariedad y transdisciplinariedad.
• Calidad con equidad.
• Educación sin muros.
• Sentido transformador de la vinculación entre universidad y sociedad.
Textualmente el punto de la creatividad dice lo siguiente: “En el ámbito educativo, la creatividad permite a
profesores y estudiantes (re)construir sus opiniones, convicciones e imágenes y rehacer sus esquemas mentales; (re)crear
los conocimientos; (re)elaborar ideas y conceptos mediante lenguajes propios; comprender las cosas encontrándoles valor
y sentido para la vida personal y colectiva. ” (página 47).
Esta actividad puede ayudarnos a personal administrativo, profesores y alumnos a tener una mejor visión del uso
de la tecnología y de innovación científica en función de mejorar nuestras comunidades desde la Universidad Bolivariana
de Venezuela. En esta iniciativa se involucran todos y cada uno de los aspectos que conforman el Enfoque Educativo que
sustenta la función Académico - Formativa de la Universidad Bolivariana de Venezuela.
La fecha para el inicio de la jornada serán notificadas posteriormente, sin embargo es importante notificarle a los
alumnos, profesores y comunidades que esta actividad se estará realizando próximamente