facundolegal
Usuario (Argentina)

El Phishing es uno de los métodos mas usados por los delincuente en Internet para estafar y robar la información de las personas que navegan sin precaución. Todos los días estamos expuestos a este tipo de técnica, de la cual si no sabemos que es, podemos ser presas fáciles. La técnica esencial del Phising consiste en robar la información y datos de las personas, haciéndose pasar por sitios de confianza, imitándolos lo mas exacto posible para que las victimas no puedan diferenciar el verdadero del falso. Esta táctica esa usada principalmente para atrapar clientes de bancos, que sin darse cuenta entran a un falso portal (muy parecido al del banco) y allí ingresan sus datos y cuentas bancarias, que posteriormente caerán en manos de los criminales. El principal medio de propagación del phishing son los falsos correos que envían, haciéndose pasar por entidades reales y solicitando a sus clientes que ingresen a un link para registrar unos datos, obviamente todo esto es falso. Para que entiendan un poco mas de este tema les comparto la siguiente infografía que seguro les despejara muchas dudas sobre esta estrategia delincuencial. Clic para ampliar la Imagen Clic para ampliar la Imagen Para el phishing se utiliza mucho la ingeniería social, y si no conocemos claramente este tipo de técnicas, fácilmente podemos caer sin darnos cuenta.

Convierte tu iPad en una consola de videojuegos y en una recreativa arcade El iPad ha demostrado con creces sus capacidades en cuanto a ocio electrónico gracias a la ingente cantidad de juegos que hay en la App Store. Sin embargo, para muchos el control táctil no es tan amigable y echan de menos tener un mando en las manos. Pues bien, gracias al jailbreak y los emuladores podemos llevarnos bajo el brazo a cualquier lado una autentica consola de sobremesa y revivir los grandes clásicos del videojuego. En este artículo nos vamos a centrar en cómo convertir el iPad en las grandes consolas de la generación de 16bit: Mega Drive y Super Nintendo, así como en su capacidad para emular los juegos de máquinas arcade (MAME). Aún falta mucho trabajo en otros emuladores Antes de que los fans de la generación de 32bits y siguientes se nos echen al cuello, explicaremos por qué aún no vamos a hablar, aún, de otras consolas. La razón es que la experiencia de la emulación en este caso es bastante decepcionante. El emulador de Dreamcast, nullDce, aún está en proceso de ser finalizado y, de momento, sólo se ha anunciado su salida para Android. Por su parte, el de Nintendo 64, N64iPhone, es para iPhone por lo que no reescala bien la imagen a la pantalla del iPad y su control, que sólo consta de una cruceta y dos botones, es extremadamente limitado y poco útil. Finalmente, PSX4All, el que se encarga de la PlayStation original, sigue mostrando un mosaico incómodo de controles en pantalla y no mueve a toda velocidad todos los juegos. Requisitos previos Como podéis suponer, será necesario que nuestro iPad, de la generación que sea, tenga realizado el jailbreak, que podéis conseguir con este tutorial de Tabletzona. Además, hay que tener abierto el acceso SSH del tablet, proceso que también os hemos explicado pormenorizadamente en este otro tutorial: “Cómo acceder a las carpetas de tu iPad a través de SSH“. Primer paso: Instalando el Wiimote como controlador de emuladores Todas las aplicaciones que vamos a comentar tienen controles virtuales en pantalla, sin embargo, como el tacto de un pad tradicional no hay nada. Para ello podemos servirnos de un Wiimote, el controlador de la Nintendo Wii es más versátil de lo que parece y nos servirá tanto uno original como uno licenciado (los hay por unos 9€). Tanto el emulador de Super Nintendo como el MegaDrive admiten hasta 2 mandos conectados, por si quieres compartir la diversión con un amigo, así como la posibilidad de conectar el mando clásico de Wii al Wiimote. Para conectar el Wiimote al iPad vamos a utilizar la versátil app Bstack (que ya nos sirvió para conectar un ratón bluetooth en otro tutorial). Como es parte del repositorio Telesphoreo, uno de los que vienen por defecto en Cydia, sólo hay que buscarla, instalarla, ejecutarla y conectar el Wiimote. Para poner el Wiimote en modo “enlace” deja pulsado unos segundos el botón de sincronización (tecla roja bajo la tapa de las pilas) hasta que parpadeen las luces, automáticamente aparecerá en la lista de Bstack y sólo tienes que pulsar sobre su nombre en la pantalla del iPad para conectarlo. Convirtiendo el iPad en una consola de 16 bits: GENESIS A.D. Plus y SNES A.D. Plus 1.- Instalamos en Cydia el repositorio Big Boss. Para ello, dentro del menú “Fuentes”, pulsamos en “Editar” y luego en ”Agregar”, ambos botones situados en las esquinas superiores, e introducimos la URL correspondiente. 2.- Una vez hecho este proceso buscamos tanto la aplicación GENESIS A.D. Plus como SNES A.D Plus e instalamos ambos paquetes. 3.- Para añadir las ROMs de los juegos, hay tres posibilidades: ADVERTENCIA: las ROMs no son ilegales, si poseéis una copia del juego en formato físico. En caso contrario, estáis pirateándolos y dejamos a vuestra decisión seguir adelante. - Desde el propio emulador: ambas apps tienen un botón que pone “Find games”. A través de él nos conecta a varios sites de ROMs desde el que podremos, directamente, descargarnos el juego que deseemos. - Mediante acceso SSH: si ya tenemos algunos archivos de ROMs en nuestro ordenador, podemos, mediante el acceso SSH, instalarlos manualmente si los guardamos en estas rutas: MegaDrive -> /var/mobile/Media/ROMs/GENESIS. SNES ->/var/mobile/Media/ROMs/SNES - También es posible pasar las ROMs a través de la aplicación iFile con un USB, pegando las mismas en la ruta correspondiente. 4.- Abre GENESIS A.D. Plus o SNES A.D. Plus, elige el juego ¡y disfruta! Convirtiendo el iPad en una recreativa: iMame4All. 1.- Buscamos la aplicación iMame4all. Al ser una aplicación muy conocida, está incluida en los repositorios por defecto y sólo tenemos que instalar el paquete. 2.- Para añadir Roms, que deben ser guardadas en formato “.zip”, sólo tenemos la opción de hacerlo desde la aplicación que hemos seleccionado para el acceso SSH a la ruta y hay que depositar los archivos en la ruta: /Var/mobile/Media/ROMS/iMAME4all/roms. También es posible pasar las ROMs a través de la aplicación iFile con un USB, pegando las mismas en la ruta correspondiente. 3.- Abre iMame4All, elige el juego ¡y disfruta! Jugando a lo grande: conecta el iPad 2 o el nuevo iPad a la TV Y es que si ya queremos redondear la jugada, gracias a la posibilidad de mostrar la pantalla del iPad 2 y nuevo iPad, el famoso “mirroring”, podemos disfrutar de los emuladores en una TV. Para ello puedes utilizar el conector HDMI del iPad (49€) o bien si tienes un AppleTV puedes hacerlo de forma totalmente inalámbrica gracias a AirPlay.

