Búscalo aquí:

Los Mejores Inventos en Tecnología del 2009

Como es costumbre cada año, la revista Time ha publicado la lista de los 50 mejores inventos del año 2009, sin duda una completa lista en la que se muestran los mejores inventos en distintas materias y aplicaciones que marcan por el uso de la tecnología necesaria para lograrlos y por la aplicabilidad y beneficios que traen. En este post mostraremos los 7 mejores inventos de tecnología basados en computación, según mi punto de vista.

La Robótica Agrícola

La robótica es la ciencia y la tecnología de los robots, los cuales son un ejemplo bastante completo de un sistema inteligente artifi cial puesto que cuentan con sus propios receptores y efectores que les permiten captar características de su entorno, ganar experiencia y cumplir con su objetivo. La robótica tiene una gran capacidad de aplicación en la agricultura, especialmente por el nivel de precisión con la que cuentan los robots actuales, sin embargo, esto aun no es su ciente para entornos reales en donde, uno de los principales problemas es la movilidad de estos sobre los terrenos de las plantaciones. En el presente post se tratará sobre la aplicación de la robótica en la agricultura y algunos temas puntuales de lo que hoy se denomina Robótica Agrícola.

Sistemas Expertos Agricolas


Los Sistemas Expertos tienen por objetivo emular el conocimiento de un humano experto en un determinado dominio y su aplicación esta orientada a brindar asistencia con el objetivo de una obtener una mejor calidad y rapidez en las respuestas, este objetivo ha estado siempre dirigido a brindar asistencia a la agricultura y prueba de ello existen numerosas aplicaciones de sistemas expertos dirigidos a brindar asistencia sobre diferentes tipos de diagnósticos en diferentes áreas de la agricultura que permitan mejorar la productividad de un determinado producto agricola. En este post se mostrará las diversas aplicaciones que los Sistemas Expertos tienen en la agricultura.

Sistemas Inteligentes y su aplicación en la Agrotecnologia

La agricultura es una de las actividades de producción primarias, especialmente para países en vía de desarrollo como el Perú, puesto que representa la principal fuente de alimentación para la población, es por eso que se necesita que esta actividad reciba toda la atención necesaria por parte de las autoridades y por parte de la comunidad científica también, quienes se deben de encargar de proveer las herramientas tecnologicas capaces de dar el soporte necesario para que esta actividad evolucione y tenga una mayor productividad, mejorando la calidad y explotando al máximo los recursos naturales que cada vez se van haciendo más escasos, como el agua y las tierras fértiles. En este post mostraré como los Sistemas Inteligentes Artificiales estan proveendo herramientas de gran impacto en la agricultura, aplicaciones basadas en Robótica y Sistemas Expertos se convierten en los más representativos y revolucionarios en la Agrotecnología moderna y del futuro.

I Encuentro Académico Empresarial de Ciencia de la Computación: I EAEC

Hola a todos, hace ya bastantes días que no posteo...prometo ponerme al dia, pero hoy quiero hacerles extensiva la invitación a un evento diferente, se tratat del I Encuentro Académico Empresarial de Ciencia de la Computación EAEC, el cual tiene por objetivos mostrar las posibilidades que tiene la disciplina de la Computación, especificamente la Ciencia de la Computación, para el desarrollo de soluciones que sean de gran aplicabilidad en la sociedad y que a la vez signifiquen una fuente de beneficio empresarial y por ende que impulse el desarrollo de tecnologías propias. Se presentarán tanto charlas ténicas como motivadoras, asi como una mesa redonda titulada: "Porqué hacer una carrera académica?" en dónde se buscará identificar los principales problemas en la enseñanza de Ciencia de la Computación, las propuestas para asegurar una educación de alto nivel, así como analizar el impacto de la Ciencia de la Computación como disciplina para un cambio sostenible en el Perú.

El I Encuentro Académico Empresarial de Ciencia de la Computación - EAEC - es el primer evento de la región norte del país que presenta un foro para la difusión de las investigaciones en el área de computación y su aplicabilidad a los diferentes sectores productivos existentes, de esta manera, profesionales e investigadores nos presentarán los logros obtenidos en sus diferentes proyectos de investigación así como debatirán las diferentes posibilidades de su aplicación para el desarrollo tecnológico-empresarial del país. El evento se realizará los días 16, 17 y 18 de diciembre, la web principal del evento es: http://seccperu.org/eaec

Entre los ponentes del I EAEC se encuentran:

* Nicolás Kemper Valverde: Doctorado en Ingeniería, especialidad en Inteligencia Artificial,Universidad Nacional Autónoma de México.

* José Manuel Saavedra Rondo: Candidato a Doctor en Ciencias de la Computación, Universidad de Chile.

* Violeta Noemí Chang Camacho: Candidata a Doctor en Ciencias, mención Computación, Universidad de Chile.

* Iván Anselmo Sipirán Mendoza: Estudiante de Doctorado en el Departamento de Ciencias de la Computación, Universidad de Chile.

* José Luis Peralta Luján: Investigación en Arquitectura y Organización de Computadoras, Computación Móvil (Redes de Sensores, RFID) y Sistemas Empotrados.


Para más información sobre los ponentes pueden pinchar aquí. He sido invitado a participar en el I EAEC y lo haré con una charla titulada: "Sistemas Inteligentes Artificiales y su aplicación en la AgroTecnología" a la cual estan cordialmente invitados. Para saber más acerca de las ponencias del EAEC pueden visitar aquí.

El I Encuentro Académico Empresarial de Ciencia de la Computación - EAEC - se realizará en la Sala de Conferencias de la Universidad Privada del Norte, sito en Pabellón A - 1º Piso, Av. Del Ejército 920 - Urb. El Molino - Trujillo - Perú.

El ingreso es totalmente libre. Realizar sus pre-inscripciones desde AQUI.



Saludos y no dejen de asistir!!!

Quieres leer más post como éste???...suscribete aquí!!!

América Latina y el desarrollo de software: Industria de software internacional

