Translate

miércoles, 3 de julio de 2013

Software Engineering for Software as a Service!

La gente de EDX publico un nuevo curso muy interesante sobre software como servicio. En este curso nos enseñan a diseñar software como servicio, utilizando la plataforma ruby on rails.

Dejo link: https://courses.edx.org/courses/BerkeleyX/CS-169.1x/2013_Summer/info

lunes, 1 de julio de 2013

sábado, 29 de junio de 2013

Oracle 12c listo para bajar!!


Aunque todavía no se anuncio la versión 12c de la base de datos pero ya esta para descargar y obviamente para comprar.

La C es de Cloud por que esta base esta pensada para la nube, incluye una característica que Oracle llama “bases de datos conectables”, las cuales permiten que una sola instancia de base de datos Oracle aloje muchas bases de datos, lo cual permite un uso más eficiente de los recursos del sistema y una administración más sencilla. Oracle también ha posicionado las bases de datos conectables como la mejor forma de lograr la multitenancy para las aplicaciones de nube.

Los proveedores de SaaS (software as a service) generalmente han utilizado la multitenancy a nivel de las aplicaciones, cuando varios clientes comparten una sola instancia de aplicación mientras sus datos se mantienen aparte. Trasladar la multitenancy a la capa de la base de datos proporciona una mejor seguridad y otras ventajas.

La capacidad de multitenancy se venderá como una opción separada, y no se recibirá como parte de los pagos anuales por mantenimiento de los clientes. En una lista oficial de precios de Oracle, que fue actualizada el martes, se podía ver una opción de base de datos multitenant con un precio de 17.500 dólares por procesador. Y una licencia de procesador para la Enterprise Edition seguía con un precio de 47.500 dólares por procesador.

Dejo link:
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
http://www.oracle.com/us/corporate/pricing/technology-price-list-070617.pdf

miércoles, 26 de junio de 2013

try catch


Júrenlo!! Por lo que más quieran nunca hagan esto:

try {

//hacer algo

} catch (Exception e) {
}

Por que para que van a hacer un catch si no van a hacer nada, por lo menos dejen un mensaje, algo!

No entienden que otro programador puede estar toda la mañana buscando que se rompió en millones lineas de código hasta encontrar que ustedes no hacen nada con la excepción? Ojo siempre hagan algo, si hay una excepción es por algo, y ni hablar si capturan Exception.

try {

//hacer algo

} catch (Exception e) {
           System.out.println("Che se rompe acá!!");
}

Si podría ser más claro el mensaje, podría usar log4j; lo que quieran; imprimir el stack trace, pero hagan algo!

Y esto aplica a cualquier lenguaje! o tecnología!!

martes, 25 de junio de 2013

Bigdata University



La verdad que la gente de IBM se paso con el sitio
bigdata university, es un sitio donde uno puede tomar cursos gratuitos sobre bigdata y db2.


Esta muy bueno! Lo recomiendo.


Dejo un video:


Dejo el link:
http://bigdatauniversity.com/

DB2 Express ahora cuenta con 16 GB de RAM


Hace tiempo vengo promocionando DB2 Express, por que? porque de las versiones express de base de datos comerciales me parece una de las mejores; además esta orientada al aprendizaje.

Leyendo infoQ me encuentro con la noticia que la nueva versión de DB2 Express nos permite utilizar 16 gigas de memoria. IBM ha flexibilizado las restricciones de memoria en la versión gratuita de su base de datos. La versión 10.5 de DB2 Express-C puede ahora utilizar hasta 16 GB de RAM. El producto ya permitía utilizar espacio ilimitados en disco, pero se limita a un único socket (2 núcleos).

Por el contrario, SQL Server Express se limita a 1 socket (4 núcleos), 1 GB de RAM y 10 GB de almacenamiento. Oracle 11g Express es igualmente restrictiva con 1 CPU, 1 GB de RAM y 11 GB de storage.DB2 está disponible para Windows (x86/x64), Linux (x86, x64, Power Systems), Solaris y OS X. DB2 puede ser gestionado desde la consola o con la herramienta gratuita, IBM Data Studio.

