Arnulfo Reyes

¿Comunidades de Programadores?

José Arnulfo R. H.
casi 5 años
 

El sábado 19 de septiembre de 2015 se realizo el Software Freedom Day (SFD), primer evento de tecnología en que participaba junto al equipo organizador.

Había pasado casi 1 año desde el primer evento de tecnología al que había asistido, en esa primera ocasión participe como oyente, pero ahora me tocaba ser parte de la logística del evento.

Año 2014 — Flyer del evento. Obvio solo iba por las pizzas.
Año 2015. Flyer por Luis Segundo

Durante ese 2014 y 2015 me involucre en la comunidad de Fedora Panamá con Abdel Martínez, Luis Bazán, Alejandro Pérez, Kiara Navarro, Luis Segundo y otros más, instale en mi Laptop el Sistema Operativo Linux, participe como conferencista en algunos eventos y estuve en stands explicando los beneficios de utilizar tecnología Open Source Software.

Universidad Latina - Agosto 2015, haciendo inception a los asistentes sobre Open Source Software
2015 — Junto al team de Fedora Panamá en la UIP, promocionando SFD… me dio pereza minimizar esta foto ha!

Luego de eso llego el día para el Software Freedom Day de 2015, ese primer evento lo realizamos en unos salones de la Universidad Interamericana de Panamá.

Ayudinga boy cuando estaba flaco hablando de Fedora. Abdel con su flow C3 y Alejandro diciéndole a la gente que le metiera a GitHub
Luis Segundo con su participación y Guillermo hablando del porqué del evento. Yo estaba en la entrada del salón y fue el único lugar donde tome fotografías :/

El temor era que no llegara nadie pero si llegaron y no solo estudiantes sino profesionales, uno que otro empresario y chic@s de otras universidades.

En lo que resto de ese 2015 y del 2016 conocí a muy buenos amig@s: Shelsy A. Chanis, Adriel Velazquez, Alberto Castillo G, Maryon Torres juntos comenzamos a organizar eventos de tecnología, con aliados como: Fedora, GitHub y Python, interactuamos con otras comunidades de Tecnología y varias empresas de Panamá como InterFuerza y Rootstack.

Nunca nos imaginamos que este nuevo hobby nos permitiría conectar con cientos de personas en Panamá y el mundo.

Si quieres ir rápido camina solo, si quieres llegar lejos ve acompañado

Todavía falta historia que contar… espera más en la próxima publicación.

Arnulfo Reyes

Código de conducta

José Arnulfo R. H.
casi 5 años
 

Python Panamá

Python Panamá, como asociación en torno a la que se organizan eventos de distintos tipos, quiere asegurar que todas las personas que participen en dichos eventos o comunicaciones tengan una experiencia profesional y positiva de aprendizaje, colaboración u ocio. Para ello, se espera que quien participe en la comunidad muestre respeto y cortesía hacia todos los demás.

Asistentes Python Meetup Vol. XII
Asistentes Python Meetup Vol. XII

Al participar en la comunidad de Python Panamá, te comprometes a fomentar una experiencia libre de acoso para todo el mundo, independientemente de la edad, dimensión corporal, discapacidad visible o invisible, etnicidad, características sexuales, identidad y expresión de género, nivel de experiencia, educación, nivel socio-económico, nacionalidad, apariencia personal, raza, religión, o identidad u orientación sexual.

Este Código de Conducta detalla qué comportamientos se esperan, cuáles se rechazan y qué mecanismos hay para ayudar a una persona que esté siendo objeto de comportamientos inadecuados.

¿Por qué un código de conducta?

Siguiendo con el zen de Python, explícito mejor que implícito. Explicamos qué se espera del ambiente en cualquier evento de Python Panamá:

  • favorece que más personas sepan que son bienvenidas
  • evita ambigüedades
  • construye un clima de confianza, donde si alguien quiere reportar un incidente, sabrá que no empezaremos por cuestionarle (victim blaming).

