Translate

jueves, 20 de marzo de 2014

CourseBuffet, buscando los mejores cursos...


CourseBuffet es un buscador de cursos gratuitos. Como sabrán coursera, edx, Udacity y otras plataformas, brindan excelentes cursos. Cual tomar? donde encuentro el curso del tema que necesito? Para responder estas preguntas inventaron CourseBuffet.

Gran idea!!

Dejo el link: http://www.coursebuffet.com/

Java 8

Llegue retarde a la noticia, pero de igual manera me quiero hacer eco de esta noticia. La página de Oracle ya está presente la descarga de Java 8; pero al parecer el lanzamiento oficial, será el próximo 25 de marzo.

Ya deben estar enterados de las novedades, entre las que se encuentra lambda. Esta versión sin duda es una de las más importantes.

En mi opinión el cambio de lenguaje no es tan importante, dado que tenes lenguajes en esta plataforma que son muy buenos, ya pensados para utilizar lambda. Si yo manejaría la pelota, me dedicaría a aprender Scala, Groovy, Clojure, etc. Pero es verdad que va a haber mucho trabajo en Java 8.

Que opinan? Tiene posibilidades Java 8?

domingo, 16 de marzo de 2014

The Open source owns the web

Como sabrán Linux fue concebido en la web, y con filosofía web 2.0 dado que la la gente compartía su código por la web. No es casual que las mayores tecnologías que se usan en la web sean Open Source.


sábado, 15 de marzo de 2014

Groovy o Scala esa es la cuestión

Groovy y Scala son lenguajes que se están haciéndose famosos en la plataforma Java. Los dos son similares pero tienen diferencias importantes; que son buenas saberlas antes de elegir uno o otro.

Como semejanza los dos lenguajes corren sobre la JVM, con interoperabilidad con toda la plataforma. Los dos son orientados a objetos pero Scala también es funcional y los dos tienen clausuras. Además los dos permiten un sistema de reutilización con mixins.

Los dos lenguajes soportan aplicación parcial de una función y curring, pero el uso de estas características es más natural en Scala dado que es funcional. Además Scala optimiza las funciones recursivas esto tiene gran importancia en el paradigma funcional pero no tiene tanta importancia en la programación imperativa.

Los dos tienen por defecto evaluación ansiosa o eagerly; sin embargo Scala permite call-by-name y lazy evaluation. En Groovy se puede emular call-by-name con clousures.
Scala no tiene el concepto de campos o clases estáticas, utiliza el concepto de objetos que son similares a objetos singletones; en cambio Groovy, si utiliza statics.

Groovy es un lenguaje dinámicamente tipado pero también podemos trabajar con tipado estático (definiendo los tipos a las variables), esto puede ser bueno o malo depende de como lo veamos; además Groovy soporta dynamic meta-programming.

Scala es un lenguaje estáticamente tipado por lo tanto no soporta dynamic meta-programming, es este punto Scala es más parecido a Java pero Scala cuenta con un sistema de tipos más sofisticado que Java. Algo que también hace la curva de aprendizaje más empinada.

Groovy es sintácticamente más parecido a Java pero semánticamente se ve la influencia que tuvo Ruby. Scala en cambio sintácticamente se ve la influencia de Java y Ruby, pero semánticamente fue influido por Java, SML, Haskell y gBeta.

A mi entender lo principal que impulso a Groovy fue Grails fue el caballo de batalla y que le hizo muy buena publicidad al lenguaje. En cambio Scala no tenia un framework de desarrollo ágil que lo impulsara hasta que la empresa Typesafe compro el framework Play! y con Play 2 adaptaron a Play para que funciones con Scala. Si bien Grails esta super maduro, Play! tiene una comunidad muy buena.

James Strachan el creador de Groovy dijo: “I can honestly say if someone had shown me the Programming in Scala book by Martin Odersky, Lex Spoon & Bill Venners back in 2003 I’d probably have never created Groovy.” Dicho que condena a Groovy, pero a mi entender es un tanto injusto. Groovy es un lenguaje de tipado dinámico con características que lo hacen muy práctico y muy fácil de aprender. En cambio Scala es un lenguaje de tipado estático, que tiene una curva de aprendizaje mayor a Groovy.

Estas son las diferencias más importantes, que tenemos que tener en cuenta cuando escogemos uno o el otro…

Discover Dart

Hola quería compartir un nuevo curso de code scholl sobre Dart. Recuerdan que Dart es el lenguaje de google que quiere desterrar a Javascript.

