miércoles, 29 de julio de 2009

La Vida

Palabras maravillosas de William Shakespeare

Después de algún tiempo aprenderás la diferencia entre dar la mano y socorrer a un alma, y aprenderás que amar no significa apoyarse, y que compañía no siempre significa seguridad.

Comenzarás a aprender que los besos no son contratos, ni regalos, ni promesas... comenzarás a aceptar tus derrotas con la cabeza erguida y la mirada al frente, con la gracia de un niño y no con la tristeza de un adulto y aprenderás a construir hoy todos tus caminos, porque el terreno de mañana es incierto para los proyectos y el futuro tiene la costumbre de caer en el vacío.

Después de un tiempo aprenderás que el Sol quema si te expones demasiado... aceptarás incluso que las personas buenas podrían herirte alguna vez y necesitarás perdonarlas...

Aprenderás que hablar puede aliviar los dolores del alma... descubrirás que lleva años construir confianza y apenas unos segundos destruirla y que tu también podrás hacer cosas de las que te arrepentirás el resto de la vida.

Aprenderás que las nuevas amistades continúan creciendo a pesar de las distancias, y que no importa que es lo que tienes, sino a quien tienes en la vida, y que los buenos amigos son la familia que nos permitimos elegir.

Aprenderás que no tenemos que cambiar de amigos, si estamos dispuestos a aceptar que los amigos cambian.

Te darás cuenta que puedes pasar buenos momentos con tu mejor amigo haciendo cualquier cosa o simplemente nada, sólo por el placer de disfrutar su compañía.

Descubrirás que muchas veces tomas a la ligera a las personas que más te importan y por eso siempre debemos decir a esas personas que las amamos, porque nunca estaremos seguros de cuando sea la última vez que las veamos.

Aprenderás que las circunstancias y el ambiente que nos rodea tienen influencia sobre nosotros, pero nosotros somos los únicos responsables de lo que hacemos.

Comenzarás a aprender que no nos debemos comparar con los demás, salvo cuando queramos imitarlos para mejorar.

Descubrirás que se lleva mucho tiempo para llegar a ser la persona que quieres ser, y que el tiempo es corto.

Aprenderás que no importa a donde llegaste, sino a donde te diriges y si no lo sabes cualquier lugar sirve...

Aprenderás que si no controlas tus actos ellos te controlaran y que ser flexible no significa ser débil o no tener personalidad, porque no importa cuán delicada y frágil sea una situación: siempre existen dos lados.

Aprenderás que héroes son las personas que hicieron lo que era necesario, enfrentando las consecuencias...

Aprenderás que la paciencia requiere mucha práctica.

Descubrirás que algunas veces, la persona que esperas que te patee cuando te caes, tal vez sea una de las pocas que te ayuden a levantarte. Madurar tiene más que ver con lo que has aprendido de las experiencias, que con los años vividos.

Aprenderás que hay mucho más de tus padres en ti de lo que supones.

Aprenderás que nunca se debe decir a un niño que sus sueños son tonterías, porque pocas cosas son tan humillantes y sería una tragedia si lo creyese porque le estarás quitando la esperanza.

Aprenderás que cuando sientes rabia, tienes derecho a tenerla, pero eso no te da el derecho de ser cruel.

Descubrirás que sólo porque alguien no te ama de la forma que quieres, no significa que no te ame con todo lo que puede, porque hay personas que nos aman, pero que no saben cómo demostrarlo...

No siempre es suficiente ser perdonado por alguien, algunas veces tendrás que aprender a perdonarte a ti mismo.

Aprenderás que con la misma severidad con que juzgas, también serás juzgado y en algún momento condenado.

Aprenderás que no importa en cuantos pedazos tu corazón se partió, el mundo no se detiene para que lo arregles.

Aprenderás que el tiempo no es algo que pueda volver hacia atrás, por lo tanto, debes cultivar tu propio jardín y decorar tu alma, en vez de esperar que alguien te traiga flores.

Entonces y sólo entonces sabrás realmente lo que puedes soportar; que eres fuerte y que podrás ir mucho más lejos de lo que pensabas cuando creías que no se podía más. Es que realmente la vida vale cuando tienes el valor de enfrentarla.

William Shakespeare
Leer más...

lunes, 27 de julio de 2009

Creando una Aplicacion Web Simple usando Base de datos MySql

Ahora vamos a generar una aplicación Web con acceso a bases de datos, es una aplicación simple, y cumple con la función de irnos adentrando en la construcción de Aplicaciones Web más complejas usando J2EE...

A modo de breve reseña, MySQL en un sistema muy popular de administración de bases de datos, de Código Abierto, bastante utilizado en aplicaciones web por su gran velocidad, flexibilidad y escalabilidad. MySQL emplea SQL, o Structured Query Language, para acceder y procesar los datos contenidos en bases de datos.



Como ya estamos hablando de Aplicaciones Web con Java, asumo que el usuario tiene experiencia con la conexion entre Java y MySQL, por lo tanto no nos detendremos a explicar cómo generar una conexión a la Base de datos, para quien no maneje el tema, puede consultar este Tutorial donde se explica con lujo de detalles una conexion a Bases de datos (de varios tipos) a Java. En este caso, tendremos generada la base de datos MySQL llamada MyNewDatabase, la cual deberán crear y registrar en NetBeans.
Las tablas que utilizaremos las pueden ontener desde ifpwafcad.sql Este archivo SQL creará dos tablas, Subject y Counselor, siendo pobladas con datos simples. Si es necesario, descarguen el archivo a su computador, luego ábranlo en NetBeans y ejecútenlo en la base de datos MySQL llamada MyNewDatabase.

Contenidos

Notas:

  • El Conector/Driver JDBC, necesairo para la comunicación entre las platarormas Java y el protocolo de bases de datos de MySQL, está incluido en las versiones 6.x de NetBeans.
  • Si no se la puede para hacer estos simples ejercicios por su cuenta, o simplemente no tiene dedos para el piano y la programación no es lo suyo, puede ver un ejemplo funcional de este tutorial descargando la aplicación de ejemplo.

Planificando la estructura

Una aplicación web simple puede ser diseñada usando una arquitectura de doble capa, en la cual la aplicación se comunica directamente con la fuente de datos usando la API Java Database Connectivity. La solicitud del usuario se envía a la base de datos, y el resultado es enviado directamente de vuelta al usuario. una arquitectura de doble capa es fácilmente mapeada en una configuración cliente-servidor, cuando un navegador del usuario funciona como cliente, y una base de datos remota alcanzable por internet corresponde al servidor.

