20.7 C
Caracas
jueves, noviembre 21, 2024
Inicio Blog

Instalar Drupal en nuestro servidor web local

0
Ponceelrelajado - Drupal

En el pasado hemos compartido com instalar Symfony, Python + Django y wordpress + composer, y en esta oportunidad queremos compartir con ustedes una guía rápida de instalación de Drupal en nuestro servidor web local XAMPP (también aplica para LAMP o Laragon)

El primer paso es crear una base de datos, para ello nos vamos al phpMyAdmin, cliqueamos en la pestaña de base de datos, aquí veremos las bases de datos que tenemos, en el campo que dice “Crear nueva base de datos” escribiremos el nombre de nuestra base de datos y al lado pondremos utf8_bin, le damos a crear y ya estará lista.

Ponceelrelajado - Drupal rear Base de Datos

Drupal es un sistema de gestión de contenido modular multipropósito y muy configurable que permite publicar artículos, imágenes, u otros archivos y servicios añadidos como foros, encuestas, votaciones, blogs y administración de usuarios y permisos.

Podemos descargar la última versión en su página oficial aquí. La ultima versión es 9.2.0, descargarlo con el método de compresión que prefieras.

Una vez lo tenemos descomprimido en una carpeta, cambiamos el nombre a esa carpeta por el nombre que deseemos, como el nombre de nuestra web. O también podemos copiar el contenido de la carpeta a otra que creemos, esto ya según cada uno.

También descargaremos su traducción al español, sacada desde su página oficial aquí. Nos saldrá en pantalla un documento, simplemente pulsamos con el botón derecho y seleccionamos la opción guardar como….

Este archivo lo guardamos dentro de la carpeta que nos hemos descargado de Drupal. En \profiles\standard\translations. Si usas otro perfil, que ya veremos mas adelante, en lugar de ponerlo en standard lo ponemos en el perfil que usemos.

Con esta carpeta Drupal lista, la copiamos y la pegamos en la carpeta htdocs dentro de la carpeta de XAMPP (www para LAMP y Laragon).

Antes de empezar la instalación, vamos a hacer algo simple que nos ayudara durante la instalación. Nos vamos a la carpeta php de nuestro XAMPP, veremos que hay un archivo llamado php.ini (también lo podemos buscar). Lo abrimos con el bloc de notas, pulsamos CTRL+B, escribimos max_execution_time y cambiamos el 30 que viene por defecto por 600.

Ponceelrelajado - Instalación Drupal Max input time

Si esto no lo hiciéramos, cuando importáramos las traducciones, nos daría un error, que haría que nuestro Drupal se quedara medio traducido. Cuando guardeis el archivo reiniciar los servicios de XAMPP desde su panel de control para que surta efecto.

Vamos al navegador y escribimos localhost/”nombre de la carpeta que acabamos de copiar en htdocs”, aquí empezara la instalación de Drupal.

Lo primero que haremos es elegir el perfil, la única diferencia es la cantidad de módulos iniciales al instalarse. Recordar también en donde colocamos la traducción. clic en save & continue.

Ponceelrelajado - Instalación Drupal

En la siguiente pantalla, elegiremos el idioma, si sale el español tomará bien la traducción. Si no sale, puede ser porque no hemos copiado copiado bien el archivo o hemos elegido otro perfil. clic en save & continue.

Ponceelrelajado - Instalación Drupal - Selector de idioma

En la siguiente pantalla, elegimos la opción MySQL en tipo de base de datos, ponemos el nombre de la base datos que creamos al principio, el usuario y contraseña de nuestro phpMyAdmin. Si la base de datos es nueva, podemos hacer clic en guardar y continuar. Si estamos importando una ya creada deberemos ir a opciones avanzadas y elegir el prefijo que tenga la base de datos.

Después, Drupal se empezará a instalar y cuando lo haga se empezara a configurar la traducción  Esto puede que tarde un buen rato, no actualices ni recargues la página, solo esperar. Lo que hicimos de modificar el php.ini nos sirve para este paso, si no lo modificáramos nos saldría aquí un error y se quedaría medio traducido.

Ponceelrelajado - Instalación Drupal
Ponceelrelajado - Instalación Drupal

En la siguiente pantalla, elegimos el nombre del servidor, en nuestro caso localhost, el correo electrónico, el nombre de usuario y contraseña que usaremos para ingresar en la parte de administración y las opciones de zona horario y ubicación.

Ponceelrelajado - Instalación Drupal Configuración

Una vez le demos a continuar, ya estará instalado, y hacemos clic en el enlace para ver nuestro sitio.

Este es nuestro Drupal por defecto.

Ponceelrelajado - Instalación Drupal Finalizada

Y eso es todo, ya solo queda que comiences a integrar módulos y a desarrollar tu sitio Drupal tanto como gustes, no olvides compartir si te gusto o fue útil.

Trucos y Tips Sublime Text

0
Ponceelrelajado - Tips y Trucos Sublie Text

Sublime text es uno de los editores de texto preferidos por los desarrolladores por la gran simplicidad, estética y cantidad de plugins disponibles en la comunidad, hoy dejamos un recopilatorio de Trucos y Tips Sublime Text.

Sabemos que en la web puedes encontrar estos y muchos otros trucos, sin embargo, acá te dejamos los que consideramos mejores.

Selección

Como desarrolladores web, muy a menudo tenemos que editar-modificar código. A continuación se presentan algunos atajos de teclado útiles que permiten hacer diferentes tipos de selecciones en SublimeText.

Ctrl + D
Seleccionar palabra(s)

Ctrl + L
Seleccionar línea(s)

Ctrl + A
Seleccionar todo el contenido dentro del documento

Ctrl + Shift + M
Seleccione todo dentro de las llaves ({ } cuando se trabaja con CSS o JavaScript)

Ctrl
Mantener la tecla Ctrl y hacer clic en la(s) línea(s) a seleccionar.

Estos atajos básicos de Sublime Text nos permite seleccionar varias líneas a la vez, lo que puede aumentar significativamente nuestra productividad. Bien, veamos cómo funciona la selección múltiple (de palabras) a continuación:

Ponceelrelajado - Selección Sublime text Trucos

Ordenar CSS

Por lo general, no nos importa cómo se ordenan las propiedades CSS, ya que CSS nos dará la salida deseada en el navegador sin importar su posición. Sin embargo ponerlos en un orden particular hará nuestros códigos más organizados. En Sublime Text, puedes seleccionar las propiedades CSS y pulsar F9 para ordenarlas por orden alfabético.

Ponceelrelajado - Ordenar CSS Sublime text Trucos

Paleta de Comandos

Se puede hacer muchas cosas con la paleta de comandos tales como convertir a mayúsculas un fragmento de texto, establecer la sintaxis de archivo, la inserción de fragmentos (snippet). De la que ya compartimos algo en el pasado.

Para mostrar la paleta de comandos en SublimeText, presiona Ctrl + Shift + P. He aquí algunos ejemplos.

Establecer sintaxis de archivo a HTML

Ponceelrelajado - Sublime trucos establecer sintaxis html en editor

Insertar fragmento de Código

Ponceelrelajado - Sublime trucos insertar snippet fragmento codigo web

Cambio entre pestañas

Ctrl + Tab
Presionar varias veces para pasar por cada una de las pestañas abiertas.

Ctrl + Shift + Tab
Presionar sólo una vez para volver a la pestaña anterior de trabajo.

Ctrl + P
Buscar un archivo y abrirlo en una pestaña nueva.

Editar partes de múltiples archivos

Esta función también será muy útil cuando estamos trabajando con varios archivos. Por ejemplo, tenemos varios bloques de código que son muy similares y se extendió a través de diferentes archivos en el proyecto. Para cambiar estos códigos de forma eficiente, se puede:

  • Presionar Ctrl+ Shift + F. Colocar las palabras, frase, o línea de código que se desea cambiar en el campo “Find”.
  • Indicar los nombres de los archivos en el campo “Where” o escribir <open files> de modo que sólo afectará a los archivos que están actualmente abiertos.
  • Pon la palabra o código nuevo en el campo “Replace” y pulsa en el botón Replace.
Ponceelrelajado - Sublime trucos buscar y reemplazar lineas de codigo

Búsqueda rápida de selectores

Esta características es sencillamente fabulosa cuando estás editando CSS. Con Comando + R aparecerá un diálogo con una lista de selectores CSS en el documento, como se apreciará en la siguiente imagen.
Puedes buscar y seleccionar los selectores a los que quieres llegar rápidamente.

Esto es mucho mejor que hacerlo con un simple Ctrl + F (la habitual forma de búsqueda) cuando se trata de código CSS.

Ponceelrelajado - Sublime trucos buscar selector css

Clickable URL

ClickableURL es un pequeño plugin de Sublime Text que resulta útil cuando en nuestro código hay gran variedad de direcciones url (rutas de imágenes externas, webs de referencia, etc). Básicamente hará que se pueda hacer click en las url.

Y eso es todo, si te gusto no olvides compartir y contarle a tus amigos, hasta la próxima

Como crear Namesarvers propios

1
Ponceelrelajado Creación de DNS Propios

En está oportunidad te mostramos Como crear namesarvers propios, pero, antes de empezar, en ponceelrelajado nos gusta explicar un poco las cosas, para aquellos que no tengan muy claro que son nameservers.

El sistema DNS (Domain Name Server) es el sistema más importante para el funcionamiento de internet. Sin DNS’s no funcionarían los nombres de dominios que utilizamos comúnmente.

Cada computadora conectada a internet tiene una dirección “lógica” única, algo así como un número telefónico, a la que llamamos dirección IP. Las direcciones IP que se utilizan actualmente (versión 4) constan de cuatro secciones numéricas separadas por un punto. Una dirección IP típica luciría así: 151.120.134.89 (esto es solo un ejemplo).

Al ser muy difícil poder memorizar cientos de direcciones numéricas que visitamos a diario, se creó el sistema de redes que ahora conocemos como internet (World Wide Web), en el cual se inventó un método de “traducir” estas direcciones numéricas a direcciones textuales como www.ejemplo.com.

Esto es así ya que, por alguna razón, a los seres humanos se nos facilita mucho más aprender nombres y palabras que secuencias numéricas, por tanto hicieron su aparición los nombres de dominio. En el Internet que conocemos en la actualidad la gente sabe acceder a www.google.com más no a 66.102.7.104 que es una de las direcciones IP utilizadas por Google.

En términos prácticos, el sistema DNS es el que nos permite traducir “www.google.com” o cualquier otro dominio textual, a su equivalente numérico.

Ahora bien sabiendo esto, te preguntarás ¿Porqué usar nameservers propios? y la respuesta es:

Los servidores DNS normales o públicos, los regulares que pueden utilizar nuestra operadora, generalmente no cifran la conexión que permite traducir a la hora de escribir una URL.

Es decir, cuando escribimos por ejemplo PonceElRelajado.com en la barra del navegador, nuestro dispositivo lo que hace es conectarse a un servidor DNS.

Este servidor actúa como una guía telefónica para reemplazar ese nombre que hemos puesto por la dirección IP que nos lleve al servicio.

Esa conexión, ese proceso, normalmente no va cifrado.

¿Qué ocurre con esto? Significa que somos susceptibles de sufrir ataques donde un pirata informático podría redirigir esas solicitudes de DNS a sitios web maliciosos. De esta forma podrían infectar el dispositivo o engañarnos con páginas fraudulentas.

Esto hace que muchos expertos aconsejen el uso de servidores DNS privados en vez de utilizar los públicos o genéricos en nuestros dispositivos. Eso sí, hay que tener en cuenta que no todos los equipos van a permitir el cambio de DNS, aunque hoy en día la mayoría sí. De esta forma podremos aumentar nuestra seguridad a la hora de navegar por la red y evitar así problemas que puedan afectar a nuestros dispositivos y, en definitiva, a nuestra privacidad.

Sabiendo esto te dejamos esta pequeña guía para que puedas usar nameservers propios. Aclaramos que este procedimiento es solamente posible teniendo WHM en servicios Reseller, Dedicado o VPS.

Como crear Namesarvers propios

1. Acceda a su panel de control WHM

2. En el campo de búsqueda a la izquierda, busque por DNS y haz clic en «Editar la zona DNS»

3. Haz clic sobre tu dominio y después en «Edit»

4.  Luego nos dirigimos al final de la configuración y agregamos los números IP que recibió en el mensaje «Informaciones sobre su cuenta de Revendedor», cree las entradas ns1 y ns2 y haz clic en «Guardar»

Estamos listos!

Tenga en cuenta, como la mayoría de los cambios de nombre de servidor, que tomará un período adicional de 24 a 72 horas (a veces más rápido) para que este cambio propagar y ser utilizable. Este retraso se aplica a todos los dominios con cualquier registrador, no sólo con nosotros.

Personas que están construyendo el futuro

0

9 personas que están construyendo el mundo del futuro

¿Cómo será la vida en los próximos cien años? La historia es un proceso dinámico, entre continuidad y ruptura, y como tal, tiene la particularidad de que nada en ella está escrito. A inicios del siglo XX, el mundo creía que llegaríamos al espacio con globos aerostáticos e individuos lanzados como bala de cañón. Al mismo tiempo, se tenía la noción de que una vez conquistados los caminos, el siguiente paso estaba en surcar el cielo: no pensaban en aviones, ni mecanismos capaces de planear y retar las leyes de la física para levantar un cuerpo del suelo a gran velocidad.

Lo impredecible del futuro lleva a la humanidad a ocuparse en su construcción permanente. Si hoy tuviéramos que elegir cuál será el siguiente salto tecnológico y científico de la humanidad, que cambiará al mundo para siempre, sin duda habría que elegir a la Inteligencia Artificial. Sin embargo, hace falta una guía para entender qué, cómo y hacia dónde nos dirigimos con algo tan maravilloso como arriesgado para la civilización. ¿Quiénes son las personas que están construyendo el mundo del futuro a partir de los avances en esta ciencia ? Aquí una lista:

Mark Riedl

Es director del Entertainment Intelligence Laboratory, y profesor en el College of Computing, School of Interactive Computing de Georgia Tech. Mark usa inteligencia artificial para desarrollar algoritmos que mejoran la narrativa de los videojuegos de una manera autónoma, creando experiencias atractivas para los usuarios del mundo virtual.

Riedl se enfoca en el área de Inteligencia Artificial, desarrollo de juegos de video y creatividad computacional. Ha trabajado en el Institute for Creative Technologies de la University of Southern California, donde desarrolló sistemas de capacitación basados en narrativas interactivas.

Wendy Johansson

Miembro fundador y directora de Product and User Experience en Wizeline, plataforma que desarrolla software de inteligencia artificial para reducir la distancia entre las ofertas tecnológicas, las aplicaciones de negocios y el usuario final.

Durante más de una década en al área de Experiencia de Producto, Wendy ha construido productos y servicios B2B y B2C con equipos internacionales. Anteriormente a Wizeline, trabajó en Ooyala, una compañía de videos tecnológicos y en AppNexus, empresa líder en publicidad tecnológica. Actualmente, crea programas académicos que fomentan la creación de comunidades tecnológicas en México y Estados Unidos.

Jean Pierre Kloppers

CEO de BrandsEye desde el 2013, plataforma dedicada a evaluar y mejorar la forma en que empresas e instituciones interactúan con sus usuarios por medio del análisis de datos. Desde que tomó el mando en BrandsEye, la ha convertido en una empresa global, líder en el desarrollo de algoritmos, que en combinación con el estudio de los sentimientos humanos, ayudan a tener una mejor comprensión del comportamiento de las personas en el mundo virtual.

BrandsEye pronosticó – en contra de las encuestas-, el triunfo de Donald Trump en las pasadas elecciones, así como el resultado de Brexit.

Brian Christian

Autor del libro The Most Human Human (2011), bestseller de The Wall Street Journal y nombrado  libro del Año por el New Yorker. Coautor, junto con Tom Griffiths, de Algorithms to Live By (2016). Su obra es una exploración profunda sobre cómo las computadora están cambiando nuestro pensamiento sobre el significado de la vida humana.

Brian estudió Ciencia de la Computación y Filosofía en la Universidad de Brown, así como Composición Poética en la Universidad de Washington.

Fox Harrell

Autor del libro “Phantasmal media. An approach to imagination, computation and expression, analiza fenómenos cognitivos como la autoconciencia, las metáforas, la narrativa y el pensamiento poético, y diseña sistemas computacionales capaces de evocar fantasmas, mezcla de ideas culturales e imaginación sensorial.