Dejo link:
http://dart.codeschool.com/

lunes, 10 de marzo de 2014

Recompensa del esfuerzo

Si bien no tiene que ver directamente con el blog; quiero compartir esta reflexión de Alejandro Dolina. La relación con este blog tiene que ver con el goce de aprender, el goce de usar la cabeza, tiene que ver con una visión que quiero del mundo. Y en parte explica este blog.

miércoles, 5 de marzo de 2014

Encuesta sobre java 8


Interesante encuesta de la gente de Typesafe sobre Java 8











Dejo link:
http://info.typesafe.com/acton/form/3608/0026:d-0007/1/index.htm?id=0026&utm_medium=email&utm_source=Act-On+Software&utm_content=email&utm_campaign=Typesafe%20Newsletter%20-%20March%20%27014&utm_term=Java%208%20Survey%20Results

Nueva versión de Akka


Hoy me entere de un nuevo release del framework de la empresa Typesafe. El pasado 5 de marzo se dio a conocer la nueva versión de Akka 2.3.0.

Para el que no conoce Akka es un framework open source basado en el concepto de Actores. Este framework nos facilita la creación de aplicaciones distribuidas y concurrentes. Fue escrito en Scala y se puede utilizar en cualquier lenguaje de la plataforma Java.

Entre las novedades de la nueva versión podemos nombrar:

  • Akka Persistence: Este módulo le permite escribir Actores con estado persistente que sobrevivan a los fallos de hardware y software, y también proporciona un mecanismo de opt-in.
  • Soporte para Java 8: Akka viene preparando la cancha para la nueva versión de Java y dejando todo preparado para el uso de lambda.  
  • Mejoras en el uso de Cluster: La gente de Akka aprendió varias cosas dado que ejecuto Akka en 2400 nodos, dando lugar a varias mejoras de rendimiento y mejoras de usabilidad.
  • Activator Templates: Activator es como Maven (salvando las diferencias) y los templates como los archetypes. La gente de Akka creo nuevos templates, para que tengamos menos trabajo al crear un nuevo proyecto que use Akka:

Akka es un framework que esta ganando espacio y creciendo rápidamente y no debemos perderle la pisada.

Dejo link:
https://typesafe.com/blog/akka-230-major-release

Google Analytics Education Infographic

Ya que estamos hablando de Google Analytics, les dejo una infrografia sobre Google Analytics;


Join our next Analytics Academy course

Google nos invita a realizar un nuevo curso de Google Analytics.

Les dejo el mail que me mandaron:


Google Analytics
 
 
 

Join our next Analytics Academy course

Learn how the Analytics platform works to get more value from your reports.
 
 
 
Register now
 
 
Last October, we introduced Digital Analytics Fundamentals, our first course on Analytics Academy. We were thrilled to have over 145,000 students join us to learn about the core concepts of digital measurement.

Today, we’re diving deeper into how Analytics works with our next course in the series: Google Analytics Platform Principles.

In this course, we’ll cover:
  • the four components of the Analytics platform: collection, processing, configuration and reporting
  • how Analytics collects data across different devices
  • how data is transformed before you see it in reports
  • key concepts for customizing your data in useful ways

You’ll have two weeks to complete the course alongside a worldwide community of Analytics enthusiasts to earn a certificate of completion. After that, the course will remain open for you to complete at your own pace.

Interested in participating? Enroll now and join us when the course begins on March 11, 2014.
 

Preview the course



Watch this quick course previewto learn about joining a course on Analytics Academy.
 
 
Register now
 
 
Happy analyzing,
The Google Analytics Team

lunes, 3 de marzo de 2014

Julia, un lenguaje del futuro...


Julia es un lenguaje de programación conocido en el ámbito científico por su basta librería de funciones matemáticas, a la vez es un lenguaje de alto nivel y de alta perfomance. El lenguaje fue creado por Stefan Karpinski, estudiante graduado de la Universidad de California, que estaba involucrado en una herramienta simulación de redes que requería el uso de varios lenguajes de programación diferentes. Curiosamente, ninguno de los lenguajes usados podía hacer toda la tarea, todo el proceso. Por ello, Karpinski, junto con su compañero de universidad Viral Shah y  Jeff Bezanson del MIT, decidieron resolverlo diseñando un nuevo lenguaje que fuera compatible con prácticamente cualquier tarea. La meta de Karpinski y su equipo es construir un lenguaje único que haga todo bien.