Las mejores aplicaciones para aumentar la duración de la batería Uno de los principales problemas de los usuarios de Android es la duración de la batería. Si somos "power-users", es posible que la batería en el equipo no dure más de 12 horas. Algunos optan por comprar baterías extendidas o llevar una batería adicional consigo para no quedarse nunca sin carga. Pero la realidad es que, en algún momento u otro, estaremos en esa posición. En un terminal Android, las funciones que más consumen batería generalmente son la iluminación de la pantalla, y las conexiones de datos. Combinando una configuración manual de estas dos cuestiones, podemos ganar tiempo. Sin embargo, algunas aplicaciones para mejorar la batería en Android son necesarias, y es lo que veremos a continuación. Dos cuestiones a considerar son importantes. La primera es que si bien el gran consumo viene por el lado del mismo sistema operativo, dependiendo de la cantidad de aplicaciones que tengamos corriendo de fondo tendremos más o menos un determinado tiempo de batería. Por el otro, las aplicaciones para mejorar la batería en Android son relativas y por supuesto no hacen milagros. Esto lo comentamos originalmente en nuestra guía para administrar batería en el sistema operativo móvil de Google. Por ende, no tenemos que depender de estas aplicaciones, pero también podemos utilizarlas para tener una mejora. Otro aspecto a considerar es que, al estar administrando las apps que tenemos instaladas, estas aplicaciones para mejorar la batería en Android muchas veces suelen cometer fallas relacionadas con la pérdida de conectividad e, irónicamente, el gasto innecesario de batería. Pero nos brindan la comodidad de poder programar estas cuestiones, en lugar de estar configurando manualmente todo. JuiceDefender: la primera en nuestra lista de aplicaciones para mejorar la batería en Android es JuiceDefender, que nos permite administrar las funcionalidades de nuestro teléfono para poder optimizar el uso de la batería al máximo. Está diseñada para extender el tiempo de carga, y nos ayuda a administrar algunas de las tareas que más batería consumen, como las redes 3G y 4G, la conectividad, y las redes WiFi. Podemos configurar diferentes modos que se activan desde una de las pantallas principales, a través de un Widget, para ahorrar tiempo. Descargar Greenify: para los usuarios que tienen muchas aplicaciones instaladas, Greenify puede ser una buena forma de ahorrar batería. Sin embargo, es importante aclarar que para poder usarla es necesario hacerle root al telefóno, y en la gran mayoría de los casos esto invalida la garantía del fabricante (y si lo hacemos mal, pues puede traer severas consecuencias para el rendimiento del equipo). Si estamos dispuestos a correr ese riesgo, esta aplicación nos permite controlar muchos aspectos de nuestro smartphone, como por ejemplo, la cantidad de veces que debe un widget actualizarse en el día. Estas funcionalidades están orientadas a ahorrar tiempo de batería. Descargar Battery Defender: para quienes no tengan ganas de ahondar mucho tiempo en la configuración del ahorro de batería, Battery Defender puede ser una buena opción. Uno de los interesantes agregados es que nos muestra la vida de la batería directamente en la barra de notificaciones. Está orientado a involucrar menos trabajo de nuestra parte para ahorrar batería, como por ejemplo desactivando automáticamente las conexiones cuando la pantalla se apaga por más de 15 minutos, permitiendo que las aplicaciones se sincronicen cada 15 minutos, y hasta desactivando las conexiones cuando el equipo sabe que estamos durmiendo. Además, cuando llegamos a la recta final y tenemos poca batería, la aplicación desconectará la red de datos y el WiFi para poder ahorrar lo máximo posible mientras no usamos el teléfono. Descargar GO Battery Saver: la cuarta en nuestra lista de aplicaciones para mejorar la batería en Android es GO Battery Saver, que nos permite administrar fácilmente algunas de las funciones que consumen más batería en el terminal. Por ejemplo, vamos a poder prender y apagar la conexión de datos, el WiFi, el audio, la conexión por Bluetooth, el brillo de la pantalla, la sincronización de las aplicaciones, en definitiva, poder extender la vida de la batería. De la misma forma que JuiceDefender, nos permite configurar perfiles determinados de acuerdo con nuestras necesidades, para saber qué funciones bloquear o cambiar en determinados momentos que nos permiten aprovechar todo lo que podemos la batería que tenemos. Descargar Tasker: en lo que se refiere a la administración de tareas, Tasker puede ser una buena opción. Esta aplicación nos permite automatizar completamente nuestro teléfono. Y a través de esta automatización, vamos a poder controlar algunas aplicaciones que nos están consumiendo demasiada batería. Por ejemplo, a la hora de modificar la configuración de la pantalla vamos a poder ir un poco más allá que el simple cambio de brillo. Esto es válido para otras acciones, y más allá del ahorro de la batería, puede funcionar como un buen asistente para nuestro equipo Android. Descargar Easy Battery Saver: con esta aplicación vamos a poder ahorrar batería a través de la administración inteligente de la red de conectividad del equipo, así como también el tiempo que la pantalla se mantiene prendida cuando no la estamos usando y el brillo que tiene la misma. También nos permite ahorrar batería mientras estamos durmiendo. Easy Battery Saver cuenta con cuatro modos, desde el más sencillo y general hasta el más avanzado, que aumentan la cantidad de controles que queremos tener sobre el teléfono. En el modo más avanzado, vamos a prácticamente poder seleccionar todas las variables y valores que deseamos para aprovechar nuestra batería al máximo. Descargar BetterBatteryStats: esta aplicación no nos permite tener demasiado control, pero sí nos brinda la información necesaria para saber en qué estamos gastando la batería. BetterBatteryStats nos permite analizar el comportamiento de un smartphone, así como también encontrar las aplicaciones que están teniendo un consumo elevado de batería para poder cancelar sus procesos o eliminarlas, si realmente ya no las estamos usando. Esta aplicación sirve, fundamentalmente, no para controlar la batería sino para monitorear a las aplicaciones que la consumen, por lo que requiere que tengamos un control más manual de la configuración para solucionarlo. Descargar Battery HD: así como la anterior, esta aplicación está destinada a brindarnos más información, pero también a proyectar cuánta carga nos queda en el teléfono para saber qué es lo que tenemos que hacer, o evitar hacer, en las próximas horas. Por ejemplo, si sabemos que no volveremos a poder cargarlo en un tiempo, probablemente no nos conviene escuchar música. Con Battery HD podemos aprender cuántas horas nos quedan de batería para escuchar música, mirar videos, hablar por teléfono, navegar por internet, estar en stand by, que, no olvidemos, también es una actividad, usar juegos, leer ebooks, navegar usando GPS, y mucho más. No vamos a poder tener control, pero vamos a poder planificar nuestras acciones. Descargar Battery Dr: esta es una de las aplicaciones para mejorar la batería en Android que nos ayudará a eliminar procesos y desactivar aplicaciones que están gastando demasiada batería. Así con Battery Dr vamos a poder suspender tareas que no necesitamos que estén corriendo en el momento, obtener información sobre la batería, la temperatura, y otras estadísticas propias del teléfono, ajustar el brillo de la pantalla, recibir notificaciones relacionadas con el tiempo de la batería, monitorear y controlar la carga que tenemos, y algunas funcionalidades más que están en línea con lo que esperamos de una aplicación de este estilo. Descargar Battery Doctor: cerramos nuestra lista de aplicaciones para mejorar la batería en Android con Battery Doctor, a no confundirse con la app que acabamos de mencionar. Con ella, vamos a poder ahorrar batería rápidamente con un toque de pantalla, además de poder predecir cuánto tiempo de carga nos queda para poder proyectar nuestras actividades con el smartphone a futuro. También nos permite optimizar la batería mientras estamos cargando el teléfono, y ajustar nuestra configuración automáticamente para poder optimizar el tiempo de carga que nos queda. Descargar Bueno,espero que les haya sido de utilidad algunas de estas aplicaciones. Si conocen alguna otra aplicación y la recomiendan, sera un buen aporte para los usuarios que dispongan de un android. Saludos y hasta la próxima! FIN DEL POST