Ya se lo que van a opinar, porque no Postgres o MySQL y tienen razón. Antes que un producto express, mejor un producto open source con una comunidad. Eso no lo discuto! Lo que simplemente opino es que si queremos aprender un producto comercial, porque pensamos comprarlo o porque en nuestra empresa lo utiliza. DB2 Express es muy bueno!

La verdad es que hace mucho que no lo utilizo, pero es una buena oportunidad.

Dejo links:
http://www.infoq.com/news/2013/06/DB2-Express-RAM
http://www.db2teamblog.com
https://www14.software.ibm.com/webapp/iwm/web/pick.do?source=swg-db2expressc&S_CMP=db2teamblog


Scala Days 2013


En Parley han publicado las charlas de scala days 2013, todas las charlas estan muy buenas!!

Dejo link:
http://www.parleys.com/channel/51ae1022e4b01033a7e4b6ca/presentations

domingo, 23 de junio de 2013

Probando Ubuntu 13.04

Tanto tanto hablaron de Ubuntu 13.04 que se me dio por probarlo, y la verdad me gusto, no mucho. Ya saben no me llevo bien con Unity pero bue...

Muchos cambios! Si quieren verlos les dejo un buen resumen: http://es.wikipedia.org/wiki/Anexo:Versiones_de_Ubuntu#Ubuntu_13.04. Pero de igual forma no existen cambios que nos muevan el piso, a mi parecer ubuntu sigue el mismo camino. Y eso esta muy bueno!

Dejo links:
http://www.ubuntu.com/download/desktop
http://releases.ubuntu.com/raring/
http://usemoslinux.blogspot.com/2013/05/que-hacer-despues-de-instalar-ubuntu.html (es muy bueno)


Dejo pantallas:






  

Bottle: Python Web Framework


Se acuerdan de Sinatra? no el cantante! Sinatra el framework web de ruby; básicamente la idea es poder hacer una pagina web con muy poco esfuerzo. Es como un DSL para realizar paginas web; para que puede servir esto? para hacer prototipos o tambien puede ser muy practico para colgar servicios rest con json y consumirlo con javascript. La idea de sinatra  se extrapolo a otros frameworks, tecnologias y lenguajes; como por ejemplo Bottle que es el sinatra para Python.

Bottle es un micro framework rápido, sencillo y ligero para Python. Se distribuye como un módulo y esta formado por un único archivo y no tiene dependencias distintas de la biblioteca estándar de Python.

Veamos un ejemplo de un hola mundo con bottle:

from bottle import route, run, template

@route('/hello/<name>')
def index(name='World'):
    return template('<b>Hello {{name}}</b>!', name=name)

run(host='localhost', port=8080)

Y listo tenemos una pagina!

Como podemos ver en ejemplo por medio de @route indicamos la url y le decimos que nos van a pasar el nombre por la url, es decir usamos url restfull. Luego retornamos la pagina web. Podemos formar json y devolver json para hacer una API Rest o podemos utilizar template para hacer paginas webs. Genial!

Y si enviamos un mensaje con este framework va a ser...


Dejo link:
http://bottlepy.org
http://bottlepy.org/docs/dev/index.html


viernes, 21 de junio de 2013

The People Who Support Linux: You

La gente de linux.com compartió una genial infografía que describe quienes participan en el proyecto Linux:

Dejo el link:
http://www.linux.com/news/featured-blogs/185-jennifer-cloer/724867-the-people-who-support-linux-you

Dejo la infografía:

infogfx people linux final

miércoles, 19 de junio de 2013

Huayra, el linux más Argentino que el mate!


En visperas del día de la bandera vamos a hablar de un Linux Argentino, como Peron, como el mate, como nosotros.  Esté es el sistema operativo que se utiliza en las netbooks  de el programa del gobierno "conectar igualdad", no voy a dar mi opinión sobre este programa. Pero si les dejo esta reseña del sistema operativo:

Basado en Debian GNU/Linux, Huayra es más seguro, más ágil y desarrollado en Argentina teniendo en cuenta las necesidades tantos de estudiantes como de docentes y manteniendo nuestra identidad nacional. Huayra  toma su nombre del vocablo quechua que significa viento: viento de cambios, vientos de libertad, vientos de soberanía tecnológica. Además de ser un sistema operativo libre, Huayra ha sido pensado y desarrollado para el uso de la comunidad educativa. A través de él puede accederse a una gran variedad de programas y aplicaciones educativas.  