La plicación que construrán en esta ocasión involucra la creación de dos Páginas JSP. En cada una de ellas, agregarán etiquetas básicas de HTML para implementar una interfaz sencilla, seguidas de etiquetas SQL provistas por la tecnología JSTL con el objetivo de consultar la base de datos. Consideren el siguiente escenario Cliente-Seridor.

Diagrama que describe la estructura de una aplicación web de doble capa

La página principal (index.jsp) se presenta al usuario con un simple formulario HTML. Cuando el cliente hace una solicitud a la página index.jsp, el código JSP contenido en su interior es parseado, y los datos de la tabla Subject es reunido, agregado a la página, y enviado hacia el cliente. El usuario marca una selección en el formulario HTML presentado y lo envía, lo que genera una solicitud para response.jsp. Cuando response.jsp es parseada, los datos de ambas tablas (Subject y Counselor) es reunido e insertado en la página.
Finalmente, la página es retornada al cliente y el usuario logra ver datos basados en su selección.

Creando un nuevo Proyecto

Con el objetivode implementar el escenario descrito anteriormente, desarrollaremos una aplicación simple para una organización ficticia llamada IFPWAFCAD, o The International Former Professional Wrestlers' Association for Counseling and Development. La aplicación habilitará al usuario para elegir algún motivo de asesoría desde un drop-down (index.jsp), luego se obtendrá la data desde la base de datos MySQL y se retornará la información al usuario (response.jsp).

index.jsp

index.jsp displayed in a browser

response.jsp

response.jsp displayed in a browser

Creando un nuevo proyecto en el IDE:

  1. Para generar un Proyecto nuevo, sigan las instrucciones descritas acá, teneiendo precaución con no usar el mismo nombre del proyecto.
  2. En Nombre del Proyecto, ingresen IFPWAFCAD.
  3. Avanzando por el asistente, dejen las opciones por defecto. Especifiquen el servidor a utilzar (ojalá GlassFish) desde el drop-down Servidores. No seleccionen ningún Framework (después lo veremos). Al llegar al final, bueh... obviamente cllick en Finalizar.
    El IDE crea un template de proyecto para la aplicación completa, y abre una página JSP vacía (index.jsp) en el editor de código. index.jsp sirve como la página de bienvenida a la aplicación. El nuevo proyecto está estructurado de acuerdo a las orientaciones de Sun Java BluePrints.

Preparando la Interfáz

Comenzamos por la preparación de una interfaz simple para las dos páginas. Ambas, index.jsp y response.jsp implementan una tabla HTML para mostrar datos con un modelo determinado.index.jsp también requiere un formulario HTML que incluya un Drop-Down list.

index.jsp

Asegurate que index.jsp esté abierto en el editor de código. Si no lo está, debes hacer doble click sobre index.jsp desde IFPWAFCAD > Páginas Web en la ventana Proyectos.

  1. En el editor de código, cambia el texto entre las etiquetas <title> a IFPWAFCAD Homepage.
  2. Ahora cambia el código entre las etiquetas <h1> (<h2> si estás usando NetBeans 6.0 o 6.1) a Welcome to IFPWAFCAD, the International Former Professional Wrestlers' Association for Counseling and Development!.
  3. Abre la paleta eligiendo Ventana > Paleta (Ctrl-Shift-8; ⌘-Shift-8 en Mac) desde el menú principal. Posa el puntero del mouse sobre el ícono Tabla desde la categoría HTML y fíjate lo que mustra el trozo de código que aparece
    Paleta mostrando un trozo de código cuando se posan sobre un item
    Click sobre el ícono, arrastra y suelta la tabla dentro de la página en el editor hasta un punto después de las etiquetas <h1> (o <h2> ). En el dialogo Insertar Tabla, especifíca los siguientes valores y clickea en OK:

    • Filas: 2
    • Columnas: 1
    • Tamaño del Borde: 0
    el código HTML de una tabla se ha generado y agregado a tu página.
  4. Agrega el siguiente contenido a la cabecera de la tabla y la celda de la primera fila de la tabla (Nuevos contenidos en Negrita (bold)):
    <table border="0">
    <thead>
    <tr> <th>IFPWAFCAD offers expert counseling in a wide range of fields.</th>

    </tr>
    </thead>
    <tbody>
    <tr>
    <td>To view the contact details of an IFPWAFCAD certified former
    professional wrestler in your area, select a subject below:

    </td>

    </tr>
  5. Para la última fila de la tabla, arrastra y suelta un formulario HTML dentro de la página, directamente entreel segundo par de etiquetas <td>. En la caja de texto Acción escribe response.jsp, luego pincha OK.
  6. Escribe el siguiente texto entre las etiquetas <form> del formulario que acabas de crear: <strong>Select a subject:</strong>
  7. Arrastra y suelta una Lista desplegable (drop-down list) desde la Paleta hasta un punto justo después del texto recién añadido. En el dialogo Insertar Lista Desplegable, escribe subject_id para el campo Nombre y pincha OK. Fíjate que el trozo de código para el drop-down se añadió a tu página.

    El número de opciones para el drop-down en estos momentos no importa. Posteriormente verémos que agregando etiquetas JSTL se generarán dinámicamente las opciones, basadas en la data reunida desde la tabla Subject en la base de datos.
  8. Agrega un botón de envío (submit) al formulario arrastrando un botón desde la paleta hasta un punto justos después del drop-down que acabas de añadir. Ingresa submit para ambos campos, Etiqueta y Nombre, luego presiona OK.
  9. Para darle formato a tu código, presiona un click derecho y elije Formato (Alt-Shift-F; Ctrl-Shift-F en Mac). Tu código será automáticamente formateado, y debería verse similar al siguiente:
    <body>
    <h2>Welcome to <strong>IFPWAFCAD</strong>, the International Former
    Professional Wrestlers' Association for Counseling and Development!
    </h2>

    <table border="0">

    <thead>
    <tr>
    <th>IFPWAFCAD offers expert counseling in a wide range of fields.</th>
    </tr>
    </thead>

    <tbody>
    <tr>
    <td>To view the contact details of an IFPWAFCAD certified former
    professional wrestler in your area, select a subject below:
    </td>
    </tr>
    <tr>

    <td>
    <form action="response.jsp">
    <strong>Select a subject:</strong>
    <select name="subject_id">
    <option></option>

    </select>
    <input type="submit" value="submit" name="submit" />
    </form>

    </td>
    </tr>
    </tbody>
    </table>
    </body>
    Para ver esta página en un navegador, haga click derecho en el editor de código y elija Ejecutar Archivo (Shift-F6). Cuando se hace esto, la página JSP es automáticamente compilada e implementada en el servidor. El IDE abre tu explorador por defecto para mostrar la página desde su ubicación.
    index.jsp vista en un navegador

