Ir al contenido principal

Entradas

Algoritmia III: divide y vencerás

Briefing : En estos días de confinamiento, me cuesta mucho sentarme y escribir algo para Tecnificados, entre unas cosas y otras no tengo tiempo, y el poco que me sobra estoy demasiado cansado como para redactar un artículo. En un ratillo, he conseguido escribir este, que es bastante sencillote... Continuamos los diversos tipos de algoritmos, vamos a hablar de los famosos "divide y vencerás", su idea se basa en descomponer un problema en varios problemas más pequeños, resolver estos, y combinar sus soluciones . Normalmente, la recursividad nos acompañará en este tipo de soluciones. Estos algoritmos se utilizan muchísimo en Big Data. Este es el enunciado del problema que vamos a resolver usando este tipo de algoritmo:    En el programa de la Casa de Empeños, hace unos días llevaron una bolsa de monedas de plata. Rápidamente llamaron a un experto, y este dijo que había una moneda falsa, pero para tasarla necesitaba saber si pesaba más o menos que las auténticas. En la oficina, s...

Ubuntu en Android 2: ahora con JAVA

En el anterior post ( https://www.tecnificados.com/2020/02/ubuntu-en-android.html ) os comentaba que acaba de descrubrir el emulador "Termux", y todas las cosas que en teoría se podían hacer con él. Esta semana he estado probándolo, y en este artículo os quiero comentar todo lo que he hecho y el resultado final de las pruebas. Mi objetivo como os comenté, era poder lanzar tareas programadas, por lo que vendría fenomenal utilizar " cron ". Misteriosamente no venía instalado en la imagen que estamos utilizando, pero nada que no se arregle con los comandos: apt install cron y service cron start (arrancamos el servicio). Una vez hecho ya tenía preparado el "ejecutor" de mis tareas. Para probarlo bien, necesitaba lanzar una tarea periódica que actualizara datos continuamente, así se me ocurrió utilizar el IBEX 35, programe un pequeño script sh en Linux que descarga el json, y lo subía al repositorio. Para esto también me instalé "cur...

Ubuntu en Android

Llevaba unos cuantos días dándole vueltas para contratar un servidor on line. Lo necesito para lanzar procesos puntuales y de manera periódica. No necesito mucha CPU ni RAM, y aunque no lo necesito 24 horas encendido, no he encontrado ningún servicio que tenga estas características y que sea económico. Pero pensando y pensando, se me ocurrió la idea de cargar los procesos en mi móvil (Android), y lanzarlos desde allí. Pero Android no viene con JAVA... Me puse a buscar, y encontré un programa en la tienda de Google llamado "Termux" ( https://play.google.com/store/apps/details?id=com.termux ), que es un emulador de la consola de Linux. Cuando leí la palabra "emulador" se me encendieron los ojos, y empecé a pensar, pues si es un emulador podré instalar JAVA (si, si se puede), y luego dije, si me instalo GIT y MAVEN no me para nadie (si, también se puede), después fui más allá y se me ocurrió instalar Ubuntu, porque claro, si lo tengo, en mi móvil h...

Algoritmia II: algoritmos voraces

Los algoritmos voraces son muy fáciles de entender y de implementar, por lo que se usan muy a menudo en programación. Imaginaros un problema como este: en la mesa hay diez fragmentos de tarta de diferente grosor y peso, y un comensal quiere elegir los dos trozos que sean más grandes. Al utilizar un algoritmo voraz, primero seleccionará el elemento de mayor peso y grosor, una vez seleccionado ya no puede volver a elegirlo, porque el algoritmo se lo ha "comido", de ahí su nombre. Para solucionar el problema anterior mediante un algoritmo voraz podríamos realizar los siguientes pasos: recorremos los diez fragmentos de tarta buscando el mas grande escogemos el más grande recorremos los nueve fragmentos restantes buscando el más grande escogemos el más grande Seguro que se os ocurren un par de formas de optimizarlo (como ordenar previamente los trozos). Ahora vamos con un problema un poco más complejo: En Tecnificados hemos organizado un festival de c...

Algoritmia: presentación

Para comenzar el año voy a iniciar una serie de artículos relacionados con los diferentes tipos de algoritmos. Mi idea es comentar en cada artículo un diferente tipo de algoritmo (el primero será voraz), y mostrar una solución a un problema codificado en JAVA. Se admiten sugerencias. Imagen de cabecera obtenida de: https://es.wikipedia.org/wiki/Archivo:Algoritmo_de_Anillo.png

Felices Fiestas

El equipo de Tecnificados os desea: (Imagen generada con  https://es.cooltext.com/ )

31 Ayuntamientos con Portales de Datos Abiertos

(Imagen generada con  https://es.cooltext.com/ ) Hoy quiero hacer un pequeño chequeo del estado de los Portales de Datos Abiertos Municipales, ahora que estamos a punto de terminar el 2019. Aprovechando que el evaluador está "terminado", he generado un subinforme: solo con los Ayuntamientos que tienen Portales de Datos Abiertos (31). Vamos a ordenar por calidad de los datos, empezaremos con cuatro estrellas. Solo tenemos a 17 Ayuntamientos con esta puntuación, ordenamos por el número de conjuntos de datos con cuatro estrellas ordenados de mayor a menor : Gijón (119) Cáceres (116) Santander (82) Madrid (70) Santa Cruz de Tenerife (67) Sant Feliu de Llobregat (37) Las Palmas de Gran Canaria (27) Barcelona (21) Cartagena (20) Badia del Vallès (11) Alcobendas (8) Rivas-Vaciamadrid (8) Lorca (4) Valencia (4) Zaragoza (3) Bilbao (2) Donostia/San Sebastián (1) Ahora vamos a ordenar por aquellos conjuntos de datos con tres estrellas. Aquí...