Alcance

Este código de conducta es aplicable a todas las personas que participen en espacios de la comunidad de Python Panamá, ya sean en línea o presenciales. También se aplica a espacios públicos donde una persona esté en representación de la comunidad. Ejemplos de esto último incluyen el uso de la cuenta oficial de correo electrónico, publicaciones a través de las redes sociales oficiales, o presentaciones con personas designadas en eventos en línea o no.

Python Meetup Vol. X
Python Meetup Vol. X

Nuestros estándares

Ejemplos de comportamiento que contribuyen a crear un ambiente positivo para nuestra comunidad:

  • Demostrar empatía y amabilidad ante otras personas. No insultes o humilles a otros asistentes. Recuerda que las bromas sexistas, racistas o discriminatorias no son apropiadas. Nunca lo son.
  • Respetar las diferentes opiniones, puntos de vista y experiencias.
  • Dar y aceptar adecuadamente críticas constructivas.
  • Aceptar la responsabilidad y disculparse ante quienes se vean afectados por nuestros errores, aprendiendo de la experiencia.
  • Centrarse en lo que sea mejor no sólo para nosotros como individuos, sino para la comunidad en general.
  • Usar un lenguaje inclusivo y que dé cabida a una audiencia diversa.
  • Prestar especial atención a las personas que recién llegan a la comunidad.

Ejemplos de comportamiento inaceptable:

  • El uso de lenguaje o imágenes sexualizadas, y aproximaciones o atenciones sexuales de cualquier tipo.
  • Comentarios despectivos (trolling), insultantes o derogatorios, y ataques personales o políticos.
  • Bromas racistas, sexistas o excluyentes.
  • El acoso en público o privado.
  • Publicar información privada de otras personas, tales como direcciones físicas o de correo electrónico, sin su permiso explícito.
  • Otras conductas que puedan ser razonablemente consideradas como inapropiadas en un entorno profesional.

Por acoso se entiende comentarios ofensivos relacionados con género, orientación sexual, discapacidad, apariencia física, tamaño corporal, etnia o religión, pornografía en espacios públicos, intimidación deliberada, acecho, persecución, acoso por fotografías o grabaciones, constante interrupción de charlas u otros eventos, contacto físico inapropiado y atención sexual no deseada.

Cumplimiento

La administración de la comunidad es responsable de aclarar y hacer cumplir este código de conducta; en caso de que se determine un comportamiento inadecuado, tomará las acciones que considere oportunas. Éstas van desde exigir el cese del comportamiento, hasta la expulsión de una persona de un evento o de la Asociación, sin derecho a reembolso. La administración de la comunidad tendrá el derecho y la responsabilidad de eliminar, editar o rechazar mensajes, comentarios, commits, código, ediciones de páginas de wiki, tickets y otras contribuciones que no se alineen con este código de conducta, y comunicará las razones para sus decisiones de moderación cuando sea apropiado.

Denuncia e información de contacto

Los casos de comportamiento abusivo, acosador o inaceptable de otro modo podrán ser denunciados a las personas administradoras de la comunidad responsables del cumplimiento:

  • Si es un evento presencial, ponte en contacto directamente con las personas organizadoras del evento. Es muy probable que hayan publicando un código de conducta específico del evento con instrucciones de a quién acudir; te proporcionarán un espacio seguro para ayudarte.
  • Si se trata de un espacio en línea, ponte en contacto con las personas moderadoras de ese espacio.
  • En el canal de Slack puedes denunciar publicaciones individuales o contactar con el grupo de moderadores.
  • En Telegram, a la persona propietaria del grupo u otras administradoras.
  • Para otros espacios o de forma alternativa, ponte en contacto con los organizadores al correo: pythonpa@aol.com

Todas las personas administradoras de la comunidad están obligadas a respetar la privacidad y la seguridad de quienes denuncien incidentes.