response.jsp

Para preparar la interfáz de response.jsp debes primero crear el archivo en tu aplicación. Debes tener en cuenta que la mayoría del contenido que mostrará la página será generado sinámicamente usando la tecnología JSP. Por lo tanto, en los siguientes pasos se agregarán placeholders que más tarde sustituirás por código JSP.

  1. Click derecho en el proyecto IFPWAFCAD y elige Nuevo > JSP. Se abrirá el dialogo Nuevo Archivo.
  2. En el campo Nombre, ingresa response.
  3. Acepta nuevamente las configuraciones por defecto y presiona Finalizar. Un esquema de archivo response.jsp es generado y abierto en el editor. Un nuevo nodo JSP es mostrado en la ventana de proyectos.
    response.jsp aparece en la ventana de Proyectos
  4. En el editor de código, cambia el título a IFPWAFCAD - {placeholder}.
  5. Elimina la línea <h1>Hello World!</h1> (o <h1>JSP Page</h1> si estas trabajando en NetBeans 6.0 o 6.1) entre las etiquetas <body>, luego copia y pega la siguiente tabla HTML dentro del cuerpo de la página:
    <table border="0">
    <thead>
    <tr>
    <th colspan="2">{placeholder}</th>

    </tr>
    </thead>
    <tbody>
    <tr>
    <td><strong>Description: </strong></td>

    <td><span style=" font-style:italic;">{placeholder}</span></td>
    </tr>
    <tr>
    <td><strong>Counselor: </strong></td>

    <td>{placeholder}
    <br>
    <span style=" font-style:italic;">
    member since: {placeholder}</span>
    </td>
    </tr>

    <tr>
    <td><strong>Contact Details: </strong></td>
    <td><strong>email: </strong>
    <a href="mailto:{placeholder}">{placeholder}</a>

    <br><strong>phone: </strong>{placeholder}
    </td>
    </tr>
    </tbody>
    </table>
    Para ver esta página en un navegador, haga click derecho en el editor de código y elija Ejecutar Archivo (Shift-F6). Cuando se hace esto, la página JSP es automáticamente compilada e implementada en el servidor. El IDE abre tu explorador por defecto para mostrar la página desde su ubicación. Tu página response.jsp debería verse similar a la siguiente:
    response.jsp vista en un navegador

style.css

Crear una hoja de estilo simple para mejorarar el aspecto de la interfáz.

  1. Click derecho en el Proyecto IFPWAFCAD en la ventana de proyectos y elije Nuevo > Otros. En el Asistente para nuevos Archivos Asegurate de tener seleccionado Web dentro de Categorías, Luego elije Hoja de estilo en Cascada (Cascading Style Sheet) y presiona Siguiente.
  2. Escribe style para el Nombre del Archivo CSS y presiona Finalizar. El IDE creará un archivo css vacío y lo ubicará en el mismo lugar que index.jsp and response.jsp.
  3. En el editor de código, agrega el siguiente contrenido a tu archivo style.css:
    body {
    font-family: Verdana, Arial, sans-serif;
    font-size: smaller;
    padding: 50px;
    color: #555;
    }

    h1, h2 {
    text-align: left;
    letter-spacing: 6px;
    font-size: 1.4em;
    color: #be7429;
    font-weight: normal;
    width: 450px;
    }

    table {
    width: 580px;
    padding: 10px;
    background-color: #c5e7e0;
    }

    th {
    text-align: left;
    border-bottom: 1px solid;
    }

    td {
    padding: 10px;
    }

    a:link {
    color: #be7429;
    font-weight: normal;
    text-decoration: none;
    }

    a:link:hover {
    color: #be7429;
    font-weight: normal;
    text-decoration: underline;
    }
  4. Vincula tu hja de estilos a index.jsp y a response.jsp:

    En ambas páginas agrega la siguiente línea entre las etiquetas <head>: <link rel="stylesheet" type="text/css" href="style.css">

Este documento asume que tienes conocimientos de CSS, sabes como usarlos, y cómo afectarán a los elementos HTML correspondientes en tus páginas index.jsp y response.jsp.

Cuando trabajes con CSS en el IDE, puedes aprovechar las ventajas del Generador de estilos CSS y CSS Preview. Juntas, ambas herramientas proveen un soporte extenso en la creación de reglas de estilos y elementos de visualización cuando se acompañan de atributos de estilos.

Por Ejemplo, ubica el cursor entre la regla h1, h2 en style.css, luego abre la vista previa de CSS (CSS Preview - Window > Other > CSS Preview):


CSS Preview demuestra cómo un elemento se generará en el navegador. También debes tener en cuenta que la vista previa se actualiza automáticamente cuando haces cambios en la regla, entregandote una representación textual en tiempo real del elemento de estilo desde el IDE.



Leer más...

viernes, 24 de julio de 2009

Introducción al desarrollo de Aplicaciones Web con Java y NetBeans

Esto lo escribo en consideración al comentario que me dijo Alex (aka Walex Sch!!), que necesitaba algo de info sobre aplicaciones web en java, específicamente de J2EE (Java 2 Enterprise Edition)....

Pues bien, partiremos entonces con una reseña desde lo más básico hasta lo más complicado en aplicaciones web con Java... desde el típico Hola Mundo, hasta el uso de persistencias...

Para esto me basaré en tres cosas:
  1. Primero y lo más importante: El material el tutoriales y Ejemplos que existen en la página de NetBeans, que con mucho esfuerzo y dedicación he de traducir para ustedes (ignaros!!)....
  2. y En segundo Lugar a mi propio conocimiento en estos mismos menesteres...
  3. Que el desarrollador está utilizando, al menos, NetBeans IDE 6.5, o idealmente 6.7...
Entonces, veremos ahora una Introducción al desarrollo de Aplicaciones Web





Este documento nos llevará a través del uso básico de NetBeans para el desarrollo de aplicaciones Web. Aquí se demostrará como crear una aplicación web simple, implementarla en un servidor y ver su representación en un navegador. La aplicación empleará JavaServer Pages™(JSP) para solicitarles que ingresen su nombre. Usará también un componenteJavaBeans™ para hacer que sus datos permanezcan durante la sesión HTTP, y nos dovolverá el nombre como salida en una segunda página JSP.

