atix-018

download atix-018

of 55

Transcript of atix-018

  • 8/6/2019 atix-018

    1/55

  • 8/6/2019 atix-018

    2/55

  • 8/6/2019 atix-018

    3/55

    Direccin y Coordinacin General

    Esteban Saavedra Lpez ([email protected])

    Diseo y Maquetacin

    Jenny Saavedra Lpez ([email protected])

    Esteban Saavedra Lpez ([email protected])

    Revisiones

    Esteban Saavedra Lpez

    Jenny Saavedra Lpez

    Noticias

    Jenny Saavedra Lpez

    Lucy Ayarde Romero

    Autores Frecuentes

    Esteban Saavedra LpezJoseph Sandoval

    Mario Carrion

    Martn MrquezRenzo Martnez

    Rafael Rendn

    Herramientas

    La edicin de esta revista fue realizada de forma integra haciendo uso de SoftwareLibre

  • 8/6/2019 atix-018

    4/55

  • 8/6/2019 atix-018

    5/55

  • 8/6/2019 atix-018

    6/55

  • 8/6/2019 atix-018

    7/55

    Una alternativa libre pararepresentar la informacin

    en la Web: Las ontologasEn la actualidad, las ontologas han ganado espacio en muchos de los campos deinvestigacin de la informtica como una alternativa eficaz de representacin de lainformacin y base para el razonamiento sobre el conocimiento almacenado. Por lasfacilidades que brindan, la sencillez de las metodologas para su desarrollo, lascaractersticas de los lenguajes para su expresin y las herramientas para suelaboracin, constituyen una alternativa al alcance de todos. El objetivo fundamental deeste trabajo es presentar de forma resumida y rpida, las ventajas de las ontologascomo una alternativa libre para la representacin y el subsecuente razonamiento sobreel conocimiento.

    Introduccin

    Desde mediados de los 90 y durante laprimera dcada de este siglo XXI hemos sidotestigos del auge de una nueva forma derepresentacin del conocimiento: lasontologas. Aunque se tenga un conceptoinformtico formal de una ontologa comouna especificacin explcita de unaconceptualizacin (Gruber, 1993), y quedesde su surgimiento la idea inicial era lograr

    una homogenizacin entre los diferentesconceptos que manejaban personas yaplicaciones inteligentes en la Web(fundamentalmente), las ontologas hanganado espacio en muchos de los camposde investigacin de la informtica en laactualidad como una alternativa eficaz derepresentacin de la informacin y base parael razonamiento sobre el conocimientoalmacenado.

    DesarrolloComo base fundamental de la WebSemntica, las ontologas pretendenconvertirse en una fuente de conocimientoaccesible no solo a personas, sino tambin aaplicaciones inteligentes y motores debsqueda en internet, de forma tal que lainformacin disponible pueda ser enriquecidade manera semntica, lo que mejorara en

    gran medida el proceso de bsqueda en lared de redes.

    Como formas de representacin delconocimiento presentan una estructurasencilla (en su forma ms simple) consistenteen una taxonoma de clases que representanlos conceptos asociados a un dominioespecfico. Se definen adems, atributos yrelaciones entre las clases, as como reglas oaxiomas que rigen el comportamiento. En

    muchos casos, las ontologas cuentan conindividuos o instancias de las clasesespecificadas para enriquecer elconocimiento almacenado. Existenclasificaciones asociadas a la estructura y eluso de las ontologas y adems endependencia de su formalidad. En un anlisisun poco ms minucioso, las ontologas sepueden clasificar usando dismiles criterios,como los explicados en (Ramos y Nez,2007).

    Para la representacin de ontologas se

    utilizan RDF (Resource DescriptionFramework) y OWL (Ontology WebLanguaje). RDF es un modelo estndar parala representacin e intercambio de datos enla Web, basado en triplas de la forma sujeto predicado objeto; para una forma sencillade representacin de la informacin y enURIs (Uniform Resource Identifier) paraasociar informacin a cada elemento de latripla. Un ejemplo pudiera ser: Mara disfruta

  • 8/6/2019 atix-018

    8/55

    la comida italiana, en RDF se representarade la forma: sujeto (Mara) - predicado(disfruta) - objeto (la comida italiana). Porsupuesto utilizando los URIs se puedeenriquecer esto con mucha ms informacin.RDF permite una serializacin a XML (W3C,2004), debido a que es un modelo y no como

    tal un formato, lo que permite que lainformacin almacenada pueda serinterpretada fcilmente como un XML por lossistemas.

    Figura. 1 Ejemplo de grafo RDF

    Por otro lado, OWL (W3C, 2007) es unlenguaje pensado para ontologas Web(como sus siglas en ingls indican) y tieneuna capacidad de representacin semnticasuperior a RDF. Su creacin se centrafundamentalmente en la idea de crearfacilidades para la representacin deinformacin contenida en la WWW, demanera que sea mejor interpretada por lasmquinas incorporando tareas derazonamiento sobre los datos.

    Ambas representaciones, tanto RDF comoOWL, estn basadas en la capacidad derepresentacin de XML, por lo queconstituyen una alternativa viable y libre parael almacenamiento de datos en forma deontologas. Para lograr este propsito,existen algunas herramientas libres quepermiten el diseo y desarrollo de ontologas.

    Entre esas herramientas se encuentraProtg (actualmente en su versin 4.1 beta),

    desarrollada en el Centro de Investigacionesde Informtica Biomdica, en Stanford,California. Es un editor para ontologas, decdigo abierto, gratis que puede serdescargado online desde su sitio oficial, ascomo un conjunto de plug-ins para mejorarsus capacidades. Protg permite el diseo

    de ontologas basadas en RDF, OWL y OWL2, consultas SPARQL sobre los datos,razonamiento sobre datos utilizandonumerosos razonadores para ontologas ybrindando la posibilidad de integrar otrosnuevos. Permite adems integrar e importarontologas existentes, integracin de plug-inspara minera de texto, importar datos desdebases de datos y otros.

    Conclusiones

    Desde su propia concepcin, las ontologashan perseguido el propsito de ladisponibilidad de la informacin, lainteroperabilidad entre aplicaciones y elacceso abierto y libre a recursoscompartidos. Sus aplicaciones se extiendendesde el rea de la medicina, el comercio, losSistemas de Informacin Geogrfica, laInteligencia Artificial, la aeronutica y muchasotras reas claves que necesitan altadisponibilidad de informacin y capacidadpredictiva y de razonamiento sobre datos

    almacenados. Por las caractersticas de loslenguajes para su expresin y lasherramientas para su desarrollo, constituyenuna alternativa al alcance de todos.Entonces, cabe hacer la reflexin de siestamos realmente utilizando a cabalidad laspotencialidades de esta nueva e interesanteforma de representacin y razonamientosobre el conocimiento e informacinalmacenada.

    Referencias[1] Gruber., T. R., "A Translation Approach to Portable Ontologies." Knowledge Acquisition.1993, pp. 199-220.

    [2] Ramos, Esmeralda and Nez, Haydemar., ONTOLOGIAS: componentes,metodologas, lenguajes, herramientas y aplicaciones. Laboratorio de Inteligencia Artificial (LIA),Centro de Ingeniera de Software y Sistemas (ISYS). Caracas, Venezuela : s.n., 2007. Reportetcnico. ISSN 1316-6239.

  • 8/6/2019 atix-018

    9/55

    [3] RDF Primer. [Online] W3C, 2004. http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#rdfxml].

    [4] Lenguaje de Ontologas Web (OWL). Vista General. [Online] W3C, 2007.http://www.w3.org/2007/09/OWL-Overview-es.html.

    Autor

    Yuniel Eliades Proenza AriasUniversidad de las Ciencias Informticas. Ciudad de la Habana, [email protected]

  • 8/6/2019 atix-018

    10/55

    Generacin de CertificadosCSR con el Complemento

    Keymanager de FirefoxPara la generacin de certificados CSR (Certificate Signing Request) utilizaremos elcomplemento KeyManager el cual nos brinda una interfaz grafica amigable, permitiendoacelerar el proceso de generacion de solicitudes de certificados.

    Introduccin

    En el anterior numero de esta revista, en el articulo Instalacin de Certificados Digitales enApache2, vimos el procedimiento de como instalar un certificado digital en un servidorApache2, para lo cual utilizamos la herramienta OpenSSL para generar el certificado CSR

    (Certificate Signing Request), en este articulo veremos la herramienta KeyManager la cualreemplaza a la herramienta OpenSSL.

    El complemento KeyManager del navegador web FireFox es una herramienta para lageneracin de llaves, inscripcin de certificados (certificate enrollment), firmas CRL, delegacinde identidad y autoridad (identity and authority delegation).

    Pasos para instalar el complemento

    1. Abrir el navegador FireFox.

    2. En el men elegir la opcin Herramientas, dentro la cual se debe seleccionar la opcinComplementos como se muestra a continuacin:

    3. En la ventana de Complementos que se abrir se debe buscar el complementoKeyManager e instalarlo:

    4.

  • 8/6/2019 atix-018

    11/55

  • 8/6/2019 atix-018

    12/55

    5. Cerramos la ventana de Complementos y tendremos en el navegador FireFox una barrade herramienta KeyManager como se muestra a continuacin:

  • 8/6/2019 atix-018

    13/55

    Procedimiento para generar un certificado CSR

    1. En la Barra de Herramientas seleccionamos KeyManager y se despliega la siguienteventana:

    2. Elegimos el botn de Generate CSR y se abrir la siguiente ventana, en la que se debenintroducir los datos para el Certificado Digital:

  • 8/6/2019 atix-018

    14/55

    3. 3.Una vez llenados los datos elegimos el botn Generate PKCS#10 y se generara elCertificado CSR:

    4. Debemos grabar el Certificado CSR eligiendo el botn Save, despus de grabado se

    vera en la consola principal el certificado CSR:

    5. Este Certificado CSR debe ser enviado a una entidad emisora de certificados digitalesCA (Certificate Authority). Existen varios CAs gratuitos como por ejemplowww.cacert.org www.openca.org. Debemos suscribirnos en estos sitios y cargar

    el CSR.

    6. Una vez que el CA ha procesado la solicitud nos informar por correo electrnico y nosproporcionara el certificado digital, para nuestro ejemplo el archivo servidor.crt, el

    CA por lo general tarda de uno a dos das en procesar la solicitud.

    7. Una vez que el certificado digital es enviado por la entidad emisora CA, continuaremoscon la carga del certificado digital en el servidor Web instalado (ver articulo Instalacinde Certificados Digitales en Apache2 en el anterior nmero de esta revista).

    http://www.openca.org/http://www.openca.org/http://www.openca.org/
  • 8/6/2019 atix-018

    15/55

    Conclusiones

    Con esta herramienta ahorramos tiempo en la generacin de certificados CSR de una formasimple y utilizando una interfaz grfica amigable.

    Esta herramienta tiene muchas mas funcionalidades para facilitar la gestin de certificadosdigitales.

    Referencias

    [1] https://addons.mozilla.org/es-ES/firefox/addon/4471/

    [2] http://pubs.research.avayalabs.com/pdfs/ALR-2006-044.pdf

    Autor

    Renzo Martinez PardoIngeniero Sistemas [email protected]

  • 8/6/2019 atix-018

    16/55

    Entendiendo expresioneslambda en C# con MonoUna expresin lambda es una funcin o una subrutina sin nombre que se puede utilizardonde haya un delegado vlido. Las expresiones lambda pueden ser funciones osubrutinas y tener una sola lnea o varias lneas. Puede pasar valores del mbito actuala una expresin lambda.

    Introduccin

    La programacin imperativa, es uno de losparadigmas de computacin masampliamente utilizados por la mayora delenguajes de programacin de alto nivel;debido al gran soporte acadmico y

    comercial y a que los programas sonrelativamente independientes del tipo decomputadora donde se ejecutan, porque loslenguajes de programacin deben abstraerlas operaciones del modelo de maquina parala cual se disearon.

    La programacin imperativa se basa en elmodelo de la mquina de Von Newman, de lacual la mayora de las computadoraspersonales y estaciones de trabajo tienenelementos comunes.

    Aunque menos utilizado existe otroparadigma que a diferencia del imperativo sebasa en las matemticas (aplicacin defunciones) con el cual igualmente podemosexpresar operaciones computacionales deforma mas compacta y abstracta, esteparadigma se conoce como programacinfuncional.

    Uno de los muchos elementos delparadigma funcional que .NET incluye desde

    la versin 3.0 son las expresiones lambda(lambda expression).

    Programacin Funcional

    Los conceptos bsicos de la programacin

    funcional datan de 1956 a 1958 con eltrabajo de Jonh McCarthy en el desarrollo ydiseo de LISP (List Processor), estelenguaje esta basado en el clculo lambdaque sent las bases de los lenguajesfuncionales, caractersticas como:

    Recursion: se utiliza para pararealizar operaciones repetitivas, noutiliza la iteracin.

    Funciones de primer orden: lasfunciones tienen el mismo nivel quecualquier otro elemento del lenguaje,pueden aplicarse a valores,evaluarse, regresar un valor y serparmetros de otras funciones.

    No requiere asignacin: el computse realiza aplicando funciones a losargumentos.

    Garbage collector: Se reclaman losobjetos que no estn siendo utilizadopor el programa.

    Tipado dinmico (Dynamic typing):

    La comprobacin del tipo se realizaen tiempo de ejecucin, los valorestienen tipos pero las variables no.

    El paradigma funcional se basa en elconcepto matemtico de funcin, que lamayora de los lenguajes de programacinimperativos y funcionales comparten y cuyadefinicin es

    (1) Una funcin f es una regla que asigna a

  • 8/6/2019 atix-018

    17/55

    cada elemento x de un conjunto Aexactamente un elemento llamado f(x) de

    conjunto B

    Donde la programacin funcional marca sudiferencia con la imperativa, es que para laprogramacin funcional cada programa esequivalente a esta definicin donde x es elargumento o dominio de f mientras que y esel rango de f o la salida sea los programasson cajas negras donde solo importa el quese esta computando y no el como se estacomputando que es el caso de laprogramacin imperativa.

    En resumen cuando se programa de formafuncional se piensa ms en expresiones y susignificado que en una secuencia deoperaciones en memoria.

    Tipos Delegate y mtodosannimos

    Desde sus primeras versiones .NET introdujo

    el objeto delegate (delegado) que es un tipoparticular de objeto (un delegate deriva de laclase base System.Delegate), que puedeencapsular la referencia a un mtodo estticoo de una instancia como si fuera unmecanismo de callback(devolucin dellamada) similar a los apuntadores de funcin

    de C y C++ pero con la importante diferenciade que proporciona un tipado seguro (type-safety) para evitar errores en tiempo deejecucin y que puedan detectarse en tiempode compilacin si la funcin no coincide conla firma del mtodo al que hace referencia.

    Esto posibilita en un contexto deprogramacin orientada a objetos que losmtodos pueden recibir como argumentosotros mtodos adems de tipos primitivos yde referencia.

    Veamos un ejemplo para ilustrar estosconceptos con C#.

    En versiones anteriores a C# 2.0 (1.1,1.0) los delegate se utilizaban como en el siguientelistado:

    Listado 1.1 Uso de mtodos como parmetros en C# 1.1 using System;

    namespace Samples{class Program

    {//definimos al objeto que guardara las referencias a los metdosdelegate double GetTemp(double d);static void Main(string[] args){int x = 44;Console.WriteLine("{0} Fahrenheit = {1:0.00} Celsius", x, ApplyF(x,

    Temp.GetCelsius));Console.WriteLine("{0} Fahrenheit = {1:0.00} Kelvin", x, ApplyF(x,

    Temp.GetKelvin));Console.Read();}//el metdo que aplicar el metdo que es su segundo argumentostatic double ApplyF(double d,GetTemp f){return f(d);

    }}//la implementacin de cada metdoclass Temp{public static double GetCelsius(double fahrenheit){return (fahrenheit - 32) * (5 / 9D);}

  • 8/6/2019 atix-018

    18/55

    public static double GetKelvin(double fahrenheit){return fahrenheit + 460;}

    }}

    Aqu observamos que los mtodos que implementan la funcionalidad deben declararse de una

    manera completamente procedural e imperativa.

    public static double GetCelsius(double fahrenheit){return (fahrenheit - 32) * (5 / 9D);}

    public static double GetKelvin(double fahrenheit){return fahrenheit + 460;}

    C# 2.0 al incorporar los mtodos annimos, se acerca ms a la programacin funcional alasociar un bloque de cdigo a un delegate sin necesidad de tener toda su implementacin enun mtodo sino dentro de la misma declaracin del objeto, como mostramos en el siguientelistado que es el listado anterior pero usando mtodos annimos.

    Listado 1.2 Mtodos como parmetros utilizando mtodos annimos.

    using System;

    namespace Samples{class Program{

    delegate double GetTemp(double d);static void Main(string[] args){

    int x = 44;Console.WriteLine("{0} Fahrenheit = {1:0.00} Celsius", x, ApplyF(x, delegate(double

    fahrenheit) {return (fahrenheit - 32) * (5 / 9D);

    }));Console.WriteLine("{0} Fahrenheit = {1:0.00} Kelvin", x, ApplyF(x, delegate(double

    fahrenheit) {return fahrenheit + 460;}));Console.Read();

    }

    static double ApplyF(double d, GetTemp f){

    return f(d);}}}

  • 8/6/2019 atix-018

    19/55

    Aqu observamos la diferencia con respecto al cdigo anterior del listado 1.1.

    Console.WriteLine("{0} Fahrenheit = {1:0.00} Celsius", x, ApplyF(x, delegate(doublefahrenheit) {

    return (fahrenheit - 32) * (5 / 9D);}));Console.WriteLine("{0} Fahrenheit = {1:0.00} Kelvin", x, ApplyF(x, delegate(double

    fahrenheit) {return fahrenheit + 460;}));

    Expresiones Lambda (Lambda Expressions)

    Las expresiones lambda provienen del clculo lambda (lambda calculus) desarrollado porAlonzo Church en los aos 1930s como una notacin para representar todas las funcionescomputables equivalentes a una mquina de Turing, todos los lenguajes funcionales pueden servistos como una variante sintctica del clculo lambda.

    Las expresiones Lambda son tiles para sintetizar funciones con pocos parmetros queregresan algn valor, esta expresin consiste bsicamente en una regla de sustitucin que

    expresa tal cual una funcin o sea un mapeo de los elementos del conjunto dominio a loselementos de un codominio por ejemplo en la siguiente expresin:

    cuadrado : integer integer donde cuadrado(n) = n

    se reduce a una notacin que produce una funcin annima donde los nicos smbolos son laletra lambda () y el punto (.)

    n.n

    En la mayora de los lenguajes funcionales las funciones annimas son valores representadospor la palabra reservada lambda, como el caso de LISP.

    Lambda (n)(**n)

    Aunque C# no utiliza los smbolos de la notacin matemtica lambda, el operador lambda es =>que significa tiende a o va hacia a, la estructura de una expresin lambda en C# es:

    (Argumentos de entrada) => (salida al procesarlos)

    En caso de nicamente una variable la sintaxis es:

    (x) => (x*x)

    En caso de mltiples argumentos la sintaxis es:

    (x,y,z) => ()

  • 8/6/2019 atix-018

    20/55

    En este punto es importante saber que es el tipo delegate que dicta el tipo de los parmetrosde entrada y de salida.

    Listado 1.3 Mtodos como parmetros utilizando expresiones lambda

    using System;

    namespace Lambdas{class Program{delegate double GetTemp(double d);static void Main(string[] args){

    int x = 44;Console.WriteLine("{0} Fahrenheit = {1:0.00} Celsius", x, ApplyF(x,

    (fahrenheit) => ((fahrenheit - 32) * (5 / 9D))));Console.WriteLine("{0} Fahrenheit = {1:0.00} Kelvin", x, ApplyF(x, (fahrenheit)

    => (fahrenheit + 460)));Console.Read();

    }

    static double ApplyF(double d, GetTemp f){

    return f(d);}}

    }

    Podemos observar que de los mtodos annimos a las expresiones Lambda, nos queda unasintaxis ms legible y compacta.

    (fahrenheit) => ((fahrenheit - 32) * (5 / 9D))(fahrenheit) => (fahrenheit + 460))

    El resultado de la ejecucin del programa es el mismo con cada uno de los listados.

  • 8/6/2019 atix-018

    21/55

    Conclusin

    Para los nuevos retos en el desarrollo de software, es importante que los lenguajes deprogramacin incorporen caractersticas de un paradigma de programacin diferente a ellospara extender sus capacidades y as poder expresar algoritmos de una manera compacta y msconcisa esto da como resultado un cdigo ms legible.

    Los ejemplos pueden ser descargados de http://xomalli.blogspot.com/

    Este documento est protegido bajo la licencia de documentacin libre Free DocumentacionLicense del Proyecto GNU, para consulta ver el sitio http://www.gnu.org/licenses/fdl.txt

    , toda persona que lo desee est autorizada a usar, copiar y modificar este documento segnlos puntos establecidos en la Licencia FDL

    Autor

    I.S. Martn [email protected]

  • 8/6/2019 atix-018

    22/55

    Servidor de MensajeraInstantnea Jabberd2Jabber es un protocolo extensible, abierto y estndar basado en XML para elintercambio en tiempo real de mensajes y presencia entre dos puntos en Internet.

    Introduccin

    La comunicacin es uno de los pilaresbsicos de cualquier empresa, ms an conel avance de las Tecnologas de Informaciny Comunicacin (TIC), nuestros clientes yusuarios exigen tener la informacin de

    manera inmediata. Una de las soluciones aeste requerimiento es un servidor demensajera.

    Este servidor debe cumplir con losestndares, condiciones y adecuacin anuestros requerimientos, surgiendo Jabberdque conforma una federacin de mensajerainstantnea en la que todo el mundo puedehablar entre s sin restriccin alguna y lo masimportante LIBRE.

    Este pequeo artculo pretende introducirlnosen la instalacin, configuracin yadministracin de Jabberd2 en una LAN, elcual puede ser implementado de formapersonalizada, cumpliendo los requerimientosde nuestra empresa.

    Que es Jabberd?

    Jabber es un protocolo abierto y libre paramensajera instantnea, que est basado en

    XML y con ncleo XMPP, para el intercambioen tiempo real de mensajes y presencia entredos puntos en una red, utilizando el puerto5222 preferentemente.

    Para que nos sirve?

    Como su nombre lo dice nos permite enviarmensajes instantneos a los usuariosregistrados en la LAN, permitiendo enviarmensajes cuando el destinatario no estconectado, as como poder tenerlo abierto envarios programas (clientes jabberd) a la vez,permitiendo asignar prioridades. Este sistemapermite, por ejemplo, asignar prioridad uno ala aplicacin que tienes en la oficina y dos enla casa, lo que permitira que los mensajeslleguen a la oficina mientras ests conectado,caso contrario se enviarn a la aplicacin detu casa.

    El servidor Jabberd2 soporta SSL, ipv6,transferencias de archivos (comentar que enalgunas pruebas se pas incluso imgenesISO completas) que puedes parar y reanudaren cualquier momento.

    Soporta salas de chat, interoperabilidad entredistintos servidores, usuarios ilimitados ymuchas ms particularidades. Empresas yservicios de internet ya lo usan, como iChat,tan solo deberemos de elegir un servidor y uncliente y ya nos podemos conectar. Estopermite poder elegir libremente una

    plataforma y con ella un programa los quecada vez son ms numerosos.

    Caractersticas

    Jabberd2 presenta las siguientescaractersticas:

  • 8/6/2019 atix-018

    23/55

    Protocolo abierto: Como todosoftware libre, se puede programar unservidor o un cliente a medida o ver elcdigo y modificarlo, entre otrascosas.

    Descentralizado: Se puede crear unservidor para Jabber, y se puedeinteroperar o unirse al resto de la redJabber.

    Extensible: Se puede ampliar conmejoras sobre el protocolo original.Las extensiones comunes sonmanejadas por la XMPP StandardsFundation.

    Seguro: Cualquier servidor Jabberest aislado del exterior. El servidorde referencia permite SSL paracomunicaciones cliente-servidor y

    algunos clientes aceptan GPG comocifrado de las comunicaciones usandocifrado asimtrico.

    Multiredes: Un transporte o pasarelapermite comunicarse con otrosprotocolos usados por clientes comoWindows Live Messenger, ICQ, AOL oYahoo.

    Salas de conversacin: Conocidocomo Multi-User Chat. Es una de lasextensiones que han sido aadidas ala mensajera Jabber, la cual lepermite la creacin de grupos dedebate como en las redes IRC, con laposibilidad de poseer usuarios con

    distintos privilegios (moderadores,participantes e invitados), iniciarconversaciones privadas y transferirarchivos.

    Que precisamos

    Necesitamos instalar las librerias delibgc.so, libgsasl.so, libntml,

    libudns.so y libmysqlcliente.so; asi

    tambien mysql server para el

    almacenamiento y openldap para la

    autentificacion. Jabberd2 es un servicio

    que puede ser instalado en diferentesdistribuciones Linux, mediante susrespectivos gestores de paquetes:

    Debian y Ubuntu con apt-get

    RHEL, CentOS y Fedora con yum.

    Configuracin Inicial

    Necesitamos identificar a nuestro servidor, con un IP y puerta de enlace vlido dentro denuestra red y un nombre en formato FQDN (Fully Qualified Domain Name), que es un nombreque incluye el nombre de la computadora y el nombre de dominio asociado a ese equipo, ennuestro caso ser jabberd2.atix.net.

    Instalacin

    Ahora nos queda instalar el paquete jabberd2, si es que tenemos acceso a internet lo podemoshacer con apt get install jabberd2 en distribuciones basadas en Debian, y yum install

    jabberd2 en distribuciones basados en Red Hat, en mi caso no tengo acceso a internet y solo

    tengo el paquete .rpmy lo instalamos.

  • 8/6/2019 atix-018

    24/55

    Verificamos si se crearon los archivos, el servicio y el usuario correspondiente

    Almacenamiento a MYSQL

    Jabberd2 nos presenta varias alternativas de base de datos como mysql, oracle, postgresql yotros, para almacenar a los contactos, grupos, datos personales y otros, en nuestro ejemplo lovamos a tener en mysql. Para lo cual necesitamos crear una base de datos, crear tablas y crearun usuario con los privilegios correspondientes.

    En la instalacin de Jabberd2 incorpora scripts de creacin de base de datos y tablas:

  • 8/6/2019 atix-018

    25/55

    Nos conectamos a mysql con un usuario con privilegios de poder crear base de datos, en micaso root:

    Aqu, hacemos correr el script que corresponde a mysql como sigue:

  • 8/6/2019 atix-018

    26/55

    Damos privilegios al usuario jabberd2 para la base de datos jabberd2.

    Verificamos la creacin de la base de datos

    Ahora estamos listos para comenzar la primera configuracin del servidor de mensajerainstantnea Jabberd2.

    Configuracin con MYSQL

    Se usarn un par de archivos de configuracin XML para configurar Jabberd2, de manera que

    la autenticacin y almacenamiento de usuarios sea con mysql.

    1. Edite /etc/jabberd/sm.xml cambiando localhost.localdomain con el

    nombre de anfitrin u otra id de su servidor, en nuestro ejemplo serjabberd2.atix.net. Ahora en la seccin cambie el

    db a mysql con esto le indicamos a Jabberd2

    que el almacenamiento sera a la base de datos mysql; ahora verificamos que en laseccin este habilitado para que usuarios nuevos ser

    registrados sin la necesidad de estar en el almacenamiento mysql, esta puede ser estaro no en la poltica de creacin de usuarios, todo depende de la empresa. Comoconfiguramos el almacenamiento a mysql le indicaremos en al seccin el

    usuario y contrasea jabberd2secret, con estoterminamos con el archivo sm.xml.

    2. Edite /etc/jabberd/c2s.xml cambiando localhost.localdomain con el

    nombre de anfitrin u otra id de su servidor, habilitando el registro de los usuarios, ennuestro ejemplo ser jabberd2.atix.net.

    Ahora en la seccin cambie el db a

    mysql con esto le indicamos a Jabberd2 que la autenticacin ser a

    la base de datos mysql. Como configuramos el almacenamiento a mysql le indicaremosen al seccin el usuario y contrasea

  • 8/6/2019 atix-018

    27/55

    jabberd2secret, con esto terminamos con el archivo

    c2s.xml.

    Con estos pasos tenemos nuestra primera configuracin de Jabberd2.

    Inicio de Servicio y configuracion de un cliente jabberd

    Seguimos los siguientes pasos:1. Iniciamos nuestro servidor, asegurando que el servicio mysql esta arriba.

    2. Instalamos un cliente jabbers para Linux como PSI, si es que tenemos acceso a internetlo podemos hacer con apt get install psi en distribuciones basadas en Debian, y

    yum install psi en distribuciones basadas en Red Hat, en mi caso no tengo acceso a

    internet y solo tengo el paquete .rpmy lo instalamos.

    3. Iniciamos nuestro psi en entorno grfico desde aplicaciones > Internet >Psi

  • 8/6/2019 atix-018

    28/55

    4. Indicamos el nombre del perfil con el cual vamos a trabajar, habilitamos el registro deusuario y le damos adicionar (add).

    5. Se llenan los datos de la cuenta a ser registrada con su respectiva clave y le damosregistrar (register).

    6. Se confirma el registro satisfactorio y le damos aceptar (ok).

    7. Una vez registrado, debemos guardar los datos de la cuenta en el perfil de psi y ledamos guardar (save).

  • 8/6/2019 atix-018

    29/55

    8. As configuramos psi para un usuario nuevo, por defecto estamos fuera de lnea(offline), nos queda ponerlo en linea (online), para utilizar el servicio e ingresar los

    datos del usuario.

    9. Una vez introducidos nuestros datos le damos publicar (publish).

  • 8/6/2019 atix-018

    30/55

    10. Se confirma el almacenamiento de los datos de usuario y le damos aceptar (ok).

    Como vemos ya estamos en lnea usando el servidor recin instalado. Hasta el momento solo

    hemos invertido aproximadamente 20 minutos en la configuracin del servidor de mensajerainstantnea Jabberd2 que se encuentra ya en produccin.

    Ahora tenemos Jabberd2 funcionando con mysql.

    En el siguiente nmero de la revista veremos mas sobre la configuracin e incorporaremos laautentificaron con LDAP y otros trucos ms, hasta la siguiente.

    Bibliografa

    [1] http://www.jabberes.org/

    [2] http://codex.xiaoka.com/wiki/jabberd2:start

    Autor

    Diego Parraga Menchaca

    [email protected]

  • 8/6/2019 atix-018

    31/55

    RIARich Internet ApplicationLas aplicaciones RIA son un nuevo tipo de aplicaciones con ms ventajas que lasaplicaciones Web tradicionales. Estas surgen como una combinacin de las ventajasque ofrecen las aplicaciones Web y las aplicaciones tradicionales (aplicaciones deescritorio).Adicionalmente se encuentran las capacidades multimedia donde no hace falta ningnreproductor del Sistema Operativo del usuario.

    Introduccin

    Los valiosos beneficios que las aplicacionesRicas de Internet (RIA) representan para lasempresas ya han sido ampliamentedocumentados y son claramentereconocidos; desde un bajo costo total depropiedad, hasta la disponibilidad total de laaplicacin, mayor seguridad y unaexperiencia del usuario mejorada.

    Contextos deimplementacin de RIA

    Inicialmente las RIA estaban enfocadas a dosposibles entornos:

    Usar una Plataforma como servicio(PasS): Con ejemplos comoForce.com, Google, Microsoft,Amazon y LongJump. Si esta fuera laopcin elegida, entonces deberconsiderar que si bien todas laspartes del sistema son provistas por

    usted, la plataforma est todava enalgn lugar en la Nube.

    Usar una plataforma de tipo cliente:Para empresas con cierta resistencia

    a ubicar sus activos en la Nube, lanica forma de adquirir capacidadespara construir RIA es hacerlo por supropia cuenta empleando alguna de lavariedad de herramientas de tipoPlataforma de Cliente RIA, comoAdobe Flex/Air, Java FX o por mediode algn framework Javascript.

    Que obtener con RIA

    Menor costo total de propiedad:

    Con RIA no hay necesidad de instalarsoftware del lado del Cliente niocuparse de mantener a cada nuevousuario. La aplicacin se configuraautomtica y transparentemente en ellado del Cliente y toda la aplicacin ylas actualizaciones de la misma y ascomo de la plataforma se llevan acabo en el servidor .

    Estar listo para SaaS : Lasaplicaciones SaaS representarn el

    25% de todo negocio de software. RIAes un componente esencial en eldesarrollo de una propuesta exitosade Software como Servicio (SaaS).

    Mejor experiencia del usuario yproductividad : A diferencia de lasaplicaciones de Internet tpicas, lasRIA no requieren una comunicacinCliente-Servidor para cada datoprocesado y cada actividad. La

  • 8/6/2019 atix-018

    32/55

    aplicacin corre ms rpido y msagradablemente, los empleadoshacen su trabajo ms rpido y losclientes reciben un mejor servicio.

    Mas disponibilidad de la aplicacin:Las RIA pueden ejecutarseremotamente desde cualquier parte ypueden accederse en cualquiermomento va un amplio abanico dedispositivos mviles porttiles. Losusuarios pueden acceder a los datosnecesarios para trabajar desde supropia casa o desde fuera de laempresa.

    Mejor seguridad corporativa yproteccin de derechos depropiedad intelectual : Laarquitectura multicapa de RIA le

    permite ocultar los elementossensibles de su aplicacin y evitar elrobo corporativo, el abuso del activo,clientes y el malware.

    Caractersticas bsicas

    Facilidad en la conectividad

    Distribucin de la aplicacin entrecliente y servidor

    Acceso local o remoto

    Inteligencia en la interfaz

    Caractersticas clave

    Accesibilidad: AJAX nativo en losnavegadores web y es el nico RIAframework que puede ser encontradopor los diferentes motores debsqueda.

    Comunicaciones avanzadas: conservidores que soporten nuevas

    tecnologas se puede mejorar laexperiencia del usuario al utilizarprotocolos de red optimizados yentradas y salidas asncronas. Serequiere de una conexin de bandaancha confiable

    Complejidad: las solucionesavanzadas puede ser ms difciles dedisear, desarrollar, implementar y

    depurar que las aplicaciones webtradicionales

    Consistencia: la interfaz de usuario ylas experiencias pueden sercontroladas por el sistema operativo,el monitoreo del rendimiento ydiagnstico de errores puede tornarsedifcil.

    Instalacin y mantenimiento: no seprecisa instalacin y sumantenimiento es automtico

    Offline: puede ser soportadareteniendo el estado en la mquinacliente

    Seguridad: se mejora la seguridadpor medio de actualizacionesautomticas y sandbox. Pero las

    extensiones por si mismas sonsujetas a vulnerabilidades

    Rendimiento: puede ser mejoradodependiendo de la aplicacin y de lascaractersticas de la red. Aplicacionesque pueden procesar localmente en elcliente evitando viajes hacia elservidor lo que incrementa surendimiento. Dndole ms trabajo alcliente tambin se puede incrementarel rendimiento del servidor. Por elcontrario los recursos necesarios

    hacen difcil que las aplicacionespuedan ejecutarse en dispositivospequeos, mviles o embebidos

    Riqueza: aadiendo caractersticasque no son nativas en losnavegadores web como captura devdeo

    Beneficios

    No necesitan instalacin (solo es

    necesario mantener actualizado elnavegador web).

    Las actualizaciones hacia nuevasversiones son automticas.

    Se pueden utilizar desde cualquierordenador con una conexin aInternet sin depender del sistemaoperativo que este utilice.

    Generalmente es menos probable la

  • 8/6/2019 atix-018

    33/55

    infeccin por virus, que utilizando porejemplo programas ejecutables.

    Mayor capacidad de respuesta, yaque el usuario interacta directamentecon el servidor, sin necesidad derecargar la pgina.

    Ofrecen aplicaciones interactivas queno se pueden obtener utilizando soloHTML, incluyendo arrastrar y pegar,clculos en el lado del cliente sin lanecesidad de enviar la informacin alservidor.

    Evita la problemtica del uso dediferentes navegadores al abstraersede ellos a travs de un framework.

    Que puede hacer RIA

    Emular el comportamiento deaplicaciones de escritorio

    Variedad de efectos

    Manejo de datos del lado del cliente

    Lgica del negocio del lado del cliente

    Redefinicin de la metfora "Pagina"

    Emulacin del comportamiento deaplicaciones de escritorio

    Arrastrar y soltar

    Mens y barra de herramientas

    Mens contextuales

    Ventanas y wizards

    Paneles

    Arboles

    Validacin de formularios

    Acciones del teclado

    Controles No HTML

    Acordeones

    Combobox

    Spinner box

    Sliders

    Arquitectura

    Generalmente se tiene una aplicacin clientestateful y una capa de servicios separada.RIA se apoya ms sobre un desarrollocliente-servidor en vez de un desarrollo webtradicional, en donde el estado se mantiene

    en el servidor en sesiones. El cliente sabeacerca de si mismo y el tipo de datos queesta solicitando y nicamente solicita losdatos que necesita sin ninguna otrainformacin.

    Cliente: Se maneja la interaccinentre el usuario y la interfaz delusuario, el usuario invoca comandos,actualiza vistas y carga datos. Aqu semantiene el estado de la aplicacin,se manejan todas las peticiones dedatos hacia el servidor y se controla

    como se presentan los datos.

    Servicios: Aqu se manejan y seprocesan todas las peticiones de laaplicacin cliente y delega lasacciones en el servidor, estas puedenser, guardar datos en la base dedatos, actualizar los archivos delsistema, retornar datos al servidor, oalgn tipo de proceso analtico.Determina y le da formato a los datosque son retornados al cliente.

    Tecnologas

    A continuacin enumeramos algunas de lastecnologas utilizadas por las RIA:

    DTHML

    HTML

    Javascript

    CCS

    AJAX

    XML

    Flash, Extensiones de los browsers

    Java

    ActiveX

    XUL

    CURL

  • 8/6/2019 atix-018

    34/55

    Frameworks JScript

    Dojo Rico

    Prototype YUI

    Qooxdoo Backbase

    GWT ZK

    Ext Js JavaFx

    Script.aculo.us Openlaszlo

  • 8/6/2019 atix-018

    35/55

    Algunas aplicaciones en la web

    Autor

    Esteban Saavedra LpezPresidente de la Fundacin AtixLibre (Bolivia)

    Activista de Software Libre en [email protected]@atixlibre.orghttp://jesaavedra.opentelematics.orghttp://www.atixlibre.org

  • 8/6/2019 atix-018

    36/55

    Introduccin bsica aApache Ant: Alternativa a

    make para Java.Apache Ant es un una herramienta open source y cross platform desarrollada en Javapara facilitar el proceso de compilacin de aplicaciones Java. El trabajo que realiza Antes muy parecido al que realiza la herramienta GNU make con C/C++ para facilitar lacompilacin de proyectos con la ventana de ser ms fcil de usar.

    Introduccin

    Erase una vez un joven programador que seaventuro en el mundo Java. En sus principiosy como lo manda el reglamento de todo buenprogramador tecleo su primerHello World!.

    Desde una consola tecleaba javac

    MiClase.java y despus con un solo java

    MiClase su aplicacin posaba frente a l sin

    mayor problema. Pasa el tiempo y aquel joven programador que escriba solopequeos programas se aventura cada vesms en la construccin de aplicaciones quese vuelven complejas cada vez ms y ms.Este programador del que les hablo se dacuenta de que sus aplicaciones se hacencada ves ms grandes y eso es bueno, peroal mismo tiempo ve que amontonar todas susclases en un mismo directorio convierten suentorno de trabajo en un verdaderodesorden; archivos .java, .class,

    bibliotecas externas y dems componentesque usa en sus aplicaciones.

    En un intento por poner orden a su trabajo elprogramador del que les hablo primeramenteaprende a organizar su cdigo mediante eluso de paquetes, en sus respectivos

    directorios, un directorio para las bibliotecasexternas, otra para los archivosbytecode(.class), etc. Y efectivamente, yahay algo de orden. Sin embargo, este orden

    tiene un costo y ese es que el proceso decompilacin se vuelve muy complicado,porque tenemos que pasar muchosargumentos al compilador que indiquen laubicacin de los recursos. Y por si fuera pocoeste no en si el problema, imaginen tener queteclear a mano toda una gran linea decomandos para compilar nuestro proyectocada vez que deseemos probar un cambio ennuestra aplicacin, por ms pequeo queste sea.

    He aqu el problema. Y para eso esta Ant,para ayudarnos en esta tarea.

    Que es apache Ant?

    Ant es una herramienta open source quepermite compilar, ensamblar, probar yejecutar aplicaciones Java. Ant adems esuna herramienta cross platform(plataformacruzada), lo cual significa que trabaja deforma idntica en diferentes plataformas. Sibien inicialmente fue desarrollada para Java

    sta herramienta tambin puede extendersea otros lenguajes. Ant fue desarrolladainicialmente(ya no ms) por James DuncanDavidson cuando trabajaba en SunMicrosystems en el 2001 y posteriormentedonada a la Apache Software Foundation lacual mantiene el desarrollo activo hasta el dade hoy. La versin ms reciente es la 1.8.1,sin embargo, en este documento seempleara la versin 1.8.0.

  • 8/6/2019 atix-018

    37/55

    Instalacin de Ant

    Antes que nada, es necesario instalar lospaquetes necesarios para poder emplear Ant.En mi caso estoy utilizando debian ynicamente es necesario una lnea en laconsola:

    # apt-get install ant

    Este proceso idntico en ubuntu y derivadosde debian as que no hay gran complicacin.Ahora, para distribuciones basadas enpaquetes RPM tales como openSuse, ofedora con una lnea como esta serasuficiente:

    # yum install ant

    Por supuesto, siempre podemos descargar el

    paquete desde su pagina Web enhttp://ant.apache.org. En este sitio

    tenemos la opcin de descargar el cdigofuente o bien el paquete binario, adems dela documentacin y otros recursos de apoyo.La instalacin desde cdigo fuente es muysimple y no requiere mayor instruccin,desde el paquete binario aun ms.

    Desarrollo de una aplicacinen Java

    Para ver como trabaja Ant y cuales son lasventajas de trabajar con ella a continuacinse elabora un pequeo programa queprimeramente se construye siguiendo lametodologa tradicional y posteriormentesalen a relucir las virtudes de Ant en estemismo proceso. Cabe mencionar que elprograma no pretende ser de utilidad, solocomo ejemplo.

    Para nuestro proyecto crearemos el directorioPresentacion, src, ant, example, build,classes segn la la estructura que semuestra en la siguiente imagen.

    Grfico 1. Estructura de directorios denuestro proyecto.

    Pasamos el siguiente cdigo a algn editorde texto(kate, gedit, vim, geany, etc.) loguardamos en el directorio src.

    package ant.example;

    import java.awt.BorderLayout;import java.awt.FlowLayout;import javax.swing.JOptionPane;import javax.swing.JFrame;import javax.swing.JLabel;

    public class HelloAnt extends JFrame{private JLabel lblPresentacion;public HelloAnt(){

    super( ".:Presentacion:." );setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

    setSize(600, 100);setLayout( new FlowLayout() );inicializaComponentes();setVisible(true);

    }public void inicializaComponentes(){

    lblPresentacion = new JLabel();String nombre = JOptionPane.showInputDialog(

    "Su nombre aqui por favor:");

  • 8/6/2019 atix-018

    38/55

    String mensaje = " Hola " +"" +nombre + "! " +"bienvenido a tu primer proyecto con Ant. " +"En ATIX, por supuesto!."+"";

    lblPresentacion.setText( mensaje );add(lblPresentacion);

    }

    public static void main(String[] argumentos){

    HelloAnt helloAnt = new HelloAnt();}

    }

    Cdigo 1. Aplicacin de ejemplo.

    Compilacin y ejecucin

    Ya tenemos nuestro proyecto y ahora vamos a compilarlo. Desde una consola nos ubicamos enel directorio raz del proyecto y ejecutamos el siguiente comando:

    $ javac -sourcepath src/ -d build/classes src/ant/example/HelloAnt.java

    Sin todo sale bien ahora seremos capaces de ejecutar la aplicacin de la siguiente forma:

    $ java -cp build/classes/ ant.example.HelloAnt

    Algo parecido a esto nos debe aparecer.

    Grfico 2. Comparacin y ejecucin de la aplicacin.

    Empaquetar aplicacin

    Hasta ahora todo bien, nuestra aplicacin compila y se ejecuta correctamente, sin embargocuando se escriben aplicaciones es muy probable que los usuarios finales, a quienes va dirigidoel software, no le interese, o aun peor, le desagrade tener que ejecutar la aplicacin tal cual lohemos hecho nosotros en la lnea de comandos, el usuario final desea obtener su software, darun clic y tener su aplicacin trabajando, sin importarle las clases y dems componentes que laintegran. Ante esta situacin vamos a tratar de dar solucin a este problema empaquetandonuestro programa, lo cual nos permite tratar la aplicacin como un nico objeto autocontenido.

  • 8/6/2019 atix-018

    39/55

    Sin muchos detalles creamos el directorio jar dentro build y un archivo llamado Manifest ydentro de l tecleamos lo siguiente:

    Main-Class: ant.example.HelloAnt

    Ahora ejecutamos:

    $ jar cfm build/jar/HelloAnt.jar Manifest -C build/classes/ .

    $ java -jar build/jar/HelloAnt.jar

    Grfico 3. Ejecutando la aplicacin desde un .jar.

    Hasta ahora ya hemos echo todo lo necesario para construir nuestra aplicacin. Si bien esto noes mucho ya que estamos tratando con un proyecto muy muy pequeo la verdad es que lospasos para realizar el mismo proceso con aplicaciones grandes son un poco mas engorrosos yrepetitivos.

    Ant en accin

    Ahora veamos como realizar el mismo proceso que hicimos anteriormente pero ahora con Ant.La forma de trabajar de Ant consiste en analizar un archivo XML y realizar las tareas que ah seespecifican. El archivo esta compuesto de objetivos(targets) y tareas(tasks).

    Targets

    Un target es un contenedor de tareas que colabora para alcanzar un estado deseado durante elproceso de construccin(build).

    .

    .

    .

    Tasks

    Una tarea es una pieza de cdigo que puede ser ejecutada. Una tarea puede tener multiplesatributos o argumentos. La estructura comn de una tarea es la siguiente:

  • 8/6/2019 atix-018

    40/55

    Bien. Ya que vimos sencillamente como se estructura el archivo veamos como quedara paranuestro proyecto.

    Por cierto, el nombre del archivo puede ser el que ustedes gusten pero por defecto Ant intenta

    abrir un archivo con nombre build.xml por lo cual no necesitan indicarlo si su archivo se llamaexactamente as.

    Cdigo 2. Archivo build.xml para nuestro proyecto.

    Ahora cada vez que necesiten probar los cambios de su proyecto bastara con 3 lneas:

    $ ant build$ ant jar$ ant run

    Tres comandos que bien pueden reducirse a uno solo que adems de reducir el nmero decomandos tambin reduce problemas en archivo build.xml, tales como tener que recordar elnombre de los directorios y archivos durante la escritura del mismo.

  • 8/6/2019 atix-018

    41/55

    Con este nuevo cdigo tenemos un poco mas de legibilidad ya que las referencias a todos loselementos las definimos en un principio y despus se accede a ellas mediante el identificadorque se especifico y no con el valor exacto en cada ocasin.

    Desde la consola ejecutar ant sin argumentos y ella har todo. Y bueno, eso es todo, espero lessirva. Hasta la prxima.

    Conclusin

    Los proyectos de software son complicados no solo por las complejidad del problema que

    abordan sino tambin por el esfuerzo que cuesta mantenerlos y construirlos. Apache Ant es laherramienta open source que nos ayuda con la segunda cuestion. Apache Ant es unaherramienta muy extensa por lo que aqu solo hemos incluido una mera introduccin a estamisma. Para profundizar en el tema una buena fuente es la documentacin que incluye Ant.

  • 8/6/2019 atix-018

    42/55

    Referencias

    [1] http://ant.apache.org/manual/tutorial-HelloWorldWithAnt.html

    [2] Documentacin de Apache Ant 1.8.0.

    Autor

    Rafael Rendn PabloEstudiante de Ingeniera en Sistemas ComputacionalesUsuario de software [email protected]

  • 8/6/2019 atix-018

    43/55

  • 8/6/2019 atix-018

    44/55

    Willay newsTecnologa que permitehacer llover

    Con los ltimos cambios climticos, loscientficos se han dedicado a realizarinventos y hacer uso de la tecnologa paraproducir algunos cambios en el clima, unejemplo de ello se produjo en el veranopasado (invierno para el hemisferio sur) quefue realmente lluvioso en Oriente Medio. Dehecho, fue demasiado lluvioso e inusualpara un desierto.

    Ahora una compaa llamada MeteoSystems ha declarado que ellos fueron los

    causantes de la lluvia debido al uso de unsistema secreto de control del tiempo que sebasa en una tecnologa desarrollada porNikola Tesla en 1890.

    La compaa us unas torres con forma deparaguas que miden 9 metros que disparaniones negativos a la atmsfera cuando lahumedad supera el 30%. Los iones atraenpartculas de polvo, las cuales atraenmolculas de agua, y luego puf! Yatenemos nubes grises y lluvia.

    El mtodo de fabricacin de lluvia fueusado en cinco sitios cercanos a Abu Dhabiy Meteo Systems se lleva el crdito por 52aguaceros.

    Diseo automotriz futurista

    Peter Vardai y Tamas Fodor han sido losencargados de la creacin del automvilconceptual que vemos en la imagen, elfantstico Blackbird Mercedes, el cual sindudas tiene fuerte inspiracin en latecnologa vista en Tron, aunqueobviamente no cumplira las mismasfunciones.

    Vardai ha dicho que la forma est basada enlos aerodinmicos de un avin y tambin quesus colores son negro y plateado, aunque en

    las imgenes solamente podemos ver elnegro y las luces de color.

    Sin dudas se trata de uno de los autos massobresalientes, y como muchos de ustedes,esperamos que salga de la fase conceptualpronto y entre en produccin

  • 8/6/2019 atix-018

    45/55

    Tinta para camuflar tanquesde guerra

    BAE Systems es una firma britnica que seespecializa en darle algunas de las ms

    geniales y locas ideas al ejrcito. Basndoseen diseos conceptuales que se creepueden ser convertidos en realidad en uncorto perodo de tiempo, la nueva idea decamuflar tanques podra llevar a la tintaelectrnica a un nuevo nivel.

    Lo necesario son unos cuantos sensores yun tanque cubierto de la citada tinta. Lossensores tomaran lecturas de losalrededores, incluyendo terreno, colores yotra informacin que sera enviada a la tinta,la cual la proyectara sobre el tanque,

    dejndolo camuflado.

    Desafortunadamente para BAE Systems, latecnologa necesaria para convertir a estoen una realidad es simplemente demasiadocostosa, y sobretodo para usarla en elcampo de batalla.

    Baby Keyboard

    Baby Keyboard es un software para bebsque evitar que stos borren tus archivos

    mientras estn usando el teclado de lacomputadora. Tu beb podr usar el tecladolibremente sin causar ningn tipo deproblema.

    Cuando el pequeo le da a una tecla oclickea el mouse aparecer en pantalla unaimagen o una palabra con su respectivosonido. El programa tambin puede pasarlas imgenes automticamente, solo hacefalta esperar. Obviamente otra cosa que sepuede hacer es ajustar el tiempo de uso del

    teclado por parte de tu beb.

  • 8/6/2019 atix-018

    46/55

    Willay newsControl Paterno

    Sin duda alguna muchos padres estan

    preocupados por tener un control sobre laactividad de sus hijos cuando estos estn enInternet, pues bien ahora mismo tenemosvarios programas que permiten hacer esto,uno de los ltimos es Facebook SpyMonitor, que es un software de monitoreo ycontrol paterno. Se dedica a registrar lo quehacen los usuarios de Facebook en el PCque est instalado, incluyendo perfiles, chat,mensajes privados, contactos y eventos eincluso de vez en cuando hace una capturade pantalla. Tambin registra las bsquedas

    online que el usuario realiza sobreFacebook, clientes instantneos deFacebook y sitios web asociados.

    Podrs ver exactamente lo que el usuario hahecho, como si estuvieras viendo un vdeograbado por una cmara de seguridad.

    Salesforce compra Dimdim

    Siguiendo al efecto Facebook en la manera

    en la que la gente colabora y se relaciona, elservicio de computacin en nubeSalesforce.com ha anunciado la adquisicinde la firma de comunicaciones en tiempo realDimdim.

    La compra se ha llevado a cabo por unacantidad de 31 millones de dlares.

    Con sta adquisicin, Salesforce.comespera darle a la plataforma de comunicacinde la compaa la misma colaboracinintegrada y experiencia que ha hecho deFacebook la pgina ms popular deinternet.

    Chatter, la plataforma de Salesforce.com, sepresent en junio de 2010 y llevaacumulados 60,000 usuarios desde esemomento.

    La compra y la mejora que hay planificadapara Chatter forma parte de lo queSalesforce.com cree el paso al servicio ennube 2, el siguiente avance de lacomputacin en nube, que ser ms social,mvil y en tiempo real, y que pretendesorprender a propios y extraos.

    Fundada en 2007 por DD Ganguly y PrakashKhot, Dimdim ofrece una plataforma web quepermite a los usuarios organizar o visitarreuniones online, demostraciones yseminarios web desde su navegador deinternet

  • 8/6/2019 atix-018

    47/55

    Google Summer of Code(GSoC)

    A travs de Google Summer of Code, los

    solicitantes aceptan a estudiantesemparejados con un mentor o mentores delos proyectos participantes, ganando as laexposicin a los escenarios del mundo realde desarrollo de software y la oportunidadpara el empleo en reas relacionadas consus actividades acadmicas. A su vez, losproyectos participantes son capaces deidentificar con mayor facilidad y traer a losnuevos desarrolladores. Lo mejor de todo,ms cdigo fuente se ha creado y puesto enlibertad para el uso y beneficio de todos.

    Ser el 7 ao consecutivo que se organiza.No hace falta que repita qu es el SoC. Lospasados 6 aos han sumado en total 4,500estudiantes de ms de 85 pases distintos, osea un xito total y un gran esfuerzo porparte de Google para fomentar el SoftwareLibre. Este ao Google aumentar en un25% el nmero de estudiantes yorganizaciones aceptadas.

    Autor

    Jenny Saavedra LpezDiseo y Edicin Revista Atix

    [email protected]

  • 8/6/2019 atix-018

    48/55

  • 8/6/2019 atix-018

    49/55

  • 8/6/2019 atix-018

    50/55

  • 8/6/2019 atix-018

    51/55

  • 8/6/2019 atix-018

    52/55

    Contacto

    Para solicitar cualquier informacin, puedes contactar a:

    Esteban Saavedra Lpez ([email protected] )

    Jenny Saavedra ([email protected])

    Publicacin

    Te invitamos a ser parte de la Revista ATIX. La forma de participar puede serenvindonos:

    Artculos referidos a reas como: Instalacin y personalizacin de Aplicaciones Scripting Diseo grfico Programacin y desarrollo de aplicaciones Administracin de servidores Seguridad y cualquier tema enmarcado dentro del uso de Software Libre

    Trucos y recetas. Noticias.

    Comics. Links de inters.

  • 8/6/2019 atix-018

    53/55

    Empezamos a registrar nuestra historia

  • 8/6/2019 atix-018

    54/55

  • 8/6/2019 atix-018

    55/55