La librería de funciones matemáticas, en gran parte estan escrita en Julia, pero también se integra con librerías maduras, las mejoras librerías de C y las librerías de Fortran para álgebra lineal, la generación de números aleatorios, procesamiento de señales y procesamiento de cadenas.

Entre las características de este lenguaje podemos nombrar:

  • Posibilidad de definir el comportamiento de una función con una combinación de tipos de argumentos
  • Sistema dinámico de tipos: tipos para documentar, optimizar y ejecutar rutinas
  • Buen desempeño, el cual se aproxima (estadísticamente) a lenguajes como C
  • Manejador de paquetes interconstruido
  • Macros como en LISP y otras funcionalidades de metaprogramación
  • Se pueden llamar funciones de Python usando el paquete PyCall
  • Llamada a funciones de C directamente. No se necesita nada más
  • Poderosas Shell que puede manejar otros procesos
  • Diseñado para computación distribuida y en paralelo
  • Corrutinas
  • Tipos definidos por el usuario que son rápidos y compactos
  • Generación automática de código especializado, eficiente, de acuerdo al tipo de argumentos
  • Conversiones elegante y extensibles para tipos numéricos y otros tipos
  • Soporte para Unicode
  • Licencia MIT : libre y de código abierto
Una de las características más notables de Julia es la performance de su compilador JIT, el cual es capaz de superar a lenguajes que tienen más historia. En la pagina oficial de Julia podemos ver un benchmark realizado que compara a Julia con otros lenguajes como Fortran, Python, R, matlab, etc. Como podemos ver a continuación Julia queda muy bien parado:



 IJulia, es un entorno gráfico e interactivo que permite combinar instrucciones Julia con funciones matemáticas, gráficos, multimedia todo en un solo documento. Ijulia utiliza el poderoso entorno IPython para su funcionamiento.
Julia ha ganado un espacio importante en el mundo científico con su amplia librería matemática y su velocidad. La pregunta es si seguirá ganando terreno en otros ámbitos. Ustedes que opinan?


miércoles, 26 de febrero de 2014

SkySQL

En diciembre de 2012, Michael Widenius, David Axmark, y Allan Larsson anunciaron la creación de una fundación que se encargaría de supervisar el desarrollo de MariaDB. En abril de 2013, la Fundación anunció que había nombrado a Simon Phipps a su Secretario y interino consejero delegado, Rasmus Johansson para Presidente de la Junta, y Andrew Katz, Jeremy Zawodny, y Michael Widenius a placa miembros. Tomando nota de que deseaba crear un modelo de gobierno similar a la utilizada por la Fundación Eclipse, la Junta nombrado Director Ejecutivo de la Fundación Eclipse Mike Milinkovich a un asesor para dirigir la transición

SkySQL, es una compañía formada por ex-MySQL que cuando Oracle le empezó a echarle mano decidieron dejar la compañía y seguir por su camino.

MariaDB es hija de MySQL y se esta volviendo cada vez más fuerte, de a poco va ganando a su padre. SkySQL existe como el nuevo hogar natural para los ex clientes de MySQL AB y aquellos que buscan explotar MySQL por primera vez. También somos la fundición técnica y comercial para MariaDB - el futuro de SQL de código abierto.

Dejo link:
http://www.skysql.com/
https://mariadb.com/

El futuro llego hace rato...

Nada más que decir, el futuro es Wolfram. Increible lo que se ve en el video que les dejo abajo. Pero los pongo al tanto, el lenguaje Wolfram es un lenguaje muy general de programación multi-paradigma desarrollado por Wolfram Research, que sirve como el principal idioma de interfaz para Mathematica.

Es un lenguaje de programación que se apoya en una base de conocimiento. Está diseñado para ser lo más general posible, con énfasis en computación simbólica, programación funcional y programación basada en reglas. Está construido para representar estructuras y datos arbitrarios.

El lenguaje es muy amplio, tocando numerosos dominios, a menudo especializados. Por ejemplo, éste incluye funciones incluidas para generar y ejecutar máquinas de Turing, crear gráficos y audio, analizar modelos 3D y resolver ecuaciones diferenciales.

También cuenta con una gran cantidad de documentación, pero no ha sido estandarizada. Una estandarización parcial está planeada y un prelanzamiento incompleto ya existe. Será incluido con el software instalado en cada Raspberry Pi.

Toma tu torta!!

Les dejo un video:



Dejo link:
http://www.wolfram.com/wolfram-language/

martes, 25 de febrero de 2014

Grails y Cassandra, un solo corazón.


