Joplin: Aplicación multiplataforma de código abierto para tomar notas y sincronizarlas en la nube (en desarrollo)

Aunque es prematuro Joplin promete ser la alternativa abierta a Evernote. Aún esta en fase de desarrollo (ver en GitHub) pero ya se puede probar su aplicación de ventanas de escritorio y las aplicaciones móviles trabajando en local o usando una cuenta de MS OneDrive, la sincronización con otras plataformas de almacenamiento en la nube viene de camino no os preocupéis. No se si el formato de notas puede ser obstáculo para los usuarios comunes pero ya aviso que el formato de escritura está basado en MarkDown.

En cuanto a las tecnologías empleadas para su desarrollo el cliente gráfico de escritorio se ha desarrollado con Electron,  es un framework muy interesante para crear aplicaciones nativas con tecnologías Web como JS, HTML y CSS, no voy a entrar más en detalle aquí pero se merece unos cuantos posts para explorar sus posibilidades.

Ni corto ni perezoso me he descargado la aplicación para Win Joplin-Setup-0.10.39.exe y la he instalado en Win 7.

Nada más arrancar ofrece este aspecto:

Antes de seguir adelante y empezar a crear notas sin ton ni son exploramos las opciones de configuración (“Herramientas > Opciones”).

También aprovecho para iniciar la sesión en OneDrive.

Ahora voy a crear un cuaderno y dentro una nota, podemos adjuntar archivos e imágenes en las notas sin problema.

Además de eso con Joplin podemos crear listas de tareas (To-Do) con alarmas asociadas y crear tags o etiquetas de notas o tareas.

En definitiva aún le queda un largo camino para ponerse a la par de Evernote pero Joplin ya es usable y una buena promesa.

Por último no me he podido resistir en cerciorarme de que las notas se sincronizan en una cuenta de OneDrive.

Enlaces externos:

 

Anuncios

Zabbix: Monitorización de redes

Instalación

Máquina VirtualBox Ubuntu 16.04.3 LTS (Xenial Xerus) descargada de OSBoxes.org (usuario: osboxes, clave: osboxes.org).

Una vez cargada la máquina en VirtualBox  descargamos el servidor Zabbix como paquete .deb con soporte para base de datos PostgreSQL.

# wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix/zabbix-server-pgsql_3.4.4-4+xenial_i386.deb
# dpkg -i zabbix-server-pgsql_3.4.4-4+xenial_i386.deb

Zabbix se ejecuta como un demonio o servicio del sistema operativo, para operar con el demonio:

# service zabbix-server [stop | restart  | status]

Una vez que arrancamos podemos depurar la ejecución del servidor monitorizando el fichero de logs que deja en /var/log/zabbix/zabbix_server.log

El primer error es que no consigue conectar con la base de datos zabbix en el ordenador local.

He instalado el paquete PostgreSQL con:

# apt-get install postgresql

Ahora podemos usar los comandos del servicio para arrancar o parar del servidor PostgreSQL.

Creamos un usuario “zabbix” para PostgreSQL:

# sudo -u postgres createuser --pwprompt zabbix

Yo he usado “zabbix” como contraseña. Después creamos la base de datos para el usuario “zabbix”:

# sudo -u postgres createdb -O zabbix zabbix

Creamos las tablas y la base de datos inicial:

# zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix

Ahora especificamos el usuario, clave y host de la BD para Zabbix en “/etc/zabbix/zabbix_server.conf”.

Frontend

Descargamos e instalamos el frontend PHP de Zabbix:

# wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix/zabbix-frontend-php_3.4.4-4+xenial_all.deb

# dpkg -i zabbix-frontend-php_3.4.4-4+xenial_all.deb

# sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql

# service apache2 reload

Los ficheros de la Web se alojan en /usr/share/zabbix/

Ahora empezamos el proceso de configuración del frontend.

He tenido en los prerequisitos porque la zona horaria no estaba correctamente definida en /etc/php/7.0/apache2/php.ini, yo la he definido como:

date.timezone = “Europe/Madrid”

Y he vuelto a reiniciar el servicio de Apache.

Advertencia: El usuario es “Admin” con clave “Zabbix”.

Agente en Ubuntu

# sudo apt-get install zabbix-agent
# service zabbix-agent start

Agente en Win7

Me descargo el agente zabbix_agents_3.4.0.win.zip.

 

MkDocs: Generador de sitios Web (GitHub pages)

Instalación

Es necesario tener Python instalado previamente y el gestor de paquetes pip. Si es la primera vez que instalas pip debes bajar get-pip.py y ejecutarlo:

python get-pip.py

A continuación instalamos mkdocs en Win:

python -m pip install mkdocs

Creación inicial del proyecto

Creamos una carpeta que albergará nuestro proyecto y desde la carpeta padre ejecutamos:

python -m mkdocs new nombre_carpeta_proyecto

Ahora dentro de la carpeta ya tenemos los archivos necesarios:

  • mkdocs.yml
  • docs/index.md

MkDocs incorpora también un servidor para visualizar la Web a medida que la generamos, dentro de la carpeta del proyecto lanzamos el siguiente comando:

python -m mkdocs serve

Ahora podemos visualizar la Web en la siguiente dirección: http://127.0.0.1:8000/.

Configuración del proyecto

Editamos el fichero mkdocs.yml para cambiar el nombre del sitio.

Añadiendo páginas

Añadimos nuevos archivos MarkDown dentro de la carpeta docs, por ejemplo about.md. Ahora en la barra superior tendremos dos elementos de menú apuntando a cada página y botones para navegar entre ellas.

 

Definiendo el theme

