Para los interesados, todavía están a tiempo de inscribirse en la clase de Software como Servicio (SaaS) que es brindada por dos docentes de la universidad de Berkeley en Coursera. Lamentablemente para algunos, es una clase en ingles, pero digamos la verdad, si les gusta la programación y no saben ingles están perdiéndose el 70% de los recursos disponibles para los programadores a nivel mundial. Una muy buena inversión para su carrera es aprender ingles.
Tengo que confesar que la clase ya está comenzada, pero recién el lunes comienzan las asignaciones de deberes y las pruebas. Como hay tiempo hasta el 2 de marzo para entregar la tarea finalizada no es mal momento para tomar esta clase. Más tarde es muy tarde.
La clase es muy interesante, sobre todo en conjunto con el libro recomendado para la clase, Engineering Long-Lasting Software: An Agile Approach Using SaaS and Cloud Computing, ya que el libro profundiza los conceptos emitidos en la clase y recomienda prácticas incluso antes de comenzar con los deberes, además de brindar acceso a varios ejemplos en Pastebin y a videos relacionados en Vimeo. Hay algunas quejas al respecto de los videos, sobre todo del audio, pero están en proceso los subtítulos en ingles para poder captar todo.
El curso comienza desde bastante abajo en lo que a SaaS respecta, cubriendo muchos conceptos de internet, aunque pocos en profundidad. Estos conceptos básicos para el curso son cosas como el protocolo TCP/IP, la arquitectura cliente/servidor, el protocolo HTTP, URLs y URIs, el lenguaje HTML y el agregado que representa CSS, la arquitectura de tres capas (capa presentación, capa lógica, capa de persistencia), modelo/vista/controlador, SOA, y varias cosas similares.
Todo esto es la base necesaria para nivelar un poco al grupo, hasta llegar al tema real, SaaS y su aplicación en el lenguaje de programación Ruby mediante el framework Rails. El curso se centra en la metodología de desarrollo Agile, que implica iteraciones rápidas y servicios individuales que respetan SOA, que al juntarse forman el servicio real.
Durante el curso, que es la mitad de lo normal por tratarse de una prueba que hacen los docentes, se mostrarán herramientas e impartirán conocimientos para implementar Agile programming, y se realizaran prácticas sobre una máquina virtual descargable en forma gratuita.
Para hacer la cosa un poco más interesante, se anunció hace poco que entregarán un bono de 100 horas (por alumno que curse y entregue las tareas a tiempo) para Amazon Ec2, el super cluster de computadoras escalable que Amazon alquila para SaaS, la famosa Elastic cloud. Además están en tratativas para elevar gratuitamente (aunque en forma temporal) las cuentas de github para poder identificar a los alumnos. Ambos bonos son muy interesantes, sobre todo cuando se trata de un curso gratuito.
viernes, 24 de febrero de 2012
jueves, 23 de febrero de 2012
Leido: Darkness at the edge of town
La cuarta de las novelas del Ultimate Thriler Box Set, al que ya le dediqué 3 entradas en el blog, es Darkness at the edge of town, de J.Carson Black. Este es un thriller policial con muchas cosas positivas y algunas negativas.
La protagonista es Laura Cardinal, protagonista de otras dos novelas. Es una detective muy meticulosa de un ente estatal, o sea a medio camino entre un policía local y un agente interestatal como puede ser alguien del FBI. Como particularidad, recibe visitas de quien fue su compañero e instructor, muerto hace tiempo. A veces aparece y dice cosas importantes, a veces aparece para cualquier cosa, y nunca queda claro porque aparece.
Esto, que podría haber agregado profundidad al personaje, queda a un camino intermedio justamente por la indefinición del estatus del policía muerto. Entonces pasa a ser una herramienta para rebotar ideas, para recibir consejos que podría haber pensado por ella misma, o para disparar recuerdos. Y cuando un espíritu queda reducido al papel de herramienta literaria se me prenden todas las alarmas.
Más allá de eso la historia es interesante, hay bastantes vueltas de tuerca, investigaciones que avanzan o que llegan a un punto muerto, gente que parece conspirar contra la investigación (cosa que suele suceder cuando distintos grupos de policías cooperan), gente que se comporta en forma sospechosa porque tal vez tiene algo que ocultar. Y en medio de todo eso, la desesperante búsqueda de un asesino.
La historia está bastante bien llevada, y no todo son victorias para la protagonista, le va a tocar perder también. Algunos de los personajes secundarios demuestran ser mucho más competentes o interesantes de lo que parecen en el principio, y a ellos también les toca ganar y perder.
Creo que la mayor falla de la historia es la compresión del tiempo en algunos momentos, dejándonos con la intriga acerca de como se solucionaron ciertas cosas, ya que vemos el resultado pero no el proceso. Para ser un libro sobre alguien tan meticuloso en como investiga los crímenes, estas compresiones de tiempo (que por suerte son pocas) suenan discordantes en medio del relato.
En definitiva, es un buen libro con una buena historia que está bien contada, pero con algunas fallas que, de acuerdo al lector, podrán ser ignoradas o podrán provocar que nos moleste la forma de encarar la situación de la escritora.
Por cierto, además de ser un libro individual, y estar en el Ultimate Thriler Box Set, este libro también está en una colección de tres novelas llamada The Laura Cardinal Novels.
La protagonista es Laura Cardinal, protagonista de otras dos novelas. Es una detective muy meticulosa de un ente estatal, o sea a medio camino entre un policía local y un agente interestatal como puede ser alguien del FBI. Como particularidad, recibe visitas de quien fue su compañero e instructor, muerto hace tiempo. A veces aparece y dice cosas importantes, a veces aparece para cualquier cosa, y nunca queda claro porque aparece.
Esto, que podría haber agregado profundidad al personaje, queda a un camino intermedio justamente por la indefinición del estatus del policía muerto. Entonces pasa a ser una herramienta para rebotar ideas, para recibir consejos que podría haber pensado por ella misma, o para disparar recuerdos. Y cuando un espíritu queda reducido al papel de herramienta literaria se me prenden todas las alarmas.
Más allá de eso la historia es interesante, hay bastantes vueltas de tuerca, investigaciones que avanzan o que llegan a un punto muerto, gente que parece conspirar contra la investigación (cosa que suele suceder cuando distintos grupos de policías cooperan), gente que se comporta en forma sospechosa porque tal vez tiene algo que ocultar. Y en medio de todo eso, la desesperante búsqueda de un asesino.
La historia está bastante bien llevada, y no todo son victorias para la protagonista, le va a tocar perder también. Algunos de los personajes secundarios demuestran ser mucho más competentes o interesantes de lo que parecen en el principio, y a ellos también les toca ganar y perder.
Creo que la mayor falla de la historia es la compresión del tiempo en algunos momentos, dejándonos con la intriga acerca de como se solucionaron ciertas cosas, ya que vemos el resultado pero no el proceso. Para ser un libro sobre alguien tan meticuloso en como investiga los crímenes, estas compresiones de tiempo (que por suerte son pocas) suenan discordantes en medio del relato.
En definitiva, es un buen libro con una buena historia que está bien contada, pero con algunas fallas que, de acuerdo al lector, podrán ser ignoradas o podrán provocar que nos moleste la forma de encarar la situación de la escritora.
Por cierto, además de ser un libro individual, y estar en el Ultimate Thriler Box Set, este libro también está en una colección de tres novelas llamada The Laura Cardinal Novels.
miércoles, 22 de febrero de 2012
Leido: Desert Places
Otra de las novelas del Ultimate Thriler Box Set que vengo comentando es Desert Places, escrita por Blake Crouch y Jack Kilborn. Esta es una historia de asesinos seriales muy bien contada, con mucha energía, mucha violencia y buenos golpes de efecto.
El protagonista es un escritor de sangrientos libros de misterios que vive tranquilo, hasta que un día recibe un llamado telefónico. En ese llamado de voz distorsionada alguien le dice algo así como "Hay una muerta enterrada en su propiedad, su sangre está sobre el cuerpo de la muerta, el arma homicida está escondida en su casa, uno de sus cuchillos que desapareció hace un tiempo. En el bolsillo de la muerta hay un número telefónico, llame antes de las 48 horas o llamaré a la policía y le diré donde está enterrada la persona que usted mató".
Obviamente, la conversación es un poco más larga, pero ese es el punto de partida para un relato en el que el protagonista sufrirá muchísimo, tendrá pocas victorias y muchas derrotas. Hay algo interesante que me sucedió con este relato, me encontré discutiendo con el personaje, intentando decirle que no hiciera algo, que no fuera por un determinado camino. Fue una experiencia interesantemente angustiante.
Algunas escenas de este libro son realmente fuertes, a un nivel cercano al comienzo de Gerald's Game de Stephen King, producen ese nivel de rechazo y asco, pero a la vez la incógnita por lo que vendrá y las revelaciones que van apareciendo nos mantienen interesados en esta tremenda historia.
Quiero dejarles una advertencia. Siendo como soy un seguidor de series del estilo de Criminal Minds o Dexter, no puedo dejar de decir que eso influye en la reseña que estoy dando para este relato.
El protagonista es un escritor de sangrientos libros de misterios que vive tranquilo, hasta que un día recibe un llamado telefónico. En ese llamado de voz distorsionada alguien le dice algo así como "Hay una muerta enterrada en su propiedad, su sangre está sobre el cuerpo de la muerta, el arma homicida está escondida en su casa, uno de sus cuchillos que desapareció hace un tiempo. En el bolsillo de la muerta hay un número telefónico, llame antes de las 48 horas o llamaré a la policía y le diré donde está enterrada la persona que usted mató".
Obviamente, la conversación es un poco más larga, pero ese es el punto de partida para un relato en el que el protagonista sufrirá muchísimo, tendrá pocas victorias y muchas derrotas. Hay algo interesante que me sucedió con este relato, me encontré discutiendo con el personaje, intentando decirle que no hiciera algo, que no fuera por un determinado camino. Fue una experiencia interesantemente angustiante.
Algunas escenas de este libro son realmente fuertes, a un nivel cercano al comienzo de Gerald's Game de Stephen King, producen ese nivel de rechazo y asco, pero a la vez la incógnita por lo que vendrá y las revelaciones que van apareciendo nos mantienen interesados en esta tremenda historia.
Quiero dejarles una advertencia. Siendo como soy un seguidor de series del estilo de Criminal Minds o Dexter, no puedo dejar de decir que eso influye en la reseña que estoy dando para este relato.
martes, 21 de febrero de 2012
Leido: Origin
Cuando comencé a leer el Ultimate Thriller Box set, que es donde leí Watch me die, el libro que comenté ayer, me encontré en primer lugar con una novela llamada Origin, escrita por J.A. Konrath. Esta novela está clasificada como Tecno Thriller, o TechnoHorror, sin embargo es mi impresión que estamos ante una novela de ciencia ficción.
Los elementos base, sin revelar demasiado acerca de la obra, son que ALGO ha sido encontrado por los trabajadores que excavaban para construir el Canal de Panama en el año 1906. Ese ALGO fue apropiado por Estados Unidos y se lo ocultó en una base secreta.
A ese algo se lo estudió durante un siglo, pero no se nos cuenta eso al principio. En lugar de eso la trama se traslada al año 2009, donde repentinamente un linguista es reclutado para el proyecto, cosa que podría dar algunas pistas sobre que está sucediendo.
Lo que sigue es una lectura muy entretenida con bastante paranoia, marcada por discusiones científicas, discusiones teológicas, discusiones ciencia-religión, problemas civiles-miltares, e incluso algo de romance en un ambiente reducido donde unos pocos expertos bastante disfuncionales están en la misma base que ese ALGO.
Realmente me tomó por sorpresa, y se que intenta parecer una novela de horror, pero no es como la leí yo. Yo la leí como una novela de ciencia ficción contemporanea con mucha acción y mucho diálogo. No creo que sea la mejor novela de ciencia ficción que existe, pero definitivamente es buena y entretenida.
Por cierto, encontré un dato que explica porque me pareció una novela de ciencia ficción, Konrath usa seudónimos para algunas obras, y en particular usa el seudónimo Joe Kimball para escribir ciencia ficción.
lunes, 20 de febrero de 2012
Leido: Watch Me Die
Hace poco terminé de leer una novela negra escrita por Lee Goldberg que forma parte de un pack de thrillers que incluye 5 novelas muy variadas de diferentes autores. Watch me die es una novela negra atípica, ya que su personaje principal está más cerca del patetismo que de la dureza habitual en los personajes de vieja novela negra.
Harvey Mapes no es un investigador privado, es un graduado que continúa en el trabajo que tenía cuando estudiaba, guardia de seguridad nocturna de un barrio privado. Y hubiera seguido en esa posición eternamente, pero una oferta de trabajo extra lo lleva a comenzar una investigación.
O sea que el personaje es, al principio, muy poco atractivo. Sin embargo sucede que durante el transcurso de la novela el personaje (y algunos personajes secundarios también) van evolucionando, siguiendo un sinuoso y deformado camino del Heroe, que los va llevando a descubrir fortalezas, pero sobre todo los lleva a descubrir sus debilidades.
Y así es como, con el transcurso del libro, comenzamos a disfrutar de la primera persona en que está contado todo el relato, centrado absolutamente en Harvey. Solo sabemos lo que Harvey sabe, e incluso así hay veces en que no nos cuenta lo que vio, aunque nos da pistas, y luego lo usa más adelante.
Si les gusta la novela negra, van a encontrar que este libro es una novela negra extraña, con mucho humor, con un personaje que evoluciona, y un ambiente por momentos sórdido y por momentos liviano. Lo que si van a encontrar en el personaje es la misma moralidad grisasea que tienen los investigadores de las novelas negras habituales.
La verdad es que cuando lo empecé no me gustó demasiado, pero con el paso de las páginas comencé a disfrutarlo cada vez más. Investigando un poco averigüe que esta es la primer novela de este personaje, la verdad es que el camino iniciático es evidente en la novela, y es una de las cosas que más se disfruta. El problema será entonces ver como se sostiene el personaje en otra novela cuando aparentemente ha terminado de crecer.
Harvey Mapes no es un investigador privado, es un graduado que continúa en el trabajo que tenía cuando estudiaba, guardia de seguridad nocturna de un barrio privado. Y hubiera seguido en esa posición eternamente, pero una oferta de trabajo extra lo lleva a comenzar una investigación.
O sea que el personaje es, al principio, muy poco atractivo. Sin embargo sucede que durante el transcurso de la novela el personaje (y algunos personajes secundarios también) van evolucionando, siguiendo un sinuoso y deformado camino del Heroe, que los va llevando a descubrir fortalezas, pero sobre todo los lleva a descubrir sus debilidades.
Y así es como, con el transcurso del libro, comenzamos a disfrutar de la primera persona en que está contado todo el relato, centrado absolutamente en Harvey. Solo sabemos lo que Harvey sabe, e incluso así hay veces en que no nos cuenta lo que vio, aunque nos da pistas, y luego lo usa más adelante.
Si les gusta la novela negra, van a encontrar que este libro es una novela negra extraña, con mucho humor, con un personaje que evoluciona, y un ambiente por momentos sórdido y por momentos liviano. Lo que si van a encontrar en el personaje es la misma moralidad grisasea que tienen los investigadores de las novelas negras habituales.
La verdad es que cuando lo empecé no me gustó demasiado, pero con el paso de las páginas comencé a disfrutarlo cada vez más. Investigando un poco averigüe que esta es la primer novela de este personaje, la verdad es que el camino iniciático es evidente en la novela, y es una de las cosas que más se disfruta. El problema será entonces ver como se sostiene el personaje en otra novela cuando aparentemente ha terminado de crecer.
sábado, 11 de febrero de 2012
Un concepto que puede volarnos la cabeza
Estoy leyendo un libro realmente muy interesante, aunque se que no les va a gustar a todos. Se trata de una metodología de desarrollo de software basada en iteraciones rápidas, conocido como agile programming. En particular se titula Engineering Long-Lasting Software: An Agile Approach Using Saas & Cloud Computing, escrito por Armando Fox y David Patterson, docentes de la universidad de Berkeley.
Dentro del libro encontré un concepto realmente interesante acerca del tiempo necesario para realizar pruebas de software realmente exhaustivas que contemplen todas las posibilidades. El caso presentado es un caso improbable, pero que realmente demuestra la imposibilidad de realizar pruebas realmente completas.
Supongamos que tenemos un programa que se ejecuta en un milisegundo, y que podemos automatizar para que se ejecute nuevamente una vez que finalizó la prueba anterior. Este programa tiene una sola entrada: un simple valor de 64 bits. Como cada bit puede tener dos estados, 0 y 1, y la posición de cada bit en el valor de entrada es importante, la evaluación de cada posición implica evaluar 2 elevado a la 64 potencia.
Con una calculadora podemos realizar algunos simples cálculos. La cantidad total de variaciones a probar es igual a 1.8446744073709551616e19, o sea una bestialidad de milisegundos, porque recordemos que cada ejecución del programa dura 1 milisegundo. Aclaremos que esto equivale a decir 1.8446744073709551616 multiplicado por 10 elevado a la 19 potencia.
Eso quiere decir que para obtener segundos deberemos dividir el número por mil, siendo el resultado 1.8446744073709551616e16, una bestialidad de segundos. Cada minuto está formado por 60 segundos, por lo que dividimos por 60 y obtenemos minutos. 3.07445734561825860267e14 minutos.
Para pasar a horas tenemos 60 minutos por hora, 5.12409557603043100444e12 horas, y 24 de ellas forman un día, 2.13503982334601291852e11. Finalmente, 365 días forman un año (no es exacto, pero es una buena aproximación). Esto nos da 5.84942417355072032471e8 años, o sea más de 500.000.000 años. La verdad es que es una cifra que impresiona.
Esta es la razón por la que la inmensa mayoría de los programas solo son probados con un conjunto de casos limitado, porque la verdad es que una prueba total es realmente imposible. Obviamente, programas con entradas más triviales llevan menos tiempo, porque cada prueba lleva más tiempo (1 milisegundo es solo para programas MUY simples), pero son menos combinaciones.
El problema es que a medida que aumenta la complejidad del software comenzamos a incorporar controles que pueden ocasionar problemas si se los activa en distintas combinaciones, y si tenemos 64 controles que pueden estar prendidos o apagados, tenemos esta bonita situación para probarlos todos.
Dentro del libro encontré un concepto realmente interesante acerca del tiempo necesario para realizar pruebas de software realmente exhaustivas que contemplen todas las posibilidades. El caso presentado es un caso improbable, pero que realmente demuestra la imposibilidad de realizar pruebas realmente completas.
Supongamos que tenemos un programa que se ejecuta en un milisegundo, y que podemos automatizar para que se ejecute nuevamente una vez que finalizó la prueba anterior. Este programa tiene una sola entrada: un simple valor de 64 bits. Como cada bit puede tener dos estados, 0 y 1, y la posición de cada bit en el valor de entrada es importante, la evaluación de cada posición implica evaluar 2 elevado a la 64 potencia.
Con una calculadora podemos realizar algunos simples cálculos. La cantidad total de variaciones a probar es igual a 1.8446744073709551616e19, o sea una bestialidad de milisegundos, porque recordemos que cada ejecución del programa dura 1 milisegundo. Aclaremos que esto equivale a decir 1.8446744073709551616 multiplicado por 10 elevado a la 19 potencia.
Eso quiere decir que para obtener segundos deberemos dividir el número por mil, siendo el resultado 1.8446744073709551616e16, una bestialidad de segundos. Cada minuto está formado por 60 segundos, por lo que dividimos por 60 y obtenemos minutos. 3.07445734561825860267e14 minutos.
Para pasar a horas tenemos 60 minutos por hora, 5.12409557603043100444e12 horas, y 24 de ellas forman un día, 2.13503982334601291852e11. Finalmente, 365 días forman un año (no es exacto, pero es una buena aproximación). Esto nos da 5.84942417355072032471e8 años, o sea más de 500.000.000 años. La verdad es que es una cifra que impresiona.
Esta es la razón por la que la inmensa mayoría de los programas solo son probados con un conjunto de casos limitado, porque la verdad es que una prueba total es realmente imposible. Obviamente, programas con entradas más triviales llevan menos tiempo, porque cada prueba lleva más tiempo (1 milisegundo es solo para programas MUY simples), pero son menos combinaciones.
El problema es que a medida que aumenta la complejidad del software comenzamos a incorporar controles que pueden ocasionar problemas si se los activa en distintas combinaciones, y si tenemos 64 controles que pueden estar prendidos o apagados, tenemos esta bonita situación para probarlos todos.
lunes, 6 de febrero de 2012
Hexagon, Bryce y Daz Pro gratuitos temporalmente
La gente de DAZ 3D está ofreciendo en forma gratuita software 3d muy potente en sus versiones más modernas y completas, para PCs con Windows y para MACs con OS-X. Esta oferta terminará a finales de febrero, exactamente el 31/03/2012.
Entonces tenemos 3 programas diferentes que sirven para distintas cosas (aunque en realidad se superponen un poco, cada uno es más fuerte en un área determinada).
1) DAZ Studio 4 Pro: La mejor herramienta del grupo para armar y animar escenas, posicionando personajes, vistiéndolos y manejando su pose y expresión, junto con montones de objetos que permiten poblar la escena.
2) Bryce 7 Pro: La mejor herramienta paisajística del grupo. Incluye creadores de terrenos y cielos, y la posibilidad de armar objetos complejos a partir de primitivas. Puede importar y manipular escenas desde Daz Studio.
3) Hexagon 2.5: La mejor herramienta de creación de objetos del grupo, permitiendo modelado 3d a niveles muy detallados, incluso aplicando pinceles especiales, texturado, micro desplazamientos, uv mapping y varios etceteras. Puede importar objetos desde Daz Studio, modificarlos y enviarlos nuevamente.
Aclaremos que tanto Bryce como Daz Studio pueden realizar renders finales de gran calidad y manejar casi todo lo que maneja el otro, pero las interfaces son distintas, orientadas a facilitar ciertas tareas sobre otras. Recientemente, por ejemplo, se introdujeron herramientas para creación de contenido en Daz Studio, acercándolo más al resto, pero sigue sin ser un programa especializado para eso, como si lo es Hexagon.
Quisiera aclarar que los enlaces incluyen un código de referido que no los afecta, pero que permite que si en un tiempo de 3 meses compran algo a el mismo precio que todo el resto de la gente, yo reciba un porcentaje de esa venta.
Entonces tenemos 3 programas diferentes que sirven para distintas cosas (aunque en realidad se superponen un poco, cada uno es más fuerte en un área determinada).
1) DAZ Studio 4 Pro: La mejor herramienta del grupo para armar y animar escenas, posicionando personajes, vistiéndolos y manejando su pose y expresión, junto con montones de objetos que permiten poblar la escena.
2) Bryce 7 Pro: La mejor herramienta paisajística del grupo. Incluye creadores de terrenos y cielos, y la posibilidad de armar objetos complejos a partir de primitivas. Puede importar y manipular escenas desde Daz Studio.
3) Hexagon 2.5: La mejor herramienta de creación de objetos del grupo, permitiendo modelado 3d a niveles muy detallados, incluso aplicando pinceles especiales, texturado, micro desplazamientos, uv mapping y varios etceteras. Puede importar objetos desde Daz Studio, modificarlos y enviarlos nuevamente.
Aclaremos que tanto Bryce como Daz Studio pueden realizar renders finales de gran calidad y manejar casi todo lo que maneja el otro, pero las interfaces son distintas, orientadas a facilitar ciertas tareas sobre otras. Recientemente, por ejemplo, se introdujeron herramientas para creación de contenido en Daz Studio, acercándolo más al resto, pero sigue sin ser un programa especializado para eso, como si lo es Hexagon.
Quisiera aclarar que los enlaces incluyen un código de referido que no los afecta, pero que permite que si en un tiempo de 3 meses compran algo a el mismo precio que todo el resto de la gente, yo reciba un porcentaje de esa venta.
Suscribirse a:
Comentarios (Atom)