Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Debugging: Aprendendo com Nossos Erros e Acertos

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

ARTIGO ORIGINAL Técnico-Reflexivo

  • Por Ricardo Costa Val do Rosário, MD; PhD auxiliado por ChatGPT 5.0 Plus

Introdução

- No mundo da programação, debugging significa encontrar e corrigir erros. No entanto, este conceito 
vai além do código: é uma filosofia de vida. 

- Assim como médicos revisam diagnósticos e cientistas testam hipóteses, o profissional em IA aprende 
com falhas e sucessos para alcançar resultados melhores.

O Debugging na Computação

1. Definição: 
- Processo sistemático de identificação e correção de erros em sistemas.

2. Tipos de erros: 
- Sintáticos (quando o código não roda), 
- Lógicos (quando roda, mas dá resultado errado), 
- De execução (quando falha durante a operação).

3. Métodos: 
- Uso de logs, 
- Breakpoints, 
- Testes automatizados,
- Revisões por pares.

Exemplo - Erro de lógica em cálculo de IMC

  • Python
def calcular_imc(peso, altura):
    return peso / altura  # ERRO: faltou elevar altura ao quadrado

# Debugging: corrigindo o erro
def calcular_imc(peso, altura):
    return peso / (altura ** 2)

print(calcular_imc(70, 1.75))  # Resultado correto: ~22.86

- Aqui o erro lógico foi identificado com teste de valores reais e corrigido com 
uma linha simples.

O Debugging na Medicina e na Vida

- Na Medicina, o debugging equivale ao diagnóstico diferencial: um processo investigativo 
para isolar causas e corrigir condutas. 

- Assim como um sistema pode apresentar “erros de execução”, o corpo humano pode mostrar 
sintomas que precisam ser analisados com cuidado.

Exemplo prático com IA em saúde: Debugging em análise de sentimentos em prontuários

from sklearn.feature_extraction.text import CountVectorizer


# Erro: esquecer de tratar stopwords pode distorcer resultados
textos = ["Paciente triste e sem esperança", "Paciente feliz e otimista"]
vetor = CountVectorizer()  # ERRO: sem remover stopwords

X = vetor.fit_transform(textos)
print(vetor.get_feature_names_out())

# Debugging: corrigindo com remoção de stopwords
vetor_corrigido = CountVectorizer(stop_words="portuguese")
X2 = vetor_corrigido.fit_transform(textos)
print(vetor_corrigido.get_feature_names_out())

- Com o debugging, removemos “ruídos” e obtemos sinais mais fiéis à realidade clínica

Aprendendo com Erros e Acertos

1. Erros ensinam humildade e mostram pontos cegos.
2. Acertos validam boas práticas e consolidam confiança.
- Em ambos os casos, o aprendizado é contínuo.
- Assim como um código precisa de comentários e logs, nossa vida profissional exige registro 
e reflexão.

Reflexões Finais

- Debugging não é apenas corrigir falhas, mas compreender o sistema em profundidade. 
seja um programa, um hospital, ou nossa própria trajetória. 

- O verdadeiro especialista aprende com os erros e celebra os acertos, sabendo que ambos 
são faces da mesma moeda: evolução.
“Na jornada do conhecimento, cada erro é um mestre, cada acerto é um aliado.”
2 respostas

Oi, Ricardo! Como vai?

Gostei da sua análise, principalmente quando você relacionou o debugging na programação com a prática médica e a vida profissional, mostrando como erros e acertos são oportunidades de aprendizado contínuo.

Sua abordagem é clara e didática. Uma dica simples é sempre criar pequenos testes para cada função ou etapa do código, como você fez com o cálculo do IMC e a análise de sentimentos. Isso ajuda a identificar rapidamente erros de lógica ou execução antes que se tornem problemas maiores.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
solução!

Cara Monalisa,
Sua análise foi tão importante para mim que gerou novos documentos que serão publicados. Corrigi o código, entendi a causa do erro, ampliei meu conhecimento e compartilhei com todos, afinal:
"Se sou capaz de ajudar, por que não fazer"
R. Costa Val