Si la moda de hoy es llevar nuestros gadgets a todo lado con el objetivo de estar conectados en cualquier lugar, el futuro apunta a un tendencia algo diferente, y es que llevaremos puestos nuestros gadgets en todo momento como si hicieran parte de nuestro cuerpo, o almenos así lo hacen ver algunos de los proyectos que empiezan a marcar el camino a una nueva era de conectividad y comunicación. La necesidad de estar conectados y en comunicación con el resto del mundo ha llegado a tal punto de crear una sociedad hiperconectada, donde quien no se adapte a los nuevos cambios quedara perdido en un mundo cada vez mas digital. Actualmente podemos ser testigos de grandes avances tecnológico y proyectos que buscan revolucionar en poco tiempo nuestra forma de usar la tecnología, haciéndonos prácticamente uno solo, algo así como una especie de cyborgs. Tal vez una de las ideas mas revolucionarias y que seguramente muchos esta esperando utilizar, es la que se ha concebido con el Proyecto Google Glass. Las famosas gafas de Google que incorporan la tecnología suficiente para hacernos sentir una especie de agente secreto al mejor estilo de James Bond. Por otro lado podemos encontrar el Pebble, un interesante proyecto que logro recaudar mas de 10 millones de dólares en Kickstarter y que pretende llevar todo el control de nuestro celular a un pequeño reloj digital. La idea ha tenido bastante acogida y se espera que cuando el producto este en el mercado sea todo un éxito. Estos son solo algunos ejemplos de lo que nos espera en la tecnología del futuro, donde la idea es llevar puestos nuestros dispositivos y para que vean otro proyectos que están marcando tendencia, les dejo la siguiente infografía. Por motivos de que no puede ser comprobada la url de donde saque la información para poner en el campo "Fuente" al crear el post, decidí colocarlo de forma manual poniendo el siguiente link, asi podia compartir dicha información con ustedes. Fuente: http://www.***/la-tecnologia-que-vestiremos-en-los-proximo-anos/ para acceder a los enlaces, reemplazar los *** por "maestrodelacomputacion" seguido de ".net" así podrán acceder a los links mensionados. Espero que les haya gustado! FIN DEL POST
Hola a todos. Hoy quiero compartirles un importante tip de seguridad que deben tener en cuenta para asi evitarse problemas que pueden llegar a ser bastante graves. En primer lugar quiero contarles sobre varios mensajes que han estado llegando a mi correo personal, al parecer enviados por un el Banco BBVA. Lo curioso es que yo no tengo cuenta ni nada que ver con dicha entidad y de igual manera me llegan bastantes mensajes. Asuntos como “Tu cuenta ha sido desactivada” o “Actualiza tus datos personales” me han causado bastante curiosidad, y por esta razon quiero compartirlos con ustedes. Asi que presten mucha atencion a cada uno de los detalles que les comantere a continuacion: 1. Uno de los mensajes que me llego se ve de la siguiente manera: Si detallan el correo emisor, podran darse cuenta de que el correo del que es enviado es: BBVA-Particulares@Grupo-BBVA.particulares.org, el cual se puede detectar que no correponde al dominio oficial del Banco BBVA. 2. Si ubico mi puntero sobre el enlace del mensaje, podran detallar la direccion a la cual apunta, que obviamente tampoco tiene nada que ver con el Banco: 3. Finalmente decidi arriesgarme a abrir el enlace y miren la sorpresa que me aparecio en Firefox: Como vemos dihca direccion ya ha sido reportada como fraude, y Firefox me bloqueo el acceso a ella por obvias razones de seguridad. Recomendaciones: 1. Los mensajes falsos son uno de los principales trucos utilizados para robar datos e informacion de cuentas bancarias. 2. Siempre y siempre, revisa hacia donde apunta un enlace antes de abrirlo, eso lo haces solo ubicando tu puntero sobre el enlace y en la parte inferior aparecera el enlace (Ver imagen 2). 3. Nunca pero nunca, aceedas a las paginas de tu banco desde un correo electronico. Siempre trata de escribir la direccion completa en la barra de direcciones, asi evitaras caer en enlaces falsos. Con estas simples precauciones podran evitar ser victimas del fraude electronico, y asi evitaran futuros lamentos.