Ya es notable que en muchos países en vías de desarrollo a nivel mundial exista un creciente y gradual percepción de que, el desarrollo y exportación de software es un factor muy importante para la modernización de sus economías así como del desarrollo sostenido de la nación. En tal sentido, el desarrollo de la industria del software aparece particularmente atractivo desde que los productos de software que acotan un valor agregado que los caracterize de lo común y los haga "necesarios" para quienes lo usen. Brasil, Chile y Uruguay, destacan en América Latina por irse constituyendo en polos de desarrollo de software. Los gobiernos apuestan a esta industria como vía para la modernización.

En un mundo crecientemente globalizado, la industria del software se ha desplegado sobre gran parte de la superficie del planeta. Muchos países han encontrado una ruta fácil en un negocio trabajo-intensivo, que tiene relativamente bajas barreras a la entrada y pocas economías de escala.

Los países en vías de desarrollo exportan varios millones de dollares en servicios informáticos. Los paquetes de software representan una pequeña proporción de esa cifra, mientras que los servicios constituyen la mayor parte.

Algunos países en vías de desarrollo, como la India y Singapur, ingresaron en el escenario exportador de software hace muchos años y se han constituido desde entonces como referentes mundiales del potencial que tiene la unión de ciencia y tecnología para lograr el desarrollo sostenido de una nación. Países de la periferia europea – como Irlanda, Israel y Hungría - también entraron al mercado internacional como exportadores de software de bajo costo desde principios de los años ’90 y actualmente se encuentran en un buen sitial en de este competitivo mercado.

En América Latina han destacado las industrias del software de Chile y Brasil. En años recientes también despegó la industria uruguaya. También Costa Rica apuesta al desarrollo del software.

Chile se ha despuntado y ha comenzado a mostrar una gran capacidad para exportar productos de software para América Latina. Este país exporta entre 100 a 300 millones de dollares anuales solamente en este rubro...sin duda todo un reto. Las exportaciones chilenas incluyen paquetes de aplicaciones (como sistemas de negocios bancarios, sistemas integrados de gestión empresarial, análisis estadístico), utilitarios de software (antivirus, sistemas de distribución de software, herramientas de recuperación de textos) y aplicaciones en las cuales Chile tiene una experiencia especial (minería, forestación). Esto implica que Chile a crecido no solo en cantidad y calidad de profesionales capaces de generar tecnologia eficiente, sino que también se han ido puliendo en la generación de productos que superen los exigentes tests de calidad requeridos en la industria de software.

Brasil durante varios años protegió su industria informática. Esta política generó un apreciable parque industrial de software y creó la mayor industria de informática y telecomunicaciones de América Latina, un gran mercado por su facturación y que cuenta con el mayor núcleo de profesionales con graduación, especialización, maestrías y doctorados. Pero al no ser una industria competitiva y estar volcada fundamentalmente al mercado interno, generó un atraso tecnológico del país. Utilizaban tecnología propia pero inferior en calidad y potencia. La situación provocó que Brasil, como país, estuviera compitiendo a nivel internacional con una base informática inferior a la de las principales potencias del mundo.

A comienzos de la década de 1990 esa estrategia se modificó y a partir de 1993 Brasil abrió su mercado, comenzó a proyectarse a nivel internacional, exigiendo en el sector mayor competitividad. La nueva política para el sector informático brasileño está basada en la Ley 8.248 de 1991, donde se enfatizan y apoyan los requisitos fundamentales para competir en el exterior. La Ley ofrece una serie de instrumentos de estímulo al mismo tiempo que exige contrapartidas. Entre los estímulos se destacan los fiscales y la política de compras gubernamentales. La contrapartida exigida consiste en destinar al menos el 5 por ciento de la facturación para actividades de investigación y desarrollo, atención a las reglas del proceso básico y la obtención de la certificación de calidad empresarial ISO 9000.

Entre los programas impulsados por el Ministerio de Ciencia y Tecnología de Brasil destacando la Red Nacional de Investigación (RNP), cuyo objetivo es contribuir a la implantación y diseminación en Brasil de la red Internet, sus tecnologías y aplicaciones; y el Programa Brasileño de Software para Exportación (Softex 2000), que pretende lograr que Brasil alcance a ocupar un sitial preferencial en el mercado mundial de software crear millones de nuevos empleos calificados y tener miles de empresas exportando software de calidad. Este programa tiene dos vertientes, una tecnológica y otra de mercado. En el área tecnológica se apoya el desarrollo de software brasileño y en el área comercial se han instalado en el exterior oficinas representativas.

La industria brasileña de informática –hardware, software y servicios- factura en el orden de U$S 10.000 millones y emplea cerca de cien mil personas de las cuales un alto porcentaje tienen nivel universitario. Las exportaciones del sector informática brasileño serían del orden de los U$S 400 millones.

En Uruguay, la industria del software de nacimiento relativamente reciente, se ha caracterizado por su extraordinaria dinámica, siendo una de las actividades de más alto crecimiento en los últimos 20 años. Se estima que esta industria factura más de U$S 200 millones y que exporta entre U$S 50 y 75 millones.

Existen cientos de firmas en la industria de la informática uruguaya, lo cual hace notable la expansión de Uruguay en esta industria. Muchas de las empresas de software uruguaya se trazaron la meta de lograr su internacionalización, creando filiales en otros países de la región sudamericana, y lo han logrado de gran manera.

De esta manera existen experiencias exitosas de empresas uruguayas que comenzaron prácticamente sin capitales y han conseguido un importante acceso a los mercados internacionales a través de la exportación de diferentes productos. Desde comienzos de ésta década, el gobierno uruguayo –al igual que otros de América Latina- comenzaron por la apuesta de la creación de polos de desarrollo de software, como una vía para la modernización y el crecimiento, y hoy pueden ver sus primeros frutos, los cuales estan dándoles muchos buenos resultados en diferentes rubros de la economía de estos países, los cuales han contribuido enormente a su crecimiento en la región.

Ante este creciente boom del desarrollo de software de calidad en Latinoamérica, cómo esta el desarrollo de software en Perú?...Nuestras políticas generan el clima adecuado para ello?, podemos generar software de calidad?, los profesionales y empresarios tienen como perspectivas metas de estandarización y constitución internacional?