Esperamos que los participantes, conferencistas y patrocinadores sigan estas reglas en todos los espacios virtuales y presenciales de los eventos.

Tenemos participantes encantadores y confiamos en que este código de conducta refleja las opiniones de la mayoría de nuestros participantes.

Asistentes Python Meetup Vol. IX

Atribución

Este código de conducta extiende el ya existente con aportaciones de otros códigos:

Arnulfo Reyes

Claves

José Arnulfo R. H.
casi 5 años
 

Claves para enfrentar días complicados

Reflexiones durante estos días de pandemia y el trabajo en equipo.

Photo by Jason Strull on Unsplash
  1. No asumas, solicita la información que necesitas a las áreas involucradas.
  2. Todo se puede hacer. ¿Por qué no?
  3. Si pides quedarte hasta tarde hazlo pero en equipo.
  4. Pregunta, pregunta y pregunta.
  5. No eres irreemplazable.
  6. Las emociones son importante.
  7. Confía en los demás.
  8. No tengas favoritos, equidad en todo momento.
  9. No es necesario estar en la oficina todo el día, ni tampoco en la pantalla de la PC, celular, tablet.
  10. Mantén las puertas abiertas siempre, siempre ayuda a otros.
  11. No drenes la moral del equipo con tu actitud.
  12. Piensa más en eliminar las distracciones que buscar motivos para hacer el trabajo.

Debemos tener compromiso, participación, comprensión y prepararnos constantemente.

Cuando eres excelente en tu trabajo, también te diviertes. Cuando te diviertes, también haces más cosas.
Luis Manuel

Configurar servidor con Jitsi en DigitalOcean

blackfile
casi 5 años
 
Las vídeo llamadas o conferencias virtuales están cada vez siendo más utilizadas en todo el mundo. Empresas la utilizan como medio para las reuniones de trabajo o llamadas a clientes , colegios para clases virtuales , comunicarse con familiares, etc… Lo cierto es que algunas empresas o colegios pueden llegar a requerir tener en sus propios servidores alguna plataforma alojada en sus propios servidores y Jitsi resulta ser un buen candidato, ademas de ser un proyecto Open Source.

Pre-requisitos

  • contar con una cuenta en DigitalOcean
  • contar con un dominio para el hostname del servidor
  • configurar una llave SSH (opcional) , pero recomendado

Requisitos del servidor

Los requisitos mínimos para instalar Jitsi en nuestro propio servidor son los siguientes:
  • 2 GHz CPU
  • 1 GB de Memoria RAM
  • 25 GB de Disco
  • Ubuntu

Iniciamos con el proceso de configuración

Paso 1 – Crear un proyecto:

Entramos a nuestra cuenta de DigitalOcean y creamos y nuevo proyecto esto con la finalidad de organizar los proyectos relacionados
Presionamos «Skip for now»

Paso 2 – Agregar un dominio:

Definir el hostname de nuestro servidor para eso vamos al menú de la izquierda y seleccionamos «Networking» y tendremos una pantalla donde vamos a ingresar el hotname en mi caso un sub-dominio e indicamos a que proyecto pertenece y presionamos el botón «Add Domain» nos mostrará una segunda pantalla para agregar un nuevo «Record» que permite apuntar a nuestro servidor, lo dejamos así por el momento y pasamos a la creación del «Droplet».

Paso 3 – Seleccionar un Droplet:

Vamos a crear un Droplet , para este caso DigitalOcean ofrece uno ya pre-configurado que nos ayudara a configurar rápidamente nuestro servidor, vamos a la opción «Create -> Droplets» y seleccionamos la opción «Marketplace» como se muestra en la siguiente imagen en la imagen se puede ver un buscador, podemos escribir la palabra «Jitsi» para que nos filtre las imágenes ya creadas, en mi caso se puede ver ya listada, procedemos a seleccionar la imagen. Lo siguiente es seleccionar el Plan, escogemos el que dice «Standard» y para este ejemplo seleccionare el plan de $5.00 al mes que cumple con los requisitos mínimos, para un servidor en producción se recomienda el plan de $20.00 mensuales Ahora indicamos la región, es importante que se seleccione la región mas cerca de a tu país de conexión y como método de autenticación utilizaremos un llave SSH (Recomendable) por último indicamos el hostname que vamos a utilizar, e indicamos el proyecto al cual esta relacionado una vez cumpletados estos pasos se habilitará el botón «Create Droplet» acá podemos ver como se muestra los recursos dentro de nuestro proyecto