Contenidos

Para seguir este Tutorial, necesitan los siguientes Softwares y Recursos.
Software o RescursoVersión Requerida
NetBeans IDE 6.5 o 6.7
Java Development Kit (JDK)versión 6
GlassFish application server
o
Tomcat servlet container
V2

versión 6.x

Notas:

  • La instalación de componentes Web y Java EE habilita opcionalmente la instalación del servidor de aplicaciones GlassFish V2 y de Apache Tomcat 6.0.x. Necesitas instalar uno de ambos para seguir este tutorial (ojalá GlassFish si realmente deseas introducirte al mundo J2EE).

  • Si no se la puede para hacer estos simples ejercicios por su cuenta, o simplemente no tiene dedos para el piano y la programación no es lo suyo, puede ver un ejemplo funcional de este tutorial descargando la aplicación de ejemplo.



Configurando un proyecto de Aplicación Web

  1. Elije Archivo > Nuevo Proyecto (Ctrl-Shift-N) desde el menu principal. Bajo Categorías, selecciona Java Web. Bajo Proyectos, selecciona Aplicación Web y luego click en siguiente.
  2. En el paso 2, ingresa HelloWeb en el campo de texto Nombre del Proyecto.
  3. Especifica la Ubucación del proyecto en cualquier directorio de tu computador. Para efectos del tutorial, éste directorio será referido como
    $PROJECTHOME.
  4. Click en Siguiente. Selecciona el servidor con el que deseas implementar tu aplicación. Sólamente los servidores que están registrados con el IDE son los que se listan.. Nótese que la Ruta del Contexto (Context Path p.ej: en el servidor) viene siendo /HelloWeb, que es en base al mismo nombre que se le dió a la Aplicación en el paso anterior.
  5. Selecciona la versión de Java EE que deseas usar con tu aplicación y clickea siguiente.
  6. En el panel de Frameworks, no selecciones nada y simplemente haz click en Finalizar para crear el proyecto.
    El IDE crea el directorio del proyecto $PROJECTHOME/HelloWeb. El directorio del Proyecto contiene todos los archivos fuente y la metadata del proyecto, como los Scripts de construcción de Ant. El proyecto HelloWeb es abierto en el IDE automáticamente. La página de bienvenida, index.jsp, se abre en el editor de código en la ventana principal. Puedes ver la estructura de archivos del proyecto en la ventana Archivos (Ctrl-2), y su estructura lógica en la ventana Proyecto (Ctrl-1).


    Estructura lógica del proyecto HelloWeb vista en la Ventana de Proyectos

Creando y editando Archivos fuente de Aplicaciones Web

Crear y editar archivos de código fuente es la función principal y más importante que un IDE. Después de todo, es posible que te pases la mayor parte del día haciendolo. El IDE provee de una ampla gama de herramientas que complementan el estilo personal de cada desarrollador, sea que prefieras escribir todo el código a mano o quieras que el IDE genere largos trozos de código por ti.

Creando un Paquete Java y un archivo Fuente

  1. En la ventana de Proyectos, expande el nodo Paquetes de Fuentes. Fíjate que los paquetes de fuentes sólamente contienen un paquete vacío por defecto.
  2. Click derecho sobre Paquetes de Fuentes y elije Nuevo > Clase de Java. Ingresa NameHandler en el campo de texto Nombre de Clase y luego escribe org.mypackage.hello en el combo box Paquete. Click en Finalizar. Ahora la nueva clase NameHandler.java se abrirá en el Editor de código.
  3. En el editor, declara una variable String escribiendo la siguiente línea directamente debajo de la declaración de la Clase.
    String name;
  4. Agrega el siguiente constructor para la clase:
    public NameHandler()
  5. Por último agrega la siguiente línea en el constructor NameHandler():
    name = null;

Generando los métodos Accesadores(Getter) y Mutadores(Setter)

  1. Click derecho en el campo name en el editor de código y elije Refactorizar > Encapsular Campos. Se abrirá el dialogo de Encapsulador de Campos, listando el campo name.
  2. Click en Refactorizar. Los métodos Accesadores y Mutadores son generados para el campo name. Los modificadores de acceso para la variable de la clase son modificados a private mientras los accesadores y mutadores son generados con modificadores públicos. La clase debería verse similar a la siguiente.

    package org.mypackage.hello;
    /**
    *
    * @author nbuser
    */4
    public class NameHandler {

    private String name;

    /** Creates a new instance of NameHandler */

    public NameHandler() {

    name = null;

    }

    public String getName() {

    return name;

    }

    public void setName(String name) {

    this.name = name;

    }
    }

  3. Editando la página JSP por defecto

    1. Debes Retomar el archivo index.jsp haciendole click en su pestaña, arriba del Editor de código.
    2. En la Paleta (Ctrl-Shift-8) ubicada a la derecha del editor, expande los Formularios HTML y arrastra un item Formulario hacia un punto ubicado después de las etiquetas <h1> en el editor de código.

      La caja de dialogo Insertar Formulario aparecerá en la pantalla.

    3. Especifica los siguientes valores:
      • Acción: response.jsp
      • Método: GET
      • Nombre: Name Input Form

      Haz Click en OK. Un formulario HTML ha sido añadido al archivo index.jsp.

      Caja de Dialogo Formulario de Ingreso

    4. Arrastra un item de Ingreso de Texto hasta un punto justo antes de la etiqueta </form>, luego especifica los siguientes valores:
      • Nombre: name
      • Tipo: text
      Click en OK. Una etiqueta <input> fue añadida entre las etiquetas <form>.
    5. Arrastra un item Botón;n hasta un punto justo antes de la etiqueta</form>. Indícale los siguiente valores:
      • Etiqueta: OK
      • Tipo: submit
      Haz click en OK. Un botón HTML ha sido añadido entre las etiquetas <form>.
    6. Escribe Enter your name: justo antes de la primera etiqueta <input>, luego cambiale el texto por defecto Hello World! entre las etiquetas <h1> a Formulario de Ingreso.
    7. Click derecho dentro del editor de código y elije Formato (Alt-Shift-F) para limpiar el formato de tu código. Tu página index.jsp debería verse similar a la siguiente:

      <html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>JSP Page</title>
      </head>
      <body>
      <h1>Entry Form</h1>

      <form name="Name Input Form" action="response.jsp">
      Enter your name:

      <input type="text" name="name" />
      <input type="submit" value="OK" />

      </form>
      </body>
      </html>



    8. Creando una página JSP

      1. En la ventana Proyectos, click derecho en el proyecto HelloWeb y elije Nuevo > JSP. El asistente para un nuevo archivoJSP se abrirá. Nomnra al archivo response, y haz click en finalizar. Fíjate que el archivo response.jsp se muestra en la ventana de Peoyectos, debajo de index.jsp, y el nuevo archivo se abre en el editor.
      2. En la paleta, a la derecha del editor, expande JSP y arrastera un item Use Bean hasta un punto debajo de <body>. El dialogo para insertar un nuevo Bean se abre. Especifica los valores como se muestra en la siguiente figura.

        Use Bean dialog containing specified fields
        • ID: mybean
        • Clase: org.mypackage.hello.NameHandler
        • Alcance: session
        Click en OK. Fíjate que la etiqueta <jsp:useBean> se añadió debajo de <body>.
      3. Arrastra un item Bean Property desde la paleta hasta después de la etiqueta <h1> y haz click en OK. En la etiqueta <jsp:setProperty> aparecerá, borra el atributo vacío value y edita como sigue:<jsp:setProperty name="mybean" property="name" />Como se indica en la documentación de <jsp:setProperty>, puedes modificar un valor de la propiedad de varias formas. En este caso el ingreso de datos del usuario viene de index.jsp desde un par de un par name/value que es enviado hacia el objeto request. Cuando modificas una propiedad usando la etiqueta <jsp:setProperty>, puedes especificar el valor de acuerdo al nombre de3 la propiedad contenida en el objeto request. Por lo tanto, mediante la modificación de property a name, puedes devolver el valor especificado por el ingreso(input) del usuario.
      4. Cambia el texto entre las etiquetas <h1> para que se vea como esto:<h1>Hello, !</h1>
      5. Arrastra un item Get Bean Property (Obtener propiedades del Bean) desde la paleta y suéltalo después de la coma entre las etiquetas <h1>. Especifica los siguientes valores en el dialogo Get Bean Property:
        • Nombre del Bean: mybean
        • Nombre de la Propiedad: name
        Click en OK. Si te fijas, la etiqueta<jsp:getProperty> ahora está en tu código; entre las etiquetas <h1>.
      6. Click derecho dentro del editor de código y elije Formato (Alt-Shift-F) para limpiar nuevamente el formato de tu código. Las etiquetas <body> de tu archivo response.jsp deberían verse similares a las siguientes:<body>
        <jsp:useBean id="mybean" scope="session" class="org.mypackage.hello.NameHandler" />
        <jsp:setProperty name="mybean" property="name" />
        <h1>Hello, <jsp:getProperty name="mybean" property="name" />!</h1>
        </body>