Quieres leer más post como éste???...suscribete aquí!!!

Fuente: redTips


Comparación de objetos Date en JPQL usando JPA


Cuando trabajamos sobre consultas a Base de Datos es común que necesitemos hacer diferentes tipos de filtros en nuestras búsquedas, entre ellas, el filtro por fechas es uno de los más comunes. cuando trabajamos en JDBC una simple comparación basta y sobra, pero cuando trabajamos en la API de persistencias de Java (JPA) la situación es algo diferente. En el presente post se mostrará como podemos hacer comparaciones de fechas entre elementos TimeStamp en una Base de Datos representados como objetos Date en Java.


Para comenzar, cuento con una clase bean denominada FidPedidoVenta, la cual tiene un elemento Date createdAt que a su vez es la representación @Temporal(TemporalType.TIMESTAMP) de un campo TimeStamp en la respectiva Base de Datos. Ver siguiente imagen:


Ahora lo que necesito es una consulta en la cual me reporte todos los elementos FidPedidoVenta que se hayan creado despues de una determinada fecha, la cual sera tambien un elemento Date que me servirá de filtro y estará representada como la variable Date fechaInicio. Entonces nuestra consulta java persistence query - JPQL - será:

  1. String jpql = "SELECT pv FROM FidPedidoVenta pv
  2. WHERE pv.createdAt >= :fechainicio ";
...Sencillo, pero ahi no termina todo, lo verdaderamentamente importante viene en la instanciación del token fechainicio por la variable fechaInicio, la cual sería así:

  1. Calendar inicio = Calendar.getInstance();
  2. inicio.set(fechaInicio.getYear()+1900,
  3. fechaInicio.getMonth()+1,
  4. fechaInicio.getDate());
  5. Query query = entityManager.createQuery(jpql);
  6. query.setParameter("fechainicio",
  7. new java.sql.Date(inicio.getTime().getTime()));
  8. List<FidPedidoVenta> lstPedidosVenta = query.getResultList();

Como ven, nos valemos de la clase Calendar de Java para obtener la data que normalmente teniamos en el elemento de tipo Date de Java y poder darle el formato Date que usa el lenguaje SQL.

Luego es cuestión de continuar connuestro trabajo.


Espero les sea de utilidad, saludos.

Quieres leer más post como éste???...suscribete aquí!!!

Mecanismos de control de acceso: autenticación y autorización

Las compañías de hoy en día, y en general cualquier organización, tienen diversos tipos de recursos de caracter privado y hasta de super secretos que necesitan asegurar, sólo ciertas personas pueden acceder y para ello se necesita asegurar de que estas paersonas/usuarios deseados tengan el nivel de acceso requerido para lograr sus tareas. El control de acceso es más que simplemente requerir nombres de usuario y las contraseñas cuando los usuarios quieren acceder a los recursos. En el presente post se presenta un documento breve pero conciso que ilustra lo relacionado a los modelos y técnicas estándares para control de acceso.


Los recursos a los que un usuario puede acceder son muchos, entre ellos pueden ser físicos(cuarto sensitivo, o un equipo caro), informativos (la propiedad intelectual, los datos confidenciales), o personal (los empleados, los contratistas).

Sobre control de acceso hay métodos múltiples, técnicas, tecnologías, y los modelos que pueden ser implementadas, hay formas diferentes para administrar el control de acceso, y hay una variedad de ataques que se lanza en contra de muchos de estos mecanismos, es decir, existe siempre un riesgo de seguridad puesto que siempre existiran personas que intenten romper dicho control, es por eso que las organizaciones necesitan asegurar que el acceso no autorizado sea denegado, y que los usuarios autorizados no puedan hacer modificaciones impropias. Para ello es indispensable conocer las diferencias entre la autenticación y autorización.

Los controles existen en una colección variada de formas, de protocolos de autenticación de acceso, etc. Deben estar incorporados en un acercamiento a capas y que cada capa necesita para ser comprendida, junto con su relación para las otras capas, para asegurar que las vulnerabilidades de los controles no dan paso en las capas de una a otra.

Pueden revisar un documento que preparé hace un tiempo y encontrar más detalles sobre el uso y necesidad de contar con un password (contraseña) y sobre todo acerca de los mecanismos de control de acceso: Use of passwords and access control mechanisms.

Espero les sea de utilidad, saludos.

Quieres leer más post como éste???...suscribete aquí!!!

Google propone un nuevo protocolo complementario al HTTP: SPDY un protocolo para una web más rápida

Tal como mencioné en un post anterior, ¿con qué más nos sorprenderán la gente de Google?, no tardarón mucho en responderme...esta vez se trata de un protocolo de comunicación para web que surge como complemento del HTTP y tiene por objetivo principal reducir el tiempo de latencia de las páginas web, éste protocolo de la capa de aplicación desarrollado por Google se llama SPDY (se pronuncia SPeeDY) y se ocupará del transporte del contenido sobre la web.

SPDY es presentado como un protocolo de sesión para TCP/IP, capaz de optimizar las comunicaciones HTTP con una mejora del rendimiento de hasta el 55% en carga de páginas, según pruebas de laboratorio presentadas en su sitio web.

Además SPDY agrega una capa de sesión en la cima de SSL que permite la concurrencia múltiple a través de una conexión TCP única.

Todas las carácterísticas y beneficios que ofrece SPDY son mencionados en su sitio web, en donde además mencionan que SPDY no es un reemplazo de HTTP sino un complemento del mismo. Además mencionan que pueden hacer a su navegador Chrome compatible con SPDY.

SPDY se convertirá pronto en un nuevo protocolo oficial??

Saludos.


Quieres leer más post como éste???...suscribete aquí!!!

Aniversario 26 del Primer Virus Informático: Fred Cohen el primer autor de virus informáticos

Hace 26 años, exactamente un 10 de noviembre de 1983, un joven estudiante de la Universidad de California del Sur, durante la celebración de un seminario de seguridad, demostró con una prueba el hecho de que un programa podía reproducirse entre ordenadores sin que ningún usuario interviniera en ello, todo a partir de un sencillo comando de Unix, el cual, trás 5 minutos, se hacía del control total del sistema. Este joven fue Fred Cohen y hoy es considerado el primer autor de virus "auto-declarado".

