lunes, 30 de septiembre de 2013

Rest con PHP, más fácil imposible!!


Me toco diseñar una API REST con PHP y la verdad me da vergüenza decir que trabaje, porque es sumamente fácil,lo primero hacemos nuestra función PHP, para el ejemplo un listado de paises:

    $db = new DB(); //Con este objeto me conecto a la base
    $db->conectar();
    $sql = 'SELECT * FROM `paises` ORDER BY `nombre`'; //Listo los paises por ejemplo
    $consulta = $db->query($sql);

    while ($fila = mysql_fetch_array($consulta)) {
        $paises[] = $fila;  
    }
    $data["paises"] = $paises;
    echo json_encode($data); // lo imprimo formato json.

Y listo, claro que no es rest puro pero es util para publicar una función. Si quieren usar Rest puro pueden usar el metodo $_SERVER['REQUEST_METHOD'] y de esta forma saber el metodo, y si tenemos un controlador podemos hacer:

$method = $_SERVER['REQUEST_METHOD'];

// Dependiendo del método de la petición ejecutaremos la acción correspondiente.

switch ($method) {
    case 'GET':
        // código para método GET
        break;
    case 'POST':
        $arguments = $_POST;
        // código para método POST
        break;
    case 'PUT':
         // código para método PUT
        break;
    case 'DELETE':
        // código para método DELETE
        break;
}

Y esto lo podemos consumir con javascript y si usamos jquery es una papa:

           $.ajax({
                       type: "GET",
                       dataType: "JSON",
                       url: "listar_paises",                                        
                       success: function(data)                                 
                       { //hacer algo
                       },
                       error: function() 
                       {       alert("Error recuperando la lista de Paises");
                       }                
                });

Y listo!!

sábado, 28 de septiembre de 2013

GNU: 30 años de libertad


La noticia es un poco vieja pero no quiero dejar pasar la oportunidad de unirme al festejo de los 30 años de la organización GNU!

Y en los 30 años quiero recordar las palabras de Richard Stallman:  '¡Unix Libre! A partir del próximo Día de Acción de Gracias comenzaré a escribir un sistema de software completo compatible con Unix llamado GNU (que significa 'Gnu No es Unix'), y lo distribuiré libremente para que todos puedan usarlo. Son muy necesarias las contribuciones de dinero, programas y equipos'.

Getting Started Apache CXF Web Service



Quiero compartir una guía para utilizar Apache CXF, el framework de apache para hacer web service. Que lo disfruten!

Dejo link:
http://www.attuneuniversity.com/ebook/getting-started-with-apache-cxf-web-service.pdf

miércoles, 25 de septiembre de 2013

martes, 24 de septiembre de 2013

Ceylon 1.0 beta

Y con ustedes...
Pa ra ra ra ra...

Ceylon 1.0 beta. Con 3 añitos de desarrollo se libero una version beta del lenguaje Ceylon con todas las características.  Lo que quiere decir que el lenguaje implemento toda la especificación. Tanto para la maquina virtual Java como a Javascript. Además de esta versión del lenguajes,  también se libero un versión de su IDE. Con muchas nuevas características.

Dejo links:
http://ceylon-lang.org/blog/2013/09/22/ceylon-1/
http://ceylon-lang.org/documentation/1.0/spec/

domingo, 22 de septiembre de 2013

Instalar oracle 12c en Open Suse 12.3

Open Suse me gusto mucho, es un sistema robusto y tiene varias herramientas para configurarlo; es un sistema ideal para instalar nuestra base de datos Oracle 12c.

Primero tenemos que bajar la base de datos de oracle: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html?ssSourceSiteId=ocomen

Luego hacemos un usuario llamado oracle

Luego creamos tres carpetas /oradata , /oracle y /oraInventory y le damos permiso al nuevo usuario.

Luego vamos al /etc/hosts y agregamos el nombre del servidor:
127.0.0.1 localhost oracle

Descoprimimos los 2 zips, podemos utilizar unzip o por interfaz gráfica, como quieran.

Oracle necesita que instalemos algunas librerías. Podemos usar la consola, pero yo voy a usar YAST2:



Tenemos que instalar estas librerías: (paciencia!)

binutils-2.21.1-0.7.25
gcc-4.3-62.198
gcc-c++-4.3-62.198
glibc-2.11.3-17.31.1
glibc-devel-2.11.3-17.31.1
ksh-93u-0.6.1
libaio-0.3.109-0.1.46
libaio-devel-0.3.109-0.1.46
libcap1-1.10-6.10
libstdc++33-3.3.3-11.9
libstdc++33-32bit-3.3.3-11.9
libstdc++43-devel-4.3.4_20091019-0.22.17
libstdc++46-4.6.1_20110701-0.13.9
libgcc46-4.6.1_20110701-0.13.9
make-3.81
sysstat-8.1.5-7.32.1
xorg-x11-libs-32bit-7.4
xorg-x11-libs-7.4
xorg-x11-libX11-32bit-7.4
xorg-x11-libX11-7.4
xorg-x11-libXau-32bit-7.4
xorg-x11-libXau-7.4
xorg-x11-libxcb-32bit-7.4
xorg-x11-libxcb-7.4
xorg-x11-libXext-32bit-7.4
xorg-x11-libXext-7.4