Ejecutando un proyecto de Aplicacion Web

El IDE usa un constructor de Scripts Ant para compilar y ejecutar tus aplicaciones Web. El IDE genera un script de compilación basado en las opciones que tú indicaste en el Asistente de Nuevo Proyecto, así como las que están en el cuadro de dialogo Propiedades del Proyecto (En la ventana Proyectos, elijes Propiedades desde la raiz del tuyo, haciendo Click derecho sobre él).

  1. En la ventana de Proyectos, click derecho en el Proyecto HelloWeb y elije Ejecutar (F6).


    index.jsp en un navegador
  2. Ingresa tu nombre en la caja de texto, luego haz click en OK. La página response.jsp aparece, mostrandote los datos con un simple saludo.


    response.jsp en un navegador






Ya se viene la Segunda Parte...

Creación de una Aplicacón Web simple usando Base de datos MySql



Leer más...

miércoles, 22 de julio de 2009

Periodización Del Entrenamiento De Musculación

La periodización tiene que ver con dividir tus entrenamientos en forma anual en varias fases o ciclos de entrenamiento donde en cada uno de estos periodos enfocas tu entrenamiento a generar en algunas ocasiones potencia, fuerza, hipertrófia, forma muscular, definición y realizas también periodos transitorios entre cada ciclo de entrenamiento o descansos llamados activos y pasivos. Es la crema de la crema del entrenamiento de fuerza que se diseña en forma científica y aplicada al culturismo puede darte unos resultados impresionantes.

El culturista serio entrena de esta forma y no solo “jala pesado e intenso”, si aprendes a periodizar tu entrenamiento dejarás de ser del montón y comenzarás a ver cambios año con año, obviamente sin descuidar una buena alimentación, suplementación deportiva y si compites también del uso adecuado de ayudas ergogénicas que nada tienen ver con el monohidrato de creatina o la carnitina.
no necesariamente tiene que ser año a año, mas que eso, es importante tenerlo claro y hacer la rutina pensando en esto.

Beneficios de la periodización

Los principales beneficios de periodizar tus entrenamientos si te dedicas al fisicoculturismo tiene que ver con:

- Maximizar las ganancias de masa muscular magra año con año.

- Incrementar progresivamente tu fuerza y potencia muscular para que tu sistema neuromuscular sea cada vez más eficiente en poder activar más fibras musculares.

- Disminuir el riesgo de lesiones ocasionadas por no llevar una buena metodología de entrenamiento de fuerza.

- Ser la envidia de tu gimnasio al dejar de ser del club de los culturistas empíricos que “jalan pesado e intenso”, haciendo referencia a la respuesta que te dan cuando les preguntas sobre cómo entrenan, tener un entrenamiento de este siglo diseñado en forma científica e incluso causar más envidia aún que alguien que lleva su hielera repleta si entrenas aplicando la periodización.



PERIODIZACIÓN DEL ENTRENAMIENTO DE MUSCULACIÓN

Un sistema como para probar si eres autodidacta, y luego constatando los resultados introducir variables de acuerdo a los progresos.


1º Mes: Entrenamiento de altas repeticiones, para lograr abrir nuevos vasos capilares y preparar los músculos para esfuerzos superiores.

4 series de 30 repeticiones aumentándolas hasta pasar las 50.

Trabajar sobre la zona del dolor hasta que esta sensación disminuya.



2º Mes: Entrenamiento de baja intensidad, trabajar con pesos grandes aumentando las pausas de recuperación.

8 a 10 repeticiones, no más de 5 series para los músculos grandes y 3 para los músculos chicos.

Trabajo hasta el fallo muscular.

3º Mes: Heavy Duty. Calentar bien 3 series 20 a 25 repeticiones; luego ponerle 60% del peso máximo a trabajar para ir tomando conciencia de los pesos; luego poner todo el peso que se pueda manejar y lograr 3 repeticiones con este máximo hasta cuando no se puede ejecutar una repetición, con ayuda se le quita carga se va disminuyendo paulatinamente a lo largo de las repeticiones hasta que no se pueda manejar el 20% del peso inicial. Con una serie de estas características ya es suficiente.