El Lenguaje de Programación de Google: Go ..The Go Programming Language

En Google no descansan...la gran cantidad de proyectos que han tenido desarrollando y que hoy salen a la luz asombra a propios y extraños...que más tendrán pensado???...por ahora nos traen algo nuevo: un lenguaje de programación, el lenguaje de programación Go de Google, el cual según expresa en la web principal de Go: de compilación y ejecución rápida, seguro, concurrente, entretenido, de código abierto, expresivo, con recolector de basura y sobre todo sencillo...el lenguaje de programación Go será lo que se necesitaba en terminos de eficiencia y productividad??

Sistema Inteligente aplicado a la agrotecnología para el control de granjas porcinas

Los Sistemas Inteligentes estan dando la hora y sus aplicaciones estan dándose en todas partes, en este caso, el Grupo de Investigación sobre agricultura y ganadería de precisión, agrótica y agrotecnología de la Universidad de Lleida (España) está desarrollando un sistema robotizado inteligente capaz de disminuir los costes y residuos contaminantes en las granjas porcinas, Este sistema inteligente permite identificar a los animales a través de un "chip" colocado en una oreja y proporciona a cada uno de los porcinos el alimento que necesita según sus necesidades y su rendimiento.

Fundamentos de Criptografía: Cifrado por clave pública y privada

Desde tiempos memorables el hombre a tenido la necesidad de ocultar los mensajes que deseaba que fuesen exclusivos para una persona o grupo humano, prueba de ello son los jeroglifos egipcios. Es así, como la criptografía se ha mostrado como el "arte" de convertir un mensaje en otro que sólo puede ser entendido por el destinatario, disminuyendo la probabilidad de que un interceptor de dicho mensaje pueda dar con el verdadero contenido de éste. En este post se presenta un informe en el que se describen los criptosistemas de clave pública y de clave privada, así como diferentes algoritmos.

Ranking Motorola de las Ciudades Digitales de Latinoamérica

Con el objetivo de medir el grado de digitalización que pueden tener las ciudades en Latinoamérica, la empresa de telecomunicaciones en móviles, Motorola, ha realizado un estudio por el cual ha publicado un ranking de las 25 ciudades digitales de Latinoamérica, resultando la ciudad de Sao Paulo de Brasil, la 1º ciudad digital de la región, Chihuahua y Mérida de México comparten el 2º y 3º lugar, mientras que por Perú, el distrito de Los Olivos (Lima) aparece en el puesto 11º y el Callao en el puesto 20º. Este ranking ha sido elaborado tras un detallado estudio a 150 ciudades de 15 países.

En la calificación del ranking Motorola de ciudades digitales no se consideró solo la conectividad a Internet ofrecida por los municipios, sino también cómo integraban las diversas herramientas de la sociedad sobre este soporte digital.

“En el caso de Los Olivos se mostró la aplicación del gobierno electrónico o e-government. Tienen herramientas que les permiten a los ciudadanos hacer transacciones sin necesidad de ir a la municipalidad, sino en línea. Asimismo, hay trabajadores que pueden transmitir información de catastro, por ejemplo, gracias a dispositivos inalámbricos”, explica Félix Angulo, gerente de Desarrollo de Negocios del Sector de Gobierno y Seguridad Pública de Motorola para el Perú y Bolivia.

En el caso del Callao —explica Angulo— se tomaron en cuenta sus proyectos de telecentros, para brindar acceso a Internet a las poblaciones de menores recursos, así como los diversos planes de educación y seguridad.

Las 25 ciudades que obtuvieron la mayor puntación del Ranking Motorola de Ciudades Digitales de L
atinoamérica son:

Posición

Ciudad

País

Puntos

1

San Pablo

Brasil

52.3

2/3

Chihuahua 1

México

51.0

2/3

Mérida 1

México

51.0

4

San Luis

Argentina

50.7

5

Guadalajara

México

50.3

6

Florida

Uruguay

49.6

7

Santiago

Chile

49.2

8

Bogotá

Colombia

49.0

9

Chacao-Caracas

Venezuela

48.2

10

Las Condes

Chile

45.9

11

Los Olivos

Perú

45.4

12

Salvador

Brasil

45.3

13

San Joaquín

Chile

45.2

14

Medellín

Colombia

45.1

15

Buenos Aires

Argentina

44.9

16/17

Tuxtla 2

México

44.8

16/17

Viña del Mar 2

Chile

44.8

18

Boca del Río

México

44.6

19

Marcos Paz

Argentina

43.9

20

Callao

Perú

43.2

21

San Nicolás de la Garza

México

42.9

22

San Pedro Garza García

México

42.7

23

Puerto Montt

Chile

42.5

24

La Serena

Chile

33.0

25

Valencia

Venezuela

26.9



Sin duda alguna este ranking nos coloca como una sociedad regularmente al dia en el uso de la tecnología y conectividad a la internet y todo lo que ello representa, que es importante, sin embargo, tampoco debemos descuidar nuestro papel (incipiente) como generadores de dicha tecnologia.

Saludos

Fuente: Vida y Futuro

Quieres leer más post como éste???...suscribete aquí!!!

Nokia demanda a Apple por infracción de patentes en el iPhone

Apple se encuentra en serios problemas legales, Nokia le ha interpuesto una demanda a Apple por que éste, a través de su producto iPhone, infringe los derechos de 10 patentes que aparentemente pertenecen a Esppo de Nokia, patentes que estan relacionadas con GSM, UMTS y WiFi; estas patentes han sido licenciadas anteriormente a otras 40 compañías entre las que se encuentran las principales distribuidaras de dispositivos móviles, lo que significa un fuerte punto en contra para Apple...

Apple se negó a aceptar como "apropiado" los términos de la licencia. Sin dudas esto es recien la punta del iceberg, las cosas estan recien empezando y podrían tornarse aún más malas para Apple, quien de seguro buscará llegar a un acuerdo con Nokia para no llegar al punto de una sentencia desfavorable que podría menoscavar su posición en el mercado.


