Como traducir un libro en papel a otro idioma


Con la llegada de la tecnología , se ha hecho posible realizar «hazañas» que en otras épocas hubieran podido parecer imposible , y en este post vamos a hablar de una de ellas : la traducción automática de calidad de libros o documentos en otros idiomas.

En efecto cuando el matemático Warren Weaver en los años 50 vaticinó que las maquinas serian capaces de traducir automáticamente, seguramente no fue consciente de a donde llegaría su pronóstico, al igual probablemente en la misma medida que quizás tampoco ahora seamos capaces de saber hasta donde de lejos llegaremos con la traducción simultanea.

Cuándo pensamos en la traducción automática probablemente pensaremos en la famosa herramienta de Google Translate, pero hemos de decir que día a día, gracias al aprendizaje automático y a la evolución de la Inteligencia Artificial, surgen opciones que superan en muchos aspectos a esta herramienta. Una de esas opciones es el servicio Deepl que genera traducciones mucho mas realistas que otras opciones ,

Para los amigos lectores que le guste leer mucho, de modo que la lectura forme parte de vuestra identidad, entonces, DeepL podría ser la mejor aplicación que ha existido pues la calidad de las traducciones (y nos tenemos que rendir otra vez ante ellos y ante la evidencia), está a la altura de cualquier traducción «homologada», sobre todo cuándo pasamos de cualquier idioma al Ingles.

Bien, si tenemos un escrito en papel impreso en otro idioma y queremos traducirlo a nuestro idioma ,necesitaremos algunas de las siguientes herramientas:

-Un scanner de buena calidad ( normalmente la mayoría de los scanner modernos lo suelen ser)

-Software de escaneo nativo del propio Scanner( en caso de un scanner HP, lo ideal es usar la multiherramienta HP Smart)

-Acrobat Reader a ser posible en su versión profesional para aplicarle el OCR

-Servicio Ilovepdf

-Servicio de traducción online DeepL.

Bueno , sin más dilaciones empecemos con nuestra empresa.

FASE1: ESCANEO DE DOCUMENTOS

Lo primero que necesitáremos es escanear los documentos a un formato standard como puede ser el formato PDF. Es también necesario que dado que en caso de libros en la costura o en los bordes de las hojas aparezcan sombras , realizar el escaneo seleccionado solo la mínima zona donde haya escrito despreciando el resto para facilitar al oCR cumplir su cometido

En nuestro caso vamos a usar la multifunción HP Deskjet 2540 con el software HP Smart. Obviamente tenemos que tener la maquina correctamente configurada y bien instalada ( por ejemplo para usar el software de HP necesitaremos estar validados para usar el servicio) .

Si usamos el software de HP nos iremos a la Opción Escanear, seleccionaremos «Detectar bordes» y una resolución de 300pp, pondremos la primera hoja del documento que queremos traducir lo mas recta posible sin que pueda quedar zonas de sombra y pulsaremos el botón «Escanear».

Es importante apretar con fuerza sobre la parte del lomo para minimizar las sombras inevitables que parareceran en la union centrar de las dos paginas .

Ahora, una vez hayamos escaneado el primer documento, que aunque hayamos dado la opción de Detección bordes , ajustar al mínimo la frontera entre el texto y la zona en blanco de modo que se minimicen las zonas de sombra tope ya que esto facilitara la labor del OCR y además minimizará el tamaño del archivo resultante .

Una vez delimitada la zona de texto, si usamos el sw de HP , daremos al botón «Aplicar» para tomar solo la parte que nos interesa ( el texto). En este punto que probablemente el traductor lo mezcle con el texto , es conveniente omitir en la zona de escaneo el numero de pagina pues esto suele dar muchos problemas con los servicios de traducción al estar fuera de los párrafos «normales».

Asimismo destacar que una vez hayamos seleccionado el área mínima con texto y previsualizado la zona , le demos a «Agregar«, para seguir añadiendo páginas al mismo documento.

Este proceso lo iremos realizando poco a poco siguiendo el orden de las páginas e intentando mantener la misma orientación (no seria crucial para el traductor o para el OCR , pero es trabajo extra que podemos evitar si lo hacemos correctamente desde el principio .

Importante: Antes de guardar él scanner si lo deseamos podemos escanear la portada y contraportada pues aunque no le apliquemos ningún otro tratamiento podemos añadirlo al final para que queda el pdf resultante con un toque mas profesional.

Es importante destacar que si vamos a usar el servicio DeepL el tamaño máximo admitido para el PDF es de 5MB , así que deberíamos tomar el numero de paginas suficiente para que no supere ese valor el pdf resultante.

Bien una vez hayamos concluido, le daremos a guardar en formato PDF básico , elegiremos un nombre ( por defecto se selecciona un nombre no obstante), pulsaremos «Aceptar» y comprobaremos que el fichero generado no supera el tamaño máximo (5Mb)

Una buena opción puede ser elegir ficheros de 20 a 30 páginas dado que con servicio Ilovepdf podemos unir las paginas mediante la opcion UNIR PDF y usando un tamaño «pequeño» de paginas el sw del scanner no nos dará problemas.

Asimismo , es interesante para minimizar el numero de pasos reducir el tamaño del fichero ( recuerde que DeepL y otros servicios limitan a 5Mb el tamaño del fichero máximo a escanear), objetivo que podemos cumplir con la opción «Comprimir PDF»

Bueno, ahora que tenemos uno o varios ficheros en formato en PDF de diferentes partes escritas , es conveniente antes de usar el servicio de traducción , aplicarle el OCR a los ficheros, por lo que abriremos el Adobe Acrobat Pro, Pulsaremos Herramientas, elegiremos Reconocimiento de texto y pulsaremos «En este archivo» . Es muy importante en es punto seleccionar el idioma en el que esta el escrito para que no haya problemas después posteriormente

Bueno , una vez hayamos pasado el OCR y salvado el fichero , ya solo nos queda traducir el fichero para lo cual usaremos el servicio Deepl , actualmente limitado a 4 ficheros de 5MB al mes por usuario en su versión gratuita.

Ahora pues nos oiremos a deepl.com , pulsaremos la opción «Traducir archivos» y subiremos el fichero pdf resultante de haberle aplicado el OCR y seleccionaremos el idioma del texto original que hemos pasado el OCR y al idioma que queremos nos traduzca .

Según el tamaño del pdf, la traducción puede tardar unos cuanto minutos así que no debemos desesperarnos ( puede oscilar entre tres o cuatro minutos si usamos ficheros comprimidos en pdf que contengan además alguna imagen).

Por cierto si usamos la versión gratuita , el fichero que nos devuelva deepL tendrá una pequeña marca de agua al principio del pdf y también vendrá protegido.

Una vez traducido el fichero , ya solo nos queda unir los ficheros resultantes ya traducidos usando el servicio IlovePdf con la opción UINIR PDF que ya hemos visto .

Además para darle un toque mas «profesional» es interesante al conjunto añadirle la portada y contraportada que previamente ya habíamos escaneado para general un único fichero que hemos conseguido traducir gracias a este mix de herramientas de las que hemos hablado .

Por cierto si en lugar de un texto impreso cuenta con un fichero en pdf en otro idioma, el proceso descrito, excepto el del escaneo, es completamente valido ( eso si en lugar de unir PDF tendrá que usar la opción DIVIDIR PDF del servicio ilovepdf para obtener ficheros que pueda usar en el servicio deepl).

Espero amigo lector le haya gustado esta guia, de modo que si tiene alguna sugerencia, truco o idea no dude en comentarla .!Gracias!

Anuncio publicitario

Cómo convertir su impresora 3D en un plotter en dos pasos


Un plotter o trazador es un dispositivo que puede dibujar texto e imágenes en papel con un utensilio ( por ejemplo un bolígrafo). 

Si pensamos en en el hardware necesario , podemos pensar que un buen atajo puede ser una vieja ( o no) impresora 3D pues estas ya incluyen todo el hardware y la electrónica que necesitamos: sólo hay que encontrar la manera de adjuntar un utensilio de dibujo y cómo decirle que dibuje.

En realidad como vamos a ver es mucho más fácil de lo que nos podemos imaginar, asi que en esta publicación de blog, aprenderá cómo puede hacer su propio dibujo de impresora.

Ejemplo del primer dibujo de su impresora 3D! 

Convertir una impresora 3D en una impresora 2D

Quizás se pregunte cuál es la utilidad de convertir una impresora 3D en algo que pueda dibujar imágenes 2D en un papel. Después de todo, las impresoras convencionales hacen eso desde hace varias décadas, ¿no es eso un paso atrás?

Pues , un plotter le permitirá dibujar con bolígrafo, lápices de colores, crayones, marcadores e incluso una pluma (básicamente todo lo que pueda dejar marcas en un papel). Pero no solo eso, incluso podemos dibujar en diferentes materiales, como cartón o vidrio. También puede ser creativo con tipos de tinta únicos, como dorada, plateada o que brillan en la oscuridad

Una utilidad innegable para los electrónicos es ayudar en la fabricación de circuitos impresos pues normalmente el diseño de la pcb se realiza calcando el diseño en la parte del cobre y luego hay que volver hay que repintar el diseño con un rotulador edding ( Además incluso puede ayudar en el taladrado con un cnc los orificios para los componentes)

Paso 1 – Colocación de un utensilio de dibujo

Desea montar de manera confiable un bolígrafo en el cabezal de la impresora y asegurarse de que la punta del bolígrafo quede un poco por debajo de la boquilla. Empecé diseñando una pequeña parte de este propósito. Se sujeta al cabezal de la impresora utilizando un pequeño tornillo M3 para fijar el bolígrafo en él:

Puede conseguir el modelo en thingiverse aquí . Debe adaptarse a cualquier impresora Creality Ender-3 o CR-20, y posiblemente a otras impresoras Creality. También es personalizable, por lo que puede modificar las dimensiones (si desea colocar un marcador más grande o necesita un ajuste más ajustado con la impresora).

Para otras impresoras, deberá diseñar su propio mecanismo de montaje (cuando lo haga, comparta un enlace en los comentarios). Si bien también es posible usar tornillos para montar el bolígrafo, personalmente prefiero el mecanismo de recorte, ya que me permite cambiar entre los modos de impresora 3D y trazador muy rápido, y también cambiar los bolígrafos muy rápido.

Paso 2 – Calibración

Una vez que haya montado correctamente su lápiz en su impresora, es hora de calibrarlo. Deberá adjuntar una hoja de papel a la cama de la impresora:

Bolígrafo montado, papel adjunto, ¡listo para su comando!

A continuación, deberá encontrar la altura correcta para imprimir. Se recomiendo usar Repetier Host pen lugar del clasico Cura, pues Repetier Host hara todo mucho más fácil ).

Antes de comenzar, asegúrese de que la plataforma de la impresora esté nivelada y que tanto la boquilla como la plataforma de la impresora estén frías.

