sábado, marzo 19, 2022

The Culture Map

 



  • The Culture Map: Breaking Through the Invisible Boundaries of Global Business
  • By Erin Meyer

Este es un libro muy interesante y relevante en IT ya que es común que interactuemos con personas de diferentes culturas; actualmente estoy en un equipo 24/7 distribuido en diferentes países y muchos de los temas explorados en el libro me resultan bastante familiares, me ha ayudado a entender algunos errores míos, la dinámica de un equipo distribuido y también algunas cosas que hemos estado haciendo bien, y sobre todo este libro me ha dado ya varias ideas de como puedo interactuar mejor con mi equipo.


Lectura de Marzo 2022

jueves, febrero 24, 2022

Team Topologies

 

Team Topologies: Organizing Business and Technology Teams for Fast Flow

By: Matthew Skelton, Manuel Pais


Muy buena referencia sobre configuraciones de equipos, me ayudo a darle nombre a dinamicas, patrones, antipatrones e ideas que habia identificado en mi equipo; el libro es recomendable en cualquier etapa de una organizacion ya que puede ayudar a formar equipos y tambien a reorganizarlos para que esten orientados a metas y un optimo flujo de trabajo.


Lectura de Febrero 2022

lunes, enero 03, 2022

tldr pages

Esta es una utileria moderna para una actividad clasica, creo que puede ser una categoria en el blog:  


tldr.sh

"The tldr pages are a community effort to simplify the beloved man pages with practical examples."


Es necesario instalar el Node Package Manager:

sudo apt-get install npm


Con eso puedes instalar la aplicacion:

sudo npm install -g tldr


Ejemplo:

tony@nuc:~$ tldr ss
  ss
  Utility to investigate sockets.
  More information: https://manned.org/ss.8.
  - Show all TCP/UDP/RAW/UNIX sockets:
    ss -a -t|-u|-w|-x
  - Filter TCP sockets by states, only/exclude:
    ss state/exclude bucket/big/connected/synchronized/...
  - Show all TCP sockets connected to the local HTTPS port (443):
    ss -t src :443
  - Show all TCP sockets listening on the local 8080 port:
    ss -lt src :8080
  - Show all TCP sockets along with processes connected to a remote ssh port:
    ss -pt dst :ssh
  - Show all UDP sockets connected on specific source and destination ports:
    ss -u 'sport == :source_port and dport == :destination_port'
  - Show all TCP IPv4 sockets locally connected on the subnet 192.168.0.0/16:
    ss -4t src 192.168/16

jueves, octubre 28, 2021

Java Mug

 


Tenia tiempo que no encontraba una taza relacionada con la tecnología, esto me recuerda a los tiempos en la universidad donde por elección hacia mis proyectos en java...

viernes, septiembre 17, 2021

Comandos Basicos Git

 Esto es solo una lista de referencia rápida de comandos básicos de git:

Primero esta el setup inicial:

$ git config --global user.name "Lalo Landa"
$ git config --global user.email lalolanda@example.com

Esta información será guardada en el archivo ~/.gitconfig

$git clone

Este es el comando que te permite clonar en tu maquina un repositorio

$git status

Ver el estatus del directorio actual, este comando te dirá si tienes cambios realizados pero no empujados aun al repositorio. 

$git log

Mostrara un listado de los commits mas recientes, su fecha y comentarios

$git show

Te dará detalles del ultimo commit indicando los cambios específicos que se hicieron, se puede ver los detalles de un commit si al comando se le agrega el hash a detallar.

$git commit <file>

Es el comando que permite agregar los cambios al repositorio

$git add <file>

Permite agregar archivos para que también formen parte del repositorio 

$git pull

Este comando sincroniza el repositorio local en base al contenido el repositorio origen

$git push

Con este comando podemos empujar nuestros cambios comprometidos al repositorio remoto

$git stash

Este comando te permite guardar tus cambios locales que después puedes volver a trabajar con git stash pop

$git branch <nombre>

Creas un branch del mismo repositorio

$git checkout <branch>

Con este comando te cambias al branch donde quieres trabajar


Mas información: https://git-scm.com


lunes, mayo 03, 2021

Python Snippets: path, time, datetime

Este es un snippet sobre encontrar el archivo mas reciente de un directorio y calcular el tiempo que ha pasado desde su creación, esto es solo la base para una función que busco hacer para un script 


import glob
import os.path
import time
from datetime import datetime

folder_path = 'D:\\python\\doodles\\'
file_type = '*.txt'
now = datetime.now()

# get the most recent file from directory
files = glob.glob(folder_path +file_type)
latest_file = max(files, key=os.path.getctime)

# get the creation time from the most recent file
latest_creation_ctime = os.path.getctime(latest_file)
latest_creation_time = datetime.fromtimestamp(latest_creation_ctime)

# calculate the diference
duration = now - latest_creation_time
duration_in_seconds = duration.total_seconds() 

# print the number of minutes since the file was created
print(int(duration_in_seconds)/60)

miércoles, abril 21, 2021

Python Snippets - dotenv

python-dotenv es una libreria para usar variables de entorno u otra información sensible, este es solo un ejemplo sencillo:

podemos codificar en base64 cierta información como:

$ echo 'joe' | base64
am9lCg==
$ echo 'mysecret' | base64
bXlzZWNyZXQK

en un archivo llamado .env dejamos lo siguiente :

test_user = "am9lCg=="
test_secret = "bXlzZWNyZXQK"

Instalamos la librería:

pip install python-dotenv


Y podemos usarlo de esta forma:

import base64
from dotenv import load_dotenv
import os

load_dotenv()
duser = base64.b64decode(os.environ.get("test_user")).decode('utf-8')
dsecret = base64.b64decode(os.environ.get("test_secret")).decode('utf-8')

print("Decoded information")
print(duser)
print(dsecret)

lo cual entregara como output:

Decoded information
joe
mysecret


Esto no es lo mas seguro y para producción u otras situaciones es necesario buscar una alternativa segura.


 https://pypi.org/project/python-dotenv/