Luego vamos al directorio donde deszipiamos los instaladores y hacemos "sh runInstall" y seguimos el siguiente wizard:


Si tienen licencia deben llenar el mail. 


Le pongo skip porque no quiero que se actualice. 





Acá llenamos todos los datos, el password también!

y suerte!

Si todo va bien Oracle nos pedirá correr unos scripts:



Solo hay que logearse como root y correrlos. 


Luego configuramos la instancia. Y listo!

Dejo link:
http://docs.oracle.com/cd/E16655_01/install.121/e17720/pre_install.htm#BABFDGHJ


¿Qué es la CDPedia?

Que sucede con las escuelas o personas que no tienen acceso a internet? No pueden acceder a la wikipedia? En realidad si pueden acceder y gracias a CDpedia un proyecto de pyar. Trascribo lo que dice la pagina:

Es un proyecto de Python Argentina para acceder a la información de la Wikipedia en castellano aunque no tengas una conexión a Internet.
Toda la información incluída fue obtenida de Wikipedia durante Diciembre del 2012, y es una foto del contenido on-line en un momento dado. Te sugerimos acceder a la información directamente en la Wikipedia Web si es que necesitás información actualizada de uno de los temas.
Importante: la CDPedia es Software Libre, te recomendamos (y te agradecemos) que copies estos discos y archivos, y los regales a tus amigos, familia y conocidos. La información debe ser libre, así mejoramos la calidad de nuestra educación.

Dejo link:

Dejo video:

jueves, 19 de septiembre de 2013

MonoGame - Write Once, Play Everywhere!

Poco he escrito de Mono y de juegos; y poco se en verdad. Pero nunca es tarde para aprender. Sisi ya se han escuchado en otro lado: Write Once, Play Everywhere! pero es no es solo parte del  marketing, mono permite llevar la plataforma .net a cualquier lugar. Y como sabrán el framework para hacer juegos en .net es XNA.

Monogame es una implementación Open Source del framework Microsoft XNA 4 Framework. El principal objetivo es llevar la plataforma para hacer juegos para Xbox 360, Windows & Windows Phone a Linux, Mac, Android, etc.


Dejo link:
http://monogame.codeplex.com/

 

lunes, 16 de septiembre de 2013

10 libros para aprender Python

Dejo una  buena pagina para aprender Python, en ella se describen 10 libros muy buenos para aprender Python.

Dejo link: http://www.leettips.org/2013/02/top-10-free-python-pdf-ebooks-download.html

Scala Tutorials


Sacarme el sombrero ante esta pagina es poco. muy buena pagina para aprender scala. Veanlo por ustedes mismos:

http://scalatutorials.com/

domingo, 15 de septiembre de 2013

Beginning Game Programming with C#

Estoy empezando el curso "Beginning Game Programming with C#", se ve bien y tengo curiosidad sobre la plataforma XNA. También quiero probar MonoGame, etc.. Muchas cosas que desconozco de el ámbito de .net y de vídeos Juegos.

Dejo link:
https://www.coursera.org/course/gameprogramming

Dejo el vídeo:

jueves, 12 de septiembre de 2013

Try MongoDB


La gente de MongoDB ha hecho una pagina para probar su base de datos NoSQL, si nunca la viste andando y no queres instalarla te lo recomiendo. Es muy fácil !!

Dejo link: http://try.mongodb.org/

Manual formación online de Linux

Otro link interesante sobre Linux la comunidad se ha puesto las pilas, Dejo el link:

http://formaciononline.co/manual-formacion-online-de-linux/

Ebooks gratis en español para descargar


Quiero compartir con ustedes un link donde se puede descargar libros de Linux de forma gratuita y en español.

Dejo link:
http://usandojava.blogspot.com.ar/2013/08/libros-y-manuales-de-interes.html

miércoles, 11 de septiembre de 2013

Se viene, se viene la JDK 8


Ya es de publico conocimiento que Oracle esta trabajando en la versión 8 de su Lenguaje de programación denominado Java. Lo que tal vez no sabían es que ya esta la descarga el preview de esta nueva versión, la principal característica es lamda pero también hay muchas más les dejo un link:

http://openjdk.java.net/projects/jdk8/features

Y dejo un link de la descarga:
http://jdk8.java.net/download.html

lunes, 9 de septiembre de 2013

Clojure for the Brave and True

Quiero compartir esta pagina sobre clojure, muy completa la verdad.

Les dejo el link:
http://www.braveclojure.com/