Quiero compartir unos slite sobre grails y cassandra. Cassandra es una base de datos NoSQL, utilizada en Facebook y donada a la comunidad apahe.

Dejo link:
http://beckje01.github.io/gum-2014-cassandra-grails-talk/#/4

domingo, 23 de febrero de 2014

Android x86

Se acuerdan de este post, bueno estuve probando Android x86 y no me lleve ninguna sorpresa, es un android común y corriente. Es decir que la gente de Android x86 le falta mucho para que android sea un sistema operativo para PC o notebooks. Lo que me llamo la atención es que no tenga integración en el mouse. Es decir funciona pero no se ve el puntero.

Muchas cosas para mejorar pero la idea es genial!

Espero que este proyecto crezca y se ayude de la comunidad.

Dejo screenshots:









sábado, 22 de febrero de 2014

Lenguajes académicos o prácticos ??

Este post es a raíz de lo que escribió Gavin King en google plus. (al final dejo el link)

Critico: El lenguaje X es  inusable en la practica e inentendible por toda la teoría de tipos.
El defensor: Es porque vos sos tan estúpido y perezoso para entender la teoría de tipos.

Según lo que nos dice Gavin King los 2 interlocutores están equivocados. El propósito de la teoría de tipos es ayudarnos a diseñar elegantes potentes e intuitivos lenguajes donde el sistema de tipos nos ayuda a encontrar errores sin interponerse en nuestro camino, y sin tener la semántica poco claras y un montón de casos extraños.

El prototipo de lenguaje  académico es ML, que tiene un sistema de tipos que es realmente muy simple y elegante. El prototipo lenguaje industrial es C++, que tiene un sistema de tipo que está más allá de complejo.

El objetivo principal del diseño del lenguaje es lograr la expresividad sin introducir demasiadas construcciones primitivas. Así que a pesar de todo se puede tener una construcción de gran alcance como la parametrización de tipo constructor ( "clases superiores" ) o tipos algebraicas generalizadas , o lo que sea , siempre y cuando usted puede hacer estas cosas encajan de forma natural en un marco general que es elegante y "se mantiene unida" . Lo que no pasa la prueba del algodón es cuando vas fuera y tirar cada característica experimental que jamás hayas visto en un artículo académico contra una pared sin pensar en cómo encaja todo , y si la semántica es siempre clara y evidente para el ser humano en el proceso . Pero no hay nada "académico" de este segundo enfoque . De hecho, es la antítesis de un "académico" , el enfoque "teórico" !

Bueno quería postear, este dicho de Gavin King porque estoy muy de acuerdo.

Dejo link:
https://plus.google.com/+GavinKing/posts/Xzto88bKznN

jueves, 20 de febrero de 2014

Comenzó el curso de android!!


Para todos lo que quieran realizar el curso: "Android: Introducción a la programación" de la universidad politécnica de valencia. Ayer empezó!! Así que a inscribirse y a estudiar!!

Dejo link:
http://cursointroduccionandroid.upvx.es/course

Andoid el nuevo sistema operativo para PC?


Que Android pueda ser un sistema operativo para PCs no es nuevo, lo que yo no sabia es que existe un proyecto para portar android a x86. Por ahora les dejo el link, lo pruebo y hago mis apreciaciones.

Dejo link:
http://www.android-x86.org/

sábado, 15 de febrero de 2014

La gran guía de supervivencia de la terminal de Linux

Quiero compartir el articulo: "La gran guía de supervivencia de la terminal de Linux" Esta muy bueno, yo no sabia que existian tantas cosas para la terminal.

Dejo link:
http://www.emezeta.com/articulos/la-gran-guia-de-supervivencia-de-la-terminal-de-linux

miércoles, 12 de febrero de 2014

0 A.D.

Mi nuevo vicio 0 A.D. es un juego libre, similar al age of empires. Muy recomendable y totalmente gratuito, la wikipedia dice esto del juego:

"0 A.D. es un videojuego histórico de estrategia en tiempo real (RTS, real-time strategy) libre y de código abierto que actualmente está siendo desarrollado por Wildfire Games. El juego permite al jugador recrear algunas de las batallas más épicas de la historia antigua. En un principio iba a ser un “mod” para Age of Empires II: The Age of Kings, pero se dio un giro al desarrollo, creando un juego completamente independiente, basado en sus ideas. La primera parte del juego abarca el periodo comprendido entre el año 500 a.c y el año 1 d.c , y la segunda del 1 d.c al 500 d.c.