Después de ubicar su impresora, vaya a la pestaña «Control manual» dentro de Repetier y mueva el cabezal de impresión hacia arriba hasta que la punta del bolígrafo esté por encima del papel. Luego, mueva su eje X / Y al borde de donde desea que esté su dibujo. Finalmente, mueva el eje Z hacia abajo en incrementos de 0,1 mm, hasta que vea que la punta del bolígrafo toca el papel. A continuación, puede mover un poco la X / Y y comprobar que el bolígrafo realmente deja un rastro en el papel. Cuando termine, observe los valores X / Y / Z que aparecen en la línea superior:

Calibración de la posición de su lápiz en Repetier Host.

En mi caso, los valores fueron 47 para X, 40 para Y y 14,6 para Z. Usaremos estos valores en breve cuando generemos el archivo GCode para imprimir.

Paso 3: elegir qué imprimir y generacion del gcode

Esa es una dificil pues existen infinitass opciones. Sin embargo, deberá obtenerlo en formato vectorial, por lo que si usa Google Imágenes, agregue el texto type:svg al final de su consulta de búsqueda. También puede convertir imágenes JPEG y PNG a SVG , pero sugeriría comenzar con algo que ya viene como un vector para simplificar las cosas.

Cuando se comenza un proyecto asi seguro que se piensa en el tiempo para conseguir el hardware correcto, pero se sorprenderalo rápido que se hace funcionar la parte del hardware. Sin embargo, el software es otra historia completamente diferente; como siempre, el software es donde reside la verdadera complejidad .

 Además de Repetier Host mencionado anteriormente, también necesita obtener Inkscape (que, por cierto, ¡también es útil si desea crear arte de PCB !).

Dentro de Inkscape, cree un nuevo archivo y vaya al menú Archivo → Propiedades del documento (Acceso directo: Ctrl + Shift + D). Luego, establezca el tamaño del documento un poco más pequeño que el tamaño de la cama de impresión y asegúrese también de usarlo mm para las unidades.

Una vez que haya establecido el tamaño, puede importar cualquier archivo SVG que desee o simplemente dibujar un texto con la herramienta Texto:

Cuando termine, con el texto aún seleccionado, haga clic en el menú Ruta → Objeto a ruta (Mayús + Ctrl + C). Esto convertirá el texto en una serie de puntos conectados por líneas, lo cual es necesario para alimentar la impresora. Puede agregar más elementos como espirales y formas de estrella, repitiendo la operación «Objeto a ruta» para cada uno:

Al imprimir, los objetos no se rellenarán, por lo que es posible que desee eliminar su color de relleno y establecer su color de trazo en negro (o el color de su lápiz), para obtener una representación más precisa del resultado final. Seleccione todos los objetos (Ctrl + A) y luego elimine el relleno y aplique color negro para el trazo (Ctrl + Shift + F):

Establecer el color de la pintura de trazo en negro

Cuando esté satisfecho con el resultado, es hora de generar el GCode para la impresora. Usaremos una extensión llamada «Gcodetools», que viene incluida con Inkscape (si no, tiene una versión anterior y necesita actualizar).

Comenzaremos definiendo los puntos de orientación, que le dicen a la impresora cómo mapear las líneas en la pantalla en el papel. Vaya al Menú de extensiones → Gcodetools → Puntos de orientación  y después de asegurarse de que el modo “2 puntos” esté seleccionado, haga clic en Aplicar y luego en Cerrar . Ahora debería ver dos nuevos elementos de texto agregados en la parte inferior de su dibujo:

Estos son los puntos de orientación. Cada punto es una lista de coordenadas X, Y, Z que especifica la ubicación de destino de ese punto en el sistema de coordenadas de la impresora. Debe editarlos para que coincidan con la X / Y que encontró en el paso de calibración y establecer la Z (la tercera coordenada) en 0.

Edite el texto en el punto izquierdo y actualícelo para que contenga las coordenadas X / Y que encontró. En mi caso lo fue (47; 40; 0). Para el punto correcto, agregue 100 al valor X, copie el Y / Z del primero, por ejemplo (147; 40; 0):

A continuación, necesitamos generar una herramienta y configurar su velocidad. Este paso es opcional, pero si no lo hace, su impresora se dibujará realmente muy lento. Vaya al menú Extensiones → Gcodetools → Biblioteca de herramientas  y seleccione «predeterminado» en «Tipos de herramientas»:

Haga clic en Aplicar y luego en Cerrar, y debería ver un rectángulo verde con muchas configuraciones agregadas a su dibujo:

Puede alejar este rectángulo (junto con todos los valores) para que no se sobreponga en su dibujo. Luego, desea editar el texto y cambiar los valores de «Alimentación», «Alimentación de penetración», «Alimentación de paso» para establecer la velocidad de movimiento de la impresora al dibujar. Yo uso 4500 para todos ellos (la unidad es mm / min, por lo que este valor corresponde a 75 mm / seg).

¡Finalmente estamos listos para generar el GCode! Seleccione todos los elementos en su dibujo (Ctrl + A) y vaya a Extensiones → Gcodetools → Ruta a Gcode…

Allí, vaya a la pestaña Opciones y establezca «Escala a lo largo del eje Z» en 1, y «Desplazamiento a lo largo del eje Z» al valor Z que encontró en el paso de calibración, menos uno (encontré 14.6, así que lo configuré aquí a 13.6):

A continuación, vaya a la pestaña Preferencias y establezca el nombre del archivo de salida y la ruta del directorio cuando desee que se guarde. También puede configurar la altura segura Z en un valor más bajo, para acelerar la impresión (yo uso 5):

Finalmente, cambie a la pestaña Ruta a Gcode , configure la Función de profundidad en 1y haga clic en Aplicar. Tardará unos segundos y es posible que muestre una advertencia acerca de que no se han seleccionado rutas, que puede ignorar con seguridad. Debería ver una nueva capa en la parte superior de su dibujo, mostrando los movimientos del cabezal de impresión en el archivo Gcode generado:

En este punto, sugiero abrir el archivo .gcode en un editor de texto y verificar que se vea legítimo, especialmente que los valores Z coincidan con el valor de calibración que encontró:

¡GCode generado! Tenga en cuenta que el valor Z es 14.60000 aquí

También sugiero editar la primera linea G00 y agregar F4500 al final, de lo contrario, su impresora podría hacer que el movimiento inicial del cabezal sea realmente lento:

¡Eso es! Estás listo para imprimir. Cargue su archivo Gcode en el host de Repetier y debería ver su dibujo en la pantalla:

Diga su oración, haga clic en el botón «Iniciar impresión» y … ¡disfrute del espectáculo!

Fuente :https://urish.medium.com/

Cómo configurar Jupyter Notebook con Python 3 en Ubuntu 18.04


Vamos a ver como a configurar Jupyter Notebook en un maquina con Ubuntu 18.04, y aprender a conectarse al Notebook y a utilizarlo. Jupyter Notebooks (o simplemente Notebooks) es un conjunto de documentos producidos por la aplicación Jupyter Notebook, la cual contiene tanto elementos de código icomo de texto enriquecido (párrafos, ecuaciones, cifras y enlaces, entre otros) que ayudan a presentar y compartir la investigación que puede reproducirse.

Al final de esta guía, podrá ejecutar código de Python 3 usando un Jupyter Notebook en ejecución.

Configurar Python

Para iniciar el proceso, instalaremos las dependencias que necesitamos para nuestro entorno de programación de Python desde los repositorios de Ubuntu. Ubuntu 18.04 viene con Python 3.6 previamente instalado. Usaremos el administrador de paquetes de Python pip para instalar componentes adicionales más tarde.

Necesitaremos primero actualizar el índice de paquetes local apt y luego descargaremos e instalaremos los paquetes:

sudo apt update

A continuación, instale pip y los archivos de encabezado de Python, utilizados por algunas dependencias de Jupyter:

sudo apt install python3-pip python3-dev

Ahora podemos proceder a configurar un entorno virtual de Python en el que instalaremos Jupyter.

Crear un entorno virtual de Python para Jupyter

Ahora Python 3, sus archivos de encabezado y pip están listos para comenzar, podemos crear un entorno virtual de Python para administrar nuestros proyectos. Instalaremos Jupyter en este entorno virtual.

Para ello, primero necesitaremos acceso al comando virtualenv, que podemos instalar con pip.

Actualice pip e instale el paquete escribiendo lo siguiente:

sudo -H pip3 install --upgrade pip
sudo -H pip3 install virtualenv

El indicador -H garantiza que la política de seguridad defina la variable de entorno home como el directorio de inicio del usuario de destino.

Con virtualenv ya instalado, podemos comenzar a crear nuestro entorno. Cree un directorio en el que podamos guardar los archivos de nuestro proyecto y posiciónese en él: Daremos a este directorio el nombre my_project_dir, pero deberá usar un nombre que sea significativo para usted y para el trabajo que está desarrolle.

mkdir ~/my_project_dir
cd ~/my_project_dir

En el directorio del proyecto, crearemos un entorno virtual de Python. A los efectos de este tutorial, le daremos el nombre my_project_env, pero debería asignarle uno que se relacione con su proyecto.

virtualenv my_project_env

Con esto, se creará un directorio llamado my_project_env dentro de su directorio my_project_dir. Dentro de este, se instalarán una versión local de Python y una versión local de pip. Podemos usar esto para instalar y configurar un entorno aislado de Python para Jupyter.

Antes de instalar Jupyter, debemos activar el entorno virtual. Puede hacerlo escribiendo lo siguiente:

source my_project_env/bin/activate

Su línea de comandos cambiará para indicar que ahora realizará operaciones en un entorno virtual de Python. Tendrá un aspecto similar al siguiente: (my_project_env)[email protected]:~/my_project_dir$.

Con esto, estará listo para instalar Jupyter en este entorno virtual.

Instalar Jupyter

Una vez activado su entorno virtual, instale Jupyter con la instancia local de pip.

Nota: Cuando se active el entorno virtual (cuando (my_project_env) se encuentre al inicio de su línea de comandos), use pip en lugar de pip3, incluso si emplea Python 3. La copia del entorno virtual de la herramienta siempre se llama pip, independientemente de la versión de Python.

pip install jupyter

En este punto, habrá instalado con éxito todo el software necesario para ejecutar Jupyter. Ahora podremos iniciar el servidor de Notebook.

Ejecutar Jupyter Notebook

Ya dispone de todo lo que necesita para ejecutar Jupyter Notebook. Para ejecutarlo, introduzca el siguiente comando:

jupyter notebook

Se mostrará un registro de las actividades de Jupyter Notebook en el terminal. Cuando se ejecuta Jupyter Notebook, este funciona en un número de puerto específico. Normalmente, el primer notebook que ejecute usará el puerto 8888. Para verificar el número de puerto específico en el que se ejecuta Jupyter Notebook, consulte el resultado del comando utilizado para iniciarlo:

Output[I 21:23:21.198 NotebookApp] Writing notebook server cookie secret to /run/user/1001/jupyter/notebook_cookie_secret
[I 21:23:21.361 NotebookApp] Serving notebooks from local directory: /home/sammy/my_project_dir
[I 21:23:21.361 NotebookApp] The Jupyter Notebook is running at:
[I 21:23:21.361 NotebookApp] http://localhost:8888/?token=1fefa6ab49a498a3f37c959404f7baf16b9a2eda3eaa6d72
[I 21:23:21.361 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 21:23:21.361 NotebookApp] No web browser found: could not locate runnable browser.
[C 21:23:21.361 NotebookApp]

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=1fefa6ab49a498a3f37c959404f7baf16b9a2eda3eaa6d72