Fundó el Imagination, Computation and Expression Laboratory, y es profesor en Medios Digitales en el Artificial Intelligence Laboratory, ambos en el MIT. Posee un Ph.D. en Ciencia de la Computación y Ciencia Cognitiva en la Universidad de San Diego.

Chris chafe

Compositor, improvisador, investigador y chelista. Es Director del Stanford University’s Center for Computer Research in Music and Acoustics (CCRMA), dónde ha centrado su trabajo en la composición musical a través de los medios digitales. Chris ha desarrollado métodos de síntesis digital, interpretación musical, así como conciertos simultáneos en tiempo real por internet.

Su música ha llegado a docenas de países, además de realizar cientos de instalaciones artísticas para museos y galerías en colaboración con artistas y científicos, nombradas “musificaciones”. Su trabajo más reciente incluye “The Brain Stethoscope”, donde extrae ondas cerebrales para componer melodías, y “PolarTide” creado para la Bienal de Venecia del 2013.

Lev Manovich

Lev, uno de los principales teóricos de la cultura digital a nivel mundial. Pionero en la aplicación de la ciencia de datos para el análisis de la cultura contemporánea. Sus principales áreas de trabajo son: analítica cultural, ciencia social computacional, humanidades digitales, estudios de software, teoría de los medios de comunicación y cultura visual.

Es profesor en Computer Science at The Graduate Center en la City University de Nueva York, así como fundador y director del Cultural Analytics Lab.

Behnaz Farahi

Arquitecta y diseñadora interactiva, su trabajo explora la relación entre los seres humanos y el entorno construido, siguiendo principios de diseño y movimiento inspirados en los sistemas naturales. Se especializa en la fabricación de aditivos y en las tecnologías robóticas. Ha ganado varios premios, entre ellos el Premio Innovación por Diseño Linda Tischler.

Trabajó en Autodesk, Fuksas Studio y 3D Systems. Ha colaborado en dos proyectos de investigación financiados por la NASA, que desarrollan una tecnología de fabricación robótica para estructuras de impresión 3D en la Luna y Marte.

Blaise Agüera y Arcas

Ingeniero, arquitecto y diseñador de software de la Universidad de Princeton. Actualmente es uno de los principales científicos de Google, donde programa visión, fotografía e inteligencia computacional. Fundó el programa The Artists and Machine Intelligence, que combina ingenieros y artistas para crear proyectos artísticos mediante inteligencia artificial.

Creó Seadragon, software que permite optimizar la información visual y el tratamiento de imágenes de las computadoras con resultados prodigiosos. Sus tres charlas TED: How PhotoSynth can connect the world’s images, Augmented Reality maps y How computers are learning to be creative? fueron vistas por más de 7 millones de personas.

Gráficos de viñetas: qué es y cómo usarlo (Traducción)

0
Gráficos de viñetas: qué es y cómo usarlo

En artículos anteriores te hemos mostrado algunos tips para que saques provecho a tu software y S.O, hoy te queremos mostrar acerca de el gráfico de viñetas, que ha sido descrito como un arma secreta para analistas financieros efectivos y eficientes. Los gráficos de viñetas se pueden usar como una alternativa a los gráficos de indicadores del tablero de instrumentos y son ideales para su uso en los tableros de control que visualizan KPI (Indicadores clave de rendimiento) donde se destacan al comparar resultados reales con pronósticos. Los cuadros de viñetas se consideran actualmente uno de los tipos de gráficos más efectivos del mundo. El diseño y el uso reciente de la tabla de viñetas o el gráfico de viñetas buscan eliminar la sobrecarga visual tradicional de la tabla o el gráfico, lo que puede dificultar el análisis. Este tipo de gráfico relativamente nuevo se considera una forma avanzada del sistema de gráficos tradicional, ya que ofrece a los usuarios una mayor comodidad y facilidad de uso sin distraer los datos visuales extraños.

Diseñado y popularizado por Stephen Few, el gráfico de viñetas se inspira en el gráfico de barras normal, pero al mismo tiempo proporciona a los usuarios un contexto adicional. La capacidad del gráfico de viñetas para transmitir información lo convierte en una mejor alternativa a los gráficos de medidores y medidores más tradicionales. Si bien los gráficos de viñetas se pueden ver como gráficos de barras simples o variantes de columnas apiladas, la diferencia es que se crean con elementos visuales adicionales para ofrecer un contexto adicional a los usuarios.

Los gráficos de viñetas han demostrado ser ideales para la visualización de datos de cualquier tablero de negocios. Una de las principales ventajas de este gráfico sobre el gráfico de indicadores es que no ocupa mucho espacio dentro del tablero, ya que es muy optimizado y compacto. Además del hecho de que los gráficos de indicadores ocupan más espacio, también pueden ser engañosos, especialmente si se omiten ciertos puntos o valores clave debido a la falta de espacio. Si bien puede haber cierto debate acerca de que los gráficos de indicadores son engañosos, existe un acuerdo general de que los gráficos ocupan una cantidad valiosa de espacio. Los cuadros de viñetas se han diseñado para personas que desean entregar toda la información y el conocimiento en un solo lugar sin tener que pasar de una página a otra y comparar diferentes imágenes. Un gráfico de viñetas contiene la información necesaria, mientras se mantiene la flexibilidad y el ahorro de espacio visual.

Componentes de un gráfico de viñetas

Hay tres componentes principales de un gráfico de viñetas y son los puntos principales donde se registra la información y el conocimiento. Estos son:

Gráficos de viñetas: qué es y cómo usarlo - Componentes

El marcador de destino

Este marcador se utiliza para representar el objetivo principal o el punto de datos primario del gráfico, negocio u organización. El objetivo puede ser cualquier cosa que desee lograr en un período de tiempo. Dependiendo de sus requisitos y necesidad de la tabla, puede colocar su objetivo en cualquier lugar. El marcador de objetivo o marcador de línea se conoce comúnmente como la Medida comparativa y se usa como un marcador de objetivo para comparar con el valor de medida de la característica o el valor real / barra de logros.

La barra de logros

Este componente ha sido diseñado para representar el valor real del gráfico. Estos son datos reales que se asignan a la escala cuantitativa. Al crear esta barra, es importante que le dé un color sólido al tiempo que la hace más estrecha. Esto normalmente se representa como una barra negra.

El rango de comparación

Este es el tema de color que se utiliza en el fondo de la barra de logros para mostrar las puntuaciones de rango cualitativo. La idea principal de este rango es simplemente crear o hacer una comparación del logro, por ejemplo, pobre, promedio o excelente en la escala cualitativa. Al utilizar un sombreado visualmente distinto, los rangos también pueden funcionar para los espectadores daltónicos y se pueden leer claramente en copias impresas en blanco y negro.

Estos componentes forman el gráfico de viñetas, ya que contienen la información necesaria para mostrar. También hay una etiqueta de texto para describir el gráfico.

En realidad, hay dos tipos de gráficos de viñetas: gráficos verticales y horizontales. La información que tenga a mano determinará el tipo de gráfico que se utilizará. Además, el espacio disponible también se tiene en cuenta al considerar el tipo de gráfico de viñetas que se utilizará. Una viñeta vertical tiene un eje vertical e incluye las mismas medidas de rendimiento que una viñeta horizontal.

Created with JSCharting0510152005101520
Created with JSCharting05101520

Cómo crear un gráfico de viñetas en Excel

Antes de profundizar en cómo se puede usar un gráfico de viñetas, discutiremos cómo se puede crear uno. Si bien un gráfico de viñetas puede parecer fácil de crear, se recomienda que tenga en cuenta los objetivos de la organización antes de crear un gráfico de viñetas. Esto es esencial si quieres lograr un equilibrio. Al elegir un objetivo, se recomienda que no se pueda obtener fácilmente, ya que a menudo el tiempo genera complacencia. Por otro lado, su objetivo no debe ser poco realista, ya que podría disuadir a los empleados de hacer lo mejor. Su objetivo debe ser factible para todos en la organización dentro de un período de tiempo.

Paso 1: Datos de entrada

Como se mencionó anteriormente, en realidad hay tres componentes de un gráfico de viñetas. Antes de continuar para crear uno, debe agrupar la información disponible en estos tres niveles. Con la información disponible, debe crear una tabla que contenga toda la información de una manera adecuada o formatear series de datos que incluya los valores.

Una vez que tenga toda la información necesaria preparada en una tabla, deberá insertar un gráfico de columnas. Para hacer esto, vaya a su pestaña de inserción y haga clic en «Columna 2D».

Gráficos de viñetas - Excel Paso 1

Paso 2: crear un marcador de destino

Su marcador de objetivo se verá como una línea horizontal y para hacer esto; Tendrás que seguir estos pasos:

Seleccione o elija su barra de destino. Si bien el gráfico puede estar en mal estado en este momento, por lo que no puede seleccionar un objetivo, el truco consiste en elegir un gráfico de la opción de formato, luego seleccionar o elegir el valor de su objetivo.

Una vez hecho esto, pasa al diseño, luego haz clic en «Cambiar tipo de gráfico».

Gráficos de viñetas - Excel Paso 2

Paso 3: Haz tu barra de logros

Como se mencionó anteriormente, su Barra de Logro necesitará tener un color sólido, que sería completamente diferente del rango de comparación. Para hacer esto, deberá seguir estos simples pasos:

Al igual que seleccionó el marcador de destino, también debe seleccionar su barra de logros.

Luego, vaya a la opción de serie y haga clic en el «eje secundario».

Por ahora, debes cambiar el ancho al 500%

Para diferenciar la barra de logros del rango de comparación, debe elegir un color sólido.

Gráficos de viñetas - Excel Paso 3

Paso 4: haga el rango de comparación

Para crear un rango de comparación, deberá elegir un color y utilizar cuatro tonos de color diferentes. Para ayudarlo a hacer esto, tendrá que seleccionar los colores uno tras otro.

Tenga en cuenta que un gráfico de viñetas puede tener forma horizontal o vertical. Como se mencionó anteriormente, el objetivo de la organización debe ser factible, y las herramientas adecuadas para alcanzar el objetivo deben proporcionarse a los empleados.

Gráficos de viñetas - Excel Paso 4

Cómo hacer un gráfico de viñetas usando JavaScript

Si bien Excel no admite de forma nativa el tipo de gráfico de viñetas, lo que requiere la creación manual, las herramientas de gráficos comerciales de JavaScript lo hacen tan simple como proporcionar los datos para el valor, el objetivo y, opcionalmente, cualquier rango cualitativo (si no se suministra, se crearán automáticamente).

Paso 1: proporcione los datos y muestre el gráfico terminado en su página web

Created with JSCharting

<chart type=bullet data=15,10>

Crea un gráfico de viñetas simple con el primer número como valor real utilizando una escala cuantitativa y el segundo como objetivo o meta.

Created with JSCharting

<chart type=bullet data=15,10,4,8>

Defina cualquier número de escalas cualitativas estableciendo valores adicionales. Este ejemplo define 2 que crea 3 (ya que el área vacía restante después de los dos primeros es el rango superior).

Created with JSCharting

<chart type=bullet data=15,10,4,8 color=CornflowerBlue>

También puede establecer el color y se sombreará proporcionalmente automáticamente.

O puede especificar todos los colores en uso:

Created with JSCharting

<chart type=bullet data=15,10,4,8 colors=MidnightBlue,Green,Blue,CornflowerBlue,LightSkyBlue>

Finalmente, puede incluir una escala que vaya junto con el gráfico de viñetas:

Created with JSCharting05101520

<chart type=scale data=0,5,10,15,20 min=0 max=20 size=200×20><br>
<chart type=bullet data=15,10,4,8 min=0 max=20 color=slateblue size=200×40>

Cómo usar un gráfico de viñetas

Si bien hemos discutido cómo crear un gráfico de viñetas, es importante que analicemos cómo puede utilizar un gráfico de viñetas.

Los gráficos de viñetas son útiles en presentaciones ejecutivas de negocios, tableros, pronósticos, para establecer objetivos, comparar resultados reales y más. También se utilizan para identificar y medir el progreso realizado por una organización o empresa. Los gráficos de viñetas se han descrito como el mejor gráfico para usar cuando se trata de ilustrar los resultados contra los objetivos que se han establecido.

Conclusión

La belleza del gráfico de viñetas es que es fácil de leer y comprender, evita información y detalles extraños y ofrece información rápida y precisa de un vistazo sin confusión. La mayoría de las herramientas de gráficos pueden crear el tipo, incluido MS Excel con algún trabajo adicional, mientras que muchas herramientas comerciales tienen soporte incorporado.

Este artículo fue publicado originalmente en JSCharting.

Los 5 mejores editores de JavaScript: los desarrolladores clasifican las mejores herramientas del mundo (Traducción)

1
Los 5 mejores editores de JavaScript según desarrolladores del mundo

JavaScript ha seguido creciendo en importancia durante la última década. De hecho, según las estadísticas de StackOverflow, JavaScript ha sido el lenguaje de programación más popular durante los últimos 7 años, superando a los lenguajes populares, incluidos Python, C# y Java. La encuesta sobre el estado de Javascript, que incluye respuestas de más de 20,000 desarrolladores, revela que cinco editores de JavaScript se destacan y representan el 95% de todo el uso.

1. Visual Studio Code

Los 5 mejores editores de JavaScript según desarrolladores del mundo - Visual Studio Code

Visual Studio Code (VSCode) es el líder dominante en editores de JavaScript en línea. Con soporte multiplataforma en Linux, macOS y Windows, VSCode ha incorporado la finalización de código para sus módulos node.js y código JavaScript. Como se esperaba con Microsoft, Typecript es un ciudadano de primera clase. Git está perfectamente integrado, lo que significa que puede realizar confirmaciones, diferencias de revisiones y más en tiempo real, todo sin salir del editor. VSCode es un editor de código ligero que se creó desde cero para la velocidad.

El autocompletado va más allá de la finalización de la función y también ofrece documentación e información de argumentos de la función a medida que se desarrolla. Microsoft ha hecho un excelente trabajo con la participación de la comunidad y VSCode tiene una comunidad de desarrolladores vibrante que crea extensiones poderosas que ahorran tiempo adicional.

Las características buscadas, como la vista previa en vivo y la depuración de Chrome con devtools, son fácilmente accesibles a través del Visual Studio Marketplace. Además, si realmente quiere pasar desapercibido, todo el código fuente del editor de texto está alojado en github como software de código abierto.

2. Sublime Text

Los 5 mejores editores de JavaScript según desarrolladores del mundo - Sublime Text

Sublime Text, un editor comercial (del que ya hemos hablado anteriormente en Ponceelrelajado) con una gran base de usuarios, los desarrolladores encuentran que la tarifa de 80$ USD bien vale la pena debido a su velocidad (en parte derivada de que esté escrita en C++). Al igual que con VSCode, hay una gran comunidad de desarrolladores y complementos que ha llenado los vacíos creando un poderoso entorno de editor para JavaScript.

A menudo conocido como un punto medio entre IDE hinchado y editores lean como VIM, Sublimen Text abre archivos rápidamente y se apoya en complementos a través del control de paquetes para que sea una gran experiencia para el desarrollo de JS. Aprovechando Babel para resaltar la sintaxis inteligente / completar el código inteligente y gitgutter para diferencias y empujes, Sublimelinter para los vínculos ESlint y JShint sin problemas hace de Sublime un editor de JavaScript rápido, capaz y liviano.

3. VIM

Los 5 mejores editores de JavaScript según desarrolladores del mundo - VIM

VIM, uno de los editores de texto más antiguos y aún muy populares, es altamente personalizable y configurable con soporte excepcional de atajos de teclado. Su larga historia y la interfaz dominada por el teclado han producido una comunidad de desarrolladores con complementos imprescindibles y bonitos, Asynchronous Lint Engine (ALE) y un potente soporte de línea de comandos que le permite aprovechar ESLint y Flow. VIM es increíblemente personalizable y no hay dos desarrolladores de JavaScript que lo usen de la misma manera.

Si comenzó temprano con VIM, puede ser muy productivo en él, pero para aquellos nuevos en el desarrollo de JavaScript, VSCode, Sublime Text o Jetbrains WebStorm pueden ser una mejor opción.

4. WebStorm

Los 5 mejores editores de JavaScript según desarrolladores del mundo - WebStorm