para usar en tus proyectos Hola a todos. Si alguna vez has realizado un proyecto o tienes alguno por hacer, seguro habrás analizado que uno de los principales problemas a enfrentar es el uso de material con derechos de autor y cuyo uso esta restringido solo a quienes paguen sus debidos derechos, haciendo que sea difícil encontrar buen material para usar libremente en nuestros proyectos. Los principales elementos con los que nos enfrentamos a derechos de autor son las imágenes, vídeos y música. Afortunadamente se han llevado a cabo varios proyectos para reunir material de libre distribución que pueda ser usado por quien desee sin ningún inconveniente. En el caso de las imágenes podemos recurrir a servicios como Freepik, un buscador de imágenes y vectores libres para descargar. Free Music Archive pretende ser la ayuda en cuanto a música libre se refiere, presentan una gran colección de canciones con licencia Creative Commons para usar en nuestros trabajos personales o comerciales sin inconvenientes. El sitio cuenta su propio buscador para facilitarnos el encontrar las canciones, además la música esta organizada en categorías según el estilo o género musical al que pertenecen. Podemos escuchar los temas y si alguno cumples las expectativas, seremos libres de descargarlo si así lo queremos. Para acceder al sitio debemos ingresar a http://freemusicarchive.org y disfrutaremos de cientos de canciones para descargar libremente.

