9 de julio del 2009 fue el primer post de este blog y con él su concepción.
Translate
viernes, 9 de julio de 2010
Cumpleaños del Blog!!
9 de julio del 2009 fue el primer post de este blog y con él su concepción.
Tenemos 1 año de vida!!
Scala
Otra cosa importante es que scala es compatible con java es decir que corre sobre jvm y puede utilizar jars.
Veamos un ejemplo de Quicksort:
def sort(xs: Array[Int]): Array[Int] = {
if (xs.length <= 1) xs
else {
val pivot = xs(xs.length / 2)
Array.concat(
sort(xs filter (pivot >)),
xs filter (pivot ==),
sort(xs filter (pivot <)))
}
}
Como podemos ver en el ejemplo es diferente a lo que estamos acostumbrados, dado que se mezcla con la programación funcional.
- El algorismo lo primero que hace es ver si el vector tiene 1 o 0 elementos si es así ya se encuentra ordenado, así que lo devuelve.
- Si tiene más elementos toma el elemento del medio como pivot y luego corta el vector en 3 los menores al pivot, los iguales y los mayores.
- Luego ordena los subconjuntos menor y mayor y así recursivamente.
- El resultado es la suma de los subvectores.
Vieron lo raro que filtra los menores y mayores podria usar el “.” es decir xs.filter(pivot ==). Esto es smalltalk-like como cualquier elemento es un objeto y todo usa objetos el indicador de llamadas a metodos puede ser el espacio o punto. De esta forma podemos hacer 1 + 1 o 1.+(1)
Otra característica es que al igual que ruby la ultima expreción ejecutada es el return de la función.
Esta muy bueno no? Alguien lo utiliza?
Dejo links:
http://www.scala-lang.org/
domingo, 4 de julio de 2010
Apache Software Foundation Sponsorship Thanks!
http://www.apache.org/foundation/thanks.html
Apache ODE
La licencia de Apache ODE es licencia Apache.
BPM
BPM marca al sistema el orden de ejecución de procesos dando la flexibilidad para poder modificar este orden cuando se lo desee. Esto permite centrarse en la lógica de negocio dando el poder de decisión al usuario final el cual por medio de un editor puede modificar el workflow como crea más conveniente. Se centra en el negocio. Faculta a los individuos de cualquier rincón de una empresa para alcanzar un mayor éxito. Reúne a personas y sistemas. BPM es donde se condensan todas las elevadas ambiciones y mejores estrategias.
BPM es un concepto muy sencillo. Es un conjunto de métodos, herramientas y tecnologías utilizados para diseñar, representar, analizar y controlar procesos de negocio operacionales; un enfoque centrado en los procesos para mejorar el rendimiento que combina las tecnologías de la información con metodologías de proceso y gobierno.
El objetivo de una solución para la gestión de procesos de negocio es proporcionar, dentro de las TI, implementaciones automatizadas de procesos de negocio de la vida real, como por ejemplo los procesos de pedidos y cobros, o de gestión de reclamaciones. Combinada con una SOA, esta forma de proporcionar funcionalidades de TI, con una visión orientada a procesos.
La tecnología BPM es el resultado de muchos años de experiencia en desarrollo y aplicación; el producto de los avances más actuales en sistemas y procesamiento de información; la cumbre de todas las arquitecturas, lenguajes y protocolos informáticos. La tecnología BPM constituye un gran avance, y un nuevo paradigma en cuanto a flexibilidad, gestión y control de información y datos.
BPM, como práctica de gestión integral, es el resultado de la combinación de avances técnicos con métodos y prácticas establecidos, de un modelo empresarial centrado en el proceso.
La tecnología BPM incluye todo lo que necesita a la hora de diseñar, representar, analizar y controlar los procesos de negocio operacionales:
- El diseño y modelado de procesos posibilitan que, de forma fácil y rigurosa, pueda definir procesos que abarcan cadenas de valor y coordinar los roles y comportamientos de todas las personas, sistemas y otros recursos necesarios.
- La integración le permite incluir en los procesos de negocio cualquier sistema de información, sistema de control, fuente de datos o cualquier otra tecnología. La arquitectura orientada a servicios (SOA) lo hace más rápido y fácil que nunca. No es necesario desprenderse de las inversiones ya realizadas; todo se puede reutilizar.
- Los entornos de trabajo de aplicaciones compuestas le permiten construir e implementar aplicaciones basadas en web casi de forma instantánea, completamente funcionales y sin necesidad de código.
- La ejecución convierte de forma directa los modelos en acción en el mundo real, coordinando los procesos en tiempo real.
- La supervisión de la actividad de negocio (BAM) realiza el seguimiento del rendimiento de los procesos mientras suceden, controlando muchos indicadores, mostrando las métricas de los procesos y tendencias clave y prediciendo futuros comportamientos.
- El control le permite responder a eventos en los procesos de acuerdo a las circunstancias, como cambio en las reglas, notificaciones, excepciones y transferencia de incidentes a un nivel superior.
viernes, 2 de julio de 2010
Libros Gratuitos
Dejo el link:
https://www.ibm.com/developerworks/wikis/display/db2oncampus/FREE+eBooks
lunes, 28 de junio de 2010
Agujero de seguridad grave en Spring
viernes, 18 de junio de 2010
SCA
Service Component Architecture (SCA) define un enfoque general para realizar estas dos cosas. SCA es un estándar de OASIS originalmente creado por diferentes vendedores como BEA, IBM, Oracle, SAP, etc. La especificación SCA define como crear un componente y como estos componentes interactuan para formar una aplicación. Los componentes en SCA pueden ser construidos en Java o en otros lenguajes y además permite interactuar con otras tecnologia como JEE, Spring o BPEL. SCA define un mecanismo común de ensamblaje que indica como los componentes son combinados dentro de la aplicación.
Apache Roller
Roller es una aplicación web Java que debe ser capaz de ejecutar en cualquier servidor Java EE y cualquier base de datos relacional. En la actualidad, corre mejor en Tomcat y MySQL - pero puede correr en Glassfish, WebSphere, JBoss, Gerónimo, Derby, PostgresSQL, Oracle, etc.
Roller es una producto estable y lista-servidor en el blog es importante revisión tercero. Roller se distribuye con licencia Apache. Roller se graduó de la incubadora de Apache en marzo de 2007 y ahora es un proyecto oficial de Apache.
martes, 15 de junio de 2010
MyIbatis
MyIbatis conocido anteriormente como Apache iBATIS, tuvo varios cambios estos días. Cambio de nombre y abandono la fundación Apache esto es poco común, dado que la fundación Apache da importancia a el proyecto por solo pertenecer a la fundación. Es un total misterio el abandono de la fundación.
Cambiando de tema, muchos se pregunta que es MyIbatis bueno es como un ORM. Pero no es un ORM completo como alguien lo llamo una vez es un ORQ (object relation queries). Es decir que tenemos que escribir el sql y mapear nuestro objetos a esas queries y el framework se ocupa de setear los valores de la query al objeto y viceversa. Es decir no es un competidor de hibernate sino de jdbc.
Cuando necesitamos mayor rendimiento y estamos seguros que vamos a escribir queries mejor que cualquier ORM, o cuando heredamos un diagrama de tablas sumamente complicado, nos conviene utilizar MyIbatis.
viernes, 11 de junio de 2010
Tenemos nuevo diseño !!!
HTML 5 !!
He encontrado este resumen que explica los alcances de html 5 y una comparativa con flash el rey de la interactividad web.
El link es el siguiente:
http://www.focus.com/images/view/11905/
martes, 8 de junio de 2010
Apache OFBiz
Apache Open For Business Project es un proyecto de código abierto licenciado bajo Apache License 2.0. Este proyecto enterprice Open source y como enterprice Open source entendemos : Open Source ERP, CRM Open Source, Open Source de E-Business / E-Commerce, Open Source SCM, MRP Open Source, Open Source CMMS / EAM, y así sucesivamente.
Seria es criollo el ERP de Apache totalmente libre.
Apache OFBiz es una base y punto de partida de soluciones fiables, empresa segura y escalable. Utilícelo out-of-the-box (OOTB) o incluso personalizar para satisfacer sus necesidades de negocios más exigentes. Con OFBiz , usted puede comenzar de inmediato y ir escalando a medida que su negocio crece, sin el gran despliegue y costos de mantenimiento de los sistemas tradicionales de automatización de la empresa.
Es de código abierto bajo la licencia Apache 2.0 y conducido por una comunidad Apache OFBiz ofrece la flexibilidad de diseño y el acceso a código, esta es una solución en la que no está solo, sino que puede trabajar con muchos otros para hacer las cosas.
sábado, 5 de junio de 2010
Frases
"Los programas deben ser escritos para que la gente los lea y sólo incidentalmente, para que las máquinas los ejecuten."
"Mucho del software hoy en día se parece a una pirámide egipcia: con millones de ladrillos apilados uno encima del otro, sin integridad estructural y hecho por pura fuerza bruta y miles de esclavos."
--Alan Kay
"Cualquier tonto puede escribir código que un ordenador entiende. Los buenos programadores escriben código que los humanos pueden entender."
--Martin Fowler
"Hay dos formas de diseñar software: la primera es hacerlo tan simple que obviamente no hay deficiencias y la segunda es hacerlo tan complicado que no hay deficiencias obvias. La primera forma es mucho más difícil."
--C.A.R. Hoare
"Si deseas empezar y desarrollar algo grandioso, no necesitas millones de dólares de capitalización. Necesitas suficiente pizza y Diet Coke en la nevera, una PC barata y trabajo y dedicación para realizar tu idea."
---John Carmack
La mejor forma de predecir el futuro es inventarlo.
--Alan Kay
El software y las catedrales se parecen mucho. Primero lo construimos, después rezamos.
–-Anónimo
jueves, 3 de junio de 2010
Aprendiendo SOA
http://blogs.tecsisa.com/articulos-tecnicos/¿por-que-soa/
http://blogs.tecsisa.com/articulos-tecnicos/¿por-que-un-enterprise-service-bus
Además les aconsejo un blog, Espacio SOA y además el mio jeje.
http://www.espaciosoa.net