Skip to content

Instantly share code, notes, and snippets.

View gpupo's full-sized avatar
🎯
Focusing

Gilmar Pupo gpupo

🎯
Focusing
View GitHub Profile
@gpupo
gpupo / readme.md
Last active October 5, 2023 18:27
Dicas de programação

Conjunto de dicas sem pé nem cabeça nem seu cão esguio e o garoto do balão vermelho :)

@gpupo
gpupo / Desafio-1.md
Last active June 29, 2023 19:12
Desafios para estudantes de ETL

Aqui está um exercício simples para um estudante iniciante em Python, envolvendo a manipulação de dados de um arquivo JSON e a gravação desses dados em um arquivo CSV.

Suponha que você tenha um arquivo JSON chamado "dados.json" com a seguinte estrutura:

[
  {
    "nome": "João",
    "idade": 25,
    "cidade": "São Paulo"
@gpupo
gpupo / similaridade.py
Last active June 17, 2023 12:58
Uso de distância de Levenshtein para calcular a similaridade entre as categorias entre dois arquivos CSV
import csv
import Levenshtein
# O script tem como objetivo encontrar a categoria mais similar para cada categoria presente no arquivo "categorias.csv" com base nas categorias do arquivo "categorias_native.csv".
# Ele utiliza a distância de Levenshtein para calcular a similaridade entre as categorias.
def encontrar_categoria_similar(categoria, categorias_native):
melhor_similaridade = 0
melhor_categoria = None
@gpupo
gpupo / gera_amostra_csv.py
Last active June 15, 2023 12:01
Quando você tem um arquivo CSV muito grande e que gostaria de uma amostragem de linhas aleatórias, esse script pode te ajudar
import csv
import random
import sys
import os
# Quando você tem um arquivo CSV muito grande e que gostaria de uma amostragem de linhas aleatórias, esse script pode te ajudar
# Gist: https://gist.github.com/gpupo/33b266be0830f76cd3200866788404df
def gerar_amostra_csv(caminho_arquivo_original, caminho_arquivo_amostra, tamanho_amostra):
"""
@gpupo
gpupo / aula-lei-demeter.md
Last active June 8, 2023 22:44
A Lei de Demeter, princípio do mínimo conhecimento

A Lei de Demeter, também conhecida como princípio do mínimo conhecimento, é uma diretriz para o design de objetos. Segundo essa lei, um objeto deve limitar suas interações a um número limitado de "amigos íntimos" e evitar conhecer as estruturas internas de outros objetos.

Vou dar um exemplo de código JavaScript que viola a Lei de Demeter e depois mostrar como corrigi-lo. No exemplo, vamos considerar um objeto Carro que tem um objeto Motor:

function Carro() {
    this.motor = new Motor();
}

function Motor() {
@gpupo
gpupo / Intro.md
Last active May 17, 2023 18:17
Bash, um interpretador de comandos para sistemas operacionais Unix

Bash, um interpretador de comandos para sistemas operacionais Unix

Criei um documento para uso nas minhas aulas sobre Programação com foco em componentes de infraestrutura. É uma síntese de tópicos importantes que espero que seja útil para você.

Fique à vontade para explorar o conteúdo e utilize-o como um guia durante as aulas. Espero que aproveite e tenha uma ótima experiência de aprendizado!

O Bash (Bourne Again SHell) é um interpretador de comandos para sistemas operacionais Unix, como Linux e macOS. Ele fornece uma interface de linha de comando poderosa e flexível, permitindo que os usuários executem comandos e automatizem tarefas no sistema operacional.

Programação procedural