Jul 18, 2026 em Programação, Web, Desempenho - Uma CDN guarda em cache o teu conteúdo estático em servidores espalhados pelo mundo, de modo que cada visitante o recebe de uma máquina próxima. Como funcionam o edge, o cache hit e miss, o TTL e a invalidação, estático vs dinâmico, e onde uma CDN encaixa com o teu alojamento.
Jul 16, 2026 em Programação, Data Structures - Uma hash table guarda pares chave-valor e encontra qualquer valor pela sua chave em tempo quase constante. Como funcionam a hash function e os buckets, como as colisões são tratadas, a complexidade real e porque os dicionários assentam nela.
Jul 14, 2026 em Programação, Algorithms - A notação Big O descreve como um algoritmo fica mais lento à medida que a entrada cresce. As complexidades comuns de O(1) a O(n!), porque se ignoram as constantes, exemplos reais e como raciocinar sobre o desempenho do seu próprio código.
Jul 13, 2026 em Security, Docker - Um bypass de autenticacao critico na imagem Docker oficial do Gitea (CVE-2026-20896, CVSS 9.8) esta sob exploracao ativa. O que e a falha, quem e realmente afetado e os passos exatos para verificar e corrigir um Gitea auto-hospedado.
Jul 10, 2026 em Open Source, Supply Chain - Grande parte da stack de software moderna assenta em pequenos projetos de código aberto tocados por uma ou duas pessoas não remuneradas. O que xkcd 2347, Heartbleed, Log4Shell e a porta dos fundos do xz-utils ensinam sobre o risco do mantenedor único, e o que as equipas podem realmente fazer a respeito.
Jul 9, 2026 em Programação, Architecture, Backend - Uma fila de mensagens é um buffer entre serviços: uma parte da sua app deixa uma tarefa e outra recolhe-a mais tarde. Producers vs consumers, pub/sub, garantias de entrega, e RabbitMQ vs Kafka vs Redis.
Jun 27, 2026 em Programação, DevOps, Containers - O Docker executa os contentores através de um daemon central; o Podman é sem daemon e rootless por conceção. Partilham imagens OCI e uma CLI quase idêntica. Arquitetura, segurança rootless, pods, systemd, Compose e a licença do Docker Desktop comparados.
Jun 26, 2026 em Programação, Servers, Networking - Um balanceador de carga distribui os pedidos recebidos por vários servidores para que nenhum fique sobrecarregado e a app continue online se um falhar. O que é, os algoritmos, L4 vs L7, os health checks e como difere de um proxy reverso.
Jun 26, 2026 em Programação, Web, Networking - Um WebSocket mantém uma ligação aberta para que o servidor e o navegador possam trocar mensagens a qualquer momento. O que é um WebSocket, como difere do HTTP, o handshake, ws vs wss, e quando usá-lo em vez de polling.
Jun 26, 2026 em Programação, Servers, Networking - Um proxy reverso fica à frente dos seus servidores, recebe cada pedido recebido e encaminha-o para o backend correto. O que é um proxy reverso, como difere de um proxy direto e de um balanceador de carga, para que serve (TLS, cache, encaminhamento) e as ferramentas comuns.
Jun 24, 2026 em Programação, Conceitos, Haskell - Uma função de ordem superior recebe uma função como argumento ou devolve uma como resultado. O que é uma função de ordem superior, por que map, filter e fold são os exemplos clássicos, como substituem os laços e como aparecem em Haskell.
Jun 23, 2026 em Programação, Conceitos, Compilador - Um compilador transforma o código-fonte que você escreve num programa que a máquina pode executar. O que é um compilador, como funciona etapa por etapa (análise léxica, sintática, otimização, geração de código), compilador vs interpretador, e onde o GHC se encaixa para Haskell.
Jun 22, 2026 em Programação, DevOps, Automation - O CI/CD automatiza o caminho de uma alteração de código até uma aplicação testada e implementada. O que significam integração e entrega/implementação contínuas, como funciona um pipeline, as ferramentas comuns e porque as equipas o usam.
Jun 22, 2026 em Programação, Servers, Security - SSH (Secure Shell) é o protocolo cifrado que usa para iniciar sessão e executar comandos num servidor remoto com segurança. Como funciona, palavra-passe vs chaves SSH, os comandos do dia a dia e onde o encontra.
Jun 19, 2026 em Programação, Hosting, Infrastructure - Um VPS é a sua fatia isolada de um servidor físico, com recursos dedicados e acesso root completo. Como funciona a virtualização, VPS vs partilhado/dedicado/cloud, gerido vs não gerido e para que serve.
Jun 19, 2026 em Programação, DevOps, orchestration - O Kubernetes é um sistema open source que executa e coordena contentores em muitas máquinas - agendamento, escalonamento, recuperação e rede. Os conceitos centrais (pod, nó, cluster, deployment, serviço), a sua relação com o Docker e quando precisa mesmo dele.
Jun 19, 2026 em Programação, DevOps, containers - O Docker empacota uma aplicação e tudo o que ela precisa num contentor que corre da mesma forma em qualquer máquina. Contentores vs máquinas virtuais, os conceitos chave (imagem, contentor, Dockerfile, registry) e Docker vs Kubernetes.
Jun 18, 2026 em Programação, Ferramentas, Beginners - Um IDE reúne editor de código, ferramentas de build, depurador e controlo de versões numa só aplicação - para escrever, executar e corrigir num só lugar. O que inclui, IDE vs editor e como escolher.
Jun 18, 2026 em Programação, Dados, Bases de dados - As bases SQL guardam dados estruturados em tabelas relacionadas, com esquema fixo e forte consistência; o NoSQL troca parte disso por esquemas flexíveis e escalonamento horizontal. Consistência, escalonamento, consulta e qual escolher.
Jun 18, 2026 em Programação, Web, APIs - O REST usa HTTP + JSON (legível, universal); o gRPC usa HTTP/2 + Protocol Buffers (rápido, tipado, streaming) para chamadas entre serviços. Desempenho, streaming, suporte do navegador e qual escolher.
Jun 17, 2026 em Programação, Web, APIs - REST e GraphQL são duas formas de construir uma API web: o REST usa muitos endpoints com respostas fixas; o GraphQL um único endpoint onde o cliente pede exatamente os campos de que precisa. Over/under-fetching, cache e qual escolher.
Jun 17, 2026 em Programação, Web, Conceitos - Um webhook é um pedido HTTP automático que um serviço lhe envia quando ocorre um evento - o contrário de uma chamada a uma API que você faz. Em que difere do polling de uma API, como recebê-lo em segurança e exemplos reais (Stripe, GitHub, Slack).
Jun 15, 2026 em Programação, Conceitos - Uma variável é um contentor com nome que guarda um valor que o seu programa pode ler e alterar. Como a declarar e atribuir, tipos e âmbito, constantes vs variáveis e por que são os blocos de qualquer programa.
Jun 15, 2026 em Programação, Dados, Bases de dados - Uma base de dados é uma coleção organizada de dados, gerida por software que permite armazená-los, consultá-los e atualizá-los de forma fiável. Relacional vs NoSQL, conceitos chave (tabelas, esquema, ACID), exemplos reais e a sua relação com o SQL.
Jun 14, 2026 em Programação, Dados, Bases de dados - O SQL é a linguagem padrão para armazenar, consultar e alterar dados em bases de dados relacionais. Os comandos chave (SELECT, INSERT, UPDATE, DELETE), como funciona uma consulta, SQL vs NoSQL e por que continua essencial em 2026.
Jun 14, 2026 em Programação, Ferramentas, Fluxo de trabalho - O Git é um sistema de controlo de versões distribuído que regista cada alteração ao seu código para ramificar, fundir, colaborar e desfazer. Os conceitos chave (commit, ramo, merge, remote), o fluxo de trabalho diário e a diferença em relação ao GitHub.
Jun 14, 2026 em Programação, Conceitos - Um algoritmo é um procedimento finito, passo a passo, que transforma uma entrada numa saída. As suas propriedades chave, exemplos do dia a dia e em código, por que importa a eficiência (Big-O) e a sua diferença em relação a um programa.
Jun 14, 2026 em Programação, Web, Dados - O JSON é um formato de texto leve e legível para dados estruturados - a língua que a maioria das APIs web e ficheiros de configuração fala. A sua sintaxe, por que está em todo o lado, a comparação com XML e os seus limites honestos.
Jun 14, 2026 em Programação, Web, Conceitos - Uma API é um contrato que permite a um software comunicar com outro. Os principais tipos (web/REST, biblioteca, SO), como funcionam um pedido e uma resposta web e por que as APIs estão em todo o lado no software moderno.
Jun 14, 2026 em Haskell, Conceitos - O Haskell é uma linguagem puramente funcional, de tipagem estática e preguiçosa, com uma poderosa inferência de tipos. As ideias que a definem - pureza, imutabilidade, preguiça, tipos fortes -, para que serve e como começar.
Jun 14, 2026 em Haskell, Sintaxe - Uma list comprehension constrói uma lista a partir de geradores com guardas opcionais - concisa e próxima da notação de conjuntos. Sintaxe, geradores múltiplos, guardas e a sua relação com map e filter.
Jun 14, 2026 em Haskell, Conceitos - O Haskell calcula um valor apenas quando este é realmente necessário. O que é a avaliação preguiçosa, os thunks, as estruturas infinitas, a armadilha das fugas de memória e forçar a avaliação estrita com seq e BangPatterns.
Jun 14, 2026 em Haskell, Conceitos - Uma mónada encadeia cálculos que transportam contexto - Maybe, Either, IO, listas. O que é na realidade, bind (>>=) e return e a notação do, com clareza.
Jun 14, 2026 em Haskell, Compilador - O que é o GHC, a sua instalação com o GHCup, o uso do GHCi, as flags que importam (-O2, -Wall, -threaded, -j) e como se articula com o Cabal e o Stack.
Jun 14, 2026 em Haskell, Editor - O que faz o HLS, a sua instalação com o GHCup, a integração no VS Code e no Neovim, o ajuste ao seu GHC e como corrigir os erros habituais.
Jun 14, 2026 em Haskell, Toolchain - O GHCup é a forma recomendada de instalar o GHC, o Cabal, o Stack e o HLS em 2026 - instalação limpa, mudança de versão e as armadilhas típicas para iniciantes.
Jun 14, 2026 em Haskell, Cabal, Build - O Cabal e o Stack são as duas principais formas de construir projetos Haskell. O que é cada um, em que diferem (Hackage vs Stackage, reprodutibilidade, gestão do GHC), os comandos equivalentes e como escolher em 2026.
Jun 13, 2026 em Haskell, Cabal, Build - A ideia de isolamento por projeto venceu de forma tão completa que se tornou invisível. O que eram as sandboxes e o fluxo de build do Cabal ao estilo nix que as substituiu.
Jun 13, 2026 em Haskell, Cabal, Build - Builds ao estilo nix, Backpack, o operador caret e um solver melhor - o que a 2.0 introduziu e onde está cada funcionalidade no toolchain de 2026.
Jun 13, 2026 em Haskell, Desempenho - Por que um build é um grafo de dependências, como os builds com -j usam os seus núcleos e a solução moderna por semáforo de jobs contra a sobrecarga em árvores de dependências amplas.