WebStorm de Jetbrains es un editor pago que tiene seguidores leales y se actualiza regularmente. Con la marca «el IDE de JavaScript más inteligente», WebStorm está a la altura del marketing al ofrecer asistencia de codificación en Node.js, HTML y CSS. También admite asistencia integrada con marcos JavaScript populares, incluidos Meteor, Angular, React, jQuery, vue.js y electron. El soporte de Github está integrado dentro del IDE y otras opciones de control de versiones son compatibles a través de complementos oficiales que incluyen la integración de git, Mercurial, Perforce y Subversion.

Un depurador integrado para Node.js con integración de prueba, seguimiento y creación de perfiles junto con una perfecta integración de la herramienta de línea de comandos completan este IDE. La atención al detalle y la optimización del flujo de trabajo, incluido el guardado automático de los cambios de archivos, es un sello distintivo de WebStorm. Las actualizaciones periódicas con nuevas funciones y un Programa de acceso temprano hacen que la suscripción paga valga la pena para muchos desarrolladores.

5. Atom

Los 5 mejores editores de JavaScript según desarrolladores del mundo - Atom

Atom, comercializado como editor de texto pirateable para el siglo XXI, ha ido creciendo en popularidad. Atom ya ha establecido una comunidad de desarrolladores leales y vibrantes. Los paquetes ofrecen opciones de integración avanzadas que ofrecen colaboración en tiempo real y codificación de pares, integración de git y github y más. Un editor multiplataforma con soporte para OS X, Windows y Linux, Atom se ejecuta en Electron y permite una profunda personalización y estilo. Como desarrollador de JavaScript, puede personalizar Atom usando JavaScript, HTML, CSS y Node.js.

Conclusión
Los desarrolladores son una raza única, que crean miles de soluciones diversas para satisfacer cada necesidad o nicho específico. Los editores e IDE modernos han adoptado arquitecturas de complementos que permiten una personalización rápida y aportan contribuciones de la comunidad que hacen posible que editores generalizados como VSCode satisfagan las necesidades únicas de más desarrolladores.

Esto permite a los desarrolladores experimentados centrarse en sus proyectos de JavaScript en lugar de piratear su entorno de desarrollo, mientras que permite a los nuevos desarrolladores comenzar a ejecutar.
 
Este artículo fue publicado originalmente en JSCharting.

Mostrar Branch actual Git en el terminal

0
Mostrar Branch actual Git en el terminal

En ponceelrelajado amamos git ¿y quien no? Si es uno de los manejadores de versiones más usados, bien sea para llevar un control de las fases de un proyecto, para equipos de trabajos grandes o sencillamente como modo de respaldo para regresar cambios rápidamente si algo se rompe o no funciona como es debido, estamos seguros de que lo has usado o almenos has escuchado de el.

Sin embargo de forma predeterminada al ingresar a nuestro proyecto versionando en git no podemos ver la rama actual en el repositorio. Sabemos que basta con hacer un:

git status

Para que muestre el branch actual, pero, seamos sinceros, nada como tener siempre visible en donde estamos, para evitar hacer cambios en el branch equivocado, por esa razón te traemos un pequeño truco para que siempre sea visible el branch en el terminal o consola

Mostrar Branch actual Git en el terminal

En este post vamos a explicar cómo mostrar la rama actual en el directorio del proyecto, por lo que no es necesario estar tecleando git status todo el tiempo para saber qué rama es.

De forma predeterminada, no podemos ver la rama actual en el repositorio. Cuando accedemos a un proyecto versionado con git, obtenemos la visualización predeterminada, con sólo el usuario, host y path actual:

Para ver la rama actual, tenemos que cambiar la variable PS1. Basta con añadir el siguiente código al final del archivo .bashrc.bash_profile(ambos están en el usuario ‘s casa ~/):

export PS1='\u@\h\[\033[01;34m\] \w\[\033[0;32m\]$(__git_ps1 " (%s)")\[\033[01;34m\]$\[\033[00m\] '

Gire el control source ~/.bashrcsource ~/.bash_profilepara recargar y ver el cambio sin necesidad de reiniciar el terminal.

Sólo eso y usted obtendrá lo que desea:

Mostrar Branch actual Git en el terminal

Ahora la rama actual, en este caso master, está siendo mostrado entre paréntesis ..

Pero también puede personalizar, modificando los colores y los valores mostrados. A continuación se muestra una breve lista de lo que podemos definir la variable PS1a modificar nuestra salida. Divertirse.

valores

  • \ u: usuario actual
  • \ h: nombre de máquina (host)
  • \ H: nombre de máquina completa
  • \ w: directorio de trabajo actual
  • \ W: directorio de trabajo actual con el nombre de base (último segmento) sólo
  • $ (__ git_ps1 «% s»): rama actual si está en un repositorio git, si no muestra nada.

