Pular para o conteúdo principal

Postagens

Desenvolvimento e Tecnologia da Informação · desde 2008

Programação, tecnologia e outras conversas.

Agentes que não esperam você pedir: o preço da privacidade e da computação

Durante anos, assistente de IA foi uma coisa que ficava esperando você digitar. Você pergunta, ele responde, fim. A virada que está acontecendo agora é outra: agentes que ficam ligados o tempo todo, olham sua caixa de entrada, aprendem seus objetivos e saem fazendo coisas sem que ninguém peça. Em tese é ótimo. Na prática, abre uma conversa que a gente que trabalha com tecnologia precisa ter antes de liberar acesso a tudo. O que aconteceu No DevDay de 29 de setembro, a OpenAI apresentou os "Dots", agentes que ela descreve como sempre ligados. Cada um tem o seu próprio computador na nuvem, com navegador, e se conecta a milhares de aplicativos por plugins. Dá para conversar com ele pelo ChatGPT ou pelo Slack e pelo Teams, e ele toca vários projetos em paralelo. O primeiro Dot vem incluído nos planos Pro e Business Premium, e no plano Pro o recurso ainda não chegou ao Espaço Econômico Europeu, à Suíça e ao Reino Unido. Há uma camada de controle: regras para quando agir sozi...
Postagens recentes

Rate limiting em Minimal APIs com o middleware nativo do .NET

Toda API exposta na internet, mais cedo ou mais tarde, recebe um cliente que resolve chamar o mesmo endpoint mil vezes por segundo. Pode ser um bug num loop de retry, um script mal escrito ou alguém testando a sorte. Se você não tem nenhum limite, quem paga a conta é o banco, o CPU e os outros usuários. A boa notícia é que, desde o .NET 7, o rate limiting vem pronto no framework. Não precisa de pacote extra nem de biblioteca de terceiros. Neste post eu monto um exemplo pequeno com Minimal APIs, limite por IP, resposta 429 com Retry-After e testes de integração. A ideia central O middleware trabalha com dois conceitos: o limiter (o algoritmo: janela fixa, janela deslizante, token bucket ou concorrência) e a partição (quem está sendo limitado). Sem partição, o limite é global, e um cliente abusivo derruba o serviço para todo mundo. Particionando por IP, cada cliente tem o seu próprio balde. Você registra uma policy com nome e depois aplica nos endpoints que precisam. Endpoints...

Black October: a IA acelerou a caça às falhas, e a conta chegou

Outubro é, oficialmente, o Mês da Conscientização em Cibersegurança. Em 2026, ele ganhou um apelido bem menos simpático: Black October . Em poucos dias, a gente viu uma falha crítica no PHP descoberta com ajuda de IA, uma autoridade certificadora saindo do mercado por causa de chaves privadas que dava para adivinhar e uma biblioteca popular de IA distribuindo malware pelo PyPI. Se você trabalha com software e não precisou atualizar nada nas últimas semanas, ou teve muita sorte ou não olhou direito. O que aconteceu O episódio mais barulhento foi o PHP2Shell . Pesquisadores da Wiz, com apoio da OpenAI e da Calif, encontraram falhas de segurança de memória no núcleo do PHP, ligadas ao jeito como a linguagem lida com erros fatais, principalmente estouro de memória. Uma requisição que falha pode deixar um estado interno corrompido, que outra requisição reaproveita depois. O resultado é execução remota de código sem autenticação, com nota de severidade até 9.2. O detalhe que mais chama a...

Aplicação Flask usando Nginx e Gunicorn

Aplicação Flask usando Nginx e Gunicorn Se você já desenvolveu uma aplicação Flask básica, sabe que o servidor de desenvolvimento embutido não é ideal para produção. Ele não é projetado para lidar com altos volumes de tráfego ou conexões simultâneas. Para tornar sua aplicação Flask mais robusta e pronta para produção, podemos usar o Gunicorn como servidor de aplicação e o Nginx como proxy reverso. Neste artigo, vamos adaptar o exemplo anterior ( Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker ) para incluir o Nginx e o Gunicorn. O que são Nginx e Gunicorn? Gunicorn O Gunicorn (Green Unicorn) é um servidor de aplicação WSGI que roda aplicações Python como o Flask. Ele é eficiente e simples de configurar, lidando com múltiplas requisições ao mesmo tempo, algo que o servidor embutido do Flask não faz bem. Nginx O Nginx é um servidor web que atua como um proxy reverso. Ele recebe requisições HTTP e as encaminha ao Gunicorn. Além disso, o Nginx pode: Servir arquivos ...

Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker

Criando uma Aplicação CRUD com Flask, PostgreSQL e Docker Neste guia, vamos criar uma aplicação básica que acessa um banco de dados PostgreSQL e realiza operações CRUD (Create, Read, Update, Delete). Vamos usar Flask e executar tudo com Docker. Sem estilos ou extras, apenas o essencial. Estrutura do Projeto crud-app/ |-- app/ | |-- app.py | |-- templates/ | | |-- index.html | | |-- edit.html |-- Dockerfile |-- requirements.txt |-- docker-compose.yml Passo 1: Dependências Crie um arquivo requirements.txt com as seguintes linhas: Flask==2.2.2 Flask-SQLAlchemy==3.0.2 psycopg2-binary==2.9.3 Werkzeug==2.2.2 Passo 2: Aplicação Flask Arquivo app/app.py : from flask import Flask, render_template, request, redirect, url_for from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) # Configuração do banco de dados app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://user:password@db:5432/crud_db' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False db...

Criando sua Primeira Aplicação Web com Python e Docker

  Criando sua Primeira Aplicação Web com Python e Docker Hoje vamos fazer algo prático: criar uma aplicação web simples em Python usando Flask e executá-la dentro de um contêiner Docker. Se você não sabe exatamente o que é Docker ou Flask, não se preocupe! Vou explicar tudo de forma simples para que você consiga acompanhar sem problemas. O que é Docker? Docker é uma ferramenta que permite empacotar aplicações e suas dependências em contêineres, garantindo que elas funcionem da mesma forma em qualquer ambiente. Em outras palavras, com o Docker, você cria um ambiente isolado e padronizado para rodar suas aplicações. Como instalar o Docker Acesse o site oficial do Docker . Baixe e instale a versão apropriada para o seu sistema operacional (Windows, macOS ou Linux). Após a instalação, verifique se está tudo funcionando abrindo um terminal e executando: docker --version Se o Docker estiver instalado corretamente, ele vai exibir a versão instalada. O que é Flask? Flask é um m...

Python: Guia Técnico para Iniciantes e Desenvolvedores

  Python: Guia Técnico para Iniciantes e Desenvolvedores Se você quer mergulhar de vez no mundo do Python com uma abordagem mais técnica, este post é para você! Vamos falar sobre como configurar seu ambiente de desenvolvimento usando VS Code, entender a sintaxe da linguagem, aprender a trabalhar com classes, variáveis, métodos e explorar as principais estruturas de dados. No final, você terá uma base sólida para criar aplicações Python. Configurando o Ambiente no VS Code Para programar em Python, o VS Code é uma ótima escolha por ser leve, versátil e oferecer diversos recursos. Siga os passos abaixo para configurar: Instale o VS Code : Baixe e instale a versão mais recente do VS Code . Instale o Python : Baixe e instale o Python se ainda não o tiver. Extensão Python : No VS Code, acesse a aba de extensões e instale a extensão oficial "Python" da Microsoft. Configuração de Linting e Formatação : Recomenda-se instalar o pylint para linting e o black para formatação ...