Fuente: engadget.com



Quieres leer más post como éste???...suscribete aquí!!!

Ciencia de la Computación es declarada prioridad nacional por Congreso de USA

La Ciencia de la Computación ha crecido exponencialmente durante los últimos años y a la par ha servido como herramienta para el desarrollo de muchas naciones quienes han encontrado en ella, la base para el desarrollo tecnologico que les ha permitido acentuarse como potencia o convertirse en una de ellas. Tanta es la importancia de ésta disciplina que, recientemente, el Congreso de los Estados Unidos de América ha declarado a la Ciencia de la Computación como prioridad nacional y por ende como conductor de innovación y crecimiento económico de dicho país. Sin duda un reconocimiento justo que tiene por objetivo el fomento y la continuidad del desarrollo de esta disciplina.

De esta manera, el gobierno de Estados Unidos busca difundir aún más la enseñanza y aplicación de la Ciencia de la Computación a todo nivel de educación, desde los primeros años de la Escuela hasta los cursos d ela Universidad, puesto que, si algo es cierto, hoy por hoy, la Computación se encuentra en todo y cada uno de los puntos por los que la humanidad se desenvuelve.

Ante este acuerdo, organizaciones relacionadas a la computación como ACM, Google, Microsoft, Intel, entre otras se han
mostrado conformes con la moción para mejorar el papel de la computación en preparar personal calificado y crear más oportunidades de carrera.

Entre algunos de los acuerdos tomados es la designación de la Semana Nacional de la Enseñanza de la Ciencia de la Computación; fomentar en escuelas, profesores, investigadores, universidades y políticos a identificar mecanismos para que los profesores reciban el desarrollo profesional de última tecnología necesario para proveer experiencias de aprendizaje sustentables en Ciencia de la Computación en todos los niveles educativos y alentar a los estudiantes a que se les presenten los conceptos de Ciencia de la Computación; fomentar oportunidades, inclusive mediante programas existentes, para mujeres y minorias poco representadas en los diferentes centros de investigación/desarrollo/etc relacionados a la Ciencia de la Computación y de esta manera motivar el incremento en la participación de más personas en los diferentes campos de esta disciplina.

Sin lugar a dudas, una decisión que se podría replicar en muchas naciones. Así mismo, nuestras autoridades deberían observar y analizar esta decisión y tomar consciencia de lo que significa el verdadero apoyo a la investigación, de los provechosos frutos que se pueden cosechar a mediano/largo plazo si se fomenta adecuadamente y de la repercusión que esto traería al desarrollo nacional.

Fuente: ACM news, Resolución Congreso USA.

Quieres leer más post como éste???...suscribete aquí!!!

Algoritmo QuickHull para la Cerradura Convexa [código]

El quickhull es otro algoritmo usado para resolver el problema de la cerradura convexa de manera óptima y su modo de operar es distinto (como es de suponer) que el de Jarvis y Graham para la cerradura convexa. El quickhull necesita de una nube de puntos sobre la que calculará la envolvente o cerradura convexa y de una arista que forme parte de dicha cerradura convexa, de esta manera, el 3º punto que forme un triángulo de área máxima con dicha arista será un punto extremo (parte de la cerradura convexa). Si dicha área no es única el punto será el que maximice el ángulo del triángulo. De esta manera el quickhull tiene una complejidad de O(n log n) en el mejor caso y cuadrática O(n2) en el peor caso.

Algoritmo Jarvis March para la Cerradura Convexa [código]

El problema del cálculo eficiente de la cerradura convexa ha traído a lo largo de la historia grandes investigaciones en las que s ehan propuesto diversidad de algoritmos que, han resultado ser muy utilizados y difundidos por sus diversas características y bondades propias. En éste post se tratará sobre el Jarvis March Algorithm o algoritmo de Jarvis para la cerradura Convexa, el cual fúe propuesto por R. A. Jarvis en 1973, y que, a pesar de ser uno de los más sencillos cuenta con una complejidad computacional de O(nh).

VIII Congreso de la Sociedad Peruana de Computación - CSPC 2009

Desde el año 2001 la Sociedad Peruana de Computación (SPC) en conjunto con universidades peruanas viene organizando un evento anual de carácter nacional denominado Jornada Peruana de Computación (JPC). Para la edición de 2009, las tradicionales JPC darán lugar a un evento de mayor envergadura denominado Congreso de la Sociedad Peruana de Computación (CSPC). Esta evolución responde al crecimiento de la comunidad académica en nuestro país y pretende consolidarse como el más prestigioso evento académico en computación/informática a nivel nacional.

IV Semana de Ciencia de la Computación: SECICOMP 2009

La IV Semana de Ciencia de la Computación - Secicomp 2009 - es un evento organizado por los estudiantes de la Escuela Académica Profesional de Informática de la Universidad Nacional de Trujillo con el respaldo de los docentes y autoridades de nuestra Casa Superior de estudios, y éste año, éste gran evento nuevamente va quedando listo para proseguir con el objetivo que año a año persigue: "promover la Computación como Ciencia y realizar intercambios científico-académico-cultural de profesionales y estudiantes de Ciencia de la Computación que están a la vanguardia del desarrollo globalizado del siglo XXI".

Comunicaciones por Telefonía Móvil

Desde su aparición, a inicios de la II Guerra Mundial, hasta la actualidad, la comunicación por telefonía movil ha evolucionado a pasos agigantados, de manera tal que, no solo se ha convertido en un medio de comunicación indispensable, sino también, en un servicio del que cada día nos valemos para el desarrollo de nuestras actividades cotidianas. Todo este avance se debe grandemente a la evolución de la tecnología sobre la cual operan los dispositivos móviles, los cuales ahoran nos permiten contar con dispositivos que contienen, entre otros, sus propios CPU's a escala, cámaras web, etc.

La Casa Digital del 2010

Pueden imaginarse la casa digital del 2010??...un ambiente diferente, confortable y fiable, un lugar donde las diferentes tecnologías se entre mezclan para otorgar a los usuarios (de la casa) todos los servicios que estos necesiten con la optimización de recursos en todo sentido, posibilitando de esta manera, mejores entornos de comunicación y relación con las demás personas y con la naturaleza, y de esta manera, lograr la armonía personal. Sin duda alguna, toda una promesa de la domótica promesa que se ha convertido en una gran propuesta realizada por Intel en su Intel Developer Forum 2009 (IDF).