4º Mes: Este entrenamiento sirve para fuerza y para masa muscular.

Calentar bien el músculo que se va a entrenar, cargar el 100% del peso posible para dicho músculo y agregar un 30% más para ejecutar ¼ movimiento en 4 o 5 repeticiones; para luego hacer 6 a 8 repeticiones del movimiento completo con el 100% de carga y un ayudante. Los cuartos de repetición deben ser cada entrenamiento en diferente ángulo. En este tipo de entrenamiento no se debe hacer más de dos músculos por día; alternando zona media dividida en abdominales un día y oblicuos otro.

LUEGO DE COMPLETADO EL CICLO DESCANSAR UNA SEMANA Y REPETIR LOS CICLOS PERO CON DURACIONES DE UN MES Y MEDIO.

ESTO ES SUPER IMPORTANTE!!!; TENGANLO EN MENTE, si se ponen a hacer cosas que no deberían como se dijo antes, se podrían lesionar, y no es naaada de bonito..


El entrenamiento de alto nivel en cualquier disciplina deportiva se caracteriza por el orden de su planificación y la búsqueda de objetivos mediante propuestas concretas que se deberán alcanzar en tiempos prefijados. Por diversos motivos la musculación con fines estéticos y el fisicoculturismo en general, no utilizan esta herramienta habitualmente, quizás por desconocimiento de la misma o por que se la han planteado como una ciencia oculta privativa de los grandes genios del entrenamiento. Esto no es así, por lo que trataremos de explicarla con sencillez.
La Periodización no es otra cosa que la división en diferentes etapas claramente diferenciadas del proceso global del entrenamiento, que esta contenido en un período denominado macrociclo.
Cada etapa aporta lo suyo con el objetivo final de producir mejoras concretas en cuanto a la fisonomía y a la musculación en general.
La periodización propuesta se puede ejemplificar de la siguiente manera.




El siguiente ejemplo corresponde a un macrociclo de 22 semanas que comienza un Lunes 1 de Enero y culmina un Domingo 28 de mayo.

Primer Mesociclo

El primer mesociclo consta de doce semanas comenzando el 1 de Enero y culminando el 18 de marzo.
El primer objetivo de esta primer etapa es aumentar los niveles de Fuerza en los ejercicios básicos, a saber:

Sentadillas, Remo acostado, Fuerza en banco, Fuerza militar, Despegue

En este nivel necesitaremos seguramente de sistemas de entrenamiento para poder mejorar el resultado máximo en estos ejercicios. En alguna otra oportunidad nos extenderemos específicamente en la descripción de estos sistemas.
También podremos utilizar algunos recursos del entrenamiento como las repeticiones negativas o las parciales.

Repeticiones negativas

Las repeticiones negativas son aquellas en las que la resistencia supera en un 20% a las posibilidades máximas. El deportista sólo puede intentar ejecutar sólo la fase excéntrica o descendente lo mas lentamente posible. Ejemplo