Si ejecuta Jupyter Notebook en una computadora local (no en un servidor), puede dirigirse a la URL que se muestra para conectarse a Jupyter Notebook. Si ejecuta Jupyter Notebook en un servidor, deberá establecer conexión con este usando túneles SSH.

Usar Jupyter Notebook

Si Jupyter Notebook aún no está en ejecución, inícielo con el comando jupyter notebook.

Con esto, debería establecer conexión con este usando un navegador web. Jupyter Notebook es una herramienta muy poderosa que dispone de muchas características. En esta sección se mostrarán algunas de las características básicas para que comience a usar el Notebook. Jupyter Notebook mostrará todos los archivos y las carpetas en el directorio desde el que se ejecuta. Por ello, cuando trabaje en un proyecto asegúrese de iniciarlo desde el directorio del proyecto.

Para crear un nuevo archivo de Notebook, seleccione New > Python 3 en el menú desplegable que se encuentra en la parte superior derecha:

Crear un nuevo notebook de Python 3

Con esto se abrirá un Notebook. Ahora podemos ejecutar el código de Python en la celda o cambiar la celda a lenguaje de marcado. Por ejemplo, cambie la primera celda para aceptar el lenguaje de marcado haciendo clic en Cell > Cell Type > Markdown en la barra de navegación de la parte superior. Con esto, podremos escribir notas usando el lenguaje de marcado e incluso incluir ecuaciones escritas en LaTeX disponiéndolas entre los símbolos de $$. Por ejemplo, escriba lo siguiente en la celda después del cambio a lenguaje de marcado:

# First Equation

Let us now implement the following equation:
$$ y = x^2$$

where $x = 2$

Para convertir el lenguaje de marcado en texto enriquecido, presione CTRL + ENTER. Deberían aparecer los siguientes resultados:

Resultados de lenguaje de marcado

Puede utilizar las celdas de lenguaje de marcado para crear notas y documentar su código. Implementaremos esa ecuación e imprimiremos el resultado. Haga clic en la celda superior y presione ALT+ENTER para añadir una celda debajo de esta. Ingrese el código siguiente en la nueva celda.

x = 2
y = x**2
print(y)

Para ejecutar el código, presione CTRL+ENTER. Obtendrá los siguientes resultados:

Resultado de la primera ecuación

Ahora podrá importar módulos y usar el Notebook como lo haría con cualquier otro entorno de desarrollo de Python.

A partir de aquí, puede iniciar un proyecto de análisis y visualización de datos o por ejemplo ,si está interesado en abordar el tema en mayor profundidad, puede investigar sobre Visualización y pronóstico de series de tiempo.

Como ejemplo , en las lineas siguientes mostramos una ejecución de los comandos anteriormente vistos:

[email protected]:~$ sudo apt install python3-pip python3-dev
[sudo] contraseña para carlos: 
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
python3-dev ya está en su versión más reciente (3.8.2-0ubuntu2).
python3-pip ya está en su versión más reciente (20.0.2-5ubuntu1.5).
Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios.
  distro-info libfprint-2-tod1 libllvm9
Utilice «sudo apt autoremove» para eliminarlos.
0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 40 no actualizados.
[email protected]:~$ sudo -H pip3 install --upgrade pip
Requirement already satisfied: pip in /usr/local/lib/python3.8/dist-packages (21.1.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[email protected]:~$ sudo -H pip3 install virtualenv
Requirement already satisfied: virtualenv in /usr/local/lib/python3.8/dist-packages (20.4.7)
Requirement already satisfied: distlib<1,>=0.3.1 in /usr/local/lib/python3.8/dist-packages (from virtualenv) (0.3.2)
Requirement already satisfied: six<2,>=1.9.0 in /usr/lib/python3/dist-packages (from virtualenv) (1.14.0)
Requirement already satisfied: appdirs<2,>=1.4.3 in /usr/local/lib/python3.8/dist-packages (from virtualenv) (1.4.4)
Requirement already satisfied: filelock<4,>=3.0.0 in /usr/local/lib/python3.8/dist-packages (from virtualenv) (3.0.12)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[email protected]:~$ ls
Descargas   Escritorio  Música      Público  Vídeos
Documentos  Imágenes    Plantillas  snap
[email protected]:~$ mkdir ~/mi_proyecto_dir
[email protected]:~$ mkdir ~/mi_proyecto_dir
mkdir: no se puede crear el directorio «/home/carlos/mi_proyecto_dir»: El archivo ya existe
[email protected]:~$ cd ~/mi_proyecto_dir
[email protected]:~/mi_proyecto_dir$ virtualenv mi_proyecto_env
created virtual environment CPython3.8.5.final.0-64 in 458ms
  creator CPython3Posix(dest=/home/carlos/mi_proyecto_dir/mi_proyecto_env, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/carlos/.local/share/virtualenv)
    added seed packages: pip==21.1.2, setuptools==57.0.0, wheel==0.36.2
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
[email protected]:~/mi_proyecto_dir$ source mi_proyecto_env/bin/activate
(mi_proyecto_env) [email protected]:~/mi_proyecto_dir$ pip install jupyter
Collecting jupyter
  Downloading jupyter-1.0.0-py2.py3-none-any.whl (2.7 kB)
Collecting ipykernel
  Downloading ipykernel-5.5.5-py3-none-any.whl (120 kB)
     |████████████████████████████████| 120 kB 2.7 MB/s 
Collecting jupyter-console
  Downloading jupyter_console-6.4.0-py3-none-any.whl (22 kB)
Collecting notebook
  Downloading notebook-6.4.0-py3-none-any.whl (9.5 MB)
     |████████████████████████████████| 9.5 MB 9.2 MB/s 
Collecting qtconsole
  Downloading qtconsole-5.1.0-py3-none-any.whl (119 kB)
     |████████████████████████████████| 119 kB 1.6 MB/s 
Collecting ipywidgets
  Downloading ipywidgets-7.6.3-py2.py3-none-any.whl (121 kB)
     |████████████████████████████████| 121 kB 1.6 MB/s 
Collecting nbconvert
  Downloading nbconvert-6.1.0-py3-none-any.whl (551 kB)
     |████████████████████████████████| 551 kB 2.3 MB/s 
Collecting ipython>=5.0.0
  Downloading ipython-7.25.0-py3-none-any.whl (786 kB)
     |████████████████████████████████| 786 kB 3.2 MB/s 
Collecting tornado>=4.2
  Downloading tornado-6.1-cp38-cp38-manylinux2010_x86_64.whl (427 kB)
     |████████████████████████████████| 427 kB 3.2 MB/s 
Collecting traitlets>=4.1.0
  Downloading traitlets-5.0.5-py3-none-any.whl (100 kB)
     |████████████████████████████████| 100 kB 2.9 MB/s 
Collecting jupyter-client
  Downloading jupyter_client-6.1.12-py3-none-any.whl (112 kB)
     |████████████████████████████████| 112 kB 3.3 MB/s 
Collecting pygments
  Downloading Pygments-2.9.0-py3-none-any.whl (1.0 MB)
     |████████████████████████████████| 1.0 MB 4.6 MB/s 
Requirement already satisfied: setuptools>=18.5 in ./mi_proyecto_env/lib/python3.8/site-packages (from ipython>=5.0.0->ipykernel->jupyter) (57.0.0)
Collecting matplotlib-inline
  Downloading matplotlib_inline-0.1.2-py3-none-any.whl (8.2 kB)
Collecting pexpect>4.3
  Downloading pexpect-4.8.0-py2.py3-none-any.whl (59 kB)
     |████████████████████████████████| 59 kB 3.4 MB/s 
Collecting prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0
  Downloading prompt_toolkit-3.0.19-py3-none-any.whl (368 kB)
     |████████████████████████████████| 368 kB 3.5 MB/s 
Collecting jedi>=0.16
  Downloading jedi-0.18.0-py2.py3-none-any.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 2.7 MB/s 
Collecting backcall
  Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB)
Collecting pickleshare
  Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
Collecting decorator
  Downloading decorator-5.0.9-py3-none-any.whl (8.9 kB)
Collecting parso<0.9.0,>=0.8.0
  Downloading parso-0.8.2-py2.py3-none-any.whl (94 kB)
     |████████████████████████████████| 94 kB 1.7 MB/s 
Collecting ptyprocess>=0.5
  Downloading ptyprocess-0.7.0-py2.py3-none-any.whl (13 kB)
Collecting wcwidth
  Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Collecting ipython-genutils
  Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB)
Collecting nbformat>=4.2.0
  Downloading nbformat-5.1.3-py3-none-any.whl (178 kB)
     |████████████████████████████████| 178 kB 3.7 MB/s 
Collecting widgetsnbextension~=3.5.0
  Downloading widgetsnbextension-3.5.1-py2.py3-none-any.whl (2.2 MB)
     |████████████████████████████████| 2.2 MB 4.5 MB/s 
Collecting jupyterlab-widgets>=1.0.0
  Downloading jupyterlab_widgets-1.0.0-py3-none-any.whl (243 kB)
     |████████████████████████████████| 243 kB 2.8 MB/s 
Collecting jsonschema!=2.5.0,>=2.4
  Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
     |████████████████████████████████| 56 kB 2.4 MB/s 
Collecting jupyter-core
  Downloading jupyter_core-4.7.1-py3-none-any.whl (82 kB)
     |████████████████████████████████| 82 kB 545 kB/s 
Collecting six>=1.11.0
  Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting attrs>=17.4.0
  Downloading attrs-21.2.0-py2.py3-none-any.whl (53 kB)
     |████████████████████████████████| 53 kB 1.7 MB/s 
Collecting pyrsistent>=0.14.0
  Downloading pyrsistent-0.17.3.tar.gz (106 kB)
     |████████████████████████████████| 106 kB 4.7 MB/s 
Collecting pyzmq>=17
  Downloading pyzmq-22.1.0-cp38-cp38-manylinux2010_x86_64.whl (1.1 MB)
     |████████████████████████████████| 1.1 MB 9.0 MB/s 
Collecting argon2-cffi
  Downloading argon2_cffi-20.1.0-cp35-abi3-manylinux1_x86_64.whl (97 kB)
     |████████████████████████████████| 97 kB 2.4 MB/s 
Collecting terminado>=0.8.3
  Downloading terminado-0.10.1-py3-none-any.whl (14 kB)
Collecting Send2Trash>=1.5.0
  Downloading Send2Trash-1.7.1-py3-none-any.whl (17 kB)
Collecting prometheus-client
  Downloading prometheus_client-0.11.0-py2.py3-none-any.whl (56 kB)
     |████████████████████████████████| 56 kB 2.9 MB/s 
Collecting jinja2
  Downloading Jinja2-3.0.1-py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 5.3 MB/s 
Collecting python-dateutil>=2.1
  Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
     |████████████████████████████████| 227 kB 6.1 MB/s 
Collecting cffi>=1.0.0
  Downloading cffi-1.14.5-cp38-cp38-manylinux1_x86_64.whl (411 kB)
     |████████████████████████████████| 411 kB 5.6 MB/s 
