Dejo links:
Translate
lunes, 2 de enero de 2012
Ranking de lenguajes 2011
Estaba leyendo genbetadev y me encontré el ranking de lenguajes que realiza la empresa TIOBE:
sábado, 31 de diciembre de 2011
Apache Hadoop con Spring Data
Spring Data provee soporte para Apache Hadoop; que es Hadoop es un proyecto de software libre el cual tiene como objetivo brindar servicios de computacion distribuida de este proyecto ya hablamos:
http://emanuelpeg.blogspot.com/2009/10/apache-hadoop-es-un-proyecto-java-de.html
Spring Data es otro proyecto libre que nos ayuda a interactuar con diferentes tipos de almacenes de datos. Este proyecto implementa un modulo para interactuar con Apache Hadoop.
Entre sus características podemos nombrar:
Para utilizar este proyecto con maven deben agregar el siguiente repositorio:
y la siguiente entrada en el pom:
Dejo links:
http://www.springsource.org/spring-data/hadoop
http://static.springsource.org/spring-hadoop/docs/current/reference/
http://hadoop.apache.org/
http://emanuelpeg.blogspot.com/2009/10/apache-hadoop-es-un-proyecto-java-de.html
Spring Data es otro proyecto libre que nos ayuda a interactuar con diferentes tipos de almacenes de datos. Este proyecto implementa un modulo para interactuar con Apache Hadoop.
Entre sus características podemos nombrar:
- Una extensión para Spring Batch para soportar la comunicación punto a punto
- Simplifica la lectura y escritura de recursos HDFS
- Spring Batch Tasklets Map-Reduce para en un Job con streaming
- Integración con Hbase, Hive y Pig
Para utilizar este proyecto con maven deben agregar el siguiente repositorio:
spring-snapshot Spring Maven SNAPSHOT Repository http://s3.amazonaws.com/maven.springframework.org/snapshot
y la siguiente entrada en el pom:
org.springframework.data spring-data-hadoop 1.0.0.BUILD-SNAPSHOT
Dejo links:
http://www.springsource.org/spring-data/hadoop
http://static.springsource.org/spring-hadoop/docs/current/reference/
http://hadoop.apache.org/
jueves, 29 de diciembre de 2011
Aprendiendo Android
Para el que quiere aprender a programar aplicaciones para Android, dejo algunos recursos:
1.- 9 videotutoriales en español --> http://goo.gl/laZc8
2.- 4 libros digitales gratuitos --> http://goo.gl/pqvUj
3.- 20 horas para aprender a programar en Android -->http://goo.gl/SU7sh
4.- Curso impartido por Google --> http://goo.gl/8utpu
5.- Desarrollo y Programacion Android Fácilmente --> http://goo.gl/HYvbd
6.- Desarrollo en Android en español --> http://goo.gl/r7yu2
Que lo disfruten!
martes, 27 de diciembre de 2011
Libro de Python
Dejo un libro gratuito de Python en castellano :
https://docs.google.com/gview?url=http://books.openlibra.com/pdf/Python%20para%20todos.pdf&chrome=true
Que lo disfruten!!
Manual de Symfony 2
Han publicado un manual en castellano de Symfony 2, framework PHP que esta sumando adeptos; dado su productividad y flexibilidad.
Dejo el link: https://docs.google.com/gview?url=http://books.openlibra.com/pdf/symfony2-es.pdf&chrome=true&pli=1
Dejo el link: https://docs.google.com/gview?url=http://books.openlibra.com/pdf/symfony2-es.pdf&chrome=true&pli=1
Apache Lenya - Open Source Content Management (Java/XML)
Apache Lenya es un framewrok open source java/xml; CMS (Common Manager System) con un sistema de control de versiones, un administrador multi-site, scheduling, busquedas y un editor WYSIWYG (What You See Is What You Get) y workflow. Completito, completito!
La actual versión es la 2.0.4 y se distribuye con licencia Apache. Por el momento no se distribuye de forma binaria y corre sobre un jetty o tomcat.
Dejo links:
http://lenya.apache.org/
http://lenya.apache.org/docu20/installation20/install20.html
http://lenya.apache.org/docu20/installation20/download20.html
http://lenya.apache.org/index/screenshots.html
La actual versión es la 2.0.4 y se distribuye con licencia Apache. Por el momento no se distribuye de forma binaria y corre sobre un jetty o tomcat.
Dejo links:
http://lenya.apache.org/
http://lenya.apache.org/docu20/installation20/install20.html
http://lenya.apache.org/docu20/installation20/download20.html
http://lenya.apache.org/index/screenshots.html
sábado, 24 de diciembre de 2011
Nueva iniciativa de Codecademy para que programar sea fácil y entretenido
Codecademy se planteaba como una propuesta interesante y amena al momento de aprender programación en línea, ya sea JavaScrip, Ruby o Python.
Se ha abierto Codecademy Labs, tu espacio para que puedas practicar todo lo que aprendes en tus clases virtuales . Una de los detalles más interesantes es que no necesitas descargar ningún editor a tu escritorio, sino que puedes hacerlo desde la misma interfaz, desde el navegador. Otro aspecto interesante es que puedes ejecutar o descargar archivos.
A estudiar!!!
Dejo el link: http://labs.codecademy.com/
miércoles, 21 de diciembre de 2011
CHOMSKY
Uno de los genios que a dado este ultimo siglo (a mi parecer) y personaje muy influyente tanto en política como lingüística y en informática. Si, si este tipo nos ha ayudado mucho a nosotros.
En la década de 1950, Noam Chomsky desarrolló la Jerarquía de Chomsky en el campo de la lingüística; un descubrimiento que impactó directamente a la teoría de lenguajes de programación y otras ramas de la informática. Si leemos en la wikipedia sobre la Jerarquia de Chomsky:
“La
jerarquía de Chomsky consiste en los niveles siguientes:
- Gramáticas Type-0 (gramáticas sin restricción) incluya todas las gramáticas formales. Generan exactamente todas las idiomas que se puedan reconocer por a Máquina de Turing. Estas idiomas también se conocen como idiomas recurrentemente enumerable. Observe que esto es diferente de idiomas recurrentes cuál puede ser decidido por máquina de Turing siempre-que para.
- Gramáticas del tipo 1 (gramáticas sensibles al contexto) genere idiomas sensibles al contexto. Estas gramáticas tienen reglas de la forma conA un no terminal y α, β y γ cadenas de terminales y de nonterminals. Las secuencias α y β puede ser vacío, pero γ debe ser no vacío. La regla se permite si S no aparece en el derecho de ninguna regla. Las idiomas descritas por estas gramáticas son exactamente todas las idiomas que se pueden reconocer por a autómata limitado linear (una máquina no determinista de Turing que cinta es limitada por las épocas constantes la longitud de la entrada.)
- Gramáticas Type-2 (gramáticas independientes del contexto) genere idiomas context-free. Éstos son definidos por las reglas de la forma con Aun no terminal y γ una cadena de terminales y de nonterminals. Estas idiomas son exactamente todas las idiomas que se pueden reconocer por un no determinista autómata del pushdown. Las idiomas libres del contexto son la base teórica para el sintaxis de la mayoría lenguajes de programación.
- Gramáticas Type-3 (gramáticas regulares) genere idiomas regulares. Tal gramática restringe sus reglas a un solo no terminal en el lado izquierdo y un lado derecho que consisten en un solo terminal, seguido (o precedido posiblemente, pero no ambos en la misma gramática) por un solo no terminal. La regla también se permite aquí si S no aparece en el derecho de ninguna regla. Estas idiomas son exactamente todas las idiomas que se pueden decidir por a autómata finito del estado. Además, esta familia de lenguajes formales se puede obtener cerca expresiones regulares. Las idiomas regulares son de uso general definir los patrones de la búsqueda y la estructura léxica de lenguajes de programación.”
No
solo nos ayudo a nosotros si no que fue un activista político que
hoy día lucha por mejorar el mundo. Es muy aconsejable que lean el
siguiente link, en el cual el describe las 10 estrategias de
manipulación mediática.
Una frase:
"El país se fundó sobre el principio de que el rol primario del gobierno es proteger de la mayoría a la propiedad, y así sigue."
Noam Chomsky
Y
por ultimo para darle un poco de humor compartir este resumen que saque de la frikipedia:
De la serie grandes personajes: | |||
Avram Noam Chomsky | |||
| |||
Nacimiento | Poquito después del comunismo | ||
Muerte | Si Bush se reelige... y si Chávez no lo declara muerto antes. | ||
Ocupación | Molestar al gobierno (Con justa razón) | ||
Nacionalidad | Made in America (¡Hombre hasta yo me avergonzaria!) | ||
Malo o Bueno | Depende de como consdieres a Bush | ||
Atentados contra la humanidad | Escribir libros sobre una teoría ininteligible | ||
Religión | Anarquismo | ||
Notas | Escribir libros contra el capitalismo es excelente negocio |
lunes, 19 de diciembre de 2011
NuoDB
Aportando más sobre newSQL dejo un vídeo de NuoDb
Technical Overview Webinar Video (nuodb) from NUODB on Vimeo.
domingo, 18 de diciembre de 2011
Fantom
Fantom es un lenguaje el cual corre sobre la JVM de java; sobre CLR de .net y además sobre javascript. Es similar a java o c# pero con una sintaxis más evolucionada. Soporta mixin y concurrencia con el modelo de actores.
Totalmente orientado a objetos pero soporta el paradigma funcional y tiene closures. Soporta tipado estático o dinámico. Además de todos los características dichas agrega unos chiches como serialización a json, una api elegante y URIs basadas en REST.
Veamos un ejemplo:
// Hello from Fantom!
class HelloWorld
{
static Void main()
{
echo("Hello, World!")
}
}
Un ejemplo de clase:
public class Person
{
public String name() { return name; }
public void name(String x) { name = x; }
public int age() { return age; }
public void age(int x) { age = x; }
private String name;
private int age;
}
Prometo seguir escribiendo sobre este lenguaje que pinta lindo.
Dejo links:
http://fantom.org/doc/docIntro/StartHere.html
http://fantom.org/
jueves, 15 de diciembre de 2011
Anuncio de play! 2.0 en español
Como principal novedad, el core del mismo estará escrito en scala, integrándose al stack de typesafe (scala + akka + sbt + play!), y tendrá soporte completo y APIs nativas tanto para scala como para java.
También hay otras novedades, como un nuevo sistema de builds (sbt), mayores validaciones en tiempo de compilación (los templates e incluso los archivos de rutas son estáticamente compilados), más soporte para operaciones asincrónicas, soporte para diversos tipos de fuentes de datos (bases relaciones y nosql) y más cambios.
martes, 13 de diciembre de 2011
@EJB
En
un post anterior hicimos un proyecto con maven y JEE
Pero
en ese caso hicimos un lookup pero podríamos haber usado @EJB de la
siguiente manera:
@EJB(mappedName="HolaMundoImpl/remote")
private
HolaMundo holaMundo
= null;
Y
con esto nos ahorrábamos el lookup.
Cuales
son los atributos de @EJB y para que se usan?
@EJB
indica la dependencia de un ejb tanto local como remoto. Esta
anotación tiene diferentes atributos los
cuales analizaremos luego de revisar el concepto de ENC. Todos los
EJB tienen un ENC (Enterprise Naming Context
) es como un registro
interno donde fue deployeada esta aplicación.
Por
ejemplo:
@Stateless(name="MyEJB")
public
class MyEJBBean implements MyEJBRemoteBusiness, MyEJBLocalBusiness
{
...
}
Si
nosotros asumimos que este EJB esta en myejb.jar y dentro de
myapp.ear se puede tener una referencia a este bean de la siguiente
manera:
javax.naming.Context
jndiContext = new InitialContext(); // Assume we have this
//
Define the contracted value
final
String jndiName = "java:global/myapp/myejb/MyEJB!" +
MyEJBRemoteBusiness.class.getName();
MyEJBRemoteBusiness
bean = (MyEJBRemoteBusiness)jndiContext.lookup(jndiName);
Cada
bean contiene su JNDI ENC. La registración a JNDI ENC puede ser
registrado bajo el contexto java:comp/env comp es porque es un
componente. Cuando hacemos el lookup se resuelve la dependencia de
diferentes contextos.
@EJB
tiene los siguientes atributos:
name:
atributo el cual indica conque nombre acedemos a una referencia EJB
en JNDI ENC.
BeanName:
este es el nombre de una referencia.
MappedName
:
es especifico del vendor; es una key dentro de la registración
global. Es una forma de acceder a la referencia en el JNDI global.
Por medio de mappedName varios vendors introducen características
particulares.
Esto fue una reseña general de @EJB.
sábado, 10 de diciembre de 2011
Spring Data
Spring Data hace fácil la construcción de aplicaciones que usan nuevas formas de almacenar datos como por ejemplo base de datos no relacionales, servicios de datos en la nube, bases clave-valor, etc.
La idea es introducir una capa de abstracción que permita generalizar el acceso a dato a almacenes de datos tan dispares. Este proyecto fue desarrollado gracias al trabajo conjunto con un conjunto de compañías y desarrolladores.
Spring data esta dividido en diferentes subproyectos dependiendo los almacenes de datos que tenga que interactuar:
Categoría |
Sub-proyecto
|
Relational Databases | JPA |
JDBC Extensions | |
Big Data | Hadoop |
Data-Grid | Gemfire |
Key Value Stores | Redis |
Riak | |
Document Stores | MongoDB |
CouchDB (planned) | |
Graph Databases | Neo4j |
Column Stores | HBase (planned) |
Cassandra (planned) | |
Blob-Stores | Blob |
Common Infrastructure | Commons |
Grails Mapping | |
Suscribirse a:
Entradas (Atom)