60%/6 - 70%/6 - 80%/4 - 90%/2 - 100%/1 (hasta aquí todas

repeticiones convencionales, luego 120%/3 x 2 (negativas).

Esta es la forma correcta de ejecutar las repeticiones excéntricas. Las series anteriores, sólo sirven para adaptar paulatinamente al sistema para que pueda aceptar la tremenda tensión que generan las negativas, sin agotar el aparato de sostén con repeticiones que involucren el sistema del ácido láctico.
Un error bastante usual es plantearle al deportista que realice todas las repeticiones que pueda con, por ejemplo el 85% y cuando se encuentra exhausto ayudarlo, para que haga dos o tres mas negativas.
En esta circunstancia, el deportista tiene enormemente cansado el sistema de sostén y sobre este agotamiento, se lo obliga a realizar las negativas. El riesgo de provocar una lesión articular es muy grande.
Las repeticiones negativas, provocan una enorme activación de las unidades motoras y su proceso de recuperación es bastante doloroso especialmente a las 48hs, llegando en algunas circunstancias a impedir el normal desarrollo de los entrenamientos.
En resumen este método debe ser utilizado muy de vez en cuando y en la semana de choque, sólo los individuos más sólidos articularmente pueden llegar a reiterarlo en mayor cantidad de oportunidades.

Repeticiones parciales

Las repeticiones parciales son aquellas que se realizan en un rango incompleto del ejercicio, y dada esta facilitación agregar un peso adicional.
Por ejemplo:
Un atleta capaz de realizar 100kg de sentadillas completas, puede trabajar con 150kg o más medias sentadillas, si su aparato de sostén se los permite, cosa que es bastante discutible.
Un deportista que puede hacer un fuerza en banco de 80kg, puede realizar 90kg, si desciende sólo hasta la mitad del recorrido.

Este recurso, que en mi opinión sólo debieran realizar atletas formados y sólidos, permite ir habituándose a mayores pesos, y preparar a la musculatura para una posible superación.

Aconsejo realizar este tipo de repeticiones parciales, de la misma forma que en el ejemplo anterior porque de lo contrario pueden provocar lesiones articulares.

Ejemplo:

60%/6 - 70%/6 - 80%/4 - 90%/2 - 100%/1 (hasta aquí todas repeticiones convencionales, luego 100%/3 x 2 - 110%/2 x 3 (parciales)
Otro de los objetivos de este mesociclo, será el de reducir el porcentaje de adiposidad. Dado que el entrenamiento será relativamente corto y sencillo, dado que involucrará fundamentalmente el sistema anaeróbico aláctico, puedo realizar sobre el final de cada día una buena cantidad de trabajo aeróbico con el objetivo de aumentar el gasto calórico y acentuar la utilización de ácidos grasos libres y por ende la reducción del porcentaje de grasa.

Ejemplo de una semana de trabajo en este período

Lunes
Lumbares
1min x 4
Abdominales
1min x 4
Sentadillas
60%-75%/6 - 85%/3x4
Remo acostado
60%-70%-80%/6 - 90%/2 - 100%/3x2 (parc)
Bíceps con barra
60-70%/8 - 80-90%/5 - 110%/4x3 (neg)
Despegue
60%-70%/6 - 80%/4x3
Bicicleta
30 minutos

Martes
Lumbares
1min x 3
Abdominales
1min x 3
Fuerza en banco
60-70%/8 - 80-90%/3 - 110%/3x2 (neg)
Fondos entre //
8 - 8 - 8 - 8
Remo erguido
60-70%/8 - 80%/6 - 90%/3x3
Remoergómetro
40 minutos

Miércoles
Lumbares
1min x 5
Abdominales
1min x 5
Sentadillas
60%-75%/6 - 80%/2x5
Dominadas
8 - 8 - 8 - 8
Remo acostado
60%-70%-80%/6 - 90%/2 - 85%/5x3
Trote
35 minutos

Jueves
Lumbares
1min x 3
Abdominales
1min x 3
Fuerza en banco
60-70%/8 - 80%/6 - 90%/3x3
Remo erguido
60-70%/8 - 80%/5 x 4
Tríceps francés
8 - 8 - 8 - 8
Remoergómetro
45 minutos

Viernes
Lumbares
1min x 4
Abdominales
1min x 4
Sentadillas
60%-75%/6 - 85%/4x4
Despegue
60%-70%/6 - 80%/4 - 90%/2x2
Bíceps con barra
60%-70%-80%/6 - 90%/3 - 100%/5x3 (parc)
Escalador
25 minutos

Al cabo de las 12 semanas nuestro deportista habrá aumentado sus máximos en los ejercicios básicos, incrementando la activación de unidades motoras y por ende dispondrá de mayor cantidad de fibras factibles de ser utilizadas.
Perderá algo de hipertrofia, debido a que los depósitos de glucógeno muscular, se habrán reducido, por la baja producción de ácido láctico que demanda este tipo de trabajo, tan intenso y corto.

Disminuirá su cantidad de grasa corporal, si la dieta utilizada nos ayuda a este cometido.
Una vez alcanzados los objetivos propuestos para esta etapa nuestro atleta se encuentra en condiciones inmejorables para acceder al segundo mesociclo.

Segundo Mesociclo, Fuerza con Hipertrofia

El segundo mesociclo se extiende durante seis semanas. El objetivo fundamental de este período es el mantenimiento de los niveles de fuerza y el comienzo de un trabajo de resistencia de fuerza que apunta al aumento de los depósitos de glucógeno musculares con el consiguiente aumento de la hipertrofia. Las nuevas fibras reclutadas en la primera fase necesitarán de algo más de 5 semanas para repleccionarse por completo, por lo que este período jamás deberá extenderse mas allá del mes y medio. Un error muy común en el culturista desinformado es el de entrenar eternamente en este período sin regresar a realizar períodos de fuerza que agreguen nuevas fibras para que puedan ser llenadas de glucógeno

Recursos del entrenamiento

Este período se caracteriza por la utilización de variados recursos, todos tendientes a aumentar los niveles de acidez tolerables por los diferentes grupos musculares.

Series descendentes

Si tuviéramos que ejemplificar en un recurso del entrenamiento de la fuerza con hipertrofia, este sería sin dudas la serie descendente.

Esta se podría ejemplificar de la siguiente forma.

60%/6 - 70%/6 - 80%/4 - 90%/2 - 100%/1 hasta aquí 5 series cuyo

objetivo fue acercarnos a la fuerza máxima y al consiguiente reclutamiento de unidades motoras. La próxima serie será descendente y se realizará de la siguiente forma:

95%/2....80%/4....70%/6...60%/8...50%/max

La primer carga del 95%, tendrá como objetivo la activación de un gran número de fibras, ya al borde del agotamiento, sin descansar se debe quitar peso y seguir adelante, el 80% agotará las posibilidades del sistema anaeróbico aláctico y sin descanso disminuimos el peso y seguimos adelante, hasta llegar con cerca del 50% a la incapacidad de realizar una sola repetición mas. La sensación es de una inflamación y acidez en el grupo muscular ejercitado impresionante. La serie dura cerca de 45".
¿Que diferencia habría con una serie realizada con un único peso tal que nos permitiera llegar agotados a los 45"?
La serie descendente nos mantiene durante un stress casi constante durante gran parte del tiempo de ejecución.
La serie convencional sólo producirá stress en las últimas repeticiones, además como debemos seleccionar un peso lo suficientemente liviano como para que la serie se pueda extender, este peso no será capaz de reclutar una respetable cantidad de unidades motoras.
La calidad de entrenamiento que nos ofrece la serie descendente es muy superior.
Este tipo de recurso debe realizarse con ejercicios de muy fácil ejecución o con máquinas, para no tener riesgos de lesión.

Repeticiones con ayuda

Este recurso permite al deportista con la ayuda de un auxiliar a realizar un par de repeticiones más. La intervención del asistente aligera el peso que ya resultaba excesivo para continuar extendiendo la duración de la serie y aumentando por consiguiente los niveles de acidez.

Algunas consideraciones acerca del segundo mesociclo

Tercer mesociclo, Hipertrofia


El objetivo de este período es el de mantener la hipertrofia conseguida en las fibras rápidas y extremar el trabajo sobre las fibras lentas. Los recursos del entrenamiento que se utilizarán serán

Repeticiones a ritmo lento

Son aquellas repeticiones que se realizan a una velocidad deliberadamente más baja que la normal, reduciéndose la inercia y por ende la capacidad de movilizar peso. Esto sitúa preferencialmente el trabajo sobre las fibras lentas.

Repeticiones con detención

Este tipo de repeticiones consiste en detener la barra por algunos segundos en forma isométrica en diferente partes del recorrido, consiguiendo eliminar gran parte de la inercia y localizando el trabajo sobre las fibras lentas.

Las superseries seguirán siendo utilizadas muchísimo en este período, que se caracteriza por los grandes volúmenes (repeticiones) de entrenamiento con baja intensidad (peso) de carga.

En los fisicoculturistas este mesociclo coincide con el mesociclo precompetitivo, por lo que se ajustará a sus posibilidades de entrenamiento teniendo en cuenta las exigencias drásticas que provoca la dieta.

Leer más...

lunes, 20 de julio de 2009

Microsoft entrega su primer aporte al kernel de Linux


Por primera vez en su historia, el gigante del software entrega un aporte de código abierto directamente al kernel de Linux. Se trata de unas 20.000 líneas de código licenciado como GPLv2 que implementan los drivers necesarios para correr Linux virtualizado sobre plataforma Windows. El código que ya está en manos de los desarrolladores del kernel, permitirá obtener el mejor rendimiento posible cuando se utilice Linux virtualizado sobre Windows Server 2008 Hyper-V o Windows Server 2008 R2 Hyper-V.

Este aporte es parte de un esfuerzo que realiza el Open Source Technology Center de Microsoft. Se trata de una unidad que actúa como un punto de unión entre las comunidades de código abierto interesadas en trabajar con Microsoft, y los equipos al interior de la compañía interesados en la tecnología de código abierto. Desde el OSTC de Microsoft han surgido otros aportes al código abierto como las mejoras a PHP para ejecutarse sobre Windows, el apoyo a Firefox para mejorar su rendimiento sobre Windows Vista, y la participación en varios proyectos de Apache Software Foundation como Axis2, Hadoop, Stonehenge y QIPD.



En esta oportunidad, se trata de un paso necesario dado la creciente realidad de que el entorno corporativo necesita manejar sistemas heterogéneos, en donde cada sistema operativo satisface distintas necesidades. Sam Ranji, a cargo del OSTC dice:

Cada vez es más frecuente que las compañías busquen ayuda en Microsoft para tener éxito en un mundo de tecnología heterogénea, porque entendemos que reducir la complejidad es un factor clave para reducir el costo.

Luego agrega:

Por lo tanto hay un beneficio mutuo para los clientes, Microsoft y las distribuciones de Linux comerciales y basadas en comunidad, al mejorar el rendimiento de Linux como un sistema operativo virtualizado en Windows Server.

Sam dice que mucha gente desconoce el esfuerzo en código abierto que están realizando porque están más enfocados en trabajar en ello que en promoverlo. Como compañía les interesa que sus clientes tengan libertad de opción a la hora de escoger tecnologías, y muchos de ellos están utilizando software de código abierto sobre sus plataformas Windows.

Tanto el imparable desarrollo de tecnologías de código abierto como la necesidad de consolidar plataformas y reducir los costos - debido a las condiciones de la economía - hacen que navegar contra esta revolución sea un esfuerzo inútil. La demanda de los propios clientes de Microsoft por mejorar la interoperabilidad es un factor clave para mantener estos esfuerzos.

En palabras de Sam Ramji:

A medida que el código abierto se adopta en un rango de plataformas, entender, involucrarse y dar soporte al desarrollo de código abierto continuará siendo fundamental para permitir mayor elección a los clientes.


Fuente: FayerWayer

Esto saldra en la pagina al pulsar leer mas
Leer más...

Científicos logran importante avance en el desarrollo de computadores cuánticos

Uno de los principales problemas que se presentan en el desarrollo de la computación cuántica, tiene relación con la forma como se puede manipular un único “bit” en un procesador cuántico, sin que se altere la información almacenada en sus alrededores.

Pero los Físicos del Instituto Nacional de Estándares y Tecnología (NIST) han logrado un importante avance en esta materia, al crear lo que podría ser una forma viable de manipular ese único “bit” del procesador cuántico. La solución propuesta hace un uso bastante novedoso de la luz polarizada para crear campos magnéticos realmente efectivos, logrando una gran avance para la creación de computadores cuánticos.


Fuente: FayerWayer

Shared via AddThis Leer más...

¿Haggard en chile? ¡¡¡Vamos Mier....!!!


Muchos esperamos con ansias que Haggard Venga a Chile... desde hace aaaaños que se promete los mismo y aun no se asoman.... sin embargo Hace mas o menos 3 semanas que se publicó un video en youtube directamente desde el caracho de Asis, en el que nos da alguna luz de esperanza de poder ver en vivo y en directo a esta prolíja banda Alemana.... acá el video....




Ojalá que ahora sea la vez!!! Leer más...

Children Of Boddom en Chile!!!


Este maravilloso grupo Finlandés liderado por Alexi Laiho se asomarán a nuestro Chilito luego de 5 años de ausencia, en su sitio Web indican que estarán en el teatro teletón acompañados de otra banda fenomenal, como es Amorphis...

Children of Boddom vuelve a nuestro país para promocionar su disco Blooddrunk, grabado durante fines del 2007 y principios del 2008.

Mientras que Amorphis aprovechará de presentar su última placa Skyforger, que fue lanzado apenas el 27 de mayo de este año.

El concierto se realizará el 10 de septiembre en el Teatro Teletón. Las entradas están a la venta por ticketmaster y tienen un valor entre las 15 a las 40 lukillas....

Las fechas del South American tour son:

Sep. 08 - Teatro Flores - Buenos Aires, Argentina
Sep. 10 - Teatro Teletón - Santiago, Chile
Sep. 12 - Via Funchal - Sao Paulo, Brasil
Sep. 15 - Circo Volador - Ciudad de México, México
Sep. 16 - Arena Santa Lucia/Festival - Monterrey, México...


a ver si nos vemos por ahí!!!

Leer más...

Prey, rastrea tu computador Robado


Estimados, desde hace varios meses se encuentra en línea un pequeño sistema llamado Prey, que nos permite saber en donde diantres se encuentra nuestro laptop si es que fue robado sustraido por algún maldíto hijo de p.... amigo de lo ajeno...

Prey es un pequeño programa que te ayudará a encontrar tu computador si algún día te lo roban. Corre en Mac, Linux y Windows y no sólo es de Código Abierto sino además completamente gratuito. http://www.preyproject.com


Gracias a las gestiones de Tomás Pollak y a que nos pusimos en contacto, actualmente me encuentro desarrollando junto con un gran informático y compañero de labores Australiano (Michael Smith) Una nueva versión para Windows (en base a la primera versión desarrollada por Julián Mejío "Gracias Julián!!!!") de este útil proyecto... que contará entre otras características:

  1. Mejoramiento en el control de la Webcam
  2. Almacenamiento seguro de Screenshots y fotografías del criminal usuario...
  3. Encriptación de datos personales.
  4. La implementación de un instalador gráfico y de fácil configuración.
  5. La internacionalizacion del software (teniendo básicamente Español, Inglés y Alemán).
Para quienes lo deseen descargar, simplemente vayan a este enlace y podrán obtenerlo en cualquiera de sus tres sabores... Linux, Mac o Windows....

Y para los que ya lo están usando y han presentado cualquier tipo de problemas o inconvenientes con la versión para Windows, pueden escribir a windows@preyproject.com y sus dudas serán respondidas...

Saludos...
Leer más...

Había una vez....

Bueno...

Primer post en este blog....
Veremos que resulta de todo esto, la verdad es que pretendo publicar cosas que (al menos para mi) son interesantes, a ver que opina el resto... me concentraré principalmente en el área de TI... en la música (metal claramente), en noticias de tecnología y acerda de los proyectos en los que me vaya involucrando... Leer más...