Collecting pycparser
  Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB)
     |████████████████████████████████| 112 kB 6.4 MB/s 
Collecting MarkupSafe>=2.0
  Downloading MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl (30 kB)
Collecting defusedxml
  Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB)
Collecting jupyterlab-pygments
  Downloading jupyterlab_pygments-0.1.2-py2.py3-none-any.whl (4.6 kB)
Collecting pandocfilters>=1.4.1
  Downloading pandocfilters-1.4.3.tar.gz (16 kB)
Collecting entrypoints>=0.2.2
  Downloading entrypoints-0.3-py2.py3-none-any.whl (11 kB)
Collecting testpath
  Downloading testpath-0.5.0-py3-none-any.whl (84 kB)
     |████████████████████████████████| 84 kB 2.3 MB/s 
Collecting nbclient<0.6.0,>=0.5.0
  Downloading nbclient-0.5.3-py3-none-any.whl (82 kB)
     |████████████████████████████████| 82 kB 156 kB/s 
Collecting mistune<2,>=0.8.1
  Downloading mistune-0.8.4-py2.py3-none-any.whl (16 kB)
Collecting bleach
  Downloading bleach-3.3.0-py2.py3-none-any.whl (283 kB)
     |████████████████████████████████| 283 kB 2.0 MB/s 
Collecting async-generator
  Downloading async_generator-1.10-py3-none-any.whl (18 kB)
Collecting nest-asyncio
  Downloading nest_asyncio-1.5.1-py3-none-any.whl (5.0 kB)
Collecting webencodings
  Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
Collecting packaging
  Downloading packaging-20.9-py2.py3-none-any.whl (40 kB)
     |████████████████████████████████| 40 kB 2.3 MB/s 
Collecting pyparsing>=2.0.2
  Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
     |████████████████████████████████| 67 kB 2.3 MB/s 
Collecting qtpy
  Downloading QtPy-1.9.0-py2.py3-none-any.whl (54 kB)
     |████████████████████████████████| 54 kB 1.6 MB/s 
Building wheels for collected packages: pyrsistent, pandocfilters
  Building wheel for pyrsistent (setup.py) ... done
  Created wheel for pyrsistent: filename=pyrsistent-0.17.3-cp38-cp38-linux_x86_64.whl size=106707 sha256=e6bbf1c3ab821bff25db37c383511188da3a4f86108ffafb72e36a85a06af1a7
  Stored in directory: /home/carlos/.cache/pip/wheels/3d/22/08/7042eb6309c650c7b53615d5df5cc61f1ea9680e7edd3a08d2
  Building wheel for pandocfilters (setup.py) ... done
  Created wheel for pandocfilters: filename=pandocfilters-1.4.3-py3-none-any.whl size=8006 sha256=b9ea03260cb4b2803d7d4ce8b6af9838ccd6c5a1509e73f783636910928a9d84
  Stored in directory: /home/carlos/.cache/pip/wheels/fc/39/52/8d6f3cec1cca4ceb44d658427c35711b19d89dbc4914af657f
Successfully built pyrsistent pandocfilters
Installing collected packages: ipython-genutils, traitlets, six, pyrsistent, attrs, wcwidth, tornado, pyzmq, python-dateutil, pyparsing, ptyprocess, parso, jupyter-core, jsonschema, webencodings, pygments, pycparser, prompt-toolkit, pickleshare, pexpect, packaging, nest-asyncio, nbformat, matplotlib-inline, MarkupSafe, jupyter-client, jedi, decorator, backcall, async-generator, testpath, pandocfilters, nbclient, mistune, jupyterlab-pygments, jinja2, ipython, entrypoints, defusedxml, cffi, bleach, terminado, Send2Trash, prometheus-client, nbconvert, ipykernel, argon2-cffi, notebook, widgetsnbextension, qtpy, jupyterlab-widgets, qtconsole, jupyter-console, ipywidgets, jupyter
Successfully installed MarkupSafe-2.0.1 Send2Trash-1.7.1 argon2-cffi-20.1.0 async-generator-1.10 attrs-21.2.0 backcall-0.2.0 bleach-3.3.0 cffi-1.14.5 decorator-5.0.9 defusedxml-0.7.1 entrypoints-0.3 ipykernel-5.5.5 ipython-7.25.0 ipython-genutils-0.2.0 ipywidgets-7.6.3 jedi-0.18.0 jinja2-3.0.1 jsonschema-3.2.0 jupyter-1.0.0 jupyter-client-6.1.12 jupyter-console-6.4.0 jupyter-core-4.7.1 jupyterlab-pygments-0.1.2 jupyterlab-widgets-1.0.0 matplotlib-inline-0.1.2 mistune-0.8.4 nbclient-0.5.3 nbconvert-6.1.0 nbformat-5.1.3 nest-asyncio-1.5.1 notebook-6.4.0 packaging-20.9 pandocfilters-1.4.3 parso-0.8.2 pexpect-4.8.0 pickleshare-0.7.5 prometheus-client-0.11.0 prompt-toolkit-3.0.19 ptyprocess-0.7.0 pycparser-2.20 pygments-2.9.0 pyparsing-2.4.7 pyrsistent-0.17.3 python-dateutil-2.8.1 pyzmq-22.1.0 qtconsole-5.1.0 qtpy-1.9.0 six-1.16.0 terminado-0.10.1 testpath-0.5.0 tornado-6.1 traitlets-5.0.5 wcwidth-0.2.5 webencodings-0.5.1 widgetsnbextension-3.5.1
WARNING: You are using pip version 21.1.2; however, version 21.1.3 is available.
You should consider upgrading via the '/home/carlos/mi_proyecto_dir/mi_proyecto_env/bin/python -m pip install --upgrade pip' command.
(mi_proyecto_env) [email protected]:~/mi_proyecto_dir$ jupyter notebook
[I 18:20:27.709 NotebookApp] Writing notebook server cookie secret to /home/carlos/.local/share/jupyter/runtime/notebook_cookie_secret
[I 18:20:28.151 NotebookApp] Serving notebooks from local directory: /home/carlos/mi_proyecto_dir
[I 18:20:28.151 NotebookApp] Jupyter Notebook 6.4.0 is running at:
[I 18:20:28.151 NotebookApp] http://localhost:8888/?token=e91cecb366426aa83eee2b176e262267cd70f188147d9d69
[I 18:20:28.151 NotebookApp]  or http://127.0.0.1:8888/?token=e91cecb366426aa83eee2b176e262267cd70f188147d9d69
[I 18:20:28.151 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 18:20:28.257 NotebookApp] 
    
    To access the notebook, open this file in a browser:
        file:///home/carlos/.local/share/jupyter/runtime/nbserver-3327-open.html
    Or copy and paste one of these URLs:
        http://localhost:8888/?token=e91cecb366426aa83eee2b176e262267cd70f188147d9d69
     or http://127.0.0.1:8888/?token=e91cecb366426aa83eee2b176e262267cd70f188147d9d69

Cómo añadir un reloj o un calendario al escritorio de Windows 10


Como habrá notado, los gadgets de escritorio y la barra lateral faltan en Windows desde Windows 8 RTM pues Microsoft en su día los eliminó para enfocar el desarrollo en Windows 8 y promover las llamadas aplicaciones modernas basadas en mosaicos.

Estos gadgets en realidad no eran mas que pequeños elementos software que en estos momentos ya no podemos encontrar de manera nativa en Windows 10, pero que aún muchos recordamos como pueden ser pueden ser :

  • Calendario
  • Reloj tamaño «medio» en tiempo real en tamaños y diferentes diseños
  • Estado del tiempo
  • Notas
  • Juegos
  • etc

Pueden ser simples , pero en todo momento teníamos a nuestra disposición datos útiles relativos a la información meteorológica, la hora de todo el mundo, el calendario, la bolsa, etc. De hecho gracias a estos pequeños elementos software que os comentamos, disponíamos de manera directa de sencillos juegos, un visor de fotos, u otras utilidades. En estos momentos estos objetos se podrían comparar a lo que actualmente nos ofrece la propia Microsoft a través de su funcionalidad Noticias e intereses. Esto demuestra que este tipo de informaciones accesibles en todo momento en Windows, siguen siendo muy necesarias.

Mencionar que la principal razón de esta desaparición vino dada por temas de seguridad pues en su día Microsoft consideró que estos programas se podían convertir en un claro foco de vulnerabilidades, de ahí su eliminación completa, lo cual ciertamente no necesariamente tiene que ser así si sabemos el origen exacto de ese gadget y confiamos en el.

Barra de Juego

En las últimas versiones de Windows 10, también han llegado algunos de estos elementos integrados en el sistema. Con el tiempo estos poco a poco han crecido en número ( eso si en poca proporción y además algunos son de pago) por lo que claramente Np son comparables en cuanto a cantidad, a los que podíamos usar en el pasado de forma nativa en en versiones anteriores ,

Para acceder a la Barra de juego no tenemos más que hacer uso de la combinación de teclas Win + G.

Obviamente No necesitamos tener una Xbox para ejecutar esta aplicación , pues como vamos a ver en realidad

la vamos a usar con otro cometido que nada tiene que ver con los juegos online.

En caso de no tener instalada dicha herramienta, deberemos ir a la tienda de aplicaciones de Microsoft e instalarla ya que es completamente gratuita y la necesitaremos para acceder a las diferentes widgets que Microsoft nos puede proporcionar.

Una vez instalada xbox game box ,en ese momento aparecerá en pantalla la barra de juego a la que os hacemos referencia, siendo uno de sus apartados llamado Menú Widgets. Antes de seguir destacar que existen algunas herramientas que nos pueden ser muy útiles como son el de captura, la configuración de audio, el visor de rendimiento o la propia configuración de los widgets disponibles.

Si nos centramos ahora así en widgets, al pinchar aquí veremos una lista con los widgets que tengamos instalados. Si queremos instalar nuevos tendremos que ir a la tienda de Widgets donde podremos encontrar una muy pequeña selección de widgets tanto gratuitos como de pago para que podamos ver o anclar aquellos que nos interesen.

Es importante destacar que en el momento que cambiemos de aplicación o pulsemos Esc, estos elementos desaparecerán de nuevo. Sin embargo si, cuando están en pantalla, pinchamos en su icono con forma de chincheta situado en la esquina superior derecha, se mantendrán a la vista siempre que anclemos aquellos que nos interesen. .

Desktop Gadget SideBar

Para todos los entusiastas de los gadgets que disfrutaron y se divirtieron con ellos existe , existe la versión revivida de Desktop Gadgets / Sidebar .

Por tanto, estamos ante un software gratuito que nos permitirá traer de vuelta esos gadgets de los que os hablamos. De hecho se podría decir que en gran medida respeta la apariencia y el funcionamiento de los gadgets originales que encontrábamos en Vista. Decir que para poder traer de vuelta estos elementos a Windows 10, lo podremos lograr desde este enlace , enlace que nos descargará DesktopGadgetsInstaller.zip.

A continuación, una vez tenemos descargado ese fichero, ejecutamos el programa de manera convencional y lo configuramos para que, por ejemplo, su interfaz esté en español

