Blog

  • Un hacker está vendiendo los datos de usuario de 500 millones de usuarios de LinkedIn en línea

    Un hacker está vendiendo los datos de usuario de 500 millones de usuarios de LinkedIn en línea

    Es triste decirlo, pero parece que a medida que la pandemia de coronavirus empeora, la piratería se vuelve más común.

    Según Verizon , los datos personales estuvieron involucrados en aproximadamente la mitad (58 por ciento) de las violaciones de seguridad cibernética el año pasado. Bueno, si principios de 2021 es una indicación de lo que vendrá, este año no se verá mucho mejor.

    Sin embargo, otra importante plataforma de redes sociales ha visto comprometida una parte de su base de usuarios.

    Hacker quiere cuatro cifras para una base de datos de 500 millones de usuarios de LinkedIn

    El 6 de abril, Cybernews informó que un archivo que contenía datos de usuarios extraídos de 500 millones de perfiles de LinkedIn se había publicado en un "foro de piratería popular" sin nombre. Y en caso de que no crea que los registros sean legítimos, el autor de la publicación también filtró dos millones de registros como muestra de prueba de concepto.

    Los datos extraídos de los perfiles de LinkedIn incluyen ID de LinkedIn, nombres completos, títulos profesionales, direcciones, números de teléfono, géneros y enlaces a perfiles de redes sociales.

    Para ver la muestra, a otros usuarios del foro les cuesta alrededor de $ 2 en créditos del foro. Para toda la base de datos, parece que el hacker está pidiendo miles de dólares. "También vendiendo 500 millones de perfiles, PM [mensaje privado] me por un precio mínimo de 4 dígitos $$$$", escriben.

    El 8 de abril, una publicación de LinkedIn Pressroom confirmó que los datos que se venden en este foro no se adquirieron a través de una violación de datos.

    Hemos investigado (…) y hemos determinado que en realidad se trata de una agregación de datos de varios sitios web y empresas. Incluye datos de perfil de miembros visibles públicamente que parecen haber sido extraídos de LinkedIn. Esto no fue una violación de datos de LinkedIn, y no se incluyeron datos de cuentas de miembros privados de LinkedIn en lo que pudimos revisar.

    En el momento de escribir este artículo, no está claro si los 200 millones de registros están vinculados a Golden Chicken, el grupo de piratas informáticos que, según los informes, envía ofertas de trabajo falsas en LinkedIn .

    ¿LinkedIn también necesita reforzar su seguridad?

    Si bien es un alivio (más o menos, de todos modos) que los datos del usuario compartidos en el foro se agreguen y no como resultado de una violación reciente de LinkedIn, esto podría ser una señal de que LinkedIn debería mejorar su seguridad. Un buen ejemplo reciente es Twitter, que ahora le permite utilizar varias claves físicas para iniciar sesión .

    Este desafortunado evento refleja el reciente relanzamiento de los datos pirateados de Facebook de 2019 que afectaron a múltiples medios como una "nueva" filtración. Cuando se publicó la historia por primera vez, la gente pensó que se trataba de otra infracción de seguridad.

    Además, puede ver si su dirección de correo electrónico ha sido expuesta en esta fuga de datos u otras violaciones de seguridad utilizando elverificador de fuga de datos personales en línea gratuito de Cybernews. La compañía afirma que busca su dirección en una biblioteca de más de 15 mil millones de registros violados.

  • Cómo configurar y usar Apple Pay en su Mac

    Cómo configurar y usar Apple Pay en su Mac

    Apple Pay es una función que le permite realizar compras seguras en tiendas y en la web con casi cualquier dispositivo Apple. Es una función bastante útil ya que acelera el proceso de pago al realizar compras en línea.

    Si se pregunta cómo configurar y usar Apple Pay en su Mac, siga leyendo para conocer todo al respecto.

    ¿Apple Pay es compatible con mi Mac?

    Es posible usar Apple Pay en muchos modelos de Mac más nuevos y más antiguos. Por lo tanto, incluso si su Mac no tiene un sensor Touch ID, aún puede usar Apple Pay para realizar pagos.

    Sin embargo, tenga en cuenta que solo las MacBooks que se lanzaron en 2012 o posteriores son compatibles con esta función. Y necesitará un iPhone o Apple Watch que ya tenga Apple Pay configurado para usar Apple Pay en una Mac que no tenga Touch ID.

    Relacionado: Cómo usar Apple Pay Cash para solicitar y enviar dinero con un iPhone

    Pero antes de poder aprovechar esta función, debe configurarla.

    Cómo configurar Apple Pay en su Mac

    Si tiene una MacBook Air o una MacBook Pro con Touch ID, entonces debería haber tenido la oportunidad de configurar esta función al usar su dispositivo por primera vez. Pero si elige hacerlo más tarde, aquí le mostramos cómo configurar Apple Pay a través de la aplicación Preferencias del sistema:

    1. Inicie la aplicación Preferencias del sistema en su Mac.
    2. Dirígete a Wallet y Apple Pay .
    3. Haga clic en el botón Agregar tarjeta .
    4. Coloque su tarjeta en el marco de la cámara FaceTime para que su computadora ingrese todos los detalles automáticamente, o haga clic en Ingresar detalles de la tarjeta manualmente . Cuando esté listo, haga clic en Siguiente .
    5. Verifique los detalles de su tarjeta, verifique si la fecha de vencimiento es correcta y escriba su código de seguridad. Haga clic en Siguiente para confirmar.
    6. Acepte los términos y condiciones haciendo clic en Aceptar .
    7. Elija un método de verificación preferible y haga clic en Siguiente .
    8. Escriba el código que recibió a través del método de verificación seleccionado anteriormente y haga clic en Siguiente .

    Su tarjeta de crédito debería agregarse inmediatamente a su billetera Apple Pay. Si esto no sucede de inmediato, es posible que su banco necesite más tiempo para la verificación.

    Configurar Apple Pay en una Mac sin Touch ID

    Si está usando una Mac más antigua que no tiene un sensor Touch ID, entonces necesita usar un iPhone o Apple Watch para permitir que su Mac use las tarjetas de crédito almacenadas en ese dispositivo.

    He aquí cómo hacerlo:

    1. Abra la aplicación Configuración en su iPhone.
    2. Desplácese hacia abajo y toque Wallet y Apple Pay .
    3. En la parte inferior de la pantalla, habilite Permitir pagos en Mac .
    Galería de imágenes (2 imágenes)

    Cómo permitir Apple Pay en Safari

    El siguiente paso que debe tomar antes de poder usar Apple Pay en su Mac es permitir esta función en su navegador.

    A continuación, le indicamos cómo permitir Apple Pay en Safari:

    1. Abra el navegador Safari en su Mac.
    2. En la esquina superior izquierda de la pantalla, haga clic en Safari y diríjase a Preferencias .
    3. Haga clic en la sección Privacidad .
    4. Habilite la opción para Permitir que los sitios web busquen Apple Pay y Apple Card .

    Cómo usar Apple Pay para realizar compras en su Mac

    Gracias a la función Apple Pay, puede realizar pagos en diferentes minoristas en línea en segundos sin la molestia de ingresar manualmente la información de la tarjeta de crédito.

    Desafortunadamente, no todas las tiendas en línea tienen la opción de pagar con Apple Pay. Pero el número de sitios web compatibles crece constantemente. Si ve un logotipo de Apple Pay en la caja, entonces sabe que puede usar la función Apple Pay en su Mac para realizar el pago.

    Relacionado: Cómo comprobar qué tiendas admiten Apple Pay y Google Pay

    El proceso de pago con Apple Pay es increíblemente rápido y fácil. Todo lo que necesita hacer para comprar cosas en línea con Apple Pay es hacer clic en el botón Apple Pay y colocar el dedo en el sensor Touch ID de su Mac.

    Si su Mac no tiene un sensor Touch ID, tendrá que usar su iPhone o su Apple Watch para realizar compras con Apple Pay.

    Simplemente seleccione la opción Apple Pay durante el pago y tome su iPhone o Apple Watch. Use cualquier forma de verificación que su dispositivo tenga disponible: Touch ID, Face ID o presionando el botón lateral.

    Cómo administrar tarjetas en Apple Pay en su Mac

    Siempre que lo desee, puede agregar nuevas tarjetas de crédito a su billetera Apple Pay o eliminar las existentes usando su Mac.

    He aquí cómo hacerlo:

    1. Abra las Preferencias del sistema .
    2. Haga clic en Wallet y Apple Pay .
    3. En el lado izquierdo de la pantalla, verá todas las tarjetas que se pueden usar con Apple Pay en su Mac. Haga clic en el que desea eliminar y haga clic en el icono menos ( - ) debajo de la lista de tarjetas.
    4. Para agregar una nueva tarjeta de crédito, haga clic en el ícono más ( + ) debajo de la lista de tarjetas y sostenga su tarjeta cerca de su cámara para que su Mac pueda ingresar automáticamente todos los detalles, o elija ingresar los detalles de la tarjeta manualmente.

    ¿Por qué no puedo configurar Apple Pay en mi Mac?

    Hay algunos problemas que pueden impedirle configurar Apple Pay en su Mac. Esto es lo que debe hacer si tiene problemas para ingresar los detalles de la tarjeta de crédito en su dispositivo:

    • Compruebe si Apple Pay está disponible en su país. Puede encontrar la lista completa de países y regiones que admiten esta función en el sitio web oficial de Apple .
    • Asegúrese de que su computadora esté ejecutando la última versión de macOS. De lo contrario, debe ejecutar una actualización e intentar configurar Apple Pay después de eso.
    • Comprueba que hayas iniciado sesión en iCloud en tu Mac en Preferencias del sistema.

    Realice pagos rápidos y seguros con Apple Pay

    Si aún no ha intentado usar Apple Pay en su Mac, definitivamente debería hacerlo, ya que está perdiendo la oportunidad de realizar pagos en tiendas en línea de forma más rápida y sencilla.

    La gran noticia es que puede utilizar esta función en cualquier dispositivo Apple: iPhone, iPad, Apple Watch y Mac. Así que adelante, aproveche esta fantástica función en todos sus dispositivos.

  • Introducción al registro del sistema en Linux

    Introducción al registro del sistema en Linux

    Los registros del sistema en Linux le brindan una gran comprensión de las actividades principales en su PC o infraestructura de servidor. Son fundamentales para mantener su sistema estable y seguro. Los registros del sistema también le brindan la oportunidad de auditar diversas actividades que han tenido lugar en el pasado.

    Esta guía le presenta el sistema de registro en Linux. Todas las actividades principales llevadas a cabo por las aplicaciones y servicios del sistema central se registran en forma de registros y en el corazón de todo esto se encuentra un sistema conocido como Syslog .

    ¿Por qué son importantes los registros del sistema?

    Imagine que su PC con Linux ha experimentado recientemente errores de inicio o sospecha que alguien ha estado intentando iniciar sesión en su sistema. Estos eventos se pueden rastrear fácilmente ya que su sistema realiza un seguimiento de dichas actividades en forma de registros.

    En Linux, los registros del sistema son registros legibles por humanos de las actividades centrales del sistema realizadas por servicios, demonios y aplicaciones del sistema. Algunas de las actividades importantes registradas en una máquina Linux incluyen inicios de sesión de usuarios y fallas de inicio de sesión, arranque del sistema operativo, fallas del sistema, etc.

    Linux tiene un servicio dedicado conocido como Syslog que es específicamente responsable de crear registros a través del System Logger. Syslog consta de varios componentes, como Syslog Message Format, Syslog Protocol y Syslog Daemon: conocido popularmente como syslogd o rsyslogd en las versiones más recientes de Linux.

    El directorio / var / log almacena la mayoría de los registros en un sistema Linux. El directorio / var contiene principalmente archivos y directorios variables, es decir, datos que están destinados a cambiar con frecuencia. No existe un formato estándar para los registros, pero como mínimo, los registros deben contener una marca de tiempo y los detalles de la actividad que se registra.

    Listado de archivos administrados por syslog

    Todos los registros generales de su sistema se almacenan en el archivo / var / log / syslog en las distribuciones de Linux basadas en Debian. Otras distribuciones usan el archivo / var / log / messages para almacenar registros.

    Nota : Diferentes distribuciones de Linux pueden usar diferentes archivos para registrar mensajes específicos. Por ejemplo, en las distribuciones de Linux basadas en Debian, el archivo /var/log/auth.log contiene registros de autenticación, mientras que los sistemas RedHat usan el archivo / var / log / secure para almacenar dichos registros.

    Para obtener más información sobre todos los archivos que son responsables de almacenar registros, puede echar un vistazo al directorio /etc/rsyslog.d , que contiene importantes archivos de configuración de Syslog. Por ejemplo, para enumerar los archivos de registro estándar, puede echar un vistazo al archivo /etc/rsyslog.d/50-default.conf .

     cat /etc/rsyslog.d/50-default.conf

    El archivo le muestra los nombres de las aplicaciones del sistema y los archivos de registro correspondientes asociados con ellas.

    Cómo inspeccionar archivos de registro

    La mayoría de los archivos de registro son bastante largos. Como tal, uno de los comandos más importantes para inspeccionar archivos de registro en Linux es el comando less , que genera el contenido del archivo en secciones fácilmente navegables.

    Por ejemplo, para ver el contenido del archivo / var / log / syslog , use el comando less de la siguiente manera.

     less /var/log/syslog

    Use la tecla F del teclado para desplazarse hacia adelante y la tecla B para desplazarse hacia atrás.

    El archivo syslog contiene registros de algunas de las actividades más críticas, como errores del sistema y actividades de servicio en su sistema.

    Si solo desea inspeccionar los registros más recientes, puede usar el comando tail , que solo enumera los últimos 10 mensajes de registro de forma predeterminada.

     tail /var/log/syslog

    También puede especificar el número de mensajes de registro que desea ver con la utilidad tail. El comando toma el siguiente formato tail -n file-to-inspect, donde n es el número de líneas que desea ver. Por ejemplo, para ver los últimos 7 mensajes de registro en el archivo syslog, puede usar el siguiente comando.

     tail -7 /var/log/syslog

    Para ver los registros más recientes en tiempo real, puede usar el comando tail con la opción -f de la siguiente manera.

     tail -f /var/log/syslog

    Otro comando importante para inspeccionar los mensajes de registro es el comando head . A diferencia del comando tail, que muestra los últimos mensajes de registro en un archivo, el comando head muestra las primeras líneas de un archivo. De forma predeterminada, el comando generará solo las primeras 10 líneas.

     head /var/log/syslog

    Registros de autenticación

    Si desea encontrar información sobre los inicios de sesión de los usuarios en su sistema, puede echar un vistazo al archivo /var/log/auth.log . La información relacionada con los inicios de sesión de los usuarios, las fallas de inicio de sesión y el método de autenticación utilizado se puede encontrar aquí.

    Registros de kernel

    Cuando su sistema Linux arranca, los datos importantes sobre el búfer de anillo del kernel se registran en el archivo / var / log / dmesg . En este archivo se registra otra información sobre los controladores de hardware, el kernel y el estado de arranque.

    En lugar de inspeccionar los mensajes de registro de arranque con el comando less o cat, puede usar dmesg para ver estos archivos de registro.

     dmesg

    Nota : Los mensajes de registro en el archivo / var / log / dmesg se restablecen cada vez que se inicia el sistema.

    Otro archivo de registro importante relacionado con los problemas del kernel es /var/log/kern.log .

    Registro de mensajes con el comando logger

    Además de solo ver los mensajes de registro registrados por las aplicaciones o servicios del sistema, el sistema de registro en Linux también le permite registrar mensajes manualmente usando el comando logger . Un usuario puede registrar mensajes en el archivo / var / log / syslog de forma predeterminada. Por ejemplo, para registrar un mensaje simple, puede ejecutar el siguiente comando.

     logger hello world!

    Ahora puede usar el comando tail para ver el mensaje registrado recientemente.

     tail -3 /var/log/syslog

    Incluso puede registrar la salida de otros comandos con el comando del registrador encerrando el comando dentro del carácter de tilde ( ` ).

     logger `whoami`

    También puede usar el comando logger dentro de sus scripts para registrar eventos importantes. Utilice las páginas de manual para obtener más información sobre el comando logger y sus opciones.

     man logger

    Administrar archivos de registro

    Como habrá notado, hay una gran cantidad de datos que se registran en una máquina Linux. Por lo tanto, debe tener un sistema adecuado para administrar el espacio en disco utilizado por los archivos de registro. Además de eso, tener un sistema de registro asegura que encontrará fácilmente los mensajes de registro que está buscando. La solución de Linux a este problema es la utilidad logrotate .

    Utilice la utilidad logrotate para configurar qué archivo de registro conservar, cuánto tiempo desea conservarlos, administrar el envío de registros y cómo comprimir archivos de registro antiguos, etc.

    Puede configurar la utilidad logrotate con cualquier editor de texto de su elección. El archivo de configuración para logrotate se puede encontrar en /etc/logrotate.conf .

    Mantener su sistema robusto con registros

    Los registros del sistema en Linux son una excelente manera de obtener información sobre las principales actividades que ocurren en su sistema que pueden comprender la seguridad y la estabilidad general del sistema. Saber cómo ver y analizar los mensajes de registro en un servidor o PC será de gran ayuda para mantener la solidez de su sistema.

    A veces, a los usuarios les resulta difícil utilizar determinadas aplicaciones en su sistema debido a la baja disponibilidad de los recursos del sistema. En tales situaciones, eliminar programas que no responden puede liberar espacio en la memoria principal de su sistema.

  • Cómo crear código reutilizable en JavaScript usando patrones de diseño

    Si alguna vez desea crear código JavaScript reutilizable o colaborar con un equipo de desarrolladores, entonces necesita saber cómo usar e identificar los diferentes patrones de diseño en el lenguaje.

    En JavaScript, el término patrón de diseño se refiere a una forma específica de escribir código y, a menudo, se lo considera una plantilla de programación. Lo interesante es que la etiqueta "patrón de diseño" se puede aplicar a cualquier cosa, desde una aplicación completa hasta un simple bloque de código.

    El patrón de diseño es un tema amplio, pero al comprender el patrón del módulo y el método de fábrica, debe familiarizarse con él.

    El patrón del módulo

    Los módulos de JavaScript se introdujeron en 2009, con la versión ES5 del lenguaje de programación. Mediante el uso de módulos, los desarrolladores ahora podían crear piezas de código personalizadas y exportarlas para usarlas en otras secciones de una aplicación JavaScript.

    La estructura básica del patrón del módulo

     
    (function(){
    //Declare private variables and functions
    //Declare and return public variables and functions
    })();

    En el ejemplo anterior, los patrones de módulo siempre se incluyen en una expresión de función invocada inmediatamente (IIFE). Esto significa que un patrón de módulo se ejecuta tan pronto como se define. Lo importante a tener en cuenta es que el patrón del módulo consta de dos secciones distintas.

    La primera sección se usa para declarar variables y funciones privadas, a las que solo se puede acceder dentro del alcance del patrón del módulo.

    La segunda sección consta de un valor de retorno que incluye variables públicas y funciones a las que se puede acceder fuera del alcance del patrón del módulo.

    Uso del patrón de módulo para crear una aplicación

    Considere una aplicación simple como un administrador de tareas. Usando el patrón de módulo, necesitará crear módulos personalizados para cada sección. Estos pueden incluir:

    • Un controlador de tareas
    • Un controlador de interfaz de usuario
    • Un controlador de almacenamiento
    • Un controlador de aplicaciones

    Relacionado: Proyectos de programación para principiantes

    El controlador de tareas se utilizará para crear cada nueva tarea. El controlador de la interfaz de usuario se utilizará para controlar las funciones relacionadas con la interfaz de usuario, como escuchar el clic de un botón o cambiar lo que se muestra. El controlador de almacenamiento se utilizará para guardar cada nueva tarea en una base de datos. El módulo de la aplicación se utilizará para ejecutar la aplicación.

    Uso del patrón de módulo para crear un ejemplo de controlador de interfaz de usuario

     
    const UIController = ( function() {
    //the private section of the module
    let component = 'Replacement Text';
    const changeComponent = function() {
    //change all the h1 text to what is in the component variable above
    const element = document.querySelector('h1');
    element.textContent = component;
    }
    //the public section of the module
    return{
    callChangeComponent: function() {
    changeComponent();
    }
    }
    })();

    El ejemplo anterior muestra claramente las dos secciones que se encuentran dentro de un patrón de módulo: privado y público.

    En la sección privada de la función, la variable de componente y la función changeComponent son ambas privadas. Por lo tanto, si quisiera cambiar todo el texto h1 en una página web, obtendría un error si escribiera el siguiente código.

    Manera incorrecta de invocar el ejemplo de componente de cambio

     
    UIController.changeComponent();

    El mensaje de error indicará explícitamente que changeComponent () no es una función de la función UIController. Ésta es la belleza del patrón del módulo; las variables y funciones que se crean en la sección privada nunca serán accedidas directamente fuera del alcance de esa función.

    Aunque no se puede acceder directamente a las variables privadas, se puede acceder a ellas indirectamente (desde la sección pública). Una conclusión del ejemplo anterior del controlador de IU es que la sección pública en el patrón del módulo siempre está marcada por la propiedad return.

    Dentro de los parámetros de la propiedad return, ahora podemos obtener acceso indirecto a la función changeComponent. Ahora podemos usar la siguiente línea de código (con el patrón de módulo anterior) para cambiar efectivamente todo el texto h1 en una página web de destino a "Texto de reemplazo".

    Manera correcta de invocar el ejemplo de componente de cambio

     
    UIController.callChangeComponent();

    El patrón de fábrica

    El patrón de fábrica (también conocido como método de fábrica) es otro patrón de diseño de JavaScript popular. El patrón del módulo brilla cuando se requiere la encapsulación de datos, y el patrón de fábrica es más útil en los casos en que se trata de una colección de diferentes objetos que son similares en algunos aspectos.

    Volviendo a nuestro administrador de tareas anterior; si permitiéramos que el usuario asigne un tipo a cada tarea que se crea, entonces podríamos crear ese aspecto de la aplicación (de manera bastante eficiente) usando el patrón de fábrica

    Ejemplo de uso del patrón de fábrica para asignar un tipo de tarea

     
    //Factory pattern function
    const TaskFactory = function(){
    this.createTask = function(name, type){
    let task;
    //check the type the user selected
    if(type === 'urgent'){
    task = new UrgentTask(name);
    }else if(type === 'trivial'){
    task = new TrivialTask(name);
    }
    //set the type selected in the if statement to the one received as a property
    task.type = type;
    //used to print the task and its type to the console
    task.define = function(){
    console.log(`${this.name} (${this.type}): ${this.priority}`)
    }
    return task
    }
    }

    El código anterior usa el método de fábrica para crear nuevas tareas, verificar el tipo (urgente o trivial) y asignar la propiedad apropiada antes de imprimir la nueva tarea en la consola.

    La función interna createTask, prepara el escenario para que se creen múltiples tareas simultáneamente, pero antes de que intentemos crear nuevas tareas, hay un código adicional que debemos incluir en esta sección del proyecto.

    En el código anterior, estamos creando una nueva UrgentTask o una nueva Trivialtask si se cumple una condición específica. Sin embargo, no hay ninguna función o clase con estos nombres en nuestro proyecto; este problema se puede resolver fácilmente introduciendo el siguiente código en nuestro proyecto.

    Cree tipos de tareas urgentes y triviales

     
    //Create the urgent task type
    const UrgentTask = function(name){
    this.name = name;
    this.priority = "as soon as possible"
    }
    //create the trivial task type
    const TrivialTask = function(name){
    this.name = name;
    this.priority = "when you can"
    }

    Debido al código anterior, ahora podemos asignar la propiedad UrgentTask o TrivialTask ​​a cada nueva tarea que se crea. El siguiente paso es crear ahora una nueva tarea, pero antes de eso, necesitamos crear una base de datos para almacenar cada nueva tarea a medida que se crea.

    Dado que la creación de una base de datos es un artículo completo en sí mismo, sustituiremos una base de datos con una estructura de datos (una matriz).

    Creación de un ejemplo de matriz

     
    //create an array to host the different task
    const task = [];

    Ahora finalmente podemos crear una nueva tarea.

    Ejemplo de creación de nuevas tareas

     
    //create two new tasks
    const factory = new TaskFactory();
    task.push(factory.createTask('Clean the house', 'urgent'));
    task.push(factory.createTask('Reach level 30 in Candy Crush', 'trivial'));

    Con el código anterior, ahora puede crear dos nuevas tareas utilizando la función TaskFactory que creamos inicialmente. Cuando creamos cada nueva tarea, las propiedades (nombre y tipo) se pasan a la función createTask, que se encuentra en la función TaskFactory que creamos usando el patrón de fábrica.

    Una vez que cada tarea ha pasado por TaskFactory y se le asigna la propiedad de tipo correspondiente. Luego se inserta en la matriz de tareas que creamos anteriormente.

    Nuestro único dilema ahora es ¿cómo sabemos que esas dos tareas fueron creadas o que nuestro patrón de fábrica funcionó? Si hubiéramos utilizado una base de datos, simplemente podríamos verificar la base de datos para ver si se crearon dos nuevas tareas.

    Vuelva al "Ejemplo de uso del patrón de fábrica para asignar un tipo de tarea" anterior, directamente debajo del comentario "utilizado para imprimir la tarea y su tipo en la consola", hay una pequeña función "task.define" que se creó para imprima cada tarea de la matriz en la consola utilizando el siguiente método de matriz .

     
    //print each task to the console
    task.forEach(function(task){
    task.define();
    });

    Debería ver la siguiente salida que se muestra en su consola.

     
    Clean the house (urgent): as soon as possible
    Reach level 30 in Candy Crush (trivial): when you can

    Ahora puede usar patrones de diseño en sus proyectos de JavaScript

    En esta etapa, debe comprender los patrones de diseño en JavaScript y comprender cómo se pueden usar los patrones de diseño para crear código reutilizable y hacer la vida más fácil para todos los desarrolladores involucrados en un proyecto.

    Ahora que sabe cómo funcionan dos patrones de diseño de JavaScript populares, debería poder aplicarlos de manera eficiente para desarrollar una aplicación.

    Crédito de la imagen: Alltechbuzz / Pixabay

  • ¿Qué es Power Over Ethernet (PoE) y cuáles son sus beneficios?

    ¿Qué es Power Over Ethernet (PoE) y cuáles son sus beneficios?

    Power over Ethernet (PoE) es la tecnología que transporta simultáneamente energía eléctrica y datos en cables Ethernet. PoE simplifica los requisitos de cableado para dispositivos de red y, por lo tanto, se ha adoptado ampliamente para proporcionar energía eléctrica y necesidades de datos a dispositivos de baja potencia, como cámaras IP.

    Siga leyendo para descubrir cómo funciona PoE, sus ventajas y los dispositivos que comúnmente usan PoE.

    ¿Cómo funciona PoE?

    La mayoría de los cables Ethernet se fabrican con cuatro pares de cables, pero normalmente solo utilizan dos de estos pares. PoE aprovecha los dos pares de cables de repuesto y los adapta como conductores para transportar energía.

    Los cables Ethernet etiquetados como Categoría 5 y superiores son seguros de usar como cables PoE; los cables de estos cables se han agrupado por separado para transportar datos y energía sin posibilidad de interferencia entre ellos.

    Las ventajas de PoE

    Power over Ethernet aporta una serie de ventajas a cualquier red en la que esté disponible.

    Costos de instalación reducidos

    Con un solo cable que entrega energía y datos simultáneamente, los costos de instalación de PoE son menores que el costo del cableado tradicional. Sin necesidad de conectarse a la red eléctrica, PoE permite la instalación en exteriores sin la necesidad de instalar infraestructura eléctrica, como tomas de corriente, en todos los puntos finales.

    Relacionado: ¿Qué es un cable Ethernet y cómo hace que Internet sea más rápido?

    Además, los cables de red no requieren la instalación de un electricista calificado.

    Los sistemas heredados, como los sistemas telefónicos, también se pueden reutilizar con inyectores y divisores PoE para agregar dispositivos PoE sin instalar nueva infraestructura eléctrica.

    Seguridad

    La alimentación de una sola fuente (un cable Ethernet Cat5e o superior) en lugar de múltiples adaptadores y enchufes hace que la instalación sea sencilla con menos pasos y peligros potenciales. Una fuente de energía estable de un solo tomacorriente también significa menos riesgo de cortes de energía, daño potencial al equipo y sobrecarga eléctrica.

    Flexibilidad

    PoE es plug and play: los dispositivos se adaptan fácilmente a los entornos cambiantes y toda la red puede agregar o quitar dispositivos sin interrupciones. Dado que no está atado a una toma de corriente, tiene mayor flexibilidad para instalar un dispositivo y tener la libertad de colocarlo donde más se necesite.

    Escalabilidad

    La flexibilidad que ofrece la reutilización de sistemas heredados y no depender de enchufes hace que la instalación y distribución de nuevas conexiones de red sea simple y sencilla. Además, una red PoE se puede ampliar fácilmente para agregar más dispositivos en diferentes habitaciones o ubicaciones.

    Capacidades mejoradas de recopilación de datos

    PoE es ideal para la recopilación de datos. Por ejemplo, las instalaciones que utilizan software de análisis pueden evaluar si el área que están administrando está ocupada y si los componentes de HVAC y la iluminación LED deben encenderse o apagarse .

    ¿Qué dispositivos utilizan PoE?

    A medida que se sigue dando prioridad a PoE como tecnología y los fabricantes la adoptan, la lista de dispositivos que utilizan PoE se está expandiendo.

    Actualmente, sus tres principales aplicaciones son:

    • Teléfonos VoIP : teléfonos que transmiten y realizan llamadas telefónicas a través de una red IP. Un teléfono VoIP habilitado para PoE requiere solo una conexión de enchufe de pared y se puede apagar de forma remota.
    • Cámaras IP : una cámara de video digital que envía datos de imágenes a través de una red IP. La flexibilidad de PoE lo hace ideal para cámaras de vigilancia que deben reposicionarse e implementarse rápidamente.
    • Redes inalámbricas : los lectores RFID, los puntos de acceso Wi-Fi y los puntos de acceso Bluetooth pueden utilizar la tecnología PoE para permitir el acceso en ubicaciones remotas.

    El futuro de la tecnología PoE

    A medida que la tecnología PoE continúa evolucionando, se están tomando medidas para actualizar su infraestructura de soporte. El estándar PoE más nuevo admite 100 vatios de potencia (suficiente para alimentar una computadora portátil promedio, pero no un sistema de escritorio completo). Ethernet Alliance también está implementando su programa de certificación con sus logotipos "EA Certified 2.0" para dispositivos PoE que cumplen con los estándares.

  • Cómo crear y administrar clips de Twitch

    Cómo crear y administrar clips de Twitch

    Si sucede algo emocionante, divertido o simplemente tonto en Twitch, no tienes que dejar que se desvanezca. Los clips de Twitch son breves momentos destacados que cualquiera puede hacer y compartir con otros para preservar esos momentos únicos que solo obtiene de una transmisión en vivo.

    Exploremos cómo hacer un clip de Twitch y cómo administrarlos después.

    Cómo recortar en Twitch para escritorio

    Siempre sucede algo en Twitch y, a menudo, te encontrarás con momentos que quieres compartir con los demás. Si está en su PC y ve que sucede algo memorable, puede crear un momento destacado a través de una de estas dos formas.

    Relacionado: ¿Qué es Twitch? Cómo utilizar la plataforma de transmisión en vivo

    Primero, puede colocar el mouse sobre el reproductor de video. Cuando lo haga, aparecerán algunas opciones en la parte inferior derecha. Haz clic en el que parece una claqueta .

    Alternativamente, puede presionar Alt + X y Twitch recortará el momento sin necesidad de hacer clic en nada.

    Una vez que haya tomado un clip, deberá editar un poco el video antes de poder publicarlo en línea. Sin embargo, no se preocupe; no es demasiado complicado.

    Verá una pista debajo de la sección que acaba de recortar. Mueva la barra azul a lo largo de la línea de tiempo amarilla hasta que cubra la parte que desea recortar. Luego, arrastre el inicio y el final de la barra azul para ajustar mejor cuándo comienza y se detiene. Una vez que hayas terminado, dale un nombre al clip y haz clic en Publicar .

    Cómo recortar la aplicación Twitch

    Galería de imágenes (4 imágenes)

    Si está en un dispositivo móvil, puede recortar algo tocando en la transmisión de video y luego tocando el ícono de la claqueta .

    Una vez que haya recortado un momento, la aplicación le mostrará una vista previa de lo que ha enganchado. Si la vista previa se ve bien, puede publicarla de inmediato; de lo contrario, puede optar por editarlo y ajustarlo un poco mejor.

    Si elige editarlo más, toque el texto que dice Editar y espere a que se cargue el clip. Luego toque Recortar clip y ajuste la sección que desea recortar usando la barra amarilla. Toca Listo en la parte superior derecha cuando estés contento.

    Finalmente, asigne un nombre al clip y toque Publicar en la parte superior derecha para ponerlo en línea.

    Cómo compartir un clip de Twitch

    Cuando creas un clip de Twitch, Twitch te dará un enlace único que te llevará a tu clip. Luego puede copiar y pegar ese clip donde quiera para mostrar el momento que capturó. Tenga cuidado de compartirlo en el chat del transmisor, ya que puede tener un moderador automático configurado para que las personas que publiquen enlaces agoten el tiempo de espera.

    Su clip también aparecerá en la biblioteca de clips del streamer, que se puede encontrar en twitch.tv/<STREAMER'S USERNAME> / clips . Esto permite que todos echen un vistazo a su clip, así que no se preocupe si su clip se vuelve popular de repente sin ningún esfuerzo por su parte.

    También debe considerar compartir sus clips de Twitch donde crea que a la gente le gustará, incluso si no han visto el transmisor antes. Cada clip de Twitch tiene un enlace en el que se puede hacer clic para el canal del transmisor, por lo que puede ser una excelente manera de presentar a las personas una transmisión y generar audiencia.

    Relacionado: Consejos de Twitch que lo ayudarán a generar una mayor audiencia

    Cómo administrar sus clips de Twitch

    Una vez que haya creado una biblioteca impresionante de clips, es posible que desee volver a visitar algunos recuerdos que ha creado. Para hacer esto, diríjase al Administrador de clips de Twitch para ver todos sus clips, tomar enlaces para compartir o eliminar los que ya no desea.

    Cómo sacar más provecho de Twitch

    Siempre hay una transmisión para ver en Twitch, y con ella vienen momentos únicos y divertidos que querrás compartir con los demás. Ahora sabe cómo hacerlo tanto en un navegador web como en la aplicación móvil.

    Si has estado en Twitch por un tiempo, sabrás que los emotes son un bien muy apreciado entre los espectadores. Afortunadamente, hay formas de obtener mucho más, desde suscribirse a más canales hasta descargar complementos.

    Haber de imagen: PixieMe / Shutterstock.com

  • Cómo incluir emojis en su código Python

    Un emoji es una pequeña imagen digital que se utiliza para expresar una idea o emoción. Integrar emojis con la programación puede ser divertido. Hace que la programación sea una tarea agradable. Puede usar emojis en comentarios, enviar mensajes o directamente en el código. Puede convertir textos aburridos como registros de producción y documentación en texto interesante usando emojis. Incluso las personas tienden a elegir líneas con emojis, lo que aumenta la productividad.

    Dado que Python es conocido por su versatilidad, puede realizar muchas operaciones en emoji usando Python.

    Imprimir emojis usando Python parece ser difícil pero engañosamente simple. Puede usar caracteres Unicode, nombres CLDR o emoji de la biblioteca de Python para imprimir emojis.

    Uso de caracteres Unicode para imprimir emojis

    Unicode es un estándar de codificación de caracteres universal que asigna un código a cada carácter y símbolo en todos los idiomas del mundo. Cada emoji tiene asignado un Unicode único. Cuando utilice Unicode con Python, reemplace "+" con "000" de Unicode. Y luego prefija el Unicode con "" .

    Por ejemplo, U + 1F605 se utilizará como U0001F605. Aquí, "+" se reemplaza por "000" y "" tiene el prefijo Unicode.

     # grinning face
    print("U0001F600")
    # beaming face with smiling eyes
    print("U0001F601")
    # grinning face with sweat
    print("U0001F605")
    # rolling on the floor laughing
    print("U0001F923")
    # face with tears of joy
    print("U0001F602")
    # slightly smiling face
    print("U0001F642")
    # smiling face with halo
    print("U0001F607")
    # smiling face with heart-eyes
    print("U0001F60D")
    # zipper-mouth face
    print("U0001F910")
    # unamused face
    print("U0001F612")

    El código anterior dará el siguiente resultado:

      








    Uso de nombres cortos de CLDR para imprimir emojis

    CLDR recopila nombres de caracteres cortos y palabras clave para secuencias y caracteres Emoji. Este método es más cómodo y fácil de usar.

     # smiling face with sunglasses
    print("N{smiling face with sunglasses}")
    # grinning face
    print("N{grinning face}")
    # loudly crying face
    print("N{loudly crying face}")
    # rolling on the floor laughing
    print("N{rolling on the floor laughing}")
    # face with tears of joy
    print("N{face with tears of joy}")
    # slightly smiling face
    print("N{slightly smiling face}")
    # smiling face with halo
    print("N{smiling face with halo}")
    # angry face
    print("N{angry face}")
    # zipper-mouth face
    print("N{zipper-mouth face}")
    # unamused face
    print("N{unamused face}")

    El código anterior dará el siguiente resultado:

      








    Uso de la biblioteca de emojis para imprimir emojis

    Esta biblioteca facilita la integración de emojis con programas de Python. Pero necesita instalar esta biblioteca antes de usarla. Asegúrese de tener pip instalado en su sistema . Ejecute lo siguiente en el símbolo del sistema:

     pip install emoji

    Esto instalará la biblioteca Python de emoji . Tenga en cuenta que para utilizar esta biblioteca en su programa Python, tendrá que importar la biblioteca.

     # Import required libraries
    from emoji import emojize
    # smiling face with sunglasses
    print(emojize(":smiling_face_with_sunglasses:"))
    # grinning face
    print(emojize(":grinning_face:"))
    # loudly crying face
    print(emojize(":loudly_crying_face:"))
    # rolling on the floor laughing
    print(emojize(":rolling_on_the_floor_laughing:"))
    # face with tears of joy
    print(emojize(":face_with_tears_of_joy:"))
    # slightly smiling face
    print(emojize(":slightly_smiling_face:"))
    # smiling face with halo
    print(emojize(":smiling_face_with_halo:"))
    # angry face
    print(emojize(":angry_face:"))
    # zipper-mouth face
    print(emojize(":zipper-mouth_face:"))
    # unamused face
    print(emojize(":unamused_face:"))

    El código anterior dará el siguiente resultado:

      








    Relacionado: Cómo obtener nuevos emojis en Android

    Extraer todos los emojis del texto

    Puede extraer fácilmente todos los emojis del texto usando Python. Se puede hacer usando expresiones regulares. Ejecute el siguiente comando en el símbolo del sistema para instalar la biblioteca de expresiones regulares:

     pip install regex

    El método re.findall () se usa para encontrar todos los emojis del texto.

     # Import required libraries
    import regex as re
    # Text from which you want to extract emojis
    text = 'We want to extract these emojis '
    # Using regular expression to find and extract all emojis from the text
    emojis = re.findall(r'[^w⁠s,. ]', text)
    print(emojis)

    Se mostrará la siguiente salida:

     [' ', ' ', ' ', ' ', ' ']

    Conversión de emoji en texto

    Puede convertir emoji en texto utilizando la biblioteca demoji de Python. Para instalar la biblioteca demoji, ejecute el siguiente comando:

     pip install demoji

    Una vez que haya instalado la biblioteca de demostración, tendrá que descargar datos del repositorio de código de emoji del Consorcio Unicode, ya que la lista de emoji en sí se actualiza y cambia con frecuencia. Pegue el siguiente código en un archivo de Python y luego ejecútelo para descargar los datos requeridos.

     # Importing demoji library
    import demoji
    demoji.download_codes()

    Finalmente, use el siguiente código para convertir emojis en texto.

     # Import required libraries
    import demoji
    # Text from where you want to convert emojis
    text = "Convert the given emojis to text"
    emojis = demoji.findall(text)
    # Print converted emojis
    print(emojis)

    Producción:

     {' ': 'unamused face',
    ' ': 'grinning face with smiling eyes,
    ' ': 'angry face',
    ' ': 'smiling face with sunglasses,
    }

    Reemplazar emoji con su significado

    Si desea reemplazar los emojis con su significado, puede hacerlo fácilmente usando la biblioteca de emojis. Asegúrese de instalar la biblioteca de emoji usando pip antes de ejecutar el siguiente código.

     # Import required libraries
    import emoji
    # Text from where you want to replace emojis
    text = """These are some of the most used emojis
    1.
    2.
    3. """
    replaced_text = emoji.demojize(text, delimiters=("", ""))
    # Printing replaced text
    print(replaced_text)

    El código anterior dará el siguiente resultado:

     These are some of the most used emojis
    1. face_with_tears_of_joy
    2. smiling_face_with_heart-eyes
    3. rolling_on_the_floor_laughing

    Eliminar emoji del texto en Python

    Puede eliminar todos los emojis del texto con la ayuda de expresiones regulares en Python.

     # Importing Regular Expression Library
    import re
    # Text from where you want to remove all emojis
    text = """These are some of the most used emojis
    1. Emoji 1
    2. Emoji 2
    """
    # Printing the text with emojis
    print(text)
    # Function to remove emoji from text
    def removeEmoji(text):
    regrex_pattern = re.compile(pattern = "["
    u"U0001F600-U0001F64F" # emoticons
    u"U0001F300-U0001F5FF" # symbols & pictographs
    u"U0001F680-U0001F6FF" # transport & map symbols
    u"U0001F1E0-U0001F1FF" # flags (iOS)
    "]+", flags = re.UNICODE)
    return regrex_pattern.sub(r'',text)
    # Printing the text without emojis
    print(removeEmoji(text))

    El código anterior dará el siguiente resultado:

     These are some of the most used emojis
    1. Emoji 1
    2. Emoji 2
    These are some of the most used emojis
    1. Emoji 1
    2. Emoji 2

    Haga que la programación sea divertida con emojis

    Los emojis ahora se consideran una parte integral de la comunicación de texto. Usando el poder de Python puedes realizar muchas operaciones en ellos. Adquiera el hábito de usar emojis en comentarios, enviar mensajes, etc. para hacer que la programación sea divertida.

    Tanto Emoticon como Emoji ahora se utilizan ampliamente en varias organizaciones. Incluso puedes crear tu propio emoji para expresarte a través del texto.