III Conferencia Internacional de Becas Universia en Universidad Nacional de Trujillo

Las becas y bolsas de estudios, asi como sus diferentes modalidades constituyen una gran oportunidad para muchos profesionales de diferentes niveles, colegiales, bachilleres, y profesionales; para poder alcanzar nuevas metas academico-profesionales. Por estos y muchos motivos más, este viernes 2 de octubre en el auditorio Cesar Vallejo (ex Iglesia de la Compañía) de la Universidad Nacional de Trujillo el grupo Universia lanzará su programa de becas con el objetivo de brindar a los estudiantes universitarios y profesionales toda la información sobre la gran variedad de oportunidades de estudio que ofrecen embajadas y otras instituciones que otorgan becas.

Reconocimiento y Verificación Automático de Firmas Manuscritas off-line

Todos, alguna vez, hemos tenido que estampar nuestra firma como señal de aceptación o convenio de algún tipo de acuerdo, o en su defecto, nos ha tocado constatar la legalidad de algun acuerdo verificando que las firmas estampadas en el documento correspondan a quienes realmente dicen que pertenecen y de esta manera, asegurar que todo sea legal. Sin embargo, este proceso puede resultar tedioso incluso para expertos peritos especializados en el reconocimiento e identificación de firmas, es por eso que una vez más, la Ciencia de la Computación, y de manera más precisa, el Procesamiento Digital de Imágenes, se encarga de proveer métodos que son capaces de realizar automáticamente este proceso y simplificarnos, de alguna manera, este dificil trabajo.

Obtener vector de Acumulación de píxeles de una imagen en Matlab [código]

La acumulaciòn de pìxeles en una imagen es un factor comunmente usado en diversas técnicas de procesamiento de imágenes. La acumulaciòn esta formada por un vector, dònde cada elemento representa la frecuencia de aparición de ciertos tonos de gris menores que uno determinado en la imagen analizada. De esta manera, el vector de acumulaciòn de pìxeles contiene informaciòn estadìstica importante sobre una determinada imagen.

Metodologia Kanban explicado en Comic

La metodologia Kanban, bastante interesante, por su orden, colaboración entre los miembros del equipo, y sobre todo por que se van atendiendo los requerimientos segun su prioridad, sin que esto signifique el abrumar con trabajo y responsabilidades a los desarrolladores. Sin embargo, no hay mejor manera que entenderlo que mediante un gráfico, y mucho mejor si es un comic :P el cual encontre en diario de programacion y os dejo a su vista.

IEEE aprueba estándares Wi-Fi 802.11n y 802.11w

Tras 6 largos años de espera y trabajo continuo, el IEEE (Institute of Electrical and Electronics Engineers) ha hecho publica la aprobación de los estándares Wi-Fi 802.11n y 802.11w. Bruce Kraemer, el coordinador del grupo de trabajo, ha sido el encargado de notificar 1º al grupo de trabajo y luego a las empresas que implementan tecnologias Wi Fi sosbre estos nuevos estándares que haran compatibles a todo dispositivo Wi Fi con cualquier otro.

Nuevo kernel de Linux 2.6.31 con sistema de gestion de RAM

El nuevo kernel Linux 2.6.31 va a integrar un nuevo sistema de gestión de memoria RAM y archivo de intercambio en el disco duro que permitirá que equipos con poca memoria RAM funcionen de una manera más fluida y funcional. La nueva versión está siendo pulida por los desarrolladores y será publicada en futuras versiones del resto de distribuciones GNU/Linux en cuestión de meses. La mejoría es notable dado que se hace un uso más eficiente de la memoria RAM física y del archivo de intercambio (swap). Además El parche esta pensado sobre todo para sistemas de escritorio, y será util par equipos antiguos y con pocos recursos.

Facebook anuncia lanzamiento de su nuevo servidor web: Tornado

Las actualizaciones en tiempo real se han convertido en un aspecto vital para para las redes sociales puesto que permite la facilidad en el uso de los usuario y sobre todo la posibilidad de compartir lo que ellos deseen y ver los cambios que se realizan de manera automática y rápida. Pensado en eso, Facebook, una de las más grandes y difundidas redes sociales del mundo ha anunciado el lanzamiento de un nuevo servidor web (framework web) de código abierto (open source) llamado Tornado, el cual proveerá estas y otras características más, las cuales permitiran la gestión simultánea de miles de conexiones en tiempo real.

Reidentificación: identificando personas en bases de datos anónimas

La pornografía infantil es un grave problema que aqueja al mundo entero y que, con el mal uso de la tecnología, especialmente de internet, ha crecido enormemente, esto a causado la preopcupacion d elos gobiernos, especialmente el estadounidense, el cual, en el año 2006, solicito a AOL y otras empresas para que facilitasen un fichero anonimizado con veinte millones de búsquedas procedentes de seiscientos cincuenta y siete mil usuarios identificados mediante claves numéricas, con el propósito de valorar el impacto de la pornografía infantil. Tras cumplir con la solicitud, AOL tuvo la ocurrencia de demostrar su apertura publicando en Internet ese fichero para su uso por la comunidad científica: total, estando ya el fichero convenientemente anonimizado y libre de toda información personal, ¿qué podía pasar?

Conectar Java con Prolog usando JPL

El uso de la programación lógica para la construcción de aplicaciones en las que se hace uso de técnicas propias de la Inteligencia Artificial es muy amplio debido basicamente a la naturalidad que este lenguaje tiene para este tipo de aplicaciones. Sin embargo, muchas veces se necesita hacer un trabajo hibrido entre un lenguaje de programación lógica como Prolog y cualquier otro, por ejemplo Java, de programación orientada a objetos, tal vez para aprovechar sus capacidades propias, o tal vez para aprovechar el entorno gráfico que facilita el manejo d einterfaces de usuario final. En este post mostraremos como realizar la conexión entre Java y Prolog usando la libreria JPL (Java Prolog Library).