configurar gadgets

Las características más importantes de esta instalación son:

  • Es compatible con todos los idiomas posibles de Windows 8, por lo que obtendrá gadgets y la interfaz de la barra lateral con su idioma nativo.
idioma
  • El instalador puede detectar el idioma requerido automáticamente e instalarlo para Sidebar.
  • Debemos esperar a que finalice el instalador. Verá la ventana familiar «Gadgets» abierta en el escritorio.

Restaurará todas las características originales como:

  • Menú contextual del escritorio de gadgets:
  • El comando mostrar / ocultar gadgets:
  • Integración total del Panel de control con enlaces de trabajo dentro de la categoría «Apariencia y personalización» 

  • La integración con Windows Search: donde sea que escriba «gadgets», en el Panel de control o en los menús de inicio de terceros como Classic Shell o StartIsBack , las tareas comunes relacionadas con los gadgets aparecerán en los resultados de búsqueda. El menú Classic Shell:Ejemplo de menú de Classic ShellEl menú Inicio es Atrás:Ejemplo de menú Inicio está atrás

Por tanto estamos ante un software gratuito que en gran medida respeta la apariencia y el funcionamiento de los gadgets originales que encontrábamos en Vista pero que si nos ceñimos exclusivamente a los gadgets incluidos por defecto se limita a solo 8 gadgets, que eso si podemos ampliar desde Gadgets Revived | Desktop gadgets and sidebar for Windows 10 and Windows 8 .

Win7Gadgets

Aparte de la opción anterior , la cual parece limitada aunque tal vez suficiente si buscamos algo en concreto que nos satisfaga alguna de la opciones disponibles , existe otra alternativa de terceros Win7Gadgets.

A la misma se puede acceder desde este enlace, donde nos encontramos con una buena cantidad de elementos de este tipo separados por categorías

Una vez nos adentramos en cualquiera de ellas, nos encontramos con varias propuestas de un mismo tipo, pero con diferentes diseños y funciones aunque tendremos la oportunidad de elegir la que más nos interesa en cada caso para su descarga e instalación .

Lo peor de esta opción es que tendremos que instalar cada gadget manualmente o bajo nuestra propia completa responsabilidad pues incluso W10 nos advertirá de que potencialmente estos gadgets pueden dañar nuestro equipo , por lo que recomendaríamos personalmente mucha prudencia a la hora de optar por esta opción.

Videos mas famosos sobre Inteligencia artificial


Inteligencia Artificial es una realidad de hoy en día  constituyendo realmente una colección de tecnologías avanzadas que permite a las máquinas sentir, comprender, actuar y aprender.

En el  siguiente documental de Discovery channel podemos  ver como la inteligencia artificial está cambiando la forma de ver el mundo  en ejemplos tan diversos  como :

  • La capacidad de debatir
  • Vehículos autónomos
  • Teoría de los juegos
  • Robótica
  • Humanoides
  • Educación
  • Aplicaciones para invidentes
  • Reconocimiento facial
  • Uso de otros medicamentos para curar otras enfermedades
  • etc

Asimismo  se  trata un tema como Stephen Hawking pronosticó que el desarrollo de la inteligencia artificial puede llegar a provocar la extinción de la raza humana.

En este otro  video, podemos  ver la evolución de los robots que  han creado la famosa  empresa  Boston Dynamics desde 2012 hasta 2019

 

Transformar el negocio de maneras que no hemos visto desde la Revolución Industrial; reinventar fundamentalmente la forma en que las empresas funcionan, compiten y prosperan. Cuando se implementan holísticamente, estas tecnologías ayudan a mejorar la productividad y reducir los costos, desbloqueando empleos más creativos y creando nuevas oportunidades de crecimiento.

Este cortometraje fue creado por MMP Global para destacar por qué los profesionales que trabajan en Servicios Financieros necesitan estar al tanto de la IA ahora.

 

Antes de profundizar en el apasionante mundo de la Inteligencia Artificial, hay que conocer bien por donde nos movemos. Hoy traigo un mapa conceptual con algunos de los conceptos más importantes y que con mayor confusión son utilizados: el Machine Learning  y el Deep Learning.

La visión por computadora es fascinante para mí porque a) suena intrigante y b) es parte de tantas cosas diferentes que usamos hoy en día (realidad aumentada, búsqueda de imágenes, Google Fotos, cámaras, esas primeras líneas amarillas que vemos viendo fútbol en la televisión, coches autónomos, lentes selfie, y más). En este video,podemos ver  varios investigadores de Google para obtener una visión general del campo hoy, un poco de su historia, y un indicio de su futuro.

Barra de progreso en PowerPoint


Para crear una barra de progreso en la parte inferior  de su presentación de PowerPoint  2018  en realidad  es un proceso muy sencillo ,  pues solo tiene que incluir en macros un sencillo  código en Visual Basic que vamos a  ver a continuación.

Para ello , desde Power Point 2018 tenenos que ir a la pestaña Vista  y pulsar en Macros.

Ahí escribiremos «Barra de Progreso » en la caja «nombre de la macro  y pulsaremos sobre  el  botón «Crear«

Ahora justo en la caja del código meteremos el siguiente  fragmento de código en VB para aplicaciones :

Sub BarraDeProgreso()
On Error Resume Next
Height = 10 ' cambiar este valor para modificar la altura de la barra de progreso
With ActivePresentation
For X = 1 To .Slides.Count
.Slides(X).Shapes("A").Delete
.Slides(X).Shapes("B").Delete
Set s = .Slides(X).Shapes.AddShape(msoShapeRectangle, _
0, .PageSetup.SlideHeight - Height, _
X * .PageSetup.SlideWidth / .Slides.Count, Height)
s.Fill.ForeColor.RGB = RGB(0, 153, 204) ' cambiar los valores de RGB para personalizar el color de la barra
s.Line.Visible = msoFalse
s.Name = "A"
Set s = .Slides(X).Shapes.AddShape(msoShapeRectangle, _
X * .PageSetup.SlideWidth / .Slides.Count, .PageSetup.SlideHeight - Height, _
.PageSetup.SlideWidth - X * .PageSetup.SlideWidth / .Slides.Count, Height)
s.Fill.ForeColor.RGB = RGB(255, 255, 255)
s.Line.Visible = msoFalse
s.Name = "B"
Next X:
End With
End Sub

Hecho esto ,guardaremos nuestro trabajo  ,pulsando en el  icono del «disquette» o simplemente pulsando  en Guardar.

 

Ahora, tan solo hay que ejecutar la macro que acabamos de crear  y la macro insertará automáticamente  en cada slide  una barra de progreso   de forma que variara  en función del numero de hoja de presentación de menos mas  llegando a su culminación al final de la ppt.

Como aspecto importante  no  debemos olvidar que cada vez que creemos una nueva hoja ,o alteremos el orden de las  hojas, debemos ejecutar la macro que acabamos de crear.

Para  terminar   si queremos almacenar la macro en el Powerpoint al guardar los cambios en la ppt , debemos asegurarnos de que el formato que elijamos (normalmente pptx)  lo permite ,porque si no lo hacemos  al   abrirla nuevamente  aunque la barra de progreso se mantendrá en las slides, la macro no estará y si cambiamos algo no podremos actualizar esta.

Como instalar un servidor de BBD y no morir en el intento


PostgreSQL, también llamado Postgres, es un sistema de gestión de bases de datos relacional orientado a objetos y de código abierto, publicado bajo la licencia PostgreSQL,​ similar a la BSD o la MIT.

Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre o apoyados por organizaciones comerciales denominada el PGDG (PostgreSQL Global Development Group).

 

Instalación PostgreSQL

Empezaremos descargando pgAdmin desde este enlace: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads#windows

Una vez en la página, seleccionamos la versión PostgreSQL deseada y sistema operativo con el que estamos trabajando

En el caso de W10 ,la ultima version es la 13.1  pero en muchos casos  por compatibiliad   podria ser  necesario  versiones mas antiguas   motivo por el cual   hay disponibles  para descargar  desde  la 9.3.25  hasta 13.1 tanto para Mac como para Windows  .

 


Pulsamos en el botón download now y se iniciará la descarga del instaladorun ejecutable.

Una vez descargado, vamos a instalar pgAdmin en nuestro equipo, veremos una pantalla como la que muestro a continuación.

Ya sabemos que hacer, pulsamos «Siguiente», seleccionando el directorio donde queremos realizar la instalación ( pordefecto C:\Program Files\PostgreSQL\13)  y pulsamos «Siguiente» un par de veces más hasta que el proceso de instalación comience.

Al terminar, nos preguntará si queremos instalar Stack Builder u otros compoenentes   que viene npor defecto.

 

Puulsamos siguinte para contunuar la instalacion.

A continuacion ,es interesante saber la ubicacion donde se almacenara  la BBDD  propiamente que el asistente permite cambiar

 


Ahora  nos pide la clave del administrador de la BBDD

 

Tambien es personalizable el puerto donde servira el interfaz de administracion ( por defecto es el puerto 5432)

 

Ya solo nos queda la configuración regional y empezara la instalación   propiamente dicha  hasta que veamos el mensaje  de finalización de la instalación y tras un rato habrá concluido la instalación de modo  que desde este momento ya tendremos PostgreSQL instalado en nuestro equipo.

 

Al terminar de la instalación , reiniciaremos  el pc, y en la primera ejecución es posible que Stack builder pida proseguir el resto de instalación.

 

Primeros pasos con el gestor de PostgreSQL pgAdmin.