colores

  • azul: \[\033[0;34m\]
  • rojo: \[\033[0;31m\]
  • rojo fluorescente: \[\033[1;31m\]
  • verde: \[\033[0;32m\]
  • verde fluorescente: \[\033[1;32m\]
  • blanco fuerte: \[\033[1;37m\]
  • gris: \[\033[0;37m\]
  • patrón: \[\033[0m\]

Este truco ha sido probado en elementary OS, Ubuntu 18.04 y tal como se ve en las capturas en Windows 10, por lo que es probable también funcione en mac OS. Hasta luego.

Crédito de la imágen destacada

unsplash-logoYancy Min

Guía para editar código fuente de Shopify en local con Theme Kit

0

En ocasiones anteriores ye te hemos mostrado algunos tips de Shopify está vez, te traemos una guía para editar código de Shopify en local con Theme Kit ¿te gusta la idea? Continúa leyendo.

Si bien es cierto que podemos editar el código desde el mismo Shopify, esto a nosotros personalmente nos parece algo incomodo, primero, porque ya estamos acostumbrados a Sublime Text y segundo porque a la hora de buscar o hacer ajustes más complejos es mucho más sencillo hacerlo en local.

Bien sea por comodidad y/o productividad, sigue está pequeña guía para que puedas modificar tus archivos desde local con el editor de código de tu preferencia.

Antes de comenzar, es probable que ya sepas como editar el código directamente desde Shopify, pero, por si caso acá te dejamos un guía de recordatorio:

Guía para editar código fuente de Shopify en Shopify:

Paso 1: Ubicar fuentes del tema

Para esto vamos a Temas (Themes), luego ubicamos el tema que queremos editar, desplegamos el select de acciones y hacemos clic en Editar Código (Edit Code)

Guía para editar código fuente de Shopify en local con Theme Kit 1

Paso 2: Ubicar archivo a editar

Una vez cargado ya tendremos un editor de código y un explorador de los archivos que componen al template seleccionado, veremos una pantalla como la siguiente:

Guía para editar código fuente de Shopify en local con Theme Kit 2

Donde vemos en la parte izquierda la lista de archivos y al seleccionar alguno veremos al lado derecho el contenido de dicho archivo, aquí simplemente podremos directamente editar el código.

Como puedes notar editar desde el dashboard de Shopify resulta ser muy sencillo, pero, para, hacer modificaciones más complejas sigue la siguiente guía.

Guía para editar código fuente de Shopify en local con Theme Kit

Paso 1: Instalar Theme Kit en tu computadora

Ya sea que seas usuario Mac, linux o windows esta herramienta se instala desde la consola y la forma de hacer varía de acuerdo al Sistema Operativo.

Mac o Linux

Abre una terminal y escribe lo siguiente:

curl -s https://raw.githubusercontent.com/Shopify/themekit/master/scripts/install | sudo python

Usar Homebrew en macOS

Puedes usar Homebrew corriendo los siguientes comandos

brew tap shopify/shopify
brew install themekit

Windows

Abrir una Powershell como administrador y correr el siguiente comando:

(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/Shopify/themekit/master/scripts/install.ps1") | powershell -command -

Instalar manualmente

También podemos instalarlo de manera manual, para más información sobre esta instalación visita la siguiente página: https://shopify.github.io/themekit/

Paso 2: Crear App privada en shopify

Una vez instalado Theme Kit en nuestra computadora, lo siguiente en la lista es crear un App privada en Shopify, para que podamos acceder a los archivos de nuestro tema de manera local.

Para hacerlo, dentro de nuestro dashboard hacemos click en el botón del lado izquierdo que dice Aplicaciones  (Apps) , luego hacemos click en Gestionar apps privadas (Manage private apps).

Guía para editar código fuente de Shopify en local con Theme Kit 3

Después, hacemos click en el botón le decimos Crear una nueva aplicación privada (Create new private app)

Guía para editar código fuente de Shopify en local con Theme Kit 4

Asignamos un nombre al app y un email de notificaciones

Guía para editar código fuente de Shopify en local con Theme Kit 5

Es importante dar permisos de Lectura y escritura al app, en la opción Theme templates and theme assets.

Guía para editar código fuente de Shopify en local con Theme Kit 6
Guía para editar código fuente de Shopify en local con Theme Kit 7

Por último guardamos y copiamos la contraseña que nos da el mismo shopify.

Guía para editar código fuente de Shopify en local con Theme Kit 8

Paso 3: Obtener el id del template que quieras editar

Para esto vamos a nuestra consola, y ejecutamos los siguiente:

theme get --list -p=[tu-contraseña] -s=[tu-tienda.myshopify.com]

Donde [tu-contraseña] es la contraseña que obtuvimos en el paso anterior y [tu-tienda.myshopify.com] es la url de la tienda.

Esto nos dará la lista de templates que están instalados en nuestra tienda, deberemos ver algo parecido a esto:

Available theme versions:
  [4955347798] Theme-1
  [4954843254][live] Theme-2

Supongamos que el que queremos descargar es el template activo, entonces sería el Theme-2 con el id 4954843254.

Paso 4: Descargar el template que quieras editar

El siguiente paso, consiste en descargar el template, pero, antes recuerda moverte por la consola a la carpeta en donde quieras descargas los archivos. Para descargar el template ejecutamos lo siguiente:

theme get -p=[tu-contraseña] -s=[tu-tienda.myshopify.com] -t=4954843254

Si todos los datos son correctos se comenzará a descargar nuestro template a la carpeta actual, esto nos deberá generar las siguientes carpetas

- assets
- config
- layout
- locales
- sections
- snippets
- templates
y el archivo config.yml que es el que contiene nuestros datos de configuración.

Paso 5: Comenzar a editar

Una vez terminada la descarga podemos comenzar a trabajar desde local, para subir nuestros cambios debemos ejecutar en consola:

theme watch

Esto abrirá un watch que al detectar cambios los irá subiendo automáticamente a Shopify, no sin antes hacer una breve revisión de lo que intentamos subir, si el archivo tiene errores no lo actualizará.

Para detener el watch basta con que ejecutes lo siguiente:

ctrl + c

Bonus

Para ver la lista de comandos disponibles debes ejecutar:

theme -h

De igual forma te los dejamos por acá

Uso:
  theme [commando]

Comandos disponibles:
  configure   Crear un archivo de configuración
  deploy      Desplegar archivos para shopify
  download    Descargar uno o todos los archivos de temas
  get         Obtener un tema y configuraciones de shopify
  help        Ayuda sobre cualquier comando
  new         Crear nuevo tema usando Shopify Timber
  open        Abre la vista previa de tu tienda
  publish     Publicar un tema
  remove      Eliminar archivo (s) de tema de shopify
  update      Actualizar Theme kit a la versión más reciente.
  version     Mostrar el número de versión de Theme Kit
  watch       Ver los cambios y actualizar tema remoto

Para mas información puedes revisar la documentación de Theme Kit

Y eso sería todo por ahora, no olvides compartir y comentar si te fue útil 🙂

Top 6 Plugins Gratuitos Live Chat WordPress

0
Top 6 plugins gratuitos live chat wordpress

En post anteriores ya te hemos mostrado algunos tips y técnicas de wordpress, hoy queremos enfocarnos en la atención y/o comunicación al cliente y te traemos nuestro Top 6 Plugins Gratuitos Live Chat WordPress.

Top 6 Plugins Gratuitos Live Chat WordPress.

La atención y comunicación al cliente son factores esenciales para que un negocio crezca, una de las mejores forma de hacer es incluir un live chat en tu sitio web, con los que podrás tener una comunicación vis a vis con tus clientes y puedas resolverles dudas en el momento, sin necesidad de formularios de contacto impersonales

Tidio Chat

Tidio Chat Top 6 plugins gratuitos live chat wordpress

Tidio Chat es sin duda el más rápido de conectar, ya que en unos 20 segundos estarás disfrutando de tu Live Chat. Sin registros ni almacenamiento de usuarios y contraseñas. La conexión de tu página web con WordPress y Tidio Chat es transparente para ti.

Instala el plugin, actívalo y en cuanto pinches en la nueva opción de tu menú de administración (Tidio Chat), estarás conectándote a tu nuevo panel de administración para configurar tu live chat, con 7 días de prueba de la versión Premium. Una vez se acaben los 7 días, tendrás que hacer un Downgrade a la versión gratuita.

Tidio Chat tiene una ventaja sobre sus competidores y es la posibilidad de tener sólo el icono del chat en tu página web, sin que ocupe mucho espacio en la parte inferior derecha o izquierda y así hacerlo más sutil para tus usuarios, aunque también más difícil de ver, ¡ojo con el icono que usamos y su tamaño en móviles!

Característica de Tidio Chat

  • Fácil instalación, en segundos.
  • Rápida configuración en 5 minutos con sencillos menús de opciones.
  • Administración a través de web, Windows, Mac OS, iOS o Android.
  • Totalmente adaptable a tablets y smartphones.
  • Versión gratuita muy completa.
  • Aspecto muy desenfadado y personalizable con nuestro logotipo.
  • Formulario de contacto si estamos offline.

Live Chat by Formilla

Formilla Chat Top 6 plugins gratuitos live chat wordpress

Live Chat by Formilla entra dentro de nuestro top por su facilidad de instalación, registro y puesta en marcha con traducciones automáticas al castellano.

Tenemos la posibilidad de auto-expandir el chat pasados unos segundos con una frase que incite a nuestros usuarios a hablar con nosotros. La versión premium no es muy cara para tener un sólo agente y las ventajas son muy diferenciadoras con la versión gratuita.

Y, una característica que no hemos encontrado en el resto, por ahora. El undocking de la ventana de chat con la posibilidad de llevártelo a cualquier parte de tu pantalla para poder conversar más a gusto.

Característica de Live Chat by Formilla

  • Fácil instalación, en 1 minuto estás empezando a configurarlo.
  • Rápida configuración en 2 minutos con traducción automática del texto que aparece.
  • Administración a través de web, Windows, iOS o Android.
  • Totalmente adaptable a tablets y smartphones.
  • Versión gratuita muy completa y con 15 días de prueba de la versión premium.
  • Aspecto muy desenfadado y personalizable con nuestro logotipo.
  • Formulario de contacto si estamos offline.
  • Posibilidad de llevarte el chat a cualquier parte de la pantalla. Por si estorba donde lo hemos puesto en un principio.
  • Pasar de modo online a offline en un clic en la administración.

Chats

Chats Top 6 plugins gratuitos live chat wordpress

Chats otro de los Live Chat gratuitos que podemos encontrar en el repositorio de plugins de WordPress.org: Una buena alternativa, seria, para tu atención al cliente. Destacamos la sencillez de su configuración en la versión gratuita, aunque echamos en falta alguna esquina redondeada para los tiempos que corren en diseño web. Y, también la sobriedad de la administración en wp-chat.com y nuestro Escritorio de WordPress.

Se echa de menos un poco más de diseño redondeado en la pantalla del chat, pero cumple con creces su cometido, a pesar de ser gratuito.

Característica de Chats de wp-chat.com

  • Fácil instalación del chat y conexión con wp-chat.com.
  • Configuración sencilla, desde vuestro Escritorio de WordPress.
  • Administración a través de web y apps para smartphones Android e iOS.
  • Adaptable a tablets y smartphones, aunque ocupa mucho lugar en la parte inferior.
  • Versión gratuita funcional al 100%.
  • Formulario de contacto si estamos offline.

WP Live Chat Support

WP Live Chat Support Top 6 plugins gratuitos live chat wordpress

WP Live Chat Support el aspecto del widget en la parte inferior es muy bueno, parecido al que tiene Tidio Chat, pero sin poder cambiarlo en la versión gratuita. Al iniciar un chat, la ventana se maximiza tomando todo el alto de la pantalla, algo que evitan el resto de plugins con mejor resultado a la vista.

Eso sí, si eres un freak de los datos, WP Live Chat Support te ofrece integración con Google Analytics en la versión gratuita y también buena información del navegador del usuario, tanto en la pantalla de ajustes del plugin como en la propia conversación con nuestro usuario.

Característica de WP Live Chat Support

  • Fácil instalación del chat sin usuarios ni contraseñas.
  • Configuración bastante rápida, aunque un poco abrumadora al principio más aún para usuarios no expertos.
  • Administración a través del Escritorio de tu WordPress, traducida al castellano.
  • Envío de notificaciones a través del navegador web para estar siempre atento a las conversaciones.
  • Conexión con Google Analytics.
  • Mucha información en todas las pantallas.
  • No necesitas instalarte ninguna aplicación ni ir a ningún escritorio de otra web, todo se administra desde el Escritorio de WordPress de tu página web.
  • Muchas extensiones para ampliar las características del plugin.

Chatra Live Chat

Chatra Live Chat Top 6 plugins gratuitos live chat wordpress

Chatra Live Chat es otro plugin muy fácil de configurar y de interfaz intuitiva. Reúne varias características de los anteriores plugins, pero con la ventaja de que todas las características son gratuitas para un sólo agente. Si quieres más agentes, tendrás que pasar por caja a un precio de $14/mes.

Está totalmente integrado con Woocommerce y su característica Cart Saving está orientada a recuperar carros de la compra abandonados en tu tienda online. No te pierdas esta característica si vendes a través de Internet tus productos, porque puedes recuperar a usuarios que abandonaron su carrito y convertirlos en clientes.

Característica de Chatra Live Chat

  • Aplicaciones Windows, Mac, iOS y Android.
  • Posibilidad de minimizar el chat en una burbuja con un icono.
  • Visualización previa de lo que está escribiendo el usuario.
  • Formulario de chat offline.
  • Cart Saver, para esos carritos de la compra abandonados.
  • Gratuito hasta que tú quieras. Forever and ever.
  • Traducido a 6 idiomas, uno de ellos Español.
  • Fácil configuración en la web del plugin: chatra.io.
  • Buen soporte para configuración e instalación.
  • Información detallada de los usuarios con los que chateas.
  • Previsualización de la foto de los agentes que van a atender a tus usuarios en el Live Chat.

Tawk.To Live Chat

Tawk.To Live Chat Top 6 plugins gratuitos live chat wordpress

Tawk.to Live Chat es el plugin para atención al cliente más completo que hemos visto de los gratuitos para WordPress.

Es una buena alternativa a Tidio o Formilla, ya que tiene todas las características premium gratis, como son: estadísticas de visitantes en directo, notificaciones en el navegador o el centro de notificaciones de Mac o Windows 10.

Además, Tawk.to Live Chat viene traducido en muchos idiomas para que no tengas que lidiar con un Dashboard, sino con tu Panel de Control traducido completamente al castellano o a cualquier idioma que quieras.

Característica de Tawk.to Live Chat

  • Instalación a través de un formulario muy amigable.
  • La configuración puede asustar un poco al principio, pero tienes muchos vídeos explicando cómo hacer de todo en el Panel de Control.
  • Mucha información a través de un Panel de Control amigable y con un buen diseño.
  • Posibilidad de minimizar el chat en una burbuja para que ocupe lo menos posible.
  • Informes detallados de los chats.
  • Posibilidad de hacer departamentos con varios agentes en cada uno.
  • Prohibición de IPs o visitantes.
  • Notificaciones por correo electrónico.
  • Alertas de chat para los agentes.
  • Posibilidad de hacer una base de conocimiento tipo Wiki.
  • Programación de horarios de atención al cliente.
  • Mejoras en el chat: envío de ficheros, emoticonos, “me gusta” o “no me gusta” la conversación.

Calendario de eventos en Symfony 3 con dhtmlxScheduler

0
Calendario de eventos en Symfony 3 con dhtmlxScheduler

En ocasiones anteriores ya te hemos mostrado algunos tips, trucos y guías de nuestro framework php favorito Symfony en está oportunidad te mostramos como crear un Calendario de eventos en Symfony 3 con dhtmlxScheduler.

Calendario de eventos en Symfony 3 con dhtmlxScheduler

Un calendario o programador de eventos es una herramienta imprescindible para una empresa, inclusive para una una persona normal, en donde se pueden programar y hacer seguimientos de citas, eventos, tareas, etc. Para ellos haremos uso del programador dhtmlx que es una de las mejores bibliotecas JavaScript para esto.

dhtmlxScheduler es un calendario de eventos JS parecido a Google con una amplia gama de vistas y características. Tiene una interfaz de usuario limpia y apariencia personalizable.

Tal como indicamos al principio de este artículo, aprenderás cómo crear tu propio Calendario de eventos personalizado en el frontend y el backend con Symfony 3 y dhtmlxscheduler.

Calendario de eventos en Symfony 3 con dhtmlxScheduler

Requisitos

Antes e comenzar para crear nuestro calendario debemos contar con las siguientes librerías:


dhtmlxScheduler

Necesitaremos una copia de la biblioteca del programador dhtmlx (archivo .zip). Esta biblioteca ofrece 2 versiones, la versión de código abierto (Edición estándar) y la Versión de pago (Edición profesional) donde recibe asistencia y una licencia comercial.

Desde el archivo zip de origen, solo necesitaremos el código JavaScript, ya que el backend se implementará totalmente con Symfony. Este programador es muy flexible y podemos personalizar muchas cosas de la manera que deseemos, recomendamos leer la documentación también. Puedes descargar cualquiera de las versiones mencionadas aquí.

Lo primero que debe hacer, una vez que tenga el archivo zip, es crear un directorio donde guardar la biblioteca. Para está guía, crearemos la carpeta de bibliotecas en el directorio /web de la aplicación Symfony. Por lo tanto, el código fuente de JavaScript será accesible desde tuaplicacion/web/libraries/dhtmlx . No arruinaremos la estructura original del archivo zip descargado, por lo que tendremos en este caso las bases de código de las carpetas y los demos dentro de dhtmlx que podemos usar para verificar los ejemplos.

moment.js

El archivo principal de JavaScript de Moment.js deberá estar accesible en
tuaplicacion/web/libraries/moment.js puedes descargar de aquí

Jquery o cualquier otra biblioteca AJAX personalizada

Usaremos jQuery AJAX para enviar nuestras citas en la vista. Alternativamente, puede escribir su propio código XMLHttpRequest para enviar los datos a su servidor de forma asíncrona con JavaScript o, en caso de que no quiera jQuery, minAjax es bastante útil y funciona de la misma manera que jQuery.

Pasos para crear el calendario

Una vez cubiertos los requerimientos podemos comenzar a escribir el código para nuestro calendario

Paso 1: Implementar la entidad para citas

Nota: Si ya tienes algún diseño de tabla personalizado para tus «citas», omite este paso y sigue la estructura del controlador en el paso 2.

Con el programador podrá programar eventos gráficamente en el lado del cliente, sin embargo, también deben almacenarse en alguna base de datos. Esto se puede lograr con la comunicación con AJAX entre el cliente y el servidor.

El objetivo de está guía será conservar algunas clases de citas en una base de datos (MySql, MongoDB, CouchDB, etc.). Nuestro primer trabajo, entonces, es crear la clase Cita para la aplicación. Esta clase puede verse y actuar como deseemos, así que agrega cualquier propiedad o método que te resulte útil. En este ejemplo, nuestra Entidad se generará a partir de la siguiente tabla: citas. La tabla de citas en su base de datos tendrá 5 campos, a saber, id (autoincrement not null), title(columna de texto), description (columna de texto), start_date (datetime column) y end_date (datetime column):

CREATE TABLE `TuTablaExistente`.`citas` 
  ( 
     `id`          BIGINT NOT NULL auto_increment, 
     `title`       VARCHAR(255) NOT NULL, 
     `description` TEXT NULL, 
     `start_date`  DATETIME NOT NULL, 
     `end_date`    DATETIME NOT NULL, 
     PRIMARY KEY (`id`) 
  ) 
engine = innodb; 

De acuerdo con la forma en que trabajes, puedes seguir el proceso para generar los archivos orm y la entidad manualmente o desde tu base de datos. Si estás generando la entidad a partir de una base de datos existente, ahora puedes ejecutar el siguiente comando para generar los archivos ORM:

php bin/console doctrine:mapping:import --force AppBundle yml

Eso generará nuestro archivo ORM para la tabla de citas con el siguiente resultado en AppBundle/Resources/config/doctrine/Citas.orm.yml:

AppBundle\Entity\Citas:
    type: entity
    table: citas
    id:
        id:
            type: bigint
            nullable: false
            options:
                unsigned: false
            id: true
            generator:
                strategy: IDENTITY
    fields:
        title:
            type: string
            nullable: false
            length: 255
            options:
                fixed: false
        description:
            type: text
            nullable: true
            length: 65535
            options:
                fixed: false
        startDate:
            type: datetime
            nullable: false
            column: start_date
        endDate:
            type: datetime
            nullable: false
            column: end_date
    lifecycleCallbacks: {  }

Luego, una vez que exista el archivo orm, podemos generar automáticamente la Entidad de citas utilizando:

php bin/console doctrine:generate:entities AppBundle

La entidad generada en AppBundle/Entity/Citas se verá así:

<?php

namespace AppBundle\Entity;

/**
 * Citas
 */
class Citas
{
    /**
     * @var integer
     */
    private $id;

    /**
     * @var string
     */
    private $title;

    /**
     * @var string
     */
    private $description;

    /**
     * @var \DateTime
     */
    private $startDate;

    /**
     * @var \DateTime
     */
    private $endDate;


    /**
     * Get id
     *
     * @return integer
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set title
     *
     * @param string $title
     *
     * @return Citas
     */
    public function setTitle($title)
    {
        $this->title = $title;

        return $this;
    }

    /**
     * Get title
     *
     * @return string
     */
    public function getTitle()
    {
        return $this->title;
    }

    /**
     * Set description
     *
     * @param string $description
     *
     * @return Citas
     */
    public function setDescription($description)
    {
        $this->description = $description;

        return $this;
    }

    /**
     * Get description
     *
     * @return string
     */
    public function getDescription()
    {
        return $this->description;
    }

    /**
     * Set startDate
     *
     * @param \DateTime $startDate
     *
     * @return Citas
     */
    public function setStartDate($startDate)
    {
        $this->startDate = $startDate;

        return $this;
    }

    /**
     * Get startDate
     *
     * @return \DateTime
     */
    public function getStartDate()
    {
        return $this->startDate;
    }

    /**
     * Set endDate
     *
     * @param \DateTime $endDate
     *
     * @return Citas
     */
    public function setEndDate($endDate)
    {
        $this->endDate = $endDate;

        return $this;
    }

    /**
     * Get endDate
     *
     * @return \DateTime
     */
    public function getEndDate()
    {
        return $this->endDate;
    }
}

Ahora la Entidad de citas puede persistir en la base de datos. Si no tienes un diseño existente para almacenar el registro en la base de datos, puedes modificar los campos según lo necesites.

Paso 2: Implementar el controlador del calendario y las rutas

El controlador para el calendario tendrá solo 4 rutas. Las rutas que definiremos deben ser accesibles en la ruta /calendario de tu proyecto, así que modifica el archivo principal routing.yml de tu proyecto Symfony y registra otro archivo de enrutamiento que maneje las rutas del calendario:

# Crear ruta para el calendario en su aplicación
app_scheduler:
    resource: "@AppBundle/Resources/config/routing/calendario.yml"
    prefix:   /calendario

Ten en cuenta que almacenaremos el nuevo archivo de enrutamiento en la carpeta config/routing del paquete principal. El archivo de enrutamiento calendario.yml es el siguiente:

# app/config/routing.yml
calendario_index:
    path:      /
    defaults:  { _controller: AppBundle:Calendario:index }
    methods:  [GET]

calendario_create:
    path:      /cita-create
    defaults:  { _controller: AppBundle:Calendario:create }
    methods:  [POST]

calendario_update:
    path:      /cita-update
    defaults:  { _controller: AppBundle:Calendario:update }
    methods:  [POST]

calendario_delete:
    path:      /cita-delete
    defaults:  { _controller: AppBundle:Calendario:delete }
    methods:  [DELETE]

Cada ruta es manejada por una función en el controlador del calendario ubicado en el AppBundle (que crearemos ahora). 3 de ellos solo se utilizarán para crear, eliminar y modificar las citas a través de AJAX. La ruta del índice (tuwebsite/calendario) mostrará el Calendario en el navegador.

Ahora que las rutas están registradas, debemos crear el controlador que maneje las rutas y la lógica en cada una de ellas. Como la lógica puede variar de acuerdo con la forma en que maneja las entidades, el siguiente controlador muestra cómo manejar cada evento trabajando con la entidad Cita. Todas las respuestas se dan en formato JSON (excepto el index) para proporcionar información sobre el estado de la acción:

<?php

namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller; 

// Incluir las clases utilizadas como JsonResponse y el objeto Request
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;

// La entidad de Cita
use AppBundle\Entity\Citas as Cita;

class CalendarioController extends Controller
{
    /**
     * Vista que hace que el calendario.
     *
     */
    public function indexAction()
    {
        // Recuperar administrador de entidades
        $em = $this->getDoctrine()->getManager();
        
        // Obtener repositorio de citas
        $repositoryCitas = $em->getRepository("AppBundle:Citas");

        // Tenga en cuenta que es posible que desee filtrar las citas que desea enviar
        // por fechas o algo, de lo contrario enviarás todas las citas para renderizar
        $citas = $repositoryCitas->findAll();

        // Generar estructura JSON a partir de las citas para representar en el calendario de inicio.
        $formatedCitas = $this->formatCitasToJson($citas);

        // Renderizar calendario
        return $this->render("default/calendario.html.twig", [
            'citas' => $formatedCitas
        ]);
    }

    /**
     * Manejar la creación de una cita.
     *
     */
    public function createAction(Request $request){
        $em = $this->getDoctrine()->getManager();
        $repositoryCitas = $em->getRepository("AppBundle:Citas");

        // Utilice el mismo formato utilizado por Moment.js en la vista
        $format = "d-m-Y H:i:s";

        // Instanciar la entidad cita y establecer los valores de los campos.
        $cita = new Cita();
        $cita->setTitle($request->request->get("title"));
        $cita->setDescription($request->request->get("description"));
        $cita->setStartDate(
            \DateTime::createFromFormat($format, $request->request->get("start_date"))
        );
        $cita->setEndDate(
            \DateTime::createFromFormat($format, $request->request->get("end_date"))
        );

        // Crear cita
        $em->persist($cita);
        $em->flush();

        return new JsonResponse(array(
            "status" => "success"
        ));
    }
    
    /**
     * Manejar la actualización de una cita.
     *
     */
    public function updateAction(Request $request){
        $em = $this->getDoctrine()->getManager();
        $repositoryCitas = $em->getRepository("AppBundle:Citas");

        $citaId = $request->request->get("id");

        $cita = $repositoryCitas->find($citaId);

        if(!$cita){
            return new JsonResponse(array(
                "status" => "error",
                "message" => "La cita a actualizar $citaId no existe."
            ));
        }

        // Utilice el mismo formato utilizado por Moment.js en la vista
        $format = "d-m-Y H:i:s";

        // Establecer los nuevo valores de los campos de la cita
        $cita->setTitle($request->request->get("title"));
        $cita->setDescription($request->request->get("description"));
        $cita->setStartDate(
            \DateTime::createFromFormat($format, $request->request->get("start_date"))
        );
        $cita->setEndDate(
            \DateTime::createFromFormat($format, $request->request->get("end_date"))
        );

        // Actualizar cita
        $em->persist($cita);
        $em->flush();

        return new JsonResponse(array(
            "status" => "success"
        ));
    }

    /**
     * Eliminiar una cita de la base de datos
     *
     */
    public function deleteAction(Request $request){
        $em = $this->getDoctrine()->getManager();
        $repositoryCitas = $em->getRepository("AppBundle:Citas");

        $citaId = $request->request->get("id");

        $cita = $repositoryCitas->find($citaId);

        if(!$cita){
            return new JsonResponse(array(
                "status" => "error",
                "message" => "La cita $citaId no existe."
            ));
        }

        // Eliminar la cita de la base de datos
        $em->remove($cita);
        $em->flush();       

        return new JsonResponse(array(
            "status" => "success"
        ));
    }


    /**
     * Devuelve una cadena JSON de un grupo de citas que se representarán en el calendario.
     * Puedes usar una librería serializadora si quieres.
     *
     * Las fechas deben seguir el formato d-m-Y H: i por ejemplo: "01-04-2019 09:00"
     *
     *
     * @param $citas
     */
    private function formatCitasToJson($citas){
        $formatedCitas = array();
        
        foreach($citas as $cita){
            array_push($formatedCitas, array(
                "id" => $cita->getId(),
                "description" => $cita->getDescription(),
                // Es importante mantener la fecha de inicio, la fecha de finalización y el texto con la misma clave
                // para el área de JavaScript
                // aunque el captador podría ser diferente, por ejemplo:
                // "start_date" => $cita->getBeginDate();
                "text" => $cita->getTitle(),
                "start_date" => $cita->getStartDate()->format("Y-m-d H:i"),
                "end_date" => $cita->getEndDate()->format("Y-m-d H:i")
            ));
        }

        return json_encode($formatedCitas);
    }
}

NOTA: Como el programador dhtmlx requiere las claves start_date, end_date y text en un evento, deberá proporcionarlas en cada evento, esto significa que no puede cambiar su nombre.

Paso 3: Implementar diseño y estructura de scripts

Ahora que la lógica del lado del servidor está lista, podemos proceder a crear el diseño de nuestra aplicación. En este caso renderizaremos un programador de pantalla completa.

Usaremos el siguiente archivo base para nuestro diseño en Twig (base.html.twig)

{# application/resources/views/base.html.twig #}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>{% block title %}Welcome!{% endblock %}</title>
        {% block stylesheets %}{% endblock %}
    </head>
    <body>
        {% block body %}{% endblock %}
        {% block javascripts %}{% endblock %}
    </body>
</html>

Luego, como se define en nuestro controlador, nuestro archivo calendario.html.twig se ubicará en el directorio app/resources/views/default, así que asegúrate de crearlo en la ruta mencionada (o cambiarlo en el controlador). El diseño del programador se verá así:

{# default/calendario.html.twig #}
{% extends "base.html.twig" %}

{% block stylesheets %}
    <!-- Incluir el estilo flat del calendario -->
    <link rel='stylesheet' type='text/css' href='{{ asset("libraries/dhtmlx/codebase/dhtmlxscheduler_flat.css") }}' charset="utf-8"/>
    <!-- Si no utilizas el modo de pantalla completa, ignora el siguiente estilo -->
    <style type="text/css" media="screen">
        html, body{
            margin:0px;
            padding:0px;
            height:100%;
            overflow:hidden;
        }   
    </style>
{% endblock %}

{% block body -%}

<div id="scheduler_element" class="dhx_cal_container" style='width:100%; height:100%;'>
    <div class="dhx_cal_navline">
        <div class="dhx_cal_prev_button"> </div>
        <div class="dhx_cal_next_button"> </div>
        <div class="dhx_cal_today_button"></div>
        <div class="dhx_cal_date"></div>
        <div class="dhx_cal_tab" name="day_tab" style="right:204px;"></div>
        <div class="dhx_cal_tab" name="week_tab" style="right:140px;"></div>
        <div class="dhx_cal_tab" name="month_tab" style="right:76px;"></div>
    </div>
    <div class="dhx_cal_header"></div>
    <div class="dhx_cal_data"></div>       
</div>

{% endblock %}

{% block javascripts %}
    <!-- Incluir la biblioteca del dhtmlxscheduler -->
    <script src='{{ asset("libraries/dhtmlx/codebase/dhtmlxscheduler.js") }}' type='text/javascript' charset="utf-8"></script>
    
    <!-- Incluye jQuery para manejar solicitudes AJAX -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

    <!-- Incluye Momentjs para jugar con las fechas -->
    <script src="{{ asset("libraries/momentjs/moment.js") }}"></script>

    <script>
        // Exponer las citas globalmente imprimiendo la cadena JSON con twig y el filtro raw
        // para que puedan ser accesibles por el schedulerScripts.js el controlador
        window.GLOBAL_APPOINTMENTS = {{ citas|raw }};

        // Como los scripts del programador estarán en otros archivos, las rutas generadas por twig
        // Debería estar expuesto en la ventana también
        window.GLOBAL_SCHEDULER_ROUTES = {
            create: '{{ path("calendario_create") }}',
            update: '{{ path("calendario_update") }}',
            delete: '{{ path("calendario_delete") }}'
        };
    </script>

    <!-- Incluya el SchedulerScripts que necesitará escribir en el siguiente paso -->
    <script src='{{ asset("libraries/calendarioScripts.js") }}' type='text/javascript' charset="utf-8"></script>
{% endblock %}

Ahora vamos a escribir el contenido del archivo calendarioScripts.js que contendrá el código para manejar la lógica del planificador en la vista.

Paso 4: Escribir lógica de lado cliente

Para nuestro Calendario, le permitiremos al usuario crear citas en el con la ayuda de un Lightbox predeterminado del programador dhtmlx. Lo primero que debe hacer es configurar el comportamiento predeterminado de su programador modificando el objeto de configuración del programador. Al menos debe proporcionar el formato xml_date, el resto es puramente opcional.

Luego configuraremos las secciones del formulario para insertar y editar las citas. En este caso, ya que solo tenemos 2 campos (Título y Descripción), el título se asignará al campo de texto predeterminado del Calendario. Los campos predeterminados de tiempo y texto deben existir en el
Lightbox.

El código de calendarioScripts.js será el siguiente:

// 1. Configurar los ajustes básicos del Calendario
scheduler.config.xml_date="%Y-%m-%d %H:%i";
scheduler.config.first_hour = 6;
scheduler.config.last_hour = 24;
scheduler.config.limit_time_select = true;
scheduler.config.details_on_create = true;
// Deshabilitar la edición de eventos con un solo clic
scheduler.config.select = false;
scheduler.config.details_on_dblclick = true;
scheduler.config.max_month_events = 5;
scheduler.config.resize_month_events = true;

// 2. Configurar secciones de lightbox (formulario)
scheduler.config.lightbox.sections = [
    // Si tiene otro campo en su entidad Cita (por ejemplo, columna_de_ejemplo), lo agregaría como
    // {name:"Campo de Ejemplo", height:30, map_to:"columna_de_ejemplo", type:"textarea"},
    {name:"Título", height:30, map_to:"text", type:"textarea"},
    {name:"Descripción", height:30, map_to:"description", type:"textarea"},
    {name:"Tiempo", height:72, type:"time", map_to:"auto"}
];

// 3. Iniciar calendario con configuraciones personalizadas
var initSettings = {
    // Elemento donde se iniciará el planificador
    elementId: "scheduler_element",
    // Objeto de fecha donde debe iniciarse el planificador
    startDate: new Date(),
    // modo de inicio
    mode: "week"
};

scheduler.init(initSettings.elementId, initSettings.startDate , initSettings.mode);

// 4. Analizar las citas iniciales (desde el controlador de index)
scheduler.parse(window.GLOBAL_APPOINTMENTS, "json");

// 5. Función que formatea los eventos al formato esperado en el lado del servidor.

/**
 * Devuelve un objeto con la estructura deseada del servidor.
 * 
 * @param {*} id 
 * @param {*} useJavascriptDate 
 */
function getFormatedEvent(id, useJavascriptDate){
    var event;

    // Si id ya es un objeto de evento, utilícelo y no lo busque
    if(typeof(id) == "object"){
        event = id;
    }else{
        event = scheduler.getEvent(parseInt(id));
    }

    if(!event){
        console.error("El ID del evento no existe: " + id);
        return false;
    }
     
    var start , end;
    
    if(useJavascriptDate){
        start = event.start_date;
        end = event.end_date;
    }else{
        start = moment(event.start_date).format('DD-MM-YYYY HH:mm:ss');
        end = moment(event.end_date).format('DD-MM-YYYY HH:mm:ss');
    }
    
    return {
        id: event.id,
        start_date : start,
        end_date : end,
        description : event.description,
        title : event.text
    };
}

// 6. Adjuntar controladores de eventos!

/**
 * Manejar el evento CREATE del calendario
 */
scheduler.attachEvent("onEventAdded", function(id,ev){
    var schedulerState = scheduler.getState();
    
    $.ajax({
        url:  window.GLOBAL_SCHEDULER_ROUTES.create,
        data: getFormatedEvent(ev),
        dataType: "json",
        type: "POST",
        success: function(response){
            // Muy importante:
            // Actualizar el ID de la cita del programador con el ID de la base de datos
            // ¡Así podemos editar la misma cita ahora!
            
            scheduler.changeEventId(ev.id , response.id);

            alert('La cita '+ev.text+ " ha sido creada satisfactoriamente");
        },
        error:function(error){
            alert('Error: La cita '+ev.text+' no pudo ser creada');
            console.log(error);
        }
    }); 
});

/**
 * Manejar el evento UPDATE del calendario en todos los casos posibles (arrastrar y soltar, cambiar el tamaño, etc.)
 *  
 */
scheduler.attachEvent("onEventChanged", function(id,ev){
    $.ajax({
        url:  window.GLOBAL_SCHEDULER_ROUTES.update,
        data: getFormatedEvent(ev),
        dataType: "json",
        type: "POST",
        success: function(response){
            if(response.status == "success"){
                alert("Cita actualizado satisfactoriamente!");
            }
        },
        error: function(err){
            alert("Error: Cambios no guardados");
            console.error(err);
        }
    });

    return true;
});

/**
 * Manejar el evento DELETE del calendario
 */
scheduler.attachEvent("onConfirmedBeforeEventDelete",function(id,ev){
    $.ajax({
        url: window.GLOBAL_SCHEDULER_ROUTES.delete,
        data:{
            id: id
        },
        dataType: "json",
        type: "DELETE",
        success: function(response){
            if(response.status == "success"){
                if(!ev.willDeleted){
                    alert("Cita elminidad satisfactoriamente");
                }
            }else if(response.status == "error"){
                alert("Error: Cita no eliminada");
            }
        },
        error:function(error){
            alert("Error: No se pudo eliminar la cita: " + ev.text);
            console.log(error);
        }
    });
    
    return true;
});


/**
 * Editar evento con el botón derecho también
 * 
 * @param {type} id
 * @param {type} ev
 * @returns {Boolean}
 */
scheduler.attachEvent("onContextMenu", function (id, e){
    scheduler.showLightbox(id);
    e.preventDefault();
});

Finalmente, guarde los cambios, acceda a la URL de su proyecto http://tuwebsite/calendario y ahora puedes probar el calendario. Como recomendación final, consulte la documentación del programador dhtmlx para descubrir más utilidades increíbles que permitirán que creemos la mejor aplicación de calendarios que necesitemos.

Guía para agregar campos personalizados en shopify ¡GRATIS!

0
Guía para agregar campos personalizados en shopify ¡GRATIS!

Hace algún tiempo en ponceelrelajado tuvimos la oportunidad de trabajar en un proyecto en shopify y nos vimos con la necesidad de añadir una serie de campos personalizados, para entre otras cosas hacer títulos más llamativos dentro del sitio y más descriptivos para los feeds de Google Shopping y Facebook Merchant, lamentablemente esa vez no documente nada al respecto y justamente hoy que trabajo en otro proyecto en la plataforma surgió la misma necesidad.

Entonces nos vimos en la necesidad de buscar nuevamente, pero, esta vez sí vamos a documentar lo que hicimos y además hemos decidido compartirlo con ustedes así que sin más acá dejamos:

Guía para agregar campos personalizados en shopify ¡GRATIS!

Guía para añadir y mostrar campos personalizados en los productos shopify.

Paso 1: Instalar extensiones

Ambas extensiones desarrolladas por freakdesign

Paso 2: Mostrar el formulario de campos personalizados

Una vez instaladas las extensiones vamos al administrador de shopify, luego a settings y por último a general.

Ejemplo de URL: https://example.myshopify.com/admin/settings/general

Una vez dentro de las configuraciones generales, hacemos clic en la extensión  ShopifyFD Dashboard Tool esto nos mostrará un nuevo grupo de campos en la configuraciones y es donde añadiremos el campo personalizados

Guía para agregar campos personalizados en shopify ¡GRATIS!

Paso 3: Añadir el / los campos personalizados

En el nuevo formulario podremos añadir y/o editar los campos personalizados.

Este formulario se compone de 5 campos que explicaremos a continuación:

Guía para agregar campos personalizados en shopify ¡GRATIS!

1.- Select or create a metafield: es un input tipo select, para indicar si es un nuevo campo o seleccionar uno existente..

Nota Importante:  en el caso de editar, es importante aclarar que solo se editen o eliminen los campos personalizados creados por nosotros, para no romper funcionalidades.

2.- namespace: es un input tipo texto para indicar el tipo de campo que añadiremos. Para que estos campos puedan ser cargados por la extensión Custom Fields for Shopify debemos usar cualquiera de estos dos namespaces predeterminados “custom_fields” o “c_f”.

3.- key: es un input tipo texto para que indiquemos el nombre de nuestro campo personalizado.

4.- value: es un textarea para añadir la descripción del campo personalizado, tambien de forma opcional y a través  de marcadores podemos limitar la visibilidad del campo e indicar el tipo de campo

Marcadores para visualización:

[a] visible solo e artículos del blog
[c] visible solo para colecciones
[g] visible solo para páginas
[p] visible  solo para productos

Marcadores para tipo de campo:

[_c] campo de colección
[_t] área de texto
[_i] campo entero
[_g] campo de selección de página
[_p] campo de selección de producto
[_l] campo selector de lista de enlaces

Para nuestro ejemplo crearemos un campo que sirva para añadir y mostrar un título más atractivo para los productos, por lo que tendríamos este resultado:

Guía para agregar campos personalizados en shopify ¡GRATIS!

Para finalizar, hacemos clic en save.

Si notas ya nuestro nuevo campo aparece listado y lo podemos editar o eliminar

Guía para agregar campos personalizados en shopify ¡GRATIS!
Guía para agregar campos personalizados en shopify ¡GRATIS!

Paso 4: Comenzar a editar tus productos

Una vez se han creado los campos personalizados vamos al producto y comenzamos a editar, para esto, abrimos o creamos un nuevo producto y hacemos clic en la extensión  Custom Fields for Shopify esto nos actualizará el formulario de edición /creación de producto y nos mostrar el / los campo que creamos en el paso anterior.

Guía para agregar campos personalizados en shopify ¡GRATIS!
Guía para agregar campos personalizados en shopify ¡GRATIS!

Nota Importante:  al finalizar tus cambios en el campo personalizado, haz primero clic en “Save Custom Fields” y luego en el save por defecto de shopify, de lo contrario tus valores para el campo personalizado no se guardarán.

Guía para agregar campos personalizados en shopify ¡GRATIS!

Paso 5: Mostrar el / los campos personalizados

Ya con los campos creados solo queda mostrarlos, para esto, debemos ubicar y editar la / las plantilla(s) del template que uses, dependerá mucho del template que estés usando y de donde lo quieras mostrar.

Para esto vamos a Online Store ⇨ Themes ⇨ Edit Code

Guía para agregar campos personalizados en shopify ¡GRATIS!

Una vez ubiques el template lo puedes mostrar de la siguiente forma:

{% if product.metafields.c_f.custom_title %}
    {{ product.metafields.c_f.custom_title }}
{% endif %}

Nota Importante:  recuerda que en el paso 3 de está guía creamos el campo personalizado como “custom_title” si tu usaste otro nombre, haz los ajustes pertinente, por ejemplo:

{% if product.metafields.c_f.otro_nombre %}
    {{ product.metafields.c_f.otro_nombre }}
{% endif %}

Para nuestro ejemplo modificaremos el snippet que se encarga de mostrar los productos en en los listados (product.liquid) y el template de la vista interna del producto (product-listing.liquid)

Quedando así en el editor:

Guía para agregar campos personalizados en shopify ¡GRATIS!
Guía para agregar campos personalizados en shopify ¡GRATIS!

Y así en el frontend:

Guía para agregar campos personalizados en shopify ¡GRATIS!
Guía para agregar campos personalizados en shopify ¡GRATIS!

11 Tips para escoger el mejor hospedaje web para tu negocio

0
11 Tips para escoger el mejor hospedaje web para tu negocio

En notas anteriores te hemos listado algunos consejos sobre servidores, en está oportunidad te listamos 11 Tips para escoger el mejor hospedaje web para tu negocio y que de está forma saque el mayor provecho al mismo.

1. Deja que el producto te guíe hacia cuál hospedaje elegir

Entre otros factores, escoger un hospedaje web debe depender de la naturaleza de tu negocio y del propósito del sitio web. Hospedajes diferentes ofrecen una variados servicios y características. Elige el que mejor satisfaga las necesidades del producto. Por ejemplo, un sitio corporativo puede que no necesite demasiada seguridad o atención al cliente 24/7, pero una aplicación vital para tu negocio que genere ganancias interesantes sí que los necesitará.

Rahul Varshneya, Arkenea

2. Indaga acerca de su atención al cliente

Obtén referencias directas de alguien que haya contactado realmente al equipo de soporte. Todo hospedaje suele tener un buen equipo de ventas, pero muchos ofrecen terrible soporte.

Matthew Weinberg, Vector Media Group

3. Entiende tus necesidades

Entender tus necesidades es crucial para escoger el proveedor de hospedaje web correcto. Si no eres un desarrollador y no tienes un equipo de desarrollo, entonces necesitas un servicio administrado. No esperes que nada sea ilimitado. En hospedaje realmente obtienes aquello por lo que pagas. Si tu sitio web es un negocio, entonces trátalo como tal. Invierte en seguridad, desempeño e infraestructura.

Syed Balkhi, OptinMonster

4. Busca soporte 24/7

Muchas personas se enfocan en precios cuando eligen un proveedor de hospedaje. Enfócate más en el nivel de soporte que esperas recibir. Si te ocurre algún problema en medio de la noche, ¿Habrá alguien disponible para atenderlo? Tener un sitio caído durante mucho tiempo puede traducirse en pérdidas de dinero. Busca hospedajes que ofrezcan soporte telefónico 24/7. Podría ser difícil comunicar los problemas de otra forma.

Jonathan Long, Sexy Smile Kit

5. Toma el consejo de un respetado desarrollador web

Los desarrolladores web saben mejor cuáles plataformas de hospedaje web tienen mejor desempeño, son más confiables o tienen una mejor estructura de precios. Encuentra un desarrollador web en quien confíes, o uno recomendado por otro dueño de negocio, y pregúntale su opinión. Si contrataste una agencia de diseño web profesional es probable que usen una plataforma confiable.

Nicole Munoz, Start Ranking Now

6. Considera usar un VPS o un host dedicado

Primero que nada debes saber qué tipo de hospedaje necesitas. Si haces una cantidad considerable de marketing online o manejas pagos de clientes, debes considerar un VPS (Servidor privado virtual) o un host dedicado, que son más seguros que los hospedajes compartidos. Entonces haz una comparación de compra, lee opiniones y reseñas y decide cuál ofrece el mejor valor para lo que necesitas.

Shawn Porat, Scorely

7. Busca sitios web con características que te interesen

Hay millones de hospedajes web y muchas recomendaciones, pero el hecho que importa es que no hay uno que sirva para todas las necesidades. Entonces, una forma de aproximarse a la elección es encontrar sitios que se parezcan a lo que quieres tener, que tengan el estilo de carrito de compras que buscas, que ofrezca video, etc. Contáctalos y averigua el hospedaje que usan. Aprovecha esa recomendación y comienza desde allí.

Sean Ogle, Location Rebel

Top 5 Consejos de seguridad

0
Consejos de seguridad

Sea que eres dueño de un negocio o que sólo estés preocupado por la seguridad de tus datos, es importante seguir unos pasos para tu protección en línea.

En un post anterior te listamos algunos tips para evitar ser hackeado En esta ocasión te dejamos 5 consejos clave sobre cyber seguridad para proteger tanto tus datos personales como los de tu compañía de los hackers.

Mantén tus claves largas y fuertes

Siendo probado que las claves débiles son la causa número uno de las fugas de datos, tiene sentido hacerlas lo más fuertes posible. Temiendo ser bloqueados de sus cuentas si eligen una clave complicada, mucha gente escoge palabras cortas y concisas fáciles de recordar. Sin embargo, si una clave es fácil de recordar, es casi siempre sencilla de hackear también. Recomendamos usar claves que tengan al menos entre 8 y 12 caracteres de largo y contengan una combinación de letras, números y caracteres especiales. Es mejor usar una clave complicada y escribirla en algún lugar seguro que usar las mismas claves fáciles de recordar en todas tus cuentas. También puede usar herramientas como lastpass para que solo debas recordar una sola contraseña y este app genere y guarde todo por ti, acá te explicamos como usar lastpass.

Muda tus datos a la nube

La computación en la nube puede tener muchos beneficios de seguridad para individuos y negocios. Por ejemplo, si perdieras tu laptop con todos tus documentos personales almacenados en su disco duro, estos podrían ser imposibles de recuperar si la computadora portátil cayese en las manos equivocadas. Si, de lo contrario, perdieras tu laptop pero todos tus documentos estuvieran almacenados en la nube, podrías cambiar las contraseñas de acceso desde otro dispositivo para prevenir que vean tu información.

Está atento a links en correos

Siempre se cuidadoso cuando veas un link o un documento adjunto en un correo. Si sospechas de él por cualquier razón, no hagas click y envía directamente el correo a la basura.

Recuerda, los Wi-Fi públicos no siempre son seguros

El Wi-Fi público puede ser una buena opción para hacer cosas cuando andas en la vía, pero en realidad, usar hotspots Wi-Fi desde tus dispositivos personales pueden hacerte vulnerable a hackeos. Asegúrate de tener un firewall confiable y software antivirus. Evita usar redes Wi-Fi para asuntos privados como banca o compras.

Ten cuidado con quién te conectas

Es sorprendente lo mucho que la gente comparte en las redes sociales. Si tu información cae en las manos equivocadas, las consecuencias pueden ser devastadoras. Compartir una foto de tu mascota o celebrar tu cumpleaños en las redes sociales puede parecer muy inocente, pero la gente puede usar esta información para acceder a tus datos, particularmente si no has usado claves complicadas como sugerimos arriba.

Google Sites: la intranet perfecta para tu empresa

0
Google Siites

Google Sites es la herramienta de Google diseñada para la creación de sitios web e intranets. Funciona de manera simple, a partir de platillas predeterminadas y explotando al máximo la facilidad de poder combinar una serie aplicaciones integradas en el paquete G Suite. Entre sus ventajas podemos contar la total integración con sus herramientas hermanas, el aspecto colaborativo y la facilidad de uso.

Las herramientas de escritorio de Google han sido impecablemente concebidas, desde el alcance de sus funcionalidades hasta la elegante sencillez de su imagen, ya en una ocasión anteriores te hemos mostrados algunos trucos de Google Sheets. Si bien sus características no llegan a la profundidad de las aplicaciones de escritorio clásicas, la suite de Google puede lograr con la misma efectividad las tareas que los usuarios realizan con mayor frecuencia. Es el caso de Google Sites, una aplicación drag-and-drop para la creación de páginas web e intranets.

En pocos minutos puedes tener un sitio funcionando en la web. Es tan sencillo como nombrar el sitio y escoger un tema visual que se adecúe a tus necesidades. Sin embargo, las posibilidades son escasas para empresas con grandes aspiraciones de interactividad en sus páginas. Según varios expertos, esta plataforma es mejor para la creación de intranets colaborativas o páginas webs empresariales sencillas.

Características de Google Sites

Google Sites funciona de manera simple. Permite desarrollar páginas web e intranets usando sus variadas plantillas. Desde un tema en blanco podrás partir desde cero, si las opciones que te ofrece la aplicación no te son suficientes. Sea cual sea tu caso al momento de desarrollar tu web empresarial, la plataforma Google Sites te permitirá gozar de:

Colaborativa

Una de las principales características de Sites, así como del resto de las aplicaciones de G Suite Empresarial, es poder trabajar colaborativamente en la construcción de un sitio. La posibilidad de dar varios tipos de acceso a sus usuarios, usando el sistema de comentarios y control de cambios, ordena el trabajo en equipo.

Colaborativa

Integrada

Como todas las herramientas de la suite de Google, Site está totalmente integrada con sus compañeras, por lo que será increíblemente sencillo agregar archivos desde el resto de las aplicaciones a tu sitio: documentos, hojas de cálculo, presentaciones, fotografías, videos, calendarios, entre otros.

Integrada

Sencilla

Puede parecer un poco carente de instrucciones al principio, pero basta con atreverse a experimentar un poco para sentirse cómodo con la herramienta. Además posee una buena documentación, completa y de fácil acceso, por lo que casi cualquier pregunta tendrá una respuesta clara al alcance del teclado.

Sencilla

Versátil

Una vez creada tu página, será automáticamente alojada en sites.google.com/site/(nombre del sitio). Con ayuda de sus herramientas de administración se podrá decidir quién puede acceder a la página, lo que resulta ideal para la creación de intranets. El hospedaje es gratuito, aunque hay varias opciones para tomar el sitio y alojarlo en otro lugar de tu preferencia.

Por otra parte, cualquier página creada en Google Sites se adaptará automáticamente al dispositivo. Su tecnología permite variar las versiones que se verán en un móvil, en una tableta o en cualquier otra pantalla. De esta forma tus empleados podrán acceder a la intranet cómodamente desde cualquier lugar.

Versátil

También, para ayudarte con el mercadeo, Sites se integra con Google Analytics. El uso inteligente de los datos que arroja este complemento mejorará el SEO de tus páginas en la web. Aunque si se trata de una intranet, con las herramientas de análisis podrás medir su eficiencia, conociendo mejor cómo la usan tus empleados. Esto te permitirá mejorar las comunicaciones internas de tu empresa.

Al contratar el paquete básico o premium de G Suites mejorarás la experiencia con cualquiera de sus herramientas. Tu compañía disfrutará de mayores ventajas en la integración con el resto de la suite de Google. Mayor espacio de almacenamiento, mejores herramientas de administración, correos personalizados, atención directa al usuario y mucho más, son parte de las ventajas que obtendrás al adquirir uno de estos paquetes.

Fuente: gpcinc.mx

Reproducir y descargar vídeos de Youtube desde el terminal

0
Reproducir y descargar vídeos de Youtube desde el terminal

En ocasiones anteriores hemos hablado de algunos trucos para sacar aún mas provecho a tu sistema operativo en esta oportunidad te mostraremos como Reproducir y descargar vídeos de Youtube desde el terminal.

Reproducir y descargar vídeos de Youtube desde el terminal

Para esto vamos a dar a conocer a mps-youtube una aplicación que además de permitir la descarga de videos añade funcionalidades extras como la reproducción de vídeos, la búsqueda avanzada, la creación de playlist entre otras.

¿Qué es mps-youtube?

Es una herramienta multiplataforma (Linux, Windows y MacOS), de código abierto, desarrollada en Python, basada en mps que nos permite buscar, transmitir y descargar música de youtube desde la terminal.

La herramienta cuenta con una serie de características destacables que listamos a continuación:

  • Herramienta libre y de código abierto basada en la terminal.
  • Permite buscar y reproducir audio / vídeo desde Youtube
  • Cuenta con funcionalidades para buscar pistas de álbumes por título del álbum.
  • Busca e importa listas de reproducción de YouTube
  • Crea y guarda listas de reproducción locales
  • Convierte a mp3 y otros formatos (requiere ffmpeg o avconv)
  • Visualiza comentarios de videos.
  • Funciona con Python 3.x
  • Sólo requiere las librerías mplayer o mpv.
  • Limpio, interfaz agradable y compatibilidad con diversas tecnologías.

Podemos visualizar las características de mps-youtube en la siguiente galería distribuida por sus desarrolladores.

Cómo instalar mps-youtube

La instalación de mps-youtube es simple, basta con que tengamos instalado python 3 y que ejecutemos los siguientes comandos para tenerlo funcionando en cualquier distro linux.

Instalamos las dependencias necesarias

$ sudo pip3 install dbus-python pygobject

Instalamos mps-youtube

Sudo pip3 instalar mps-youtube

Opcionalmente podemos instalar youtube_dl

Sudo pip3 instala youtube_dl

Luego simplemente ejecutamos mps-youtube desde la terminal, para ello debemos ejecutar

mpsyt

y ya podremos disfrutas de todas sus funcionalidades, para visualizar los comandos necesarios para el correcto uso de la herramienta podemos ejecutar

mpsyst -h.

Esta es una alternativa bastante agradable a las muchas herramientas relacionadas con youtube, con muchas más características que las tradicionales.

Fuente:

https://blog.desdelinux.net/

Cómo configurar SSL gratuitos con CloudFlare

0
Cómo configurar SSL gratuitos con CloudFlare

Si tienes un sitio web en donde los usuarios colocan datos privados, debes hacer lo necesario para mantener esta información a salvo de miradas entrometidas. Lo más sencillo es encriptar tus transacciones con un certificado SSL. Esta opción, además de darte ventajas en el ránking de Google, le da mayor protección a la información de tus usuarios. CloudFlare es un servicio que ofrece certificaciones SSL gratuitas y te vamos a enseñar cómo configurarlo en tu página.

Como comentamos en nuestro artículo Razones para migrar a HTTPS, en 2013 Edward Snowden nos alertó sobre lo vulnerables que son nuestros datos en la red. Luego de este polémico anuncio se hicieron relevantes diversos servicios que ofrecen certificaciones SSL gratuitas, tales como Let’s Encrypt y CloudFlare, y estos servicios son apoyados por mega empresas como Mozilla, Microsoft, Cisco, Facebook y Google.

Entre esta variada oferta de servicios, CloudFlare ofrece planes para mejorar el rendimiento y la seguridad de tu sitio web.

Por una parte dispone de una amplia red de distribución de contenidos (CDN) que acerca tu sitio a los usuarios alrededor del mundo, y por otro lado permite aumentar la velocidad de carga con una gran variedad de opciones de optimización de contenido web (WCO). Y, en temas de seguridad, ofrece certificaciones SSL, protección avanzada contra DDoS y firewalls para aplicaciones web (WAF).

Red de entrega de contenidos (CDN) de Cloudflare

RED DE ENTREGA DE CONTENIDOS (CDN) DE CLOUDFLARE.

Cómo configurar SSL gratuitos con CloudFlare

Con cualquier plan el intercambio de datos entre los servidores de CloudFlare y tus usuarios, la información siempre estará encriptada, y lo que suceda entre el servidor de origen y CloudFlare dependerá de la configuración seleccionada. Tienes tres opciones a elegir:

  • Flexible SSL: Tráfico encriptado desde CloudFlare hasta el usuario final pero no desde el servidor de origen hasta CloudFlare. Es la forma más sencilla de activar el HTTPS. No es tan segura como las otras opciones pero protege a tus visitantes contra un gran conjunto de amenazas de seguridad.
  • Full SSL: Cifrado tradicional de extremo a extremo. Ofrece tráfico encriptado desde CloudFlare hasta el usuario final, y conexión segura, aunque no autenticada, entre CloudFlare y tu servidor. Necesita como mínimo de un certificado autofirmado, el cual no sirve para garantizar autenticidad pero provee un canal de comunicación seguro. También lo puedes activar con un certificado Origin CA, emitido por CloudFlare.
  • Full SSL (Strict): Conexión segura y autenticada de extremo a extremo. Requiere de un certificado SSL autenticado, instalado en el servidor de origen.Se puede elegir entre dos tipos de certificaciones:
    • Strict: Certificado emitido por una autoridad de certificación (CA).
    • Origin CA: Certificado emitido sin costo por CloudFlare.

Cómo configurar CloudFlare

Para habilitar HTTPS en tu sitio web con CloudFlare, sigue estos pasos:

Abre una cuenta en CloudFlare.com. Haz click en signup y llena el formulario. Da de alta tu sitio en CloudFlare. Haz click en Add Site y añade la URL de tu sitio en el espacio correspondiente. Luego haz click en Scan DNS Records.

Aparecerán todos los DNS que apuntan a tu dominio. En este punto modifica lo que necesites si sabes lo que estás haciendo. Haz click en continuar.

Listado de DNS relacionados con tu sitio

Luego, decide el plan que mejor te convenga. Por ahora, elige el plan gratuito (Free Plan) y haz click en continuar.

Cambia el nombre de tus servidores. En la pantalla aparecerán dos columnas con direcciones DNS. Busca los DNS que aparezcan en la columna de la izquierda y renómbralos como se visualizan en la columna de la derecha. Cuando hayas concluido, haz click en continuar en la página de CloudFlare. Si después deseas eliminar tu sitio de CloudFlare, solo debes deshacer este paso y volver a colocar los DNS originales.

Cambia las DNS anteriores

Tu sitio ya estará añadido a CloudFlare, pero estará realmente activo 24 horas después. Mientras eso sucede, la sección Overview de tu cuenta CloudFlare aparecerá en “Status: Pending”. Cambiará a “Status: Active” cuando esté en pleno funcionamiento.

Cómo añadir a CloudFlare subdominios de tu sitio

Pero todavía te hará falta completar unos pasos. Ahora deberás añadir los subdominios de tu sitio. Para ello, dirígete a la sección DNS de tu cuenta CloudFlare y busca el menú desplegable llamado Types, y allí elige la opción CNAME. Entonces rellena el resto de los campos con los datos de los subdominios que desees añadir.

  • Subdominio en el campo Name.
  • Tu dominio en el campo Domain Name.
  • Automatic TL en el menú desplegable del tercer campo.
  • Y añádelo con Add Record.

Lo siguiente, será activar el SSL y redireccionar tus páginas a HTTPS. En la sección Crypto de tu cuenta de CloudFlare, elige el nivel de certificado SSL que desees.

  • Flexible SSL.
  • Full SSL.
  • Full SSL (Strict).

Sección Crypto

Si no tienes un certificado SSL en tu servidor puedes elegir Flexible SSL. Si deseas instalar un certificado de origen provisto por CloudFlare, puedes elegir entre los otros dos. También puedes generar un certificado con Origen CA desde el apartado Origin Certificates de la sección Crypto, e instalarlo en tu servidor, pero este proceso es para usuarios avanzados.

Una vez seguido este paso a paso, las páginas de tu sitio estarán disponibles en ambos protocolos: HTTP y HTTPS. Ahora deberás hacer que CloudFlare las redireccione todas a HTTPS de forma automática. Para esto es necesario que crees una regla.

En el espacio superior de la sección Page Rules escribe http://*tudominio.com/* y en el inferior elige “Always use HTTPS”. Guarda los cambios y ahora todo tu sitio estará en el protocolo HTTPS.

Por ahora esto es todo lo que tienes que hacer para activar HTTPS en tu sitio web.

Nota – Imágenes tomadas de:

Ramgon

Creativolandia

Raiola Networks

gpcinc.mx

Razones para migrar a HTTPS

0
Razones para migrar a HTTPS

Razones para migrar a HTTPS, además de resguardar tus datos digitales bajo un protocolo HTTPS y un certificado SSL, protege los activos digitales de tu empresa contra peligros cibernéticos y favorece su buen posicionamiento en la web. Detallamos todo lo que necesitas saber sobre este protocolo y los certificados a través de los cuales tu empresa puede implementarlo.

Desde que Edward Snowden reveló en 2013 que la Agencia de Seguridad Nacional de Estados Unidos (NSA) intercepta todo tipo de información online, se disparó la demanda de certificados Secure Socket Layer (SSL) para migrar sitios web al protocolo HTTPS. ¿La razón?, obtener mayor seguridad informática.

Para proteger tu información de los intrusos, el sistema HTTPS encripta los datos antes de trasladarlos de un puerto a otro a través de la red.

El protocolo HTTPS no es más que el protocolo HTTP de toda la vida, pero con una capa añadida de seguridad. Usando algoritmos de encriptación SSL, los datos que deben viajar de un servidor a otro lo hacen de manera segura y al destino correcto. De esta manera, información delicada como contraseñas, datos financieros y perfiles de empleados, se protegen de ser interceptadas por usuarios malintencionados.

Una forma de obtener estos certificados y sus sistemas de encriptación, es a través de autoridades certificadoras (AC). Las AC son organizaciones de confianza responsables de validar, generar y revocar certificados digitales, además de garantizar la seguridad de las transacciones y administrar información sobre el estado de los certificados. Estas entidades verifican que tu página y tu empresa sean auténticas y garantizan a tus usuarios que sus transacciones sean seguras.

Este servicio exige una renta anual que depende del tipo de certificado y el nivel de seguridad que ofrece, aunque también hay empresas tales como Cloudflare, Letsencrypt y OpenSSL, que proveen certificados gratuitos con ciertos niveles de seguridad.

Pero más allá del reforzamiento de seguridad, existen otras razones adicionales por las que deberías pasar tu sitio web al modelo de encriptación HTTPS.

Mejorar el SEO con HTTPS

Desde que las certificaciones gratuitas se popularizaron, Google comenzó a dar a las páginas con encriptación HTTPS ventajas de posicionamiento en sus buscadores. Al hacer esto, fomentaron ampliamente el uso de protocolos que protegen la información del alcance de la mirada de terceros.

Si bien la ventaja que da Google a las páginas con certificado SSL es mínima, han anunciado que aumentará en el futuro para impulsar el intercambio cada vez más seguro de información en la web.

Los buscadores siguen dando mayor preponderancia a los contenidos originales de alta calidad, pero un sitio con certificados SSL tendrá un beneficio nada despreciable cuando la competencia por aparecer de primeros aumenta.

Otra de las ventajas SEO de estos protocolos, es que mantienen intactos los datos referidos. Es decir, con un sitio HTTPS puedes conocer desde qué páginas te visitan los usuarios o con qué palabras clave te hallaron. Esta información es vital para la analítica de datos y te ayudará a incrementar aún más las visitas.

Tipos de certificado SSL

Antes de migrar a los protocolos HTTPS y solicitar un certificado SSL, primero debes comprender bien qué tipo de seguridad necesitas:

  • Certificados de validación extendida (EV): es válido para un único sitio web, ofrece lo mejor de lo mejor en encriptación 2048 bits y añade una barra verde al buscador con el nombre de la empresa.
  • Certificado de organización validada (OV): funciona para un solo sitio web y valida que la página pertenece a tu empresa y que ésta reconocida por algún organismo oficial, aunque no aporta la misma confianza que atribuye la barra verde.
  • Certificado de dominio validado (DV): solo valida que tu empresa es dueña del dominio en cuestión y ofrece niveles de encriptación estándar en la industria.

Tipos de certificados SSL

También existen otros tipos de certificados que tienen mayor versatilidad en cuanto a los sitios en los que pueden usarse:

  • Certificados multi dominio: pueden albergar en su cápsula de seguridad a más de 100 sitios.
  • Certificados comodín: certificados de tipo DV y OV que pueden abarcar un dominio (www.ejemplo.com) con todos sus subdominios (login.ejemplo.com, tienda.ejemplo.com, etc).

Otros aspectos a tener en cuenta

Es probable que tu sitio HTTPS tenga una pequeña demora de carga, puesto que este tipo de protocolos incrementa el intercambio de datos internos de tu web antes de establecer la conexión entre sus páginas. Es el precio que hay que pagar por mayor seguridad, aunque esta demora puede reducirse si se siguen buenas prácticas de desarrollo web, en el pasado te mostramos como optimizar sitios wordpress.

Por otro lado, algunas aplicaciones web, sobre todo antiguas, pueden tener problemas con direcciones HTTPS. AdSense, por ejemplo, puede reducir considerablemente los ingresos que genera, ya que Google restringirá la impresión de anuncios en las webs que cumplan los requisitos SSL.

Ya para finalizar es compendio explicaciones, lo más importante que debes considerar es que cada vez más sitios web migran al sistema HTTPS. Lo más probable es que en poco tiempo este sistema de encriptación SSL sea el usado por defecto, así que éste es el mejor momento para migrar y asegurar los datos digitales de tu empresa.

fuente: gpcinc.mx

Imagen: tecnoarnel.com.ve

Ramme: Un avanzado cliente de Instagram para Linux

0
Ramme Un avanzado cliente de Instagram para Linux

Ramme: Un avanzado cliente de Instagram para Linux

Las redes sociales son parte de nuestro día a día y una de las más famosa actualmente es Instagram, la red social que nos permite compartir fotos y vídeos, que pueden ser personalizados gracias a su cantidad de filtros y objetos para decorar.

Lamentablemente, no existe un cliente de Instagram para Linux que sea oficial de la aplicación, por lo que tenemos que utilizar alternativas como Ramme (acá el repo) para poder disfrutar de una aplicación eficiente para manejar Instagram cuando estamos en el computador, sin embargo en un post anterior te mostramos Como subir fotos a Instagram desde la pc

¿Qué es Ramme?

Es un cliente de código abierto para Instagram que puede ser ejecutado en múltiples sistemas operativos (Linux, Windows y MacOS), el mismo permite realizar diversas tareas en la famosa red social.

Esta cliente de Instagram para Linux es bastante ligero y rápido, se comporta como un embebido de la versión móvil, su interfaz es sencilla con una apariencia que puede variar en dos temas (claro y oscuro), permite subir foto, realizar actualizaciones, modificar el fondo, ver el timeline de instagram y esta equipada de una serie de atajos de teclado que nos permitirán hacer nuestra navegación más eficiente.

¿Cómo descargar e instalar Ramme?

Podemos descargar la última versión de Ramme en el siguiente link, donde podemos elegir entre los diversos empaquetados que están preparados para varias distros linux, de igual manera existe un .tar.gz, te recordamos como instalar este tipo de archivos:

1.- Entrar a la carpeta donde descargamos el archivo

Entramos a la carpeta donde descargaste el archivo, en caso de que la carpeta tenga varias palabras recuerda usar commillas

cd carpetadedescarga

cd “carpeta de descarga”

2.- Descomprimir el archivo

tar -zxvf archivodescargado.tar.gz

tar -jxvf archivodescargado.tar.bz2

3.- Configuramos

./configure

En caso de que de error es porque el archivo no necesita compilación y puedes saltar al paso 5

4.- Compilamos

make

5.- Instalamos

make install

Y esta instalada la aplicación y podemos ejecutarla desde el menú de aplicaciones

Una vez instalado debemos ejecutar la aplicación Ramme desde el menú de aplicaciones, loguearnos con facebook o con el usuario y contraseña de nuestra cuenta de instagram, inmediatamente se conectará con el servidor y podrá manejar su cuenta como habitualmente se hace desde un dispositivo móvil.

Debemos tener en cuenta que este no es un cliente oficial y que básicamente viene a cubrir una necesidad que tienen muchos usuarios habitualmente. Una lista con los atajos de teclado que puede utilizar en la herramienta se encuentra acá.

Fuente:

https://blog.desdelinux.net/

Tips para evitar ser hackeado

0
Tips para evitar ser hackeado

Hasta ahora creo que no he tocado uno de mis temas favoritos, seguridad informática, es por eso que me dispuse a escribir Tips para evitar ser hackeado. Espero que tras este pequeño artículo puedan tener una mejor idea de lo que puede ayudar a tener un mejor control de sus riesgos y cómo mitigar bastantes al mismo tiempo.

Tips para evitar ser hackeado

Riesgos por doquier

Es inevitable, en este año solamente, ya llevamos más de 15000 vulnerabilidades descubiertas y asignadas de manera pública. ¿Cómo lo sé? Pues revisando la lista de CVEs.

CVE

Common Vulnerabilities and Exposures por sus siglas en inglés, son los identificadores únicos que se asignan a cada vulnerabilidad existente. Puedo decir con mucha alegría que varios Developers de Gentoo apoyan al bien de la humanidad, investigando y publicando sus hallazgos para que puedan ser corregidos y solucionados. Uno de los últimos casos que tuve el gusto de leer fue el de Optionsbleed; una vulnerabilidad que afectaba a servidores Apache a nivel mundial. ¿Por qué digo que estoy orgulloso de esto? Pues porque ellos hacen un bien al mundo, mantener las vulnerabilidades en secreto solo beneficia a pocos, y las consecuencias de esto pueden ser catastróficas dependiendo del objetivo.

CNA

Las CNA son entidades encargadas de solicitar y/o asignar CVEs, por ejemplo, tenemos la CNA de Microsoft, encargada de agrupar sus vulnerabilidades, resolverlas y asignarles un CVE para su posterior registro a lo largo del tiempo.

Tipos de medidas

Vamos a comenzar aclarando que ningún equipo es o será 100% seguro, y como decía un refrán bastante común:

El único equipo 100% seguro es aquel que se encuentra encerrado en una bóveda, desconectado de internet y apagado.

Porque es cierto, los riesgos siempre estarán ahí, conocidos o desconocidos, solo es cuestión de tiempo por lo que frente al riesgo podemos hacer lo siguiente:

Mitigarlo

Mitigar un riesgo no es más que reducirlo (NO anularlo). Este es un punto bastante importante y crucial tanto a nivel empresarial como personal, uno no quiere ser “hackeado”, pero a decir verdad el punto más débil de la cadena no es el equipo, ni el programa, ni siquiera el proceso, es el humano.

Todos tenemos costumbre de culpar a otros, sean personas o cosas, pero en seguridad informática, la responsabilidad siempre es y será del humano, podrás no ser tú directamente, pero si no sigues el camino adecuado, serás parte del problema. Más adelante les doy un pequeño truco para mantenerse un poco más seguros

Transferirlo

Este es un principio bastante conocido, tenemos que imaginarlo como un banco. Cuando tu necesitas cuidar tu dinero (me refiero de manera física) lo más seguro es dejarlo con alguien que tenga la capacidad de resguardarlo mucho mejor que tú. No necesitas tener tu propia bóveda (aunque sería mucho mejor) para poder cuidar cosas, solamente necesitas contar con alguien (de confianza) para que guarda algo mejor que tú.

Aceptarlo

Pero cuando el primero y el segundo no aplican, pues ahí es donde viene la pregunta realmente importante. ¿Qué tanto vale este recurso/dato/etc para mí? Si la respueseta es mucho, pues deberías pensar en los primeros dos. Pero si la respuesta es un no tanto, tal vez simplemente debas aceptar el riesgo.

Hay que afrontarlo, no todo es mitigable, y algunas cosas mitigables costarían tantos recursos que sería prácticamente imposible aplicar una solución real sin tener que cambiar e invertir mucho tiempo y dinero. Pero si puedes analizar aquello que intentas proteger, y no encuentra su lugar en el primer o segundo paso, pues simplemente llévalo en el tercer paso de la mejor manera, no le des más valor del que tiene, y no lo mezcles con cosas que realmente tienen valor.

Mantenerse al día

Esta es una verdad que escapa a cientos de personas y negocios. La seguridad informática no se trata de cumplir con tu auditoría 3 veces al año y esperar que nada suceda en los otros 350 días. Y esto es verdad para muchos administradores de sistemas. Seguro aquí muchos me dirán, pero el programa que usamos no funciona en la siguiente versión o algo similar, pues la verdad es que tu programa es una bomba de tiempo si no funciona en la última versión. Y eso nos lleva al anterior apartado, ¿puedes mitigarlo?,¿puedes transferirlo?,¿puedes aceptarlo?…

A decir verdad, solo para tenerlo presente, según las estadísticas 75% de los ataques de seguridad informáticas son originados desde el interior. Esto puede ser porque tiene usuarios en la empresa incautos, o malintencionados. O que sus procesos de seguridad no le han hecho difícil a un hacker irrumpir en sus locales o redes. Y casi más del 90% de ataques son originados por software desactualizado, no por vulnerabilidades de día cero.

Piensa como máquina, no como humano

Este será un pequeño consejo que les dejo de aquí en adelante:

Piensen como máquinas

Para los que no comprendan, pues ahora les doy un ejemplo.

Les presento a John. Entre los amantes de la seguridad es uno de los mejores puntos de partida cuando comienzas en el mundo del ethicla hackingJohn se lleva de maravilla con nuestro amigo crunch. Y básicamente agarra una lista que se le entrega y empieza a probar las combinaciones hasta encontrar una clave que resuelva la contraseña que busca.

Crunch es un generador de combinaciones. esto quiere decir que tu le puedes decir a crunch que quieres una contraseña con 6 caractéres de largo, que contenga letras minúsculas y mayúsculas y crunch empezará a probar uno por uno… algo como:

aaaaaa,aaaaab,aaaaac,aaaaad,….

Y se preguntarán cuánto tiempo lleva ir por toda la lista seguro… no toma más de unos cuantos minutos. Para los que se quedaron con la boca abierta, permítanme explicarles. Como conversamos anteriormente, el eslabón más débil de la cadena es el hombre, y su forma de pensar. Para una computadora no es complicado probar combinaciones, es algo sumamente repetitivo, y con el pasar de los años los procesadores se han vuelto tan poderosos que no necesitan más de un segundo para hacer mil intentos, o incluso más.

Pero ahora lo bueno, el ejemplo anterior es con el pensamiento humano, ahora vamos por el pensamiento de máquina:

Si le decimos a crunch que empiece a generar una contraseña con solo 8 dígitos, bajo los mismos requerimientos anteriores, hemos pasado de minutos a horas. Y adivinen qué sucede si le decimos que use más de 10, se convierten en días. Para más de 12 ya estamos en meses, además del hecho de que la lista sería de proporciones que no podrían ser almacenadas en una computadora normal. Si llegamos a 20 hablamos de cosas que una computadora no va a poder descifrar en cientos de años (con los procesadores actuales claro está). Esto tiene su explicación matemática, pero por cuestiones de espacio no se las voy a explicar aquí, pero para los más curiosos tiene mucho que ver con la permutación, las combinatorias y las combinaciones. Para ser más exactos, con el hecho de que por cada letra que agregamos al largo tenemos casi 50 posibilidades, así nos quedará algo como:

20^50 posibles combinaciones para nuestra última contraseña. Ingresen ese número a su calculadora para que vean cuantas posibilidades existen con una clave de longitud de 20 símbolos.

¿Cómo puedo pensar como máquina?

No es sencillo me dirá más de uno pensar en una clave de 20 letras seguidas, sobre todo con el antiguo concepto de que las contraseñas son palabras clave. Pero veamos un ejemplo:

dXfwHd

Esto es difícil de recordar para un humano, pero súmamente sencillo para una máquina.

caballoconpatasdehormiga

Esto por otro lado es súmamente fácil de recordar para un humano (hasta incluso divertido) pero es un infierno para crunch. Y ahora más de uno me dirá, ¿pero no es recomendable también cambiar de manera seguida las claves? Sí, es recomendable, por lo que ahora podemos matar dos pájaros de un tiro. Supongamos que este mes estoy leyendo El Quijote de la mancha, tomo I. En mi contraseña pondré algo como:

ElQuijoteDeLaMancha1

20 símbolos, algo bastante difícil de descubrir sin conocerme, y lo mejor es que cuando acabe el libro (suponiendo que leen de forma constante  ) sabrán que deben cambiar su contraseña, incluso el cambiar a:

ElQuijoteDeLaMancha2

Es ya un progreso  y seguramente les ayudará a mantener sus contraseñas seguras y al mismo tiempo les recordará que deben acabar su libro.

Ya es bastante lo que he escrito, y aunque me encataría poder hablar sobre muchos más temas de seguridad, lo dejaremos para otro momento  Saludos

Fuente: https://blog.desdelinux.net

¿Procrastinar? ¡deja de hacerlo ya!

0

No creo estar equivocado al decir que muchos hemos pasado por situaciones en las que tenemos que hacer algo importante, pero lo postergamos y nos colocamos a hacer cualquier otra actividad mucho menos productiva o de menos prioridad, bien sea alguna labor universitaria, alguna tarea personal o sencillamente cuestiones laborales, como algún proyecto o una asignación pendiente. Pensamos y “creemos estar seguros” de que podemos solucionar esa actividad de manera rápida y nos dedicamos a hacer otra cosa no más importante que la anterior mencionada, algunas veces hasta actividades muy banales y cuando digo “creemos estar seguros” es porque así nos engañamos a nosotros mismos, pero cuando se acerca la hora de entregar esa actividad importante, nos hacemos un caos y terminamos haciendo un trabajo mediocre, en  el peor de los casos sencillamente no lo hacemos y quedamos como personas irresponsables con quien nos asignó dicha actividad o peor aún, con nosotros mismos.

Procrastinar es la acción de dejar para después lo que podemos hacer ahora y es algo que nos ha afectado a todos alguna vez, sin embargo, cuando procrastinar se vuelve un hábito es que comienza a tener realmente repercusiones negativas en muchos aspectos de nuestras vidas, puede ser en lo personal, en lo laboral o en el ámbito académico, pero si vamos postergando las cosas muy a menudo no conseguiremos nada positivo de ello. No hablaré de procrastinar en terceras personas, lo voy a hablar desde mi punto de vista ya que lamentablemente no he sido la excepción,  he procrastinado y bastante.

Me ha pasado con frecuencia que tengo alguna actividad universitaria que hacer y tengo una semana para entregarla, teniendo tiempo libre, tiempo de ocio, me las he ingeniado para sencillamente pasar de mis responsabilidades y hacer cualquier otra cosa, cuando faltan 2 días para entregar la actividad me toca hacerla con estrés, prisa y corto de tiempo, esto como resultado me lleva a entregar una actividad quizás un poco mediocre. Situaciones similares también he tenido en lo laboral, pero no es que quiera postear mi vida personal.

El punto es, que muchas veces no nos damos cuenta de cuán negativo puede ser este hábito, esto puede detonar en nosotros sentimientos negativos como, frustración por no haber completado nuestro cometido o ansiedad porque sabemos que tenemos que hacer alguna labor, pero nuestro hábito nos hace ignorarlo, esto nos lleva a estar de manera inconsciente ansiosos, también podemos sentir culpa y hasta nos puede llegar a bajar el autoestima pues en casos extremos cuando procrastinamos cuestiones más personales sentimos el fracaso, “no lo pudimos lograr”, “no somos suficiente” son pensamientos que de manera inconsciente llegan a nosotros cuando hacemos de la procrastinación un hábito y bien sabemos las consecuencias fatales que puede tener hallarse con baja autoestima.

¿pero como dejamos de hacerlo?

procrastinar
procrastinar

Hay muchos sitios en la web donde nos dan pasos a seguir para dejar de procrastinar, nos dan tips o cosas a tener en cuenta para este cometido, podemos conseguir mucha ayuda para dejar este mal hábito y crearme al darnos cuenta que lo tenemos querremos deshacernos de él tan rápido como podamos, les dejo 3 tips que en mi opinión pueden ser un buen comienzo.

 

  • Decídete : en ocasiones cuando vamos aplazando una tarea de manera inconsciente es porque no nos hemos detenido a pensar en ella realmente, debemos dedicar un par de minutos para aclarar la finalidad de la tarea y que significa esta para nosotros , si realmente conseguimos en ella una recompensa satisfactoria, entonces comencemos a actuar en pro de alcanzar dicha meta.

 

  • Piensa en positivo : aunque no parezca algo fácil, lo es. El pensamiento positivo hace que nuestra motivación sea mayor y esto va a hacer que trabajemos más rápido, tener una frase motivacional en un papel que tengamos siempre visible, escuchar una canción motivadora antes de comenzar la actividad incluso visualizarnos en el momento de conseguir nuestra recompensa y pensar en la riqueza del éxito. Estos pensamientos positivos nos ayudan más de lo que pensamos.

 

  • Organiza tu tiempo : es de gran ayuda anotar en algún lugar las tareas que tenemos asignadas cada día, podemos organizar nuestro horario fijando cuánto tiempo dedicaremos a cada actividad, podemos ir tachando tareas de nuestra lista y observando el progreso, esto nos hará crear un compromiso interno y nos hará ser responsables con nosotros mismos. Esta ultima hay muchas maneras de hacerla, pero si trabajas con algún computador o incluso desde tu smartphone te recomiendo utilizar Workflowy, en este sitio podemos hacer nuestra lista de tareas totalmente personalizada y organizarlas a nuestro gusto, al culminar cada una de ellas podemos tacharlas de la lista.

 

Podemos encontrar infinidades de tips para dejar de procrastinar, no obstante, solo nuestro deseo de dejar este hábito y nuestras ganas de crecer como personas serán las que determinen nuestro fracaso o nuestro éxito.

 

Ocio digital, ¿es Youtube o cualquier otra red un vicio para ti?

0

Las redes sociales como Facebook, Twitter o incluso Youtube son fuente de entretenimiento sin duda alguna, mas allá de que en muchas ocasiones se les puede dar un uso mas informativo o educativo no se puede negar el hecho de que la mayor parte del tiempo que estamos en ellas es pasando «ocio digital» y esto precisamente es lo que nos ha llevado a hacernos esta pregunta, que estoy seguro que muchos de ustedes también se la han hecho, ¿estamos pasando demasiado tiempo en las redes sociales? Exactamente, no nos queda mas que ser sinceros con un rotundo ¡si!

A quien no le ha pasado que va a realizar un trabajo en el ordenador o va a buscar alguna información importante y bueno, ¿por que no? vamos a echar un vistazo a Facebook y nos quedamos horas pegados, viendo los memes mas virales, viendo las publicaciones de nuestros amigos o de las paginas que seguimos, sino nos vamos a Youtube y pasamos horas viendo vídeos, viendo nuestros vídeos musicales favoritos una y otra vez o viendo las novedades de algún Youtuber que seguimos, cuando reaccionamos ya hemos visto mas de 10 vídeos y se nos ha ido una cantidad de tiempo considerable, es bastante común que se nos de este panorama hoy en día pues muchos tenemos un ordenador en nuestro hogar o en nuestro trabajo o recurrimos a nuestros queridos teléfonos inteligentes y basta con tener conexión Internet para sentir el llamado del «Ocio Digital».

ocio digitak
ocio digital

¿Ocio Digital? Así es, este es el termino empleado para cualquier tipo de actividad que realizamos en nuestro tiempo libre y esta fusionado con cualquiera de las posibilidades que nos ofrecen las aplicaciones tecnológicas, y bueno puede parecer algo inofensivo pero si sumamos todas las horas que hemos «perdido» en ocio digital quizás nos demos cuenta que nuestro rendimiento laboral puede verse realmente afectado o incluso en el mismo hogar podemos dejar de hacer cosas mucho mas productivas por mantenernos atrapados en estas redes.

Esto es una realidad y es algo que los grandes proveedores de este tipo entretenimiento virtual saben bien y es por ello que se han colocado manos a la obra para ayudar a nosotros los consumidores a regular nuestro tiempo de «ocio digital» por ejemplo Google dejo muy claro con «Android P» que el bienestar de los usuarios va a ser la prioridad.

Youtube ya ha lanzado una aplicación donde a voluntad propia vas a poder generar alarmas para tomar un descanso, así es, vamos a poder elegir entre 15, 30 o incluso 180 minutos para que el mismo Youtube nos avise que es hora de tomar un descanso, obviamente la decisión final esta en nosotros, otra opción que también va a estar disponible es que en vez de Youtube notificarnos cada vez que en nuestro canal favorito suban vídeos, estas notificaciones se agrupen y nos las envíen a una hora determinada por nosotros, asi lo indica informe21.com

Micorsoft también parece haberse puesto manos a la obra con este tema pues su ultima actualización tiene una función que se llama Focus Assist o asistente de concentración, esta función bloqueara todo tipo de notificaciones para ayudarnos a concentrarnos en alguna tarea que tenga mayor importancia, si te interesa saber más sobre esta actualización de Windows puedes dar click aquí.

No tardara mucho en llegar algún tipo de opción de este tipo del gran Facebook y muchas otras redes, sin embargo, siempre la decisión quedara en nuestras manos y esta en nosotros precisamente el poder decidir cuanto tiempo emplearemos en ocio digital, amamos la tecnología y nos gusta mantenernos informados pero recordemos que todo en exceso puede llegar a ser contraproducente.

 

Comandos básicos de configuración Ciena

0

Los que caminamos a diario por el mundo de las redes sabemos muy bien que a la hora de elegir un suiche para una función determinada tenemos una gran cantidad de productos de diferentes fabricantes y de gran calidad de donde elegir, gigantes fabricantes de equipos robustos para conexiones de red como (Tp-Link, Cisco, Netgear, D-Link, Mikrotik, Etc.) por nombrar varios de los mas comerciales, sin embargo, pasa a menudo que nos topamos con equipos de gran capacidad pero de fabricantes no tan conocidos o comerciales como los mencionados anteriormente, por ello no se consiguen muchos sitios web donde podamos ver  los comandos para configurar dichos equipos, en este grupo de suiches robustos no tan conocidos le vamos a dar un vistazo a la familia Ciena.

ciena
ciena

He tenido la oportunidad de trabajar con estos equipos que dependiendo el modelo te ofrecen una mejor capacidad de manejar gran cantidad de trafico y poder realizar diferentes configuraciones para el diseño de red que usted se plantee, ademas que son muy estables y de gran rendimiento , podemos encontrar datasheet o ficha de datos de cada uno de los modelos directamente en la pagina haciendo click aqui

A continuación les comparto una serie de comandos para una configuración básica en equipos ciena, estos equipos se pueden gestionan por el protocolo telnet (puerto 23) y la dirección ip que traen por defecto es la 172.16.233.214 por lo que nos colocaremos en nuestro equipo cualquier dirección ip en ese mismo segmento, por ejemplo 172.16.233.213/24. Estos equipos como muchos otros, al tabular te completa la palabra que estas escribiendo y ademas te muestra las posibles configuraciones dentro de cada opción, el usuario y contraseña que traen estos equipos por defecto es :

Usuario : su
Contraseña : wwp

  • Asignar un nombre nuevo a el equipo : system set host-name titosofo
  • Cambiar contraseña al equipo : user set user «aqui colocamos el usuario al que le vamos a cambiar la contraseña en este caso es su» su password «Escribir Password» (Todo sin las comillas)
  • Crear usuario nuevo : user create user tito password 123 access-level limited
  • Borrar usuario : user delete user tito
  • Mostrar todos los puertos : port show status
  • Mostrar la configuración de un puerto en especifico: port show port «Numero de puerto»
  • Cambiar nombre a un puerto : por set port «numero de puerto» description «nuevo nombre»
  • Cambiar velocidad y negociacion a un puerto : port set port 1 auto-neg on speed ten duplex full
  • Deshabilitar un puerto : port disable port 1
  • Hablitar un puerto : port enable port 1
  • Ver los equipos conectados al ciena : lldp show neighbors
  • Ver tiempo que el equipo lleva Up : system show uptime
  • Agregar ip-interface : interface create ip-interface prueba ip 80.80.80.80/24
  • Borrar ip-interface : interface delete ip-interface prueba
  • Agregar ip en inteface remota : interface remote set ip 80.80.80.80 subnet 255.255.255.0
  • Añadir gateway en interfaz remota : interface remote set gateway 80.80.80.1
  • Deshabilitar dhcp : dhcp-client(DEPRECATED) disable
  • Habilitar dhcp : dhcp-client(DEPRECATED) enable

Con estos sencillos comandos podemos lograr una configuracion básica en cualquier equipo Ciena, en futuros post estaremos mostrando como realizar configuraciones mas especificas en estos equipos.

Popular

Footer siempre abajo

Footer siempre abajo

8
Uno de los principales problemas a la hora de desarrollar o diseñar un sitio o sistema web es la ubicación del footer.Cuando se tiene...
Los 5 mejores editores de JavaScript según desarrolladores del mundo

Los 5 mejores editores de JavaScript: los desarrolladores clasifican las mejores herramientas del mundo...

1
JavaScript ha seguido creciendo en importancia durante la última década. De hecho, según las estadísticas de StackOverflow, JavaScript ha sido el lenguaje de programación...
Mostrar Branch actual Git en el terminal

Mostrar Branch actual Git en el terminal

0
En ponceelrelajado amamos git ¿y quien no? Si es uno de los manejadores de versiones más usados, bien sea para llevar un control de...
ElementaryOs

Cosas que hacer después de instalar elementary os

0
Elementary OS es una distribución Linux basada en Ubuntu LTS, usa un entorno de escritorio basado en GNOME con un shell propio llamado Pantheon...

Listado de Países y Provincias Sql en Español

4
Hasta hace poco tiempo estuve buscando como un loco alguna base de datos con el Listado de Países y Provincias Sql en Español de...

Videojuegos

10 videojuegos que deberían convertirse en películas por sus historias

10 videojuegos que deberían convertirse en películas por sus historias

1
En posts anteriores ya te hemos hemos escrito de videojuegos, aunque no me considero una gamer, si no mas bien una jugadora ocasional, la verdad es que he tenido la oportunidad de probar algunos...
videojuegos de sociedades distópicas

5 videojuegos de sociedades distópicas que muestran el futuro decadente de la humanidad

0
En un post anterior te listamos lo que a nuestro parecer, son juegos que deberían de ir la gran pantalla, sin embargo, pesar de la gran lista de títulos que existen, hemos notado que...

Más Leído