Modificamos el archivo mkdocs.yml:

 

Cambiando el icono Favicon

creamos una carpeta img dentro de docs y guardamos nuestro icono como favicon.ico

Generando la Web

Dentro de la carpeta del proyecto ejecutamos:

python -m mkdocs build

Esto crea una subdirectorio site con la Web traducida a HTML.

GitHub pages

Ejecutamos:

mkdocs gh-deploy

El comando genera los archivos de la Web y usa ghp-import  para hacer actualizar el repositorio GitHub (nos solicitará los datos de nuestra cuenta GitHub).

Configuramos GitHub.

Ahora ya puedo ver la Web en el siguiente enlace.

 

 

 

MSPowerBI: Ejercicio cuadro mando sistema solicitudes usuarios

Datasets del ejemplo en CSV y XLSX en Google Drive (en formato comprimido ZIP).

Resultado en Power BI.

En esta ocasión vamos a usar dos orígenes de datos en formato MS Excel (menú “Get Data”), son datos ficticios que representan solicitudes de tareas de usuarios (incidencias.csv) y las respectivas valoraciones (valoraciones.csv), no todas las solicitudes tienen una relación a una fila en las valoraciones por supuesto.

Página 1: Prioridad peticiones

La primera página es muy sencilla, una distribución de las solicitudes por prioridad en forma de diagrama de donut, así en el centro pondré el número de solicitudes totales. Además así cuando pinchemos sobre cada tipo de prioridad el número total en el centro se auto ajustará para mostrar el número de solicitudes de ese tipo.

El diagrama de donut no tiene mayor misterio, solo he ajustado un poco su aspecto, especialmente los colores más comunes para cada tipo de prioridad.

Para la cantidad del centro tal vez exista una forma más sencilla pero yo he creado una fuente de datos con una consulta vacía para crear una medida propia llamada NumTotalIncidencias (menú “Get Data > Blank Query”).

NumTotalIncidencias = COUNTROWS(incidencias)

 

MSDN COUNTROWS Function (DAX)

Página 2: Número de solicitudes en una línea temporal

He usado un diagrama de líneas. El eje temporal será el día de la fecha de creación, para los valores he usado la columna con la clave primaria “PK” aplicando “Count Distinct”.

Página 3: Valoraciones de usuarios

La tercera página la dejo para un resumen de las valoraciones de los usuarios:

 

Ejercicio taller MS Power BI “Datasets Empresa.xlsx”

Resultado publicado en Power BI.

Dataset Excel en GitHub.

Dataset origen de datos

El origen de datos es un archivo de MS Excel “Datasets Empresa.xlsx” con varias pestañas.

Cada pestaña representa una tabla de un modelo relacional:

  • VENTAS: Podemos tener una o varias ventas al mismo CLIENTE relacionadas por la columna cliente con el nombre y apellido.
  • CLIENTES: La columna ubicación nos permite conocer la ciudad y país del cliente.  El cliente puede ser una persona o una empresa (Tipo).
  • COBROS: Relacionado con las VENTAS por el NroFactura, una venta puede fraccionarse en varios cobros.

Definición del origen de datos

Dentro de Power BI Desktop (descargado, instalado y iniciado con una cuenta de evaluación) definimos el origen de datos  con la opción “Get Data”, la mayoría de aplicaciones BI permiten alimentarse de orígenes de datos muy diversos e incluso mezclarlos entre si en el mismo informe, en este caso solo seleccionamos Excel.

Power BI carga el modelo y busca las relaciones correctas entre tablas de forma automática.

En este paso es cuando procederíamos a normalizar los datos usando el editor de consultas para eliminar columnas no deseadas o campos con PK (Primary Key o clave primaria) con valor nulo o datos redundantes por ejemplo.

Una vez vinculados los datos cualquier modificación en el libro Excel externo tendrá reflejo en Power BI.

Ahora procedemos a definir las categorías de datos de algunos campos de las tablas (pestaña “Modeling“). El campo “País” de la tabla “TablaUbicaciones” es más que evidente que lo definimos como “Country/Region“, para la ciudad algo similar ser´”City“.

Primer informe: Cobros y facturas

Vamos a realizar nuestro primer informe con varios elementos de visualización.

Marcamos la casilla de País en la TablaUbicaciones y inmediatamente un mapa aparece en el informe, seleccionamos el campo MontoFactura de TablaVentas para ver las ventas por país. Podemos “embellecer” el formato del mapa con etiquetas, colores y otra serie de opciones.

Copiando el mapa y pegando como nuevo elemento creamos una visualización en forma de gráfico de barras de facturas por país.

Ahora vamos a incluir un gráfico con forma de tarta para segmentar nuestra cartera de clientes por TipoCliente Empresa o Persona.

Seleccionamos una visualización “Pie Chart” con el campo “Tipo” de TablaClientes pero aún no se ve nada, arrastramos y soltamos el campo “Tipo” dentro de “Values” de los campos “Fields” de la visualización.

Ahora vamos a visualizar una tabla con las ventas, cobros y deuda restante por cliente. Para ello vamos a crear una nueva consulta o fuente de datos vacía:  Get Data > Blank Query.

En la ventana nueva Query Editor le damos un nombre, MEDIDAS por ejemplo y comenzamos a crear nuevas medidas con “New measure” (botón derecho del ratón sobre el nuevo campo o FIELDS).

Introducimos la formula necesaria para calcular la deuda:

Generamos nuevas medidas para el sumatorio de cobros y ventas.

Ahora que tenemos las 3 medidas generamos la visualización:

Para acabar publicamos los resultados en el servicio de PowerBI en la nube.

Enlaces externos