Una vez finalizado el proceso de instalación, ya podemos abrir nuestro programa. Al abrir por primera vez el gestor de bases de datos comprueba si existe una nueva versión  ( en caso por ejemplo de haber instalado alguna version anterior,en cuyo caso pulsamos sobre el texto «here» y nos abrirá en otra ventana del gestor la página para actualizar nuestra versión.Una vez completada la descarga, podemos cerrar la ventana del gestor e ir donde hayamos descargado el ejecutable para lanzarlo. Aquí más de lo mismo, aceptamos las condiciones e instalamos el contenido donde deseemos. Para tenerlo todo bien organizado he hecho la instalación en el directorio raíz donde instalé PostgreSQL.

Al finalizar la instalación se abrirá automáticamente otra ventana del gestor de bases de datos pgAdmin donde ya no aparecerá la advertencia de actualización.

Trabajando con el gestor de PostgreSQL pgAdmin.

Para empezar a trabajar con pgAdmin tan solo tenemos que pulsar sobre el símbolo (+) correspondiente a «Servers» localizado en la parte superior izquierda. Y a continuación pulsaremos sobre el símbolo (+) correspondiente a «PostgreSQL 9.6». Veremos que el icono del aspa roja cambia por el logo del elefante, esto quiere decir que nuestro servidor está levantado.

Recordemos que el puerto utilizado por PostgreSQL es el 5432.

Creando perfil y nueva base de datos.

Pulsamos botón derecho en «Login/Group Roles»->»Create»->»Login/Group Role», y creamos el perfil deseado. Yo he creado un perfil llamado igual que mi usuario de windows ya que por defecto vamos a estar atacando a las bases de datos desde cmd con este perfil.

Ponemos en la casilla «General» el nombre, insertamos en la casilla «Definition» una contraseña para este nuevo perfil y ponemos en la casilla de «Privilegios» todo a YES. Bien pues si pulsamos sobre el botón «Guardar» ya disponemos de perfil para conectar a las bases de datos de PostgreSQL.

Ahora vamos a crear una base de datos de testeo para hacer nuestras pruebas. Para ello pulsamos botón derecho sobre «Database»->»Create»->»Database». En la pestaña «General»->»Database» ponemos el nombre  de la base de datos, yo la he llamado «test» y le damos permisos sobre ella al usuario creado anteriormente, por lo tanto lo seleccionamos del desplegable.

Pulsamos sobre el botón «Save» y listo, ya tenemos los preparativos para poder trabajar.

Comprobando acceso desde cmd a las bases de datos de Postgresql.

Abrimos una ventana de consola con permisos de administrador y accedemos a la ruta donde tenemos nuestro binario de PostgreSQL y tecleamos lo siguiente: psql — h

D:\Program Files\PostgreSQL\9.6\bin>psql -- test
Contraseña:

Con esto le estamos diciendo a PostgreSQL que queremos acceder mediante consola a la base de datos test y para ello nos pide una contraseña. La contraseña que pide es la relacionada con el que estamos trabajando (en mi caso el de windows que fue el perfil que creamos en pgAdmin en el paso anterior).

Ahora ya podemos realizar cualquier tipo de consulta mediante cmd.

Creando nuestra primera tabla en PostgreSQL.

Ya que tenemos la interface gráfica pgAdmin, vamos a crear desde aquí nuestra primera tabla y campos. También utilizaremos alguna consulta que devuelva datos a modo gráfico.

Pulsamos sobre el símbolo (+) de la base de datos «test» -> símbolo (+) de Schemas -> símbolo (+) de public. ahora pulsamos con el botón derecho sobre «Tables»->Create->Table.
A continuación asignamos un nombre a la tabla y pulsamos el botón «Save». Llegados aquí pulsamos con el botón derecho sobre la tabla y seleccionamos Create->Column.

Ahora ya sabemos crear tablas y crear columnas. Tan solo queda hacer una simple select y el resultado que veremos será similar a la siguiente imagen.

Comandos de interes para ejecutar desde consola.

1 – psql \l :: Te muestra las bases de datos existentes.
2 – psql \d :: Te muestra las relaciones (tablas, secuencias, etc.) existentes en la base de datos.
3 – psql \d [nombre_tabla] :: Para ver la descripción (nombre de columnas, tipo de datos, etc.) de una tabla.
4 – psql \c [nombre_bd] :: Para conectarte a otra base de datos.
5 – psql SHOW search_path; :: Para ver la ruta de búsqueda actual.
6 – psql SET search_path TO [nombre_esquema]; :: Para actualizar la ruta de busqueda.
7 – psql \q :: Para salir de psql.

 

 

Cómo desplegar wordpress en la nube de Google


En este post vamos a ver como configur un servidor de Cloud SQL que conectaremos a una aplicación wordpress a él mediante un proxy a través de una conexión externa. Para ello también configuraremos una conexión a través de un enlace IP privado que ofrece beneficios de rendimiento y seguridad. 

Al final , tendremos 2 instancias de trabajo del frontend de WordPress conectadas a través de 2 tipos de conexión diferentes a su backend de instancia de SQL :

 

 

1: creación de una base de datos de Cloud SQL

En esta parte configuraresmo un servidor SQL de acuerdo con las mejores prácticas de Google Cloud y crearemos una conexión IP privada.

  1. En el menú de navegación ( Menú de Navegación), haga clic en SQL .
  2. Haz clic en Crear instancia .
  3. Haga clic en Elegir MySQL .
  4. Especifique lo siguiente y deje los ajustes restantes como predeterminados:
Propiedad Valor
ID de instancia wordpress-db
Contraseña de root teclee una contraseña 
Región su zona
Zona Alguna
Versión de la base de datos MySQL 5.7

Anote la contraseña de root; se utilizará en un paso posterior y se denominará [ROOT_PASSWORD].

  1. Expanda Mostrar opciones de configuración .
  2. Expanda la sección Conectividad .
  3. Seleccione IP privada .
  4. En el cuadro de diálogo, haga clic en Habilitar API , haga clic en Asignar y conectar y luego haga clic en Cerrar . Esto habilita el acceso a servicios privados y adjunta una dirección IP privada a su servidor Cloud SQL.La IP privada es una conexión interna, a diferencia de la IP externa, que sale a Internet.
  5. Expanda la sección Tipo de máquina y almacenamiento .
  6. Aprovisione la cantidad adecuada de vCPU y memoria. Para elegir un tipo de máquina , haga clic en Cambiar y luego explore sus opciones.

Algunos puntos a considerar: Las máquinas de núcleo compartido son buenas para la creación de prototipos y no están cubiertas por Cloud SLA .Cada vCPU está sujeta a un límite de rendimiento de red de 250 MB / s para un rendimiento máximo. Cada núcleo adicional aumenta el límite de la red, hasta un máximo teórico de 2000 MB / s.Para cargas de trabajo sensibles al rendimiento, como el procesamiento de transacciones en línea (OLTP), una pauta general es asegurarse de que su instancia tenga suficiente memoria para contener todo el conjunto de trabajo y acomodar la cantidad de conexiones activas.

  1. Puede  seleccionar db-n1-standard-1 y luego haga clic en Seleccionar .
  2. A continuación, elija el tipo de almacenamiento y la capacidad de almacenamiento .

Algunos puntos a considerar :SSD (unidad de estado sólido) es la mejor opción para la mayoría de los casos de uso. HDD (unidad de disco duro) ofrece un rendimiento más bajo, pero los costos de almacenamiento se reducen significativamente, por lo que HDD puede ser preferible para almacenar datos a los que se accede con poca frecuencia y que no requieren una latencia muy baja. Existe por tanto  una relación directa entre la capacidad de almacenamiento y su rendimiento.

  1. Agregue algunos ceros a la capacidad de almacenamiento para ver cómo afecta el rendimiento. Restablezca el control deslizante a 10 GB.

Establecer su capacidad de almacenamiento demasiado baja sin habilitar un aumento de almacenamiento automático puede hacer que su instancia pierda su SLA.

  1. Haga clic en Cerrar .
  2. Haga clic en Crear en la parte inferior de la página para crear la instancia de la base de datos.

Es posible que deba esperar a que se propaguen los cambios de IP privada antes de que se pueda hacer clic en el botón Crear .

 

 

2: Configurar un proxy en una máquina virtual

Cuando su aplicación no reside en la misma región y red conectada a la VPC que su instancia de Cloud SQL, use un proxy para proteger su conexión externa.

Para configurar el proxy, necesita el nombre de conexión de la instancia de Cloud SQL. Para continuar necesitaríamos 2 máquinas virtuales preconfiguradas con WordPress y sus dependencias (s también se necesitará un  script de inicio y un  acceso a la cuenta de servicio ). Tenga en cuenta que  se debe usar el principio de privilegio mínimo y solo permitimos el acceso SQL para esa máquina virtual. También hay una etiqueta de red y un firewall preconfigurado para permitir el puerto 80 desde cualquier host.

  1. En el menú de navegación ( Menú de Navegación), haga clic en Compute Engine .
  2. Haga clic en SSH junto a wordpress-europe-proxy .
  3. Descarga el proxy de Cloud SQL y hazlo ejecutable:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy && chmod +x cloud_sql_proxycontent_copy

Para iniciar el proxy, necesita el nombre de conexión de la instancia de Cloud SQL. Mantenga su ventana SSH abierta y regrese a Cloud Console.

  1. En el menú de navegación ( Menú de Navegación), haga clic en SQL .
  2. Haga clic en la instancia de wordpress-db y espere a que aparezca una marca de verificación verde junto a su nombre, que indica que está operativa (esto podría demorar un par de minutos).
  3. Anote el nombre de la conexión de la instancia ; se utilizará más adelante y se denominará [SQL_CONNECTION_NAME].
  4. Además, para que la aplicación funcione, debe crear una tabla. Haga clic en Bases de datos .
  5. Haga clic en Crear base de datos , escriba wordpress , que es el nombre que espera la aplicación, y luego haga clic en Crear .
  6. Regrese a la ventana SSH y guarde el nombre de la conexión en una variable de entorno, reemplazando [SQL_CONNECTION_NAME] con el nombre único que copió en un paso anterior.
export SQL_CONNECTION=[SQL_CONNECTION_NAME]content_copy
  1. Para verificar que la variable de entorno esté configurada, ejecute:
echo $SQL_CONNECTIONcontent_copy

Se debe imprimir el nombre de la conexión.

  1. Para activar la conexión de proxy a su base de datos de Cloud SQL y enviar el proceso a un segundo plano, ejecute el siguiente comando:
./cloud_sql_proxy -instances=$SQL_CONNECTION=tcp:3306 &content_copy

La salida esperada es

Listening on 127.0.0.1:3306 for [SQL_CONNECTION_NAME]
Ready for new connectionscontent_copy
  1. Presione ENTER.

El proxy escuchará en 127.0.0.1:3306 (localhost) y el proxy que se conecta de forma segura a su Cloud SQL a través de un túnel seguro utilizando la dirección IP externa de la máquina.

 

 

3: Conectar una aplicación a la instancia de Cloud SQL

Ahora conectaremos wordpress a la instancia de Cloud SQL.

  1. Configure la aplicación WordPress. Para encontrar la dirección IP externa de su máquina virtual, consulte sus metadatos:
curl -H "Metadata-Flavor: Google" http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip && echocontent_copy
  1. Vaya a la dirección IP externa wordpress-europe-proxy en su navegador y configure la aplicación WordPress.
  2. Haga clic en Let’s Go .
  3. Especifique lo siguiente, reemplazando [ROOT_PASSWORD] con la contraseña que configuró al crear la máquina, y deje las configuraciones restantes como sus valores predeterminados:
Propiedad Valor
Nombre de usuario raíz
Contraseña [ROOT_PASSWORD]
Host de base de datos 127.0.0.1

Está utilizando 127.0.0.1, localhost como la IP de la base de datos porque el proxy que inició escucha en esta dirección y redirige ese tráfico a su servidor SQL de forma segura.

  1. Haga clic en Enviar .
  2. Cuando se haya establecido una conexión, haga clic en Ejecutar la instalación para crear una instancia de WordPress y su base de datos en su Cloud SQL. Esto puede tardar unos minutos en completarse.
  3. Complete la información de su sitio de demostración con información aleatoria y haga clic en Instalar WordPress . No tendrá que recordar ni utilizar estos detalles.

La instalación de WordPress puede tardar hasta 3 minutos, porque propaga todos sus datos a su servidor SQL.

  1. Cuando vea ‘¡Éxito!’ apareciendo en la ventana, elimine el texto después de la dirección IP en la barra de direcciones de su navegador web y presione ENTER. ¡Se le presentará un blog de WordPress en funcionamiento!

4: Conéctese a Cloud SQL a través de una IP interna

Si puede alojar su aplicación en la misma región y red conectada a VPC que su Cloud SQL, puede aprovechar una configuración más segura y con mejor rendimiento mediante IP privada.

Al usar la IP privada, aumentará el rendimiento al reducir la latencia y minimizar la superficie de ataque de su instancia de Cloud SQL porque puede comunicarse con ella exclusivamente a través de IP internas.

  1. En Cloud Console, en el menú de navegación ( Menú de Navegación), haga clic en SQL .
  2. Haga clic en wordpress-db .
  3. Anote la dirección IP privada del servidor de Cloud SQL; se denominará [SQL_PRIVATE_IP].
  4. En el menú de navegación , haga clic en Compute Engine .

Tenga en cuenta que wordpress-us-private-ip se encuentra en us-central1, donde se encuentra su Cloud SQL, lo que le permite aprovechar una conexión más segura.

  1. Copie la dirección IP externa de wordpress-us-private-ip , péguela en una ventana del navegador y presione ENTER.
  2. Haga clic en Let’s Go .
  3. Especifique lo siguiente y deje los ajustes restantes como predeterminados:
Propiedad Valor
Nombre de usuario raíz
Contraseña escriba la [ROOT_PASSWORD] configurada cuando se creó la instancia de Cloud SQL
Host de base de datos [SQL_PRIVATE_IP]
  1. Haga clic en Enviar .

Tenga en cuenta que esta vez está creando una conexión directa a una IP privada, en lugar de configurar un proxy. Esa conexión es privada, lo que significa que no sale a Internet y, por lo tanto, se beneficia de un mejor rendimiento y seguridad.

  1. Haga clic en Ejecutar la instalación . Un ‘¡Ya instalado!’ Se muestra la ventana, lo que significa que su aplicación está conectada al servidor de Cloud SQL a través de una IP privada.
  2. En la barra de direcciones de su navegador web, elimine el texto después de la dirección IP y presione ENTER. ¡Se le presentará un blog de WordPress en funcionamiento!

5: Revisión

Hemos visto como , crear una base de datos de Cloud SQL y como configurarla para usar tanto una conexión externa a través de un proxy seguro como una dirección IP privada, que es más segura y de mayor rendimiento. Recuerde que solo puede conectarse a través de IP privada si la aplicación y el servidor de Cloud SQL están ubicados en la misma región y forman parte de la misma red de VPC. Si su aplicación está alojada en otra región, VPC o incluso proyecto, use un proxy para asegurar su conexión a través de la conexión externa. 

 

Como grabar secuencias de video en W10 sin usar una herramienta externa


Una de las novedades introducidas por Microsoft en Windows 10 en la Creators Update de la primavera de 2017 , fue el  famoso Modo Juego, una serie de herramientas cuyo objetivo es hacer este sistema operativo más amigable para quienes lo usan para jugar. 

Si tiene su Windows 10 actualizado pues los normal es que ya cuente con esta funcionalidad del Modo Juego, un añadido más a las crecientes opciones relacionadas con juegos como la Barra de juego. La idea es la misma: atraer a aquellas personas que son reacias a jugar con Windows 10 ofreciéndoles el mejor rendimiento posible en juegos, el cual por cierto no siempre está claro que resulte satisfactorio .

Aunque en efecto no este demostrado , en este caso si estuviese experimentando problemas  en los gráficos , se puede probar a desactivar esta característica de manera muy sencilla desde la herramienta general de Configuración del sistema > Juegos >

modo de juego de Windows 10

 

Aunque no sea un jugador, vamos a ver que esta herramienta integrada ya en W10 nos va a servir para una funcionalidad extra: grabar en vídeo sin necesidad de instalar ningún programa especializado usando la Barra de juegos de Windows 10

Ciertamente la barra de juegos  está pensada para usarse en juegos, pero nada le impide usarla en cualquier otra aplicación : grabar   video tutoriales, grabar  un trozo de video de un servicio de streming, etc pues sus herramientas están también disponibles sea un juego o no, incluida la de grabación de la pantalla.

 

1. Abra la Barra de juego

Como decíamos, no usaremos ninguna aplicación externa, sino que nos basaremos en la Barra de juego, una barra de herramientas con utilidades para los aficionados a los juegos  como el Modo juegos, la grabación en vídeo o la retransmisión en directo. Para abrir la barra de juego pulsa a la vez las teclas Windows y G de su teclado.

En caso de disponer de varias pantallas , asegúrese tener situado el ratón en la pantalla donde vamos a capturar lo que ocurra , de forma similar a si usase la herramienta «recortes».

Windows 10 detecta automáticamente cuándo está en un juego y, si no es así, primero debe confirmar que se trata de un juego marcando Sí, esto es un juego activando la casilla para que se abra la barra de juego.

Como vamos a capturar por ejemplo lo que ocurre en un navegador , simplemente pulsaremos F11 para entrar en modo pantalla completa ( ocultar la barra del navegador así como el botón de inicio)  y acto seguido pulsaremos la vez las teclas Windows y G de su teclado para entrar en modo juego en pantalla completa.

 

2. Active el micrófono, o mantenga el audio original

De forma predeterminada, la grabación de vídeo del modo juegos graba la pantalla y el audio del juego, es decir, el de  de por defecto definido  por  Windows. Si está grabando un tutorial y quiere narrar de viva voz lo que va haciendo, active antes la casilla Grabar con micrófono.

Si por lo que sea quiere grabar un fragmento de video con audio de algún servicio de streming que se ejecute en un navegador no se preocupe , pues si no pulsa la casilla Grabar con micrófono , w10 capturará  tanto el video como el audio de ese servicio con la máxima calidad.

3. Empiece a grabar la pantalla en Windows 10

Una vez lo tenga todo listo para empezar a grabar, pulse el botón de grabación( el botón del circulito blanco  ). y tendrá unos tres segundos para que  empieze a grabar en vídeo lo que se ves o oiga  por  la pantalla. Tenga en cuenta que el modo de grabación está enlazado a una única aplicación, así que no grabará otras aplicaciones: solo lo qeu se ve en su pantalla.

4. Pare la grabación

Mientras graba  cualquier cosa que ocurra en su pantalla  se le mostrará una ventana flotante mostrando el tiempo de grabación y controles para parar la grabación, activar o desactivar el micrófono y cambiar la ubicación de los controles.

Lógicamente cuando haya terminado la grabación, vuelva  a pulsar el botón Parar( el circulito blanco) o a la vez las teclas Windows y G de su teclado  para salir del modo juego.

5. Compruebe el fichero capturado

Cuando termine la grabación se abrirá la aplicación de Xbox de Windows 10 mostrando el vídeo que acaba de grabar. Aquí ya puede reproducirlo para ver cómo ha quedado, cambiar su nombre, recortar su duración o borrarlo, si no le acaba de convencer.

La ruta por defecto de almacenamiento es C:\Users\USUARIO\Videos\Captures

 

6-Comprima el fichero de video capturado con la herramienta

VideoSmaller es un servicio gratuito que permite reducir en línea el tamaño de un archivo de vídeo, comprimiéndolo sin pérdida de calidad. Disminuye el tamaño del archivo, así como el del propio vídeo. Comprime vídeos en formato MP4 realizados con un dispositivo Android o iPhone. Basta con seleccionar el archivo de vídeo y pulsar en el botón «Subir vídeo». El proceso puede tardar en función del tamaño del vídeo y de la velocidad de conexión

https://www.videosmaller.com/es/

Observe el botón «Delete file now», pues con esto borraremos el fichero de lo servidores de videosmaller

 

 

Que es un keylogger y para que puede serle útil


Algunas situaciones ( cuidado de hijos  o  seguimiento de empleados)  hacen que sea necesario que un tutor ( o un empleador) permita supervisar lo que ocurre en  un terminal objetivo  controlando las pulsaciones de teclas en un teléfono móvil objetivo  dando a conocer   de esta manera que está haciendo el usuario. Para  esta ardua tarea, que es por cierto legal pero no en todos los paises,  para el cuidado de menores  o para supervision de empleados ( en este segundo caso mientras se ponga en conocimiento de los empleados) , actualmente la forma más fácil de manejar esta tarea es utilizando cualquiera de las aplicaciones de registrador de teclas  o en ingles Keylogger. 

Básicamente, pues un keylogger es un software que puede usarse para registrar las pulsaciones de teclas de un usuario en un terminal móvil o en su ordenador . 

Generalmente, esto se hace de manera discreta para que las actividades del teléfono del usuario objetivo puedan ser monitoreadas sin que sea  advertido por  el   usuario   capturando todo lo que el usuario del terminal móvil objetivo escriba, incluidos los mensajes que envían, las cosas que busca en el navegador y otras cosas en su teléfono. 

Hay muchísimas  aplicaciones de monitoreo disponibles que cuentan con esta función de keylogger, pero le advertimos que no son precisamente baratas.

Como resumen , en la siguiente  tabla  podemos  ver  alguna de las aplicaciones de keyloggers mas famosas:

Programa Precios Compatibilidad
Registrador de teclas de Android Gratis Android
Hoverwatch $ 24.95 / mes
$ 59.95 / 3 meses
$ 99.95 / año
Android
XNSPY $ 35,99 / mes
$ 69,99 / 3 meses
$ 99,99 / año
Android y iOS
Espía $ 69,99 / mes
$ 99,99 / 3 meses
$ 199,99 / año
Android y iOS
Spyera $ 189/3 meses
$ 389 / año
Android y iOS
KidLogger $ 29/3 meses
$ 49/6 meses
$ 89 / año
Android, iOS, Windows y Mac
KidsGuard Pro $ 29.95 / mes
$ 49.95 / 3 meses
$ 99.95 / año
Android

 Registrador de teclas de Android


registrador de teclas android


Keylogger para Android es una aplicación espía gratuita para Android indetectable que le permite monitorear WhatsApp, Facebook, mensajes de texto, llamadas, ubicación actual del GPS e historial, aplicaciones sociales y mucho más.

Este programa  es un excelente registrador de teclas invisible gratuito para Android que ha sido diseñado específicamente para tener funciones supremas de registro de teclas y  con una  gran  facilidad de uso

Casi todas las aplicaciones de mensajería populares en el teléfono objetivo, incluidas WhatsApp, Facebook, etc., se pueden monitorear usando esta aplicación.  Incluso los mensajes enviados a través de las aplicaciones de mensajería normal en el teléfono se pueden grabar para que usted los vea. 
Al ver sus registros de pulsaciones de teclas, sabrá todo lo que hacen en su teléfono.

Pros
Android Keylogger es probablemente el mejor Keylogger gratuito para Android disponible ayudando a monitorear las actividades en línea de sus seres queridos.

Sin duda  pues una de sus principales atractivos es que es de uso gratuito con funciones premium . Otro punto interesante  es  que no necesita  rootear el terminal  siendo muy fácil de usar contando ademas con  muchas funciones interesantes.

Ademas su interfaz es intuitiva y operaciones sencillas.


Contras
Funciones de monitorización limitadas en la modalidad gratuita .  Solo funciona  en dispositivos  Android      y la apliacion de seguimiento debe instalarse en un ordenador.   Debe actualizar al plan premium para obtener una función de registrador de teclas más potente.

Hoverwatch

aplicación hoverwatch

 

Puede usar esta aplicación de grabadora de teclado oculta para monitorear las pulsaciones de teclas en los teléfonos de sus hijos, empleados o incluso su pareja.

 Una vez instalado, funciona en secreto y registra las pulsaciones de teclas en el dispositivo de destino. Puede controlar los mensajes de texto que se escriben y envían en varias aplicaciones de redes sociales que pueden estar instaladas en el dispositivo de destino.

Pros

Aunque ofrece una versión de prueba gratuita es de pago.Se pueden rastrear hasta 5 dispositivos usando esta aplicación.

Contras 

Ademas de su precio , las funciones de monitoreo solo están disponibles para dispositivos Android. 

Ademas tendría que rootear el dispositivo para poder usar esta aplicación y la guía de instalación / demostración es muy difícil de encontrar en línea.

XNSPY

aplicación xnspy

 

XNSPY es otra popular aplicación secreta de grabación de teclado que ha sido utilizada por muchas personas para controlar las actividades en el teléfono celular objetivo. Puede controlar de forma remota las pulsaciones de teclas en el dispositivo de destino. Esta función puede resultar útil cuando desee comprobar lo que el usuario del teléfono objetivo está introduciendo en su teléfono móvil. Esto puede estar en cualquiera de las aplicaciones de mensajería instantánea en el teléfono celular objetivo.

Pros 

Esta aplicación  permite el monitoreo remoto a través de un tablero interactivo en línea con una Interfaz amigable.  Otras potentes funciones proporcionadas para la supervisión de teléfonos móviles.

Contras 

Un de los principales inconvenientes  es que no  haya disponible una versión de prueba gratuita para probar las funciones de la aplicación. Ademas para funcionar en IOS, el dispositivo tendría que tener jailbreak para poder espiarlo. Por si fuera poco  adems se necesita un gran esfuerzo para instalar esta aplicación.

 Spyera

aplicación spyera

 

Spyera es otra   de las aplicaciones de monitoreo de actividad del teléfono que es completamente indetectable en el teléfonomovil objetivo. Todo, lo que sea que el usuario escriba en el teléfono movil de destino se puede grabar y mostrar a través de esta aplicación. También se muestra el historial completo de pulsaciones de teclas para que pueda verlo más tarde. Aún así, esta aplicación es 100% indetectable una vez instalada en el dispositivo de destino.

Pros 

Cualquier tipo de archivo multimedia en el teléfono celular de destino se puede ver fácilmente. Puede aprovechar la función kelogger para buscar contraseñas .Ademas puede monitorear las pulsaciones de teclas en tiempo real.

Contras 

Esta aplicación  es claramente muy cara en comparación con otras aplicaciones de keylogger.  Varios usuarios han informado del mal funcionamiento de varias funciones de esta aplicación. Ademas requiere que rootee el dispositivo Android.

Espía

aplicación espía

 

Spyic es una increíble aplicación de monitoreo de teléfonos que viene con numerosas funciones para monitorear cualquier teléfono móvil objetivo. La característica más sorprendente de todas es la función de registro de teclas que puede ayudarlo a «rastrear » casi cualquier aplicación en el teléfono objetivo al grabar las pulsaciones de teclas en el dispositivo. Incluso el nombre de usuario y la contraseña ingresados ​​por el usuario del teléfono de destino pueden ser registrados y utilizados por usted más tarde con la ayuda de esta aplicación secreta de registro de teclas.

Pros 

Casi todas las aplicaciones de mensajería instantánea se pueden monitorear con esta aplicación  siendo la interfaz de usuario bastante sencilla.

Contras 

La versión de iOS tiene muy pocas funciones de monitoreo y tarda mucho en instalarse ralentizandp el teléfono objetivo una vez instalado.

KidLogger

aplicación kidlogger

 

Esta aplicación ha sido desarrollada específicamente para monitorear las actividades de su hijo en su teléfono para mantenerlo a salvo de cualquier peligro que acecha en línea. Esta útil aplicación se puede utilizar para ver todas las pulsaciones de teclas escritas en el teclado en pantalla del teléfono de destino y el contenido copiado en el portapapeles para que sepa qué mensajes están enviando y qué están buscando en línea. Esta aplicación también ofrece la función de grabación de pulsaciones de teclas para ordenadores con Windows.

Pros

Es compatible con varios tipos de dispositivos ( incluso Windows) contando con casi todas las funciones de monitoreo esenciales están disponibles en esta aplicación permitiendo  compruebar de forma remota los keystorkes desde cualquier navegador.

Contras 

El sitio web oficial de esta aplicación no está bien diseñado y es difícil de navegar.La función de registro de teclas no funciona en dispositivos iOS.La sincronización de datos no se realiza en tiempo real.

 

KidsGuard Pro

kidsguard pro

Facilidad de uso: 

Una de las mejores aplicaciones ocultas de registro de teclas que puede usar si desea disfrutar de la mejor función de registro de teclas es KidsGuard Pro. Es una de las aplicaciones de monitoreo de teléfonos mejor calificadas y es altamente recomendada por varios usuarios satisfechos.

Cada pulsación de tecla en el dispositivo de destino se registra y luego se carga en el panel de control en línea de la aplicación para que pueda verla. Incluso puede ver el archivo keylogger en tiempo real.

 Una vez instalada en el dispositivo de destino, esta aplicación funciona de incógnito, por lo que puede estar seguro de que el usuario del dispositivo de destino no sabrá que sus pulsaciones de teclas están siendo monitoreadas. Incluso si el usuario objetivo busca esta aplicación por su nombre en su dispositivo, no podrá encontrarla. Con las funciones del registrador de teclas, podrá consultar los mensajes, el historial del navegador y más.

De todas estas aplicaciones,muchos usuarios opinan que  el mejor registrador de teclas indetectable gratuito para Android  esesta aplicación   pues es muy eficaz para brindarle información precisa sobre las pulsaciones de teclas en el teléfono movil de destino. Puede probar su demostración gratuita antes de comprarla.

Pros 

Estamos  ante una aplicación ligera de monitoreo remoto imperceptible para el usuario objetivo y que no ocupa mucho espacio  con una fácil instalación en 3 minutos. El Interfaz de usuario intuitiva. Ademas  y esto  es muy importante no es necesario rootear el dispositivo.

Contras 

Aparte del precio  ( hay  que abonar una  suscripción mensual de casi 30€  aunque hay promociones especiales)  solo admite un plan por dispositivo, es decir: si necesitas monitorizar dos terminales hay que pagar  dos suscripciones completas.

 

Notas legales importantes a tener  en cuenta:
EN LA MAYORÍA DE LOS PAÍSES Y TERRITORIOS ES ILEGAL INSTALAR SOFTWARE O HARDWARE PARA MONITOREO Y / O VIGILANCIA EN DISPOSITIVOS (INCLUYENDO, PERO NO LIMITADO A, TELÉFONOS MÓVILES Y TABLETAS) QUE NO SON DE SU PROPIEDAD O PARA LOS QUE NO TIENE LA AUTORIZACIÓN ADECUADA PARA INSTALAR DICHO SOFTWARE O HARDWARE Y USTED RECONOCE Y ENTIENDE TODO ESTO. 

SI NO TIENE EL PROPIETARIO DE LOS DISPOSITIVOS MENCIONADOS, PRIMERO DEBE INFORMAR A SUS PROPIETARIOS Y USUARIOS Y OBTENER LA AUTORIZACIÓN APROPIADA DE ELLOS. ADEMÁS, DEBE ASEGURARSE DE QUE NO ES ILEGAL MONITOREAR DISPOSITIVOS UBICADOS EN SU PAÍS / JURISDICCIÓN O MONITOREAR DISPOSITIVOS EN DIFERENTES PAÍSES / JURISDICCIONES.

 INCLUSO SI USTED POSEE LOS DISPOSITIVOS, PRIMERO DEBE INFORMAR A SUS USUARIOS Y OBTENER LA AUTORIZACIÓN APROPIADA Y LEGAL DE ELLOS PARA QUE PUEDA SUPERVISAR SUS ACTIVIDADES. DE LO CONTRARIO, NO PUEDE INSTALAR DICHO SOFTWARE O HARDWARE. 

USTED ACEPTA QUE ANTES DE INSTALAR CUALQUIER TIPO DE SOFTWARE O HARDWARE QUE SE PUEDA UTILIZAR PARA MONITOREO Y / O VIGILANCIA Y PARA OTROS PROPÓSITOS SIMILARES, VERIFICARÁ TODAS LAS ACTAS Y LEYES EN EL PAÍS / JURISDICCIÓN DONDE RESIDE ACTUALMENTE, Y TAMBIÉN EN EL PAÍS / JURISDICCIÓN DONDE ESTARÁ MONITOREANDO LOS DISPOSITIVOS.

TAMBIÉN ACEPTA VERIFICAR PERIÓDICAMENTE TODAS LAS LEYES Y ACTOS DEL PAÍS / JURISDICCIÓN DONDE RESIDE ACTUALMENTE, Y TAMBIÉN EN EL PAÍS / JURISDICCIÓN DONDE USTED SUPERVISARÁ LOS DISPOSITIVOS DESPUÉS DE INSTALAR CUALQUIER TIPO DE SOFTWARE UTILIZADO PARA MONITOREO Y / O VIGILANCIA Y PARA OTROS FINES SIMILARES

AL USAR ESTAS APLICACIONESN O SITIOs WEB, USTED ACEPTA SEGUIR TODAS LAS LEYES Y REGLAMENTOS QUE RIGEN EL USO DE VARIOS TIPOS DE SOFTWARE Y HARDWARE Y USTED ACEPTA QUE CUMPLIRÁ CON ESTAS LEYES Y QUE ESTA ES SU ÚNICA RESPONSABILIDAD.

ADEMÁS, USTED ACEPTA INDEMNIZAR Y MANTENER A LOS CREADORES, LOS PROPIETARIOS Y OPERADORES DE ESTE SITIO WEB Y APLICACIÓN, SUS LICENCIANTES, PROVEEDORES DE CONTENIDO Y SERVICIO, EMPLEADOS Y CONTRATISTAS, SIN RESPONSABILIDAD DE CUALQUIER TIPO DE DAÑO Y CUALQUIER TIPO DE PREDICAMENTOS QUE PUEDAN SURGIR DE SU USO O ABUSO DE DICHO SOFTWARE O HARDWARE. 

ADEMÁS, USTED RECONOCE Y ACEPTA QUE LAS LEYES Y REGLAMENTOS PUEDEN CAMBIAR DE VEZ EN TIEMPO Y QUE ESTÁN SUJETAS A DIFERENTES INTERPRETACIONES. 

ESTAMOS FIRMEMENTE CONTRA EL USO DE DICHO SOFTWARE O HARDWARE CON FINES ILEGALES O NO ÉTICOS.  LOS SERVICIOS Y SISTEMAS NO ESTÁN PERMITIDOS PARTICIPAR EN NINGÚN TIPO DE ABUSO COMO SPAMMING, NEGACIÓN DE ATAQUES DE SERVICIO, ACOSO, CRACKING O CUALQUIER ACTIVIDAD ILEGAL O ANTIÉTICA.