Paso 4 – vincular Sub-Dominio con el Droplet:

El siguiente paso es indicar al dominio el «Droplet» a utilizar, para ello vamos seleccionamos los 3 puntos (…) a la derecha del nombre del domino y escogemos la opción «Manage Domain» nos mostrará las siguiente pantalla donde vamos a crear un registro de tipo A «Record A» en el «HOSTNAME» colocamos un «@» y en «WILL DIRECT TO» seleccionamos el Droplet que acabamos de crear y seleccionamos el botón «Create Record» para finalizar . Importante: también es necesario agregar un «Record A» en nuestro sistema de administración DNS de nuestro dominio principal con los siguientes valores

Name: en mi caso «reuniones»
Type: A
Value:IP de nuestro Droplet

Paso 5 – Configurar Jitsi

Para iniciar la configuración necesitamos acceder a la consola del servidor podemos hacerlo desde Windows utilizando un cliente como Putty o MobaxTerm o Linux directamente desde la terminal, importante para poder acceder deben utilizar la llave SSH definida en el Paso 3. Nota: El usuario de nuestro servidor es «root», En este tutorial no explicare como conectarse a un servidor por SSH. una vez conectados en nuestro droplet ejecutamos un «ls» en la consola y debemos tener la siguiente respuesta Encontraremos 2 scripts que nos facilitaran todo el proceso de instalación
  • Configuración de Jitsi
  • Configuración del servicio HTTPS
  • Ejecutamos en la consola el instalador para nuestro sistema de video conferencias ./01_videoconf.sh en el proceso nos solicitara que ingresemos el hostname, debemos ingresar exactamente como lo definimos en los pasos anteriores. En la siguiente pantalla escogeremos la opción de generar un » self-signed certificate», solo presionar «Enter» ejecutamos el la consola el segundo script ./02_https.sh nos pedirá nuestro email, este será utilizado para notificarnos cuando sea tiempo de renovar el certificado y mantener el sitio bajo una conexión segura. ahora vamos al navegador y colocamos el sub-dominio que creamos y nuestro sitio debe funcionar correctamente. con esto completamos nuestra instalación, ahora aplicaremos algunas medidas de seguridad a nuestro servidor Una de las mejores medidas de seguridad que debemos tener presente es el uso del firewall, en Ubuntu la herramienta predeterminada es UFW (Unconplicated Firewall) que nos permite gestionar la configuración de firewall de «iptables». Por defecto UFW está desactivado. Ejecutaremos en la consola el siguiente comando iptables -L Esto nos mostrará las configuraciones actuales del Firewall, donde podemos ver que no existe ninguna regla, entonces, vamos a configurar algunas de manera básica y necesarias para utilizar con Jitsi. ufw allow ssh ufw allow http ufw allow https ufw allow in 10000:20000/udp y por último activamos ufw con el siguiente comando ufw enable Felicidades ya estamos listo para iniciar con nuestras primeras vídeo llamadas.
    Fedora Ambassador
    Senior Web Developer
    La entrada Configurar servidor con Jitsi en DigitalOcean se publicó primero en Luis M. Segundo - Blog.
    Luis Manuel

    Configurar primer proyecto ReactJS

    blackfile
    alrededor de 5 años
     
    React es una biblioteca Javascript de código abierto diseñada para crear interfaces de usuario con el objetivo de facilitar el desarrollo de aplicaciones en una sola página. Para iniciar con ReactJS lo primero que debemos instalar será NodeJS, NodeJS nos facilitara la instación de herramientas y dependendicas necesarias para trabajar con ReactJS. Podemos instalar NodeJS de las siguientes maneras:
    • Descargar directamente desde su sitio oficial
    • En el caso de Windows podemos utilizar un manejador de paquetes Chocolatey (Recomendado)
    Para este caso realizaré la instalación mediante Chocolatey (Como instalar chocolatey), escribimos en la línea de comando de windows el siguiente comando choco install -y nodejs verificamos la instalacion de «node» y «npm» node -v npm -v El siguiente paso es instalar la herramienta «Create React App» desde la línea de comando usando npm install -g create-react-app Felicidades! si llegaste a este punto ya estas listos para iniciar tú primer proyecto con ReactJS npx create-react-app mi-proyecto cd mi-proyecto npm start Esto dará como resultado la imagen de abajo para mayor información visitar la documentación oficial.
    Fedora Ambassador
    Senior Web Developer
    La entrada Configurar primer proyecto ReactJS se publicó primero en Luis M. Segundo - Blog.
    Luis Manuel

    Como instalar Chocolatey

    blackfile
    alrededor de 5 años
     
    ¿Qué es Chocolatey? Es un administrador de paquetes al estilo GNU/Linux, pero desde la consola de Windows. A la fecha cuenta con un repositorio de 7423 programas únicos para instalar. ¿Qué beneficios nos ofrece Chocolatey? Uno de los beneficios que nos ofrece Chocolatey es que no instala software adicional, esto quiere decir que solo se instalar el programa que necesitamos. ¿Comó instalamos Chocolatey? La instalación es muy sencilla, lo hacemos mediente la consola de «PowerShell», es importante que esto se haga con permisos de administrador Ejecutar PowerShell como administrador el siguiente paso pegue el siguiente codigo en la consola y presionar «Enter», enlace de referencia. Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) se recomienda reinice la consola cuando el proceso de instalación se complete. Podemos verificar la instalación con el comando choco ¿Como utilizar Chocolatey? Una vez instalado podemos abrir la consola (cmd) o PowerShell como administrador y empezar a instalar paquetes a través del comando: choco install ahora, lo más importante es conocer que programas están disponible para instalar mediante Chocolatey, para eso podemos ir al repositorio oficial https://chocolatey.org/packages Instalando Git mediante Chocolatey choco install git Recursos sobre Chocolatey
    Fedora Ambassador
    Senior Web Developer
    La entrada Como instalar Chocolatey se publicó primero en Luis M. Segundo - Blog.
    Arnulfo Reyes

    ¿Porqué fracasan los equipos de trabajo?

    José Arnulfo R. H.
    alrededor de 5 años
     
    En la actualidad, crecer solos es casi imposible.

    La asociatividad y cooperación son claves para aprender y crecer. ¿Se puede trabajar con todo el mundo?

    — Claro que no.

    Crecer solos es casi imposible.

    Si un equipo se formó a raíz de una necesidad, el día que esa necesidad se acabe, los involucrados tenderán a desentenderse de la contra parte. Si no logran ver créditos económicos de manera instantánea, no seguirán trabajando con el mismo espíritu para sacar adelante un proyecto.

    Buscarán la utilidad. Una vez satisfecha esa necesidad, ¡Adiós!
    No se obtuvo el resultado esperado en un corto plazo, ¡Adiós!

    No existirá un real engagement dentro del equipo.
    Ese equipo estará destinado a constantes vaivenes, como resultado de un trabajo por conveniencia.

    Cuando trabajamos por una visión común, espíritu común, objetivo común. Ese grupo estará dispuesto a soportar grandes crisis. Unidos en post de un propósito que los une.

    Se apoyarán unos a otros, y trabajaran todos por igual sin aprovecharse del trabajo de otros. Nadie aguantará favoritismos ni flojera… O todos, o ninguno.

    Habrá solidaridad. No se aprovecharán de otros recursos para abusar o sacar ventaja de otros.

    Existirá compromiso, pasión por lo que se hace, y respeto hacia los demás.

    Arnulfo Reyes

    Release Party Fedora 31

    José Arnulfo R. H.
    más de 5 años
     

    El martes 10 de diciembre de 2019, se realizo el Release Party Fedora 31 en Brew Stop de Marbella.

    Compartimos en un lugar ameno, junto a estudiantes, profesores, profesionales, empresarios sobre las bondades de pertenecer a una comunidad como Fedora.

    Platicamos sobre nuestros fundamentos, nuestra misión y el objetivo principal como comunidad.

    Fedora crea una plataforma innovadora para hardware, nubes y contenedores que permite a los desarrolladores de software y miembros de la comunidad crear soluciones personalizadas para sus usuarios.

    Adicional compartimos conferencias técnicas/prácticas sobre Podman y Kubernetes en Fedora. Gracias a Alejandro Pérez y Abdel Martínez por brindar de sus experiencias.

    Mientras tanto Luis Bazán nos compartió sobre el proyecto Neuro Fedora, los avances que han logrado y como ser parte de proyectos de gran importancia en la comunidad.

    Agradecemos a los asistentes por compartir de su tiempo junto a nosotros.

    Arnulfo Reyes

    Entrevistas de trabajo (notas)

    José Arnulfo R. H.
    más de 5 años
     

    Podemos tener el mejor CV y saber cómo responder todas las preguntas, pero de nada sirve ser realmente bueno si estoy sentado esperando la llamada u oportunidades. No actúes desde el “YO esperanzado”.

    Podemos tener el mejor network, amigos que nos abren las puertas, pero cuando estoy frente a esa reunión no tengo la síntesis para trasmitir mi valor agregado en 10 o 15 minutos. No actúes desde el “YO desesperado” usando tus talentos, habilidades y conocimientos si todavía no sabes en qué eres realmente bueno y cómo puedes aportar.

    Haz una pausa rápida y estratégica para preguntarte: ¿cuál es la variable que debo potenciar más en esta etapa?

    Mi Autoconocimiento o mi Networking, o las dos. La forma de reclutar cambió y mucho, ya no es solo suficiente saber mucho, sino también a quienes conocemos.

    En transición laboral nunca subestimes el valor de un gracias a la persona que te abre una puerta. Asimismo, escucharás muchos tips, aprende a escoger lo que funciona para ti. Antes de escuchar el consejo, presta más atención a la persona que da el consejo, que al consejo que da. ¡Evalúa su legitimidad!

    Te deseo un buen día, nuevas métricas y estrategias.

    Arnulfo Reyes

    Python Meetup VIII — Panamá

    José Arnulfo R. H.
    más de 5 años
     

    Python Meetup VIII — Panamá

    Miércoles 24 de julio de 2019

    Asistentes y organizadores al meetup viii
    Asistentes y organizadores — Meetup viii

    El miércoles 24 de julio realizamos en ciudad de Panamá el Python Meetup vol. 8

    En esta ocasión platicamos de dos puntos:

    1. Vine por el lenguaje, me quedé por la comunidad. [1]
    2. ¿Cómo empezar en Python?

    Hablamos sobre los beneficios por el cual las personas aman python y algunas de sus contras.

    La estructura organizativa de los meeting, conferencias y talleres que se han planificado.

    Los fundamentos en que se basa python a nivel mundial y la misión de la PSF.

    Brindando los objetivos de la comunidad.

    Gracias a todos los que hicieron posible este evento, organizadores y asistentes.

    Agradecemos también a My Office por su excelente atención y a Deliboquitas por las deliciosas boquitas que prepararon.

    Nos vemos en Python Meetup Vol. IX

    Muchas gracias Pythonistas. Happy Pythoning!

    Python
    https://www.python.org/downloads/