Google siempre esta marcando tendencia en todo campo al que decide ingresar, y si bien no ha tenido tanto éxito en las redes sociales con Google+, lo que si se debe destacar es el hecho de haber incorporado al mundo su excelente servicio de comunicación denominado Hangout. Los Hangouts de Google en mi modo de ver han revolucionado la manera de comunicarse con las personas, especialmente cuando de trabajo en equipo se trata. Personalmente utilizo este servicio para trabajar de forma grupal con mis compañeros de Universidad y de proyectos, gracias a que no solo nos permite entablar comunicación entre varias personas (máximo 10) de manera simultánea, sino que ademas se integra con una gran variedad de herramientas que aumentan la productividad al momento de realizar trabajo en grupo. Ya sea que tengamos que editar un mismo documento entre varias personas, visualizar una presentación de manera simultánea, compartir pantalla, ver un vídeo de Youtube al mismo tiempo o incluso transmitir eventos en vivo, los Hangouts permiten hacer esto y mucho mas, ademas de que cuentan con el respaldo de una de las empresas que mas le apuestan a Internet y que han decidido darle mayor potencial a esta herramienta, pues tal es el caso de que ahora han lanzado su aplicación de mensajería instantánea para dispositivos móviles basada en este servicio. Si ya han utilizado los Hangouts seguro conocen sus fortalezas y ventajas frente a otras aplicaciones de comunicación, si no lo han hecho deberían probarlos, y por si las dudas aquí les dejo una completa infografía que nos muestra de manera resumida qué son los Hangouts y cómo aprovecharlos de la mejor manera. Por motivos de que no puede ser comprobada la url de donde saque la información para poner en el campo "Fuente" al crear el post, decidí colocarlo de forma manual poniendo el siguiente link, asi podia compartir dicha información con ustedes. para acceder a los enlaces, reemplazar los *** por "maestrodelacomputacion" seguido de ".net" así podrán acceder a los links mensionados. Espero que les haya gustado! FIN DEL POST
El futuro reinventa el multijugador Activision ha revelado nuevas imágenes del juego de acción Black Ops 2. El próximo título de la saga Call of Duty se reinventa gracias a su apuesta futurista, el sello de calidad de Treyarch y una apuesta definitiva por el multijugador. Conoce sus imágenes. Call of Duty: Black Ops 2 va camino de convertirse en el rey de la actual temporada del género shooter. Los cambios introducidos en su multijugador, y las posibilidades que ofrecerá su apuesta futurista de cara a su gameplay, están aumentado considerablemente el interés de la comunidad de gamers por este juego. Los jugadores pedían cambios y parece que será Treyarch la encargada de introducir nuevas variables. En las imágenes que nos ocupan podéis observar sin trampas ni aditivos la calidad gráfica que presentará el título. Si bien mantendrá su motor gráfico, su tecnología ha sido exprimida al máximo para ofrecer la máxima calidad, tanto en PC, como en el resto de plataformas, donde el juego lucirá impresionante y mostrará la fluidez que siempre ha caracterizado a la serie. Como veis, el uso de las nuevas tecnologías no será algo anecdótico. El inventario de armas y gadgets se ha multiplicado y parece que viviremos combates estimulantes y de lo más variados. Desde que fuera anunciado, la expectación por el título ha ido ‘in crescendo’, gracias en parte al excelente punto de partida del que ha partido Treyarch, donde los avances tecnológicos serán, precisamente, un peligro para los aliados. “¿Qué pasaría si el enemigo se hiciera con su control?”. Ese será el elemento sobre el que girará una campaña variada y marcada por el habitual y efectivo pulso narrativo de la serie. Desde luego, el juego promete dominar el territorio online. Si bien la campaña brillará con luz propia, un buen número de gamers se prepara para exprimir al máximo la modalidad estrella del título. Y tú, ¿Crees que Black Ops 2 ofrecerá el mejor multijugador de la escena?
¿Que sabes de vinos? Pequeños consejos, preguntas con su respectiva respuesta, que nos puede llevar a tener una idea cuando estemos rodeados de gente y podamos participar de este tipo de conversiones. ¿Como descubrir si estamos probando un buen vino? >> Un “buen vino” debe tener algo que lo distinga: personalidad, carácter, algo que lo diferencie de los demás. Puede ser elegante y complejo, o joven y frutado, con una larga crianza en roble o simplemente la expresión de la fruta y el terruño pero debe dejarnos una sensación placentera y agradable en el paladar. ¿Cómo lograr una buena comida utilizando vino? ¿Hay que elegir uno en particular? >> A la hora de cocinar, la calidad de la materia prima es tan importante como la armonía entre todos los ingredientes, sea en una comida exótica y sofisticada como en una cena cotidiana. Para tener éxito hay que usar buenos productos y a combinarlos con inteligencia y creatividad. Además, siempre es conveniente acompañar el plato con el mismo vino que usamos en la elaboración. ¿Cómo saber si puedo guardar un vino, o por cuanto tiempo puedo hacerlo antes de que se arruine? >> Si el vino tiene una buena estructura, taninos y crianza en roble, estamos hablando de un vino de guarda, en cambio si su estructura es suave y liviana y no tuvo crianza, se trata de un vino para consumo inmediato. Los blancos y rosados, en general, no se guardan; cuánto más jóvenes, mejor. En los tintos, la gama es muy amplia. La guarda del vino no depende de la variedad sino del estilo. ¿De qué cepaje es originario el vino Bonarda? >> Bonarda es una variedad de uva o un cepaje de origen italiano. En la Argentina se cultiva, con gran éxito, en varias regiones de Mendoza y San Juan. Hasta no hace mucho tiempo se la utilizaba únicamente para cortes, nunca como varietal. Es una variedad muy noble que produce vinos muy frutados, de colores profundos y sabores intensos. A nivel mundial, ¿Qué posición ocupa el vino torrontés argentino? >> Son pocos los países que elaboran esta variedad. Además, solo la Argentina produce un volumen de cierto peso por lo que se podría asegurar que son únicos en su categoría. ¿A que temperatura se sirven los distintos vinos? >> Las temperaturas de servicio ideales son para apreciar mejor las cualidades de cada vino: los espumantes de 5 a 8 grados, blancos secos de 9 a 12 grafos blancos dulces de 6 a 8 grados, rosados de 10 a 12 grados; tintos jóvenes de 14 a 16 grados y tintos de guarda de 17 a 19 grados. Necesito orientación para armar una vinoteca familiar >> Para empezar, lo principal es buscar un espacio adecuado para la apropiada conservación de los vinos. Debe ser un lugar oscuro, libre de ruidos, movimientos y cambios bruscos de temperatura, con buena ventilación y humedad constante. Otra cosa fundamental es evitar todo tipo de olores fuertes en el ambiente. ¿Cuánto incide el precio en la calidad de los vinos, sobre todo en los tintos, que son los de mayor consumo? >> Generalmente, el precio de venta de un vino esta relacionado con calidad. A mayor calidad, más alto es el costo de producción y, lógicamente, más caro se venderá el vino. Uno espera que la relación precio-calidad sea equilibrada pero en el mercado argentino, que es tan competitivo, hay muchas excepciones. ¿Qué vino es el adecuado para acompañar carnes de chivo y cerdo? >> El cerdo y el chivo son carnes gruesas y rusticas que quedan muy bien acompañadas con vinos blancos de buen volumen, y el toque de roble para aportar estructura. Los rosados también son una excelente opción, sobre todo en verano. Lo ideal para acompañar carnes rojas son los tintos, ya que los taninos ayudan a limpiar el paladar de la grasitud de la carne. ¿Qué diferencia hay entre un varietal y un Malbec o Syrah? >> Un varietal 100% es un vino elaborado con una sola variedad de uva. El Instituto Nacional de Vitivinicultura considera a un vino varietal a aquel que se elabora con el 85% de la misma variedad. Por ejemplo: un vino que tiene 85% de uvas Malbec y 15% de uvas Syrah es un varietal de Malbec. El Lambrusco es uno de mis varietales favoritos, ¿Por qué en la Argentina es difícil de conseguir? >> Antiguamente, en la Argentina, a la uva Sangiovese se la llamaba Lambrusco y, a fines de la década del 90, le cambiaron el nombre. Es cierto que no se encuentra con facilidad porque no es muy común. El Lambrusco es un vino espumante, de origen italiano, elaborado con uvas tintas del mismo nombre. Es ligero y refrescante, de similar acidez al rosado, seco o dulce, y muy versátil. Las bodegas Robino y Familia Llaver elaboran buenos Lambrusco. ¿Es cierto que el tinto Merlot es el único que se puede beber frío? >> No. Los tintos que mejor se expresan a temperaturas más frescas que lo habitual, entre 13º C y 15º C, son los vinos de estructura liviana o cuerpo ligero. Ya sean varietales de Merlot, Malbec, Cabernet o Blends, o importante a la hora de definir la temperatura de servicio de un vino es su cuerpo y estilo. Los tintos frutados y sin madera son los ideales para beber a bajas temperaturas. ¿Quién control que el contenido del alcohol declarado en la etiqueta sea real? >> Los enólogos del Instituto Nacional de Vitivinicultura son los encargados de controlar el alcohol que figura en la etiqueta del vino. Existe una tolerancia de alrededor de 0,3 vol. En el mercado interno y 0,5 vol. en el externo. Para evitar malestares, es recomendable comer algo antes de beber vino. Fin del post, Espero que les haya servido!
Curso Java. Volumen I. Introducción a la concurrencia Aprovecharemos al máximo los recursos del ordenador para ejecutar nuestro programa Tras un tiempo sin Curso de Java, volvemos hoy con un tema muy importante para conseguir el máximo rendimiento de nuestro programa utilizando todos los núcleos de nuestro procesador. La programación concurrente es capaz de realizar varias tareas de forma simultánea. Hay varios tipos de concurrencia, nosotros trabajaremos con programación de memoria común, donde tan sólo tendremos una memoria RAM que es compartida por los demás programas y tareas. Hay un aspecto muy importante para lograr que la concurrencia sea correcta: - El resultado debe ser el mismo si se hace con un procesador que con cuatro procesadores. Es decir, el resultado no debe depender del número de núcleos/procesadores del ordenador. Nota: Hablaremos de proceso = hilo. Los sistemas operativos actuales permiten la concurrencia de procesos, el propio sistema operativo se encarga de permitir el uso de variables compartidas para pasar datos de un proceso a otro y controlar las regiones críticas. ¿Qué es una región crítica? Es un trozo de código, en el que la correción del programa se ve comprometido por el uso de variables compartidas. Un proceso sólo podrá acceder a esta región crítica durante un tiempo determinado para que no halla inanición. Java permite de forma intrínseca la concurrencia. Para garantizar la corrección del programa, en Java tenemos varios métodos que podemos utilizar: - Monitores: Un monitor implementa una región crítica condicional, de tal forma que podemos sacar de la cola de espera a uno o a todos los procesos esperando. Para que sea un monitor, todos los métodos de la clase deben ser synchronized. Para el uso de monitores, nos ayudamos de los métodos: * wait(): Si no se cumple la condición, esperamos. * notify(): Cuando hemos entrado en la región crítica, y hemos hecho cierta acción, notificamos a un proceso que hay esperando para entrar si se cumple la condición (le despertamos del wait()). * notifyAll(): Igual que el anterior pero notificamos a todos los hilos que hay esperando. - Semáforos: El nombre de semáforos es como en la vida real, un semáforo cerrado no podrán pasar coches hacia un lado, y un semáforo abierto sí podrán. Los semáforos garantizan la exclusión mutua y la sincronización (para que los coches no se choquen en la región crítica que en este caso es el cruce). En semáforos nos ayudamos de varios métodos como por ejemplo: * acquire(): Para adquirir el semáforo (ponerlo en verde para la cola de coches A) una vez que lo hemos adquirido pueden pasar los coches porque está en verde. *release(): El último coche en pasar hace un realease() para que los coches que están esperando del otro semáforo puedan pasar ya que nosotros hemos terminado. Los semáforos se usan para controlar el número de hilos que pueden acceder a un recurso. Un proceso bloqueado en el semáforo, puede ser liberado por otro, esto no ocurre en los locks que veremos a continuación. - Locks: Los locks proporciona mayor rendimiento, con la misma semántica que la sincronización. Soporta timeout al adquirir un bloqueo e incluso soporte para interrumpir un hilo. Podemos decir que con los locks controlamos más lo que hace nuestro programa, es más “manual”, y por tanto, se necesita la experiencia del programador para que no tengamos fallo en el programa. Todo esto es básicamente lo que veremos en concurrencia de memoria común, ampliaremos algo de teoría, pero sobre todo pondremos ejemplos para que veáis como funciona. ¿Concurrencia? ¿Realmente hay diferencia de rendimiento en los programas? Vamos a calcular un determinado de números primos, de forma secuencial y de forma concurrente (sin usar regiones críticas). Clase Primos.java (se encargará de calcular dichos números primos). public class Primos { private int x, y, n = 0; public Primos(int x, int y) { this.x = x; this.y = y; } private boolean esPrimo(int n) { int raiz = (int) Math.sqrt((double) n); for (int i = 2; i <= raiz; i++) { if (n % i == 0) { return false; } } return true; } public void calcular() { for (int i = x; i <= y; i++) { if (esPrimo(i)) { n++; } } } public int cuantos() { return n; } } Programa principal ejecutable de Primos sin concurrencia: public class CuantosPrimos { public static void main(String[] args) { long t0 = (new Date()).getTime(); Primos p1 = new Primos(1, 2000000); Primos p2 = new Primos(2000001, 4000000); Primos p3 = new Primos(4000001, 6000000); Primos p4 = new Primos(6000001, 8000000); Primos p5 = new Primos(8000001, 10000000); p1.calcular(); p2.calcular(); p3.calcular(); p4.calcular(); p5.calcular(); int n = p1.cuantos() + p2.cuantos() + p3.cuantos() + p4.cuantos() + p5.cuantos() ; long t1 = (new Date()).getTime(); System.out.println("Número de primos menores que 10000000: " + n + " calculado en " + (t1 - t0) + " miliseg."; ) ; } } Número de primos menores que 10000000: 664580 calculado en 7491 miliseg. Ahora os voy a poner la clase de Primos que se hace de forma concurrente. Para la concurrencia podemos extender la clase Thread, o implementar la interfaz Runnable. ¿Cuando debemos usar una u otra? Debido a que al extender la clase Thread, estamos heredando todos sus métodos, si queremos que una clase herede de otra, y encima que sea concurrente, no podremos hereder (extends) de ambas clases, ya que Java no permite la herencia múltiple. De esta forma hacemos un extends Padre implements Runnable, para heredar de Padre e implementar la concurrencia. Por tanto, implementando la interfaz tenemos más “flexibilidad” a la hora de programar nuestras clases porque esa interfaz la podemos modificar a nuestro antojo para agregarle más funcionalidades. Interfaz Runnable: public interface Runnable { public abstract void run() ; } Extendiendo la clase Thread quedaría: public class PrimosThread extends Thread { private int x, y, n = 0; public PrimosThread(int x, int y) { this.x = x; this.y = y; } private boolean esPrimo(int n) { int raiz = (int) Math.sqrt((double) n) ; for (int i = 2; i <= raiz; i++) { if (n % i == 0) { return false; } } return true; } @Override public void run() { for (int i = x; i <= y; i++) { if (esPrimo(i)) { n++; } } } public int cuantos() { return n; } } Implementando la clase Runnable, sustituímos: extends Thread por implements Runnable y listo, no tendremos que cambiar nada más en esta clase. Programa Principal de Primos con extends Thread: public class CuantosPrimos2 { public static void main(String[] args) { long t0 = (new Date()).getTime(); PrimosThread p1 = new PrimosThread(1, 2000000); PrimosThread p2 = new PrimosThread(2000001, 4000000); PrimosThread p3 = new PrimosThread(4000001, 6000000); PrimosThread p4 = new PrimosThread(6000001, 8000000); PrimosThread p5 = new PrimosThread(8000001, 10000000); p1.start(); p2.start(); p3.start(); p4.start(); p5.start(); try { p1.join(); p2.join(); p3.join(); p4.join(); p5.join(); } catch (InterruptedException e) { } int n = p1.cuantos() + p2.cuantos() + p3.cuantos() + p4.cuantos() + p5.cuantos(); long t1 = (new Date()).getTime(); System.out.println("Número de primos menores que 10000000: " + n + " calculado en " + (t1 - t0) + " miliseg."; ) ; } } Programa principal con implements Runnable: public class CuantosPrimos2 { public static void main(String[] args) { long t0 = (new Date()).getTime(); PrimosThread p1 = new PrimosThread(1, 2000000); PrimosThread p2 = new PrimosThread(2000001, 4000000); PrimosThread p3 = new PrimosThread(4000001, 6000000); PrimosThread p4 = new PrimosThread(6000001, 8000000); PrimosThread p5 = new PrimosThread(8000001, 10000000); p1.run(); p2.run(); p3.run(); p4.run(); p5.run(); long t5 = (new Date()).getTime(); int n = p1.cuantos() + p2.cuantos() + p3.cuantos() + p4.cuantos() + p5.cuantos(); System.out.println("Número de primos menores que 10000000: " + n + " calculado en " + (t5 - t0) + " miliseg."; ) ; } } La diferencia es bastante significativa: Número de primos menores que 10000000: 664580 calculado en 4262 miliseg. Calculamos el mismo número de primos en casi la mitad de tiempo. Pruebas realizadas con un Intel Core2Duo T8300 con 2 núcleos SIGUIENTE VOLUMENES: FIN DEL POST