Simulador de vuelo para FF.AA en Linux

A propósito del concurso "PREMIO EJÉRCITO DEL PERU, ESTÍMULO A LA INVESTIGACIÓN, DESARROLLO E INNOVACION EN CIENCIA Y TECNOLOGIA” - 2009; buscando en Google sobre aplicaciones militares que puedan dar algunas "luces" sobre qué es lo que necesita una Fuerza Militar encontré que la Fuerza Aérea australiana (ADP) ha presentado un simulador de vuelo basado en servidores AMD Opteron y gobernado por SUSE Linux, en el que ha invertido $1.7 millones en el desarrollo de este simulador de vuelo en Linux.

Concurso: Premio Ejército del Perú, estímulo a la Investigación, Desarrollo e Innovación en ciencia y Tecnología

Con la finalidad de incentivar la investigación, desarrollo e innovación en el personal militar y civil del Ejército Peruano en los campos de Ciencia y Tecnología así como de promover en los estudiantes universitarios el interés por la Investigación y Desarrollo (I+D) en Ciencia y Tecnología orientado a la creación de soluciones y propuestas para defensa y desarrollo del país es que se llevará a cabo el concurso: "PREMIO EJÉRCITO DEL PERU, ESTÍMULO A LA INVESTIGACIÓN, DESARROLLO E INNOVACION EN CIENCIA Y TECNOLOGIA” - 2009; en este concurso, pùeden participar diferentes estudiantes y/o profesionales de las diferentes disciplinas del conocimiento, con la única condición de que apliquen sus conocimientos a brindar soluciones a los problemas y/o necesidades del Ejército, con especial atención al desarrollo tecnológico, y de esa manera contribuir a disminuir la dependencia tecnológica.

POSCOMP 2009 en Trujillo: Examen para Becas Integrales en estudios de Ciencias de la Computación‏

POSCOMP es un examen creado en Brasil para evaluar conocimientos en el área de computación. La gran mayoría de programas de Pos-Graduación en Brasil, utilizan este examen en sus procesos de selección de candidatos para maestría y doctorado. Por una iniciativa conjunta de la Sociedad Brasilera de Computación (SBC) y la Sociedad Peruana de Computación (SPC), este examen también puede ser hecho en Perú desde el año 2006. Y este año 2009, con el apoyo de la Sociedad de Estudiantes de Ciencia de la Computación (SECC) se realizará en la ciudad de Trujillo.

La Sociedad de Estudiantes de Ciencia de la Computación (SECC) hace presente el presente comunicado a todos los estudiantes de la Escuela de Informática que deseen realizar una Maestría en Ciencias de la Computación.

INSCRIPCIONES (Importante)

Periodo de inscripciones: 28 de Julio a 31 de Agosto
Estamos a una semana del cierre de la inscripciones, así que esta se tiene que realizarse lo antes posible.
Para poder inscribirse, estos son los pasos:
http://eventos.seccperu.org/poscomp2009/inscripcion.php
Para cualquier consulta, enviar un mensaje al correo poscomp.tru@seccperu.org
O también comunicarse al número +51-44-948851999

FECHA Y LUGAR DEL EXAMEN

Realización del examen: 27 de Septiembre
Local del examen: PERU - Trujillo - Universidad Privada Antenor Orrego
Horario del examen: 07:00 a 11:00 ( GMT-5, horario de Perú)
La duración del examen será de 4 horas, siendo realizado simultaneamente en todos los locales.
Estas fechas son independientes de las inscripciones en los diversos programas de pos graduación.

ESTRUCTURA DEL EXAMEN
En el 2009 el examen tendrá 70 preguntas de opción multiple divididas en tres partes:
  • Matemática (20 preguntas)
  • Fundamentos de Computación (30 preguntas)
  • Tecnología de Computación (20 preguntas)


Sin duda alguna que esta es una gran oportunidad para todos aquellos que estan en búsqueda de una oportunidad para lograr una beca de estudios y realizar una Maestría en Ciencias de la Computación.

Mayor Información

Visite la web donde está toda la información relacionado al POSCOMP: http://eventos.seccperu.org/poscomp2009/


Quieres leer más post como éste???...suscribete aquí!!!

Uso de Clave Foránea en JPQL: Inner Join en JPA

Cuando trabajamos sobre Bases de Datos relacionales, es normal que tengamos que manejar claves foráneas, ya que estas nos facilitan enormemente el trabajo. En el caso de la imagen que muestro, un elemento de la tabla fid_trabajador usa como clave principal a la clave foránea que hereda de fid_persona_empresa. En este post se mostrará como puedo realizar una consulta JPQL (Java Persistence Query Language) que me permita acceder a los datos almacenados en fid_persona_empresa usando la clave foránea que fid_trabajador usa, de manera más precisa, usaremos un inner join en JPA para resolver este problema.

Al mapear las tablas de una Base de Datos usando algún ORM como TopLink Essentials o Hibernate (entre otros) notaremos que, en las clases creadas para el ejemplo de la imagen mostrada, se obtendra un mapeo similar a esto:

Para FidPersonaEmpresa:

public class FidPersonaEmpresa implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "id", nullable = false)
private Integer id;
@Column(name = "nombres", length = 255)
private String nombres;
.
.
.
@OneToOne(cascade = CascadeType.ALL, mappedBy = "fidPersonaEmpresa")
private FidTrabajador fidTrabajador;
.
.
.
}
Para FidTrabajador:

public class FidTrabajador implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "fid_persona_empresa_id", nullable = false)
private Integer fidPersonaEmpresaId;
.
.
.
@JoinColumn(name="fid_persona_empresa_id",referencedColumnName = "id",
nullable = false, insertable = false, updatable = false)
@OneToOne(optional = false)
private FidPersonaEmpresa fidPersonaEmpresa;
.
.
.
}

El mapeo genera automaticamente variables para el acceso a ambas tablas, este acceso nos servirá como "puente" para poder hacer nuestra consulta usando un conocido INNER JOIN de una SQL tradicional pero con la sintaxis de JPQL.