Es un tanto extraño el termino soberanía tecnológica; pero bueno la verdad es que es muy bueno que se haya optado por una alternativa libre y se haya decidio invertir en software libre. En mi opinión es un buena decisión.

Un poco de info técnica:

Para ello decidimos basarnos en Debian, una distribución de GNU/Linux que:

  • - Permite ser adaptada a necesidades propias para diseñar distribuciones específicas.
  • - No depende de ninguna empresa o corporación y sus formas de gobierno se encuentran documentadas y son permeables al ingreso de nuevos actores.
  • - Posee cerca de 25 mil paquetes de software y soporta más de 10 arquitecturas de hardware.
  • - Cuenta con un gran comunidad de voluntarios a nivel mundial.
  • - Posee un sistema de control de calidad fiable y bien documentado.
  • - Es la metadistribución origen de otras grandes distribuciones como Ubuntu, Guadalinex, Canaima, Knopix, etc.

Detalles Técnicos de Huayra

  • - Basada en Debian
  • - Entorno de escritorio: Gnome Shell
  • - Licencia: Mayormente GNU GPL
  • - Repositorios propios y abiertos
  • - Documentación propia
  • - Tema de ventanas propio


Dejo link:
http://huayra.conectarigualdad.gob.ar/
http://www.conectarigualdad.gob.ar/

domingo, 16 de junio de 2013

Que curso puedo hacer?

Que curso puedo hacer? y si hago este o aquel curso, sera difícil, fácil, cuantas horas me puede llevar por semana?

Para responder estas preguntas existen redes sociales de cursos on line... Muy bueno! Donde la gente opina de cursos que ha hecho y deja su puntuación,  además agrega cuantas horas le consume y que dificultad tiene.

Dejo los links:
http://knollop.com/
http://coursetalk.org/

Simplify IT and Unleash Innovation




Oracle nos regala una guía para simplificar nuestro trabajo, obviamente con sus productos; pero vale la pena darle una ojeada. Lo único malo es que hay que hacerse un usuario, es gratuito, pero hay que hacerlo :(











Dejo el link:
http://www.oracle.com/webapps/dialogue/ns/dlgwelcome.jsp?p_ext=Y&p_dlg_id=11705213&src=7011103&Act=103

sábado, 15 de junio de 2013

Racket


Como les aconseje en el siguiente post : http://emanuelpeg.blogspot.com.ar/2013/06/introduction-to-systematic-program.html; un curso que esta muy bueno en cursera es "Introduction to Systematic Program Design". En este curso se utiliza el lenguaje Racket.

Racket es un lenguaje de la familia de lisp/scheme, multiparadigma y es un lenguaje de propósito general que se utiliza para la enseñanza, investigación y para cualquier otra cosa. Tiene un entorno que se llama DrRacket, funciona en diferentes plataformas; yo lo estoy corriendo en Linux sin problemas.

Como se pueden imaginar al ser un lenguaje derivado de lisp es funcional, pero también fue influido por scheme y eiffel. De este ultimo toma la programación dirigida por contratos. A la vez soporta macros y es muy extensible. Una cosa curiosa es que soporta elementos gráficos, en realidad me resulta curioso a mi, podemos hacer esto:

(require 2htdp/image)
(triangle 80 'solid 'red)

y dibujara un triangulo.

Esta muy bueno para enseñar programación funcional y también para introducir a los alumnos a programación dirigida por contratos.

También tiene funciones similares a doctest de python es decir podemos hacer:

;; devuelve la suma de dos nros
(check-expect (suma 2 3) 5)
(check-expect (suma 5 3) 8)
(check-expect (suma 2 30) 32)
(check-expect (suma 2 -3) -1)

(define (suma nro1 nro2)
  (+ nro1 nro2)
 )

y haciendo esto la ide nos devolverá: "All 4 tests passed!"

Es lanzado con licencia LGPL por lo tanto lo podemos usar para hacer proyectos GPL y también comerciales.

Dejo links:
http://racket-lang.org/
https://en.wikipedia.org/wiki/Racket_(programming_language)

Dejo unas fotos de la IDE:



Javapocalypse

Un divertido vídeo de javaZone: