Presentación dada el día 15 de marzo de 2010 en la Universidad de Córdoba (UCO), sobre el tema de las Metdologías Ágiles en la Práctica, es decir, el cómo se han implementado en una empresa real (Jet Multimedia, S.A.)
Poster of paper "An object-oriented library in JavaScript to build modular and flexible cross- platform evolutionary algorithms" presented at EvoStar 2014
Get Back in Control of your SQL with jOOQ - GeekOut by ZeroTurnaroundDataGeekery
SQL is a powerful and highly expressive language for queries against relational databases. SQL is established, standardised and hardly challenged by alternative querying languages. Nonetheless, in the Java ecosystem, there had been few relevant steps forward since JDBC to better integrate SQL into Java. All attention was given to object-relational mapping and language abstractions on a higher level, such as OQL, HQL, JPQL, CriteriaQuery. In the meantime, these abstractions have become almost as complex as SQL itself, regardless of the headaches they’re giving to DBAs who can no longer patch the generated SQL.
jOOQ is a dual-licensed Open Source product filling this gap. It implements SQL itself as an internal domain-specific language in Java, allowing for the typesafe construction and execution of SQL statements of arbitrary complexity. This includes nested selects, derived tables, joins, semi-joins, anti-joins, self-joins, aliasing, as well as many vendor-specific extensions such as stored procedures, arrays, user-defined types, recursive SQL, grouping sets, pivot tables, window functions and many other OLAP features. jOOQ also includes a source code generator allowing you to compile queries in modern IDEs such as Eclipse very efficiently.
jOOQ is a good choice in a Java application where SQL and the specific relational database are important. It is an alternative when JPA / Hibernate abstract too much, JDBC too little. It shows, how a modern domain-specific language can greatly increase developer productivity, internalising SQL into Java.
Erlang/OTP - V Taller de Programación FuncionalManuel Rubio
Charla dada en el marco del IV Congreso Español de Informática (CEDI) en la Universidad Complutense de Madrid, en las jornadas organizadas por PROLE para su V Taller de Programación Funcional.
Going a Step Beyond the Black and White Lists for URL Accesses in the Enterpr...Paloma De Las Cuevas
Corporate systems can be secured using an enormous quantity of methods, and the implementation of Black or White lists is among them.
With these lists it is possible to restrict (or to allow) the users the execution of applications or the access to certain URLs, among others. This paper is focused on the latter option. It describes the whole processing of a set of data composed by URL sessions performed by the employees of a company; from the preprocessing stage, including labelling and data balancing processes, to the application of several classification algorithms. The aim is to define a method for automatically make a decision of allowing or denying future URL requests, considering a set of corporate security policies.
Thus, this work goes a step beyond the usual black and white lists, since they can only control those URLs that are specifically included in them, but not by making decisions based in similarity (through classification techniques), or even in other variables of the session, as it is proposed here.
The results show a set of classification methods which get very good classification percentages (95-97%), and which infer some useful rules based in additional features (rather that just the URL string) related to the user's access. This led us to consider that this kind of tool would be very useful tool for an enterprise.
Presentación dada el día 15 de marzo de 2010 en la Universidad de Córdoba (UCO), sobre el tema de las Metdologías Ágiles en la Práctica, es decir, el cómo se han implementado en una empresa real (Jet Multimedia, S.A.)
Poster of paper "An object-oriented library in JavaScript to build modular and flexible cross- platform evolutionary algorithms" presented at EvoStar 2014
Get Back in Control of your SQL with jOOQ - GeekOut by ZeroTurnaroundDataGeekery
SQL is a powerful and highly expressive language for queries against relational databases. SQL is established, standardised and hardly challenged by alternative querying languages. Nonetheless, in the Java ecosystem, there had been few relevant steps forward since JDBC to better integrate SQL into Java. All attention was given to object-relational mapping and language abstractions on a higher level, such as OQL, HQL, JPQL, CriteriaQuery. In the meantime, these abstractions have become almost as complex as SQL itself, regardless of the headaches they’re giving to DBAs who can no longer patch the generated SQL.
jOOQ is a dual-licensed Open Source product filling this gap. It implements SQL itself as an internal domain-specific language in Java, allowing for the typesafe construction and execution of SQL statements of arbitrary complexity. This includes nested selects, derived tables, joins, semi-joins, anti-joins, self-joins, aliasing, as well as many vendor-specific extensions such as stored procedures, arrays, user-defined types, recursive SQL, grouping sets, pivot tables, window functions and many other OLAP features. jOOQ also includes a source code generator allowing you to compile queries in modern IDEs such as Eclipse very efficiently.
jOOQ is a good choice in a Java application where SQL and the specific relational database are important. It is an alternative when JPA / Hibernate abstract too much, JDBC too little. It shows, how a modern domain-specific language can greatly increase developer productivity, internalising SQL into Java.
Erlang/OTP - V Taller de Programación FuncionalManuel Rubio
Charla dada en el marco del IV Congreso Español de Informática (CEDI) en la Universidad Complutense de Madrid, en las jornadas organizadas por PROLE para su V Taller de Programación Funcional.
Going a Step Beyond the Black and White Lists for URL Accesses in the Enterpr...Paloma De Las Cuevas
Corporate systems can be secured using an enormous quantity of methods, and the implementation of Black or White lists is among them.
With these lists it is possible to restrict (or to allow) the users the execution of applications or the access to certain URLs, among others. This paper is focused on the latter option. It describes the whole processing of a set of data composed by URL sessions performed by the employees of a company; from the preprocessing stage, including labelling and data balancing processes, to the application of several classification algorithms. The aim is to define a method for automatically make a decision of allowing or denying future URL requests, considering a set of corporate security policies.
Thus, this work goes a step beyond the usual black and white lists, since they can only control those URLs that are specifically included in them, but not by making decisions based in similarity (through classification techniques), or even in other variables of the session, as it is proposed here.
The results show a set of classification methods which get very good classification percentages (95-97%), and which infer some useful rules based in additional features (rather that just the URL string) related to the user's access. This led us to consider that this kind of tool would be very useful tool for an enterprise.
Mejora tus retrospectivas (codemotion 2014)Juanma Gómez
Sesión en Codemotion 2014 en durante la que compartí esos trucos que me han servido como facilitador y que he puesto también en práctica para formar a otros facilitadores.
Descripción del patrón fundamental Delegation, que hace parte de los patrones de diseño.
más en: http://ingeniods.wordpress.com/2013/09/11/delegation-patron-de-diseno/
NoSQL? No, SQL! - SQL, the underestimated "Big Data" technologyDataGeekery
In the past decade, RDBMS related traction has moved away completely from SQL towards JPA / JPQL, or even further, towards NoSQL. Evangelists have widely agreed that RDBMS are not "web scale", even if the race is far from being decided.
In this talk, I want to show you how many features you're missing out on, when you don't do real SQL. When you don't take advantage of recent SQL standard evolutions, such as SQL:1999 hierarchical SQL, SQL:2003 window functions, or many vendor specific extensions. In an example session, we're going to look at how we can calculate running totals on medium-sized data sets using
- nested selects
- window functions
- hierarchical SQL
- the Oracle MODEL clause
- stored functions
And most importantly, we're going to see how the above can help us increase performance while we decrease the number of lines of code when using any of MyBatis, jOOQ, or SpringJDBC.
This talk is about how to secure your frontend applications using a RESTful approach. As opposed to traditional and monolithic server-side applications, when your frontend application is running on a browser and not securely from the server, there are few things you need to consider.
We will explore standards like OAuth or JWT to achieve a stateless, token-based authentication using frameworks like Angular JS on the frontend and Spring Security on the backend.
Note: images are courtesy of Shutterstock.com
Presentación que realicé en Codemotion 2014 recopilando más de dos años y medio de experiencias propias en el acompañamiento a grandes compañías en sus implantaciones de Scrum.
#PlatziConf - El camino para ser un Pro en JavaScriptCarlos Azaustre
Charla en la #PlatziConf sobre Desarrollo Web actual por Platzi, (antes conocida como Mejorando.la).
Por qué elegí aprender JavaScript y que pasos seguí y sigo para hacerlo.
Un vistazo al ecosistema JavaScript, sus frameworks, librerías, herramientas, etc...
Presentación utilizada en la charla "Game of Framework" dentro de la CodeWeek organizada por GDG Cáceres (España)
A continuación se presentara un proyecto final de la asignatura Nuevas tecnologías de la información y la comunicación. Fue un proyecto realizado por Tania Carchipulla y Abdul Awudu, estudiantes de la carrera de ingeniería civil en la Universidad Técnica de Machala. El tema del proyecto es, " La nube como un aliado estudiantil en la UTMACH"
Presentacion MoodleMoot 2014 Colombia - Integración Moodle con un Repositorio...Paola Amadeo
Comunicando Moodle con un repositorio digital de objetos de aprendizaje abiertos.Una experiencia en la Facultad de Informática de la Universidad Nacional de La Plata. Argentina.
Autores: Javier Díaz, Alejandra Schiavoni, Alejandra Osorio, Paola Amadeo, M. Emilia Charnelli, José Schultz, Alex Humar, Agustina Reynoso
Presentación donde se expone qué es la ciencia abierta, las diferentes interpretaciones que se hacen y los elementos de utilidad de la misma. La presentación es muy crítica con las propuestas de ciencia abierta moralistas. Espero que sea del interes de los colistas.
Situación de las iniciativas de Open Data internacionales (y algunas recomen...Oscar Corcho
Presentación sobre iniciativas de Open Data Internacionales y nacionales, realizada en el contexto del Curso de Verano de la Universidad de Extremadura "BigData y Machine Learning junto a fuentes de datos abiertos para especializar el sector agroganadero", el 25/09/2018
Mejora tus retrospectivas (codemotion 2014)Juanma Gómez
Sesión en Codemotion 2014 en durante la que compartí esos trucos que me han servido como facilitador y que he puesto también en práctica para formar a otros facilitadores.
Descripción del patrón fundamental Delegation, que hace parte de los patrones de diseño.
más en: http://ingeniods.wordpress.com/2013/09/11/delegation-patron-de-diseno/
NoSQL? No, SQL! - SQL, the underestimated "Big Data" technologyDataGeekery
In the past decade, RDBMS related traction has moved away completely from SQL towards JPA / JPQL, or even further, towards NoSQL. Evangelists have widely agreed that RDBMS are not "web scale", even if the race is far from being decided.
In this talk, I want to show you how many features you're missing out on, when you don't do real SQL. When you don't take advantage of recent SQL standard evolutions, such as SQL:1999 hierarchical SQL, SQL:2003 window functions, or many vendor specific extensions. In an example session, we're going to look at how we can calculate running totals on medium-sized data sets using
- nested selects
- window functions
- hierarchical SQL
- the Oracle MODEL clause
- stored functions
And most importantly, we're going to see how the above can help us increase performance while we decrease the number of lines of code when using any of MyBatis, jOOQ, or SpringJDBC.
This talk is about how to secure your frontend applications using a RESTful approach. As opposed to traditional and monolithic server-side applications, when your frontend application is running on a browser and not securely from the server, there are few things you need to consider.
We will explore standards like OAuth or JWT to achieve a stateless, token-based authentication using frameworks like Angular JS on the frontend and Spring Security on the backend.
Note: images are courtesy of Shutterstock.com
Presentación que realicé en Codemotion 2014 recopilando más de dos años y medio de experiencias propias en el acompañamiento a grandes compañías en sus implantaciones de Scrum.
#PlatziConf - El camino para ser un Pro en JavaScriptCarlos Azaustre
Charla en la #PlatziConf sobre Desarrollo Web actual por Platzi, (antes conocida como Mejorando.la).
Por qué elegí aprender JavaScript y que pasos seguí y sigo para hacerlo.
Un vistazo al ecosistema JavaScript, sus frameworks, librerías, herramientas, etc...
Presentación utilizada en la charla "Game of Framework" dentro de la CodeWeek organizada por GDG Cáceres (España)
A continuación se presentara un proyecto final de la asignatura Nuevas tecnologías de la información y la comunicación. Fue un proyecto realizado por Tania Carchipulla y Abdul Awudu, estudiantes de la carrera de ingeniería civil en la Universidad Técnica de Machala. El tema del proyecto es, " La nube como un aliado estudiantil en la UTMACH"
Presentacion MoodleMoot 2014 Colombia - Integración Moodle con un Repositorio...Paola Amadeo
Comunicando Moodle con un repositorio digital de objetos de aprendizaje abiertos.Una experiencia en la Facultad de Informática de la Universidad Nacional de La Plata. Argentina.
Autores: Javier Díaz, Alejandra Schiavoni, Alejandra Osorio, Paola Amadeo, M. Emilia Charnelli, José Schultz, Alex Humar, Agustina Reynoso
Presentación donde se expone qué es la ciencia abierta, las diferentes interpretaciones que se hacen y los elementos de utilidad de la misma. La presentación es muy crítica con las propuestas de ciencia abierta moralistas. Espero que sea del interes de los colistas.
Situación de las iniciativas de Open Data internacionales (y algunas recomen...Oscar Corcho
Presentación sobre iniciativas de Open Data Internacionales y nacionales, realizada en el contexto del Curso de Verano de la Universidad de Extremadura "BigData y Machine Learning junto a fuentes de datos abiertos para especializar el sector agroganadero", el 25/09/2018
Cloud computing o computación en la nube
Servicio almacenados en servidores a los que tienen acceso los usuarios únicamente atreves de internet
Los documentos no están físicamente alejados en nuestro computador podemos disponer de ellos desde cualquier lugar simplemente con una conexión a internet
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)pacvslideshare
Curso financiado por la Unidad de Calidad, Innovación Docente y Prospectiva de la Universidad de Granada, dentro de la IX Convocatoria de actividades de formación docente
en centros, titulaciones y departamentos (Plan FIDO – Fase I)
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...JAVIER SOLIS NOYOLA
El Mtro. JAVIER SOLIS NOYOLA crea y desarrolla el “ROMPECABEZAS DE ECUACIONES DE 1ER. GRADO OLIMPIADA DE PARÍS 2024”. Esta actividad de aprendizaje propone retos de cálculo algebraico mediante ecuaciones de 1er. grado, y viso-espacialidad, lo cual dará la oportunidad de formar un rompecabezas. La intención didáctica de esta actividad de aprendizaje es, promover los pensamientos lógicos (convergente) y creativo (divergente o lateral), mediante modelos mentales de: atención, memoria, imaginación, percepción (Geométrica y conceptual), perspicacia, inferencia, viso-espacialidad. Esta actividad de aprendizaje es de enfoques lúdico y transversal, ya que integra diversas áreas del conocimiento, entre ellas: matemático, artístico, lenguaje, historia, y las neurociencias.
Experimentación con algoritmos distribuidos usando herramientas libres y gratuitas
1. Experimentación con
algoritmos distribuidos usando
herramientas libres y gratuitas
JJ Merelo, Maribel García Arenas,
Pedro A. Castillo Valdivieso
@geneura
http://geneura.wordpress.com
4. Algoritmos distribuidos con herramientas libres 4
El uso del almacenamiento local
es transparente a la aplicación
5. Algoritmos distribuidos con herramientas libres 5
Qué proponemos en este
trabajo
Usando un modelo isla, probar las posibilidades
del almacenamiento compartido como medio de
transmisión de inmigrantes.
6. Algoritmos distribuidos con herramientas libres 6
Metodología modelo isla
●
Cada isla es un proceso.
●
Intercambio de inmigrantes a través de un directorio
compartido.
– Deja: Aleatorio entre 50% mejor.
– Toma: uno aleatorio.
●
Problema p-peaks P=256 512 bits
●
Población=1024
●
Terminación: cuando uno termina.
7. Algoritmos distribuidos con herramientas libres 7
Ciencia abierta
●
Software y datos libres:
https://code.launchpad.net/~jjmerelo/simplea/tr
unk
●
Trabajo abierto en
http://github.com/CANUBE/maeb-2013
10. Algoritmos distribuidos con herramientas libres 10
El proceso
en paralelo
hace que
mejore el
fitnes más
rápidament
e
11. Algoritmos distribuidos con herramientas libres 11
Pero ¿y el Dropbox?
●
Pruebas iniciales indican que hay mejoras al
añadir nuevos nodos
– Pero no significativas.
●
Hay que trabajar con diferentes
configuraciones para conseguir estas mejoras
– Como en trabajos anteriores.
12. Algoritmos distribuidos con herramientas libres 12
Conclusiones
●
Paralelismo en una caja puede ser una
forma de obtener mejora de prestaciones.
●
Guardar individuos aleatorios y tomarlos de un
grupo es todo lo necesario para conseguir
paralelismo.
13. Algoritmos distribuidos con herramientas libres 13
Trabajo futuro
●
Probar condiciones necesarias para que estas
mejoras se puedan propagar usando
sistemas de almacenamiento en nube
●
Realizar pruebas con problemas de diferente
tamaño para caracterizar el tipo de problemas
para el cual supone un beneficio.