De esta manera suponiendo que necesito recuperar todos los trabajadores cuyos nombres contengan la palabra "gonzales", me veré en la necesidad de buscar todos los elementos FidPersonaEmpresa que tengan por nombre "gonzales" y que a su vez se encuentren en FidTrabajador, para esto, la JPQL que hace uso de la clave foránea mediante el inner join sería:

String jpql = "SELECT t FROM FidTrabajador t JOIN
t.fidPersonaEmpresa p WHERE p.nombres like :nombres
and p.id = t.fidPersonaEmpresaId";

De manera similar, cuando quiero recuperar los datos personales de todos los trabajadores que tengan por nombre "gonzales" , la JPQL que hace uso de la clave foránea mediante el inner join sería:

SELECT p FROM FidPersonaEmpresa p JOIN p.fidTrabajador t  WHERE
p.nombres like :nombres and p.id = t.fidPersonaEmpresaId


De esa manera logramos acceder a las tablas que deseamos y hacer las operaciones necesarias para cumplir nuestra con nuestra consulta.

Espero les sea de utilidad, saludos.


Quieres leer más post como éste???...suscribete aquí!!!

Trabajar con JPA (Java Persistence API ) en NetBeans

Cuando tienes planeado realizar un proyecto en Java en el cual tengas que trabajar con Bases de Datos, lo que primero se te viene a la mente es JDBC. Sin embargo, esa no es la única opción, puesto que Java provee su Java Persistence API - JPA - la cual se encarga de crear el modelo de tu base de datos abstrayendo por tí la capa de conexión a datos y dejándote a tí, la tarea de enfocarte en la capa de la lógica del negocio, es decir, te dedicarás únicamente a programar el código funcional!!! y esto lo puedes aplicar tanto en aplicaciones de escritorio como en aplicaciones web. sin dudas que a mi me ha traido bastantes beneficios. En este post mostraré de manera breve y concisa algunos alcances sobre el trabajo con JPA.

Realizaremos nuestro trabajo usando el IDE NetBeans y utilizando una Base de Datos en MySQL, aunque esto es independiente y se puede trabajar con cualquier IDE y motor de Base de Datos.

Primero que nada debemos partir teniendo una Base de Datos, sobre la cual realizaremos el trabajo, una vez que tenemos una, lo que debemos hacer es conectar nuestra base de datos con el IDE. En este caso, trabajaremos sobre una Base de Datos llamada fid.


Ahora, organizaremos nuestro proyecto en 3 capas: Entidades, dónde ubicaremos las entidades de cada clase correspondiente a cada tabla de la base de datos; Componentes, dónde ubicaremos el código de las funciones que trabajarán sobre las entidades; y Vista, dónde colocaremos nuestras interfaces de usuario y haremos las llamadas respectivas a nuestras funciones de la capa de componentes para que respondan a los requerimientos que el usuario final desee .

De esta manera, ahora podemos trabajar primero sobre nuestra capa de Entidades, para lo cual, crearemos un nuevo proyecto de categoria: Java y tipo: Biblioteca de Clases Java. A esta librería la llamamos fid.be. Creamos un paquete denominado entidades y dentro de él crearemos nuestras clases de entidad de la siguiente manera:


Despues de esto, nos aparecerá una ventana, en la cual, elegiremos la Base de Datos sobre la cual trabajaremos. Una vez hecho esto, nos apareceran todas las tablas disponibles pertenecientes a dicha Base de Datos, deberemos elegir aquellas con las deseemos trabajar (generalmente todas).


Al continuar, nos aparecerá una ventana como la que sigue.

Como pueden notar, nos hace falta crear una unidad de persistencia, esto es el paso más importante. Hacemos clic sobre el boton correspondiente, ante lo cual aparecerá una ventana para crear la correspondiente unidad de persistencias para el proyecto, a la cual denominaremos fid.bePU (nombre por defecto), además usaremos el ORM TopLink como nuestra biblioteca de persistencias (aunque puedes elegir la que más te guste). Además en las opciones de mapeo, usaremos java.util.list como nuestro tipo de colección de datos; y listo!!! Ahora tenemos nuestras clases de persistencias, además s eha creado un par de archivos muy importante, persistence.xml y fid_be.dbschema, dales un vistazo por ti mismo para que notes la información que almacenan.


Ahora pasamos a nuestra capa de Componentes, al igual que para nuestra anterior capa, creamos un nuevo proyecto de tipo libreria de clases, lo llamamos fid.bc y adjuntamos nuestra libería anteriormente creada (fid.be) y TopLink Essentials como librerias de fid.bc. Claro, en esta capa somos libres de hacer lo que realmente queramos, ya que podemos interactuar directamente con nuestra Base de Datos de una manera más transparente. En la siguiente imagen se muestra el entorno de la capa de Componentes.

Se ha construido la clase Acciones, en donde se pueden realizar las funciones que deseemos sobre nuestra capa de Entidades. En el ejemplo que se visualiza el método insertarPersona() que utiliza las funciones de persistencias (JPA) para crear un nuevo objeto e insertarlo en la base de datos.

Finalmente abordamos nuestra capa de Vista, creamos un nuevo proyecto, esta vez como lo deseemos, ya sea una aplicación web o de escritorio; le colocamos el nombre fid.gui. Una vez creado, agregamos como librerias los paquetes de nuestras 2 capas antes creadas, es decir fid.be y fid.bc. Acá deberemos ser capaces de desplegar nuestros requerimientos acerca de las vistas. En este caso, nuestra capa de vista estará representada por una solitaria clase main en dónde se hace el llamado respectivo a la función creada en la capa de Componentes.


Al ejecutar el proyecto, debería de quedar insertado el nuevo objeto en la tabla correspondiente de la Base de Datos. Como habrán podido notar no hemos utilizado el método insert (de manera directa) y de la misma manera puedes hacer reportes (select) o eliminar datos (delete) y todo tipo de funcionalidad sobre tu Base de Datos usando JPA. Dale una revisada a la documentación de esta API.

Espero les sea de utilidad, saludos.

Quieres leer más post como éste???...suscribete aquí!!!

Related Posts Plugin for WordPress, Blogger...