domingo, 8 de septiembre de 2013

Cuales son las carreras con mayor salida laboral?

Algo tiene que ver con el blog, este vídeo muestra como se esta eligiendo mal las carreras, es muy bueno, es bastante viejo también, pero creo que la situación no cambio o empeoro.

viernes, 6 de septiembre de 2013

Webinar Gratuito sobre TDD Avanzado

Me llego un mail de la gente de 10Pines sobre una invitación a un Webinar sobre Tdd avanzado, parece muy bueno. Ya me inscribí!!

Les transcribo el mail:

Descripción:

Si te interesa saber cómo aplicar TDD en un sistema existente, acoplado con la base de datos y que parece imposible de testear, entonces este Webinar te ayudará a lograrlo.
Para ello utilizaremos como ejemplo concreto un sistema existente, e iremos transformándolo paso a paso, por medio de la aplicación sucesiva de refactorings, en una aplicación testeable y entendible.
¡No dejes de anotarte! El Webinar es gratis y te aseguramos que aprenderemos mucho.

Fecha:

  • Martes 10 de Septiembre, 2013 - 19 hrs (Argentina - GMT -3)

Objetivos:

  • Mostrar cómo convertir un sistema que parece imposible de testear en un sistema testeable
  • Mostrar cómo mejorar el diseño de una aplicación aplicando una serie de refactorings para lograrlo
  • Aplicar técnicas y heurísticas de diseño que nos permitirán detectar problemas de diseño y mejorarlo

Duración:

  • 1 hora

Pre-Requisitos:

  • Tener cierto conocimiento sobre TDD
  • Tener experiencia desarrollando aplicaciones 

Lenguaje de Programación:

  • Se utilizará Java para el ejemplo, sin embargo todo lo que se mostrará es aplicable a otros lenguajes como C#, Ruby, Phyton, Smalltalk, etc.
  • No es necesario conocer Java a la perfección para entender lo que veremos.

Inscripción

¿Cómo te podés anotar?: Completá el formulario de inscripción indicando tu nombre, empresa y datos de contacto. 
¿Tenés preguntas?: No dudes en comunicarte con nosotros.

jueves, 5 de septiembre de 2013

miércoles, 4 de septiembre de 2013

Learn X in Y minutes

Una muy buena pagina para aprender lenguajes de programación, muestra un resumen de los lenguajes para que se puedan aprender rápidamente; entre otras cosas tiene:

  • Where X=c
  • Where X=clojure
  • Where X=coffeescript
  • Where X=Common Lisp
  • Where X=c#
  • Where X=dart
  • Where X=elisp  
  • Where X=elixir
  • Where X=erlang
  • Where X=F#
  • Where X=Go
  • Where X=Groovy
  • Where X=haskell
  • Where X=haxe
  • Where X=java
  • Where X=javascript
  • Where X=julia
  • Where X=LiveScript
  • Where X=lua
  • Where X=Matlab
  • Where X=Objective-C
  • Where X=perl
  • Where X=php
  • Where X=python
  • Where X=R
  • Where X=racket
  • Where X=ruby
  • Where X=Scala
  • Where X=Visual Basic
  • Where X=whip

Dejo link: http://learnxinyminutes.com/

La Biblia de Linux


Quiero compartir este libro que es un libro de la red users, que saco hace tiempo, es la biblia y hay que respetarla!!!

Dejo link:
https://docs.google.com/file/d/0Bx4oucvoagb0VTF4Y2V1X3UzdEk/edit

Effective Scala


Quiero compartir con ustedes este libro gratuito, que a simple vista parece muy bueno...

Dejo el link: http://twitter.github.io/effectivescala/

lunes, 2 de septiembre de 2013

DB-Engines Ranking

Existe un ranking de base de datos, en realidad de almacenes de datos porque hay del tradicional entidad-relación al NoSQL. Bien no se de donde toman los datos pero se ve coherente.

Dejo link:
http://db-engines.com/en/ranking

domingo, 1 de septiembre de 2013

Java to Scala cheatsheet



Quería hacer un post similar en español hace rato, o por lo menos traducir este, pero no me da el tiempo. Lo dejo para más adelante. Luego de la salvedad, quiero compartir con ustedes este post que nos muestra la forma de hacer cosas en Java y en Scala.


No me gustan las comparativas con Java, dado que Java corre con desventaja tiene muchos años de existencia, la realidad cambio y nuestras cabezas también. Y en mi opinión esta bien que Java no haya cambiado; mejor es que nazcan otros lenguajes. Si java va evolucionando según el mercado se forma un engendro, que tenes 10 formas de hacer algo y nunca sabes cual es la mejor.


Me gusta mucho el camino que esta siguiendo la plataforma Java.



Luego de enredarme demasiado, dejo el link:
http://techblog.realestate.com.au/java-to-scala-cheatsheet/