El juego tiene como objetivo ser totalmente libre y de código abierto, además de ser multiplataforma. Ha estado en desarrollo desde el año 2000, pero en 2003 se renovó el proyecto. Cuenta con una activa comunidad de desarrolladores, la cual esta abierta a cualquiera que desee contribuir."

Bueno, nada más para agregar, a jugar!!!

Dejo screenshots:







Dejo links:
http://play0ad.com/
http://play0ad.com/media/screenshots/
http://play0ad.com/download/linux/


Liberado WildFly 8 !!

WildFly para el que no sabe es JBoss. Nuestro querido servidor de aplicaciones JBoss cambio de nombre a WildFly. Dado que según la gente de Red Hat el nombre JBoss, daba a confusión el producto comercial JBoss con el JBoss de la comunidad. Y la gente de Red Hat decidió cambiar el JBoss de la comunidad.  A mi ver las cosas fue una mala pasada pero bueno es mi opinión.

WildFly 8 es la nueva versión del servidor de Aplicaciones, y además del cambio de nombre; trae las siguiente novedades:

Mejora en la compatibilidad con Java 8
Java EE7 Certificado
Mejora en la performance
Mejora en Web service y rest
etc...

Dejo link:
http://www.wildfly.org/
http://wildfly.org/downloads/
http://wildfly.org/news/2014/02/11/WildFly8-Final-Released/

Mi linux Mint!

Bueno como el Fedora que tenia en la PC estaba viejo decidí instalar Linux Mint. Ya he usado Mint y creo que es el mejor escritorio para PC que he probado. Me gusta mucho.

En este caso opte por instalar Mate dado que con Cinnamon he tenido problemas (en realidad problemas con gnome 3 y nvidia)

Dejo screenshots:




domingo, 9 de febrero de 2014

El software libre no es una religión

Me siento muy identificado con este articulo, en todos los ámbitos de la vida el fanatismo no deja ver con claridad; no podemos ver defectos de lo que somos fanáticos, ni virtudes del rival. Por lo tanto condeno al fanatismo, porque no permite crecer.

En el mundo linux existen fanáticos que dicen que solo se debe usar software libre y que si usas software propietario te quemaras en el infierno. Y la verdad es que tanto el software propietario, como el libre crece y se inspira del otro.

Y ya que estoy también quiero dejar en claro que no comulgo con la gente que dice que en linux siempre se debe usar los comandos. A mi me encanta ir a la terminal, pero hoy en día no es necesario usarla; muchas distros pueden ser usadas por usuarios no técnicos y son perfectas. Hasta más intuitivas que windows o Mac OS.

Dejo link:
http://alt1040.com/2014/02/software-libre-religion

sábado, 8 de febrero de 2014

Cual es la mejor aplicación para revisar datos en MongoDB?


Cuando queremos revidar datos en MongoDB podemos utilizar herramientas UI, pero cual puede ser la mejor?

Podemos listar las siguientes herramientas:
  • MongoVue : Es una herramienta para Windows
  • MongoHub: Es una herramienta para MAC
  • RockMongo: Es una herramienta basada en HTML y realizada en PHP.
  • RoboMongo: Centrado en el uso del shell; suele ser muy bueno para usuariots linux. 

Dejo link:
http://blog.mongodirector.com/which-is-the-best-mongodb-gui/#null
http://docs.mongodb.org/ecosystem/tools/administration-interfaces/

viernes, 7 de febrero de 2014

Apache DataFu


Apache DataFu  es un framework realizado por la gente de linkedIn. Apache DataFu es un conjunto de librerías que trabajan sobre apache pig y apache hadoop, este framework proporciona un conjunto de librerías para realizar cálculos sobre bases Pig. Por ejemplo Linkedin lo utiliza para saber que gente podes llegar a conocer.

Este proyecto nace de la necesidad de librerías de data mining y estadísticas.

Actualmente se encuentra en la incubadora; pero es un lindo proyecto para ir conociendo.

Dejo link:
http://datafu.incubator.apache.org/
http://data.linkedin.com/opensource/datafu

jueves, 6 de febrero de 2014

lunes, 3 de febrero de 2014

Specializations On Coursera

Coursera es una de las paginas que más me gusta para hacer cursos online, y me parece que no es casual porque siempre tienen algo que los distingue. Ahora han abierto especializaciones, es decir con un conjunto de cursos realizados obtendrás una especialización.

Esto esta muy bueno ya que permite dar un sentido a tu educación y no hacer cursos a lo loco.

Dejo el link:
https://www.coursera.org/specializations?utm_medium=topnav