Acordei e o texto já tinha saído
Uma manhã acordei mais cedo que o normal e, ainda na cama, vi que o texto terminado na noite anterior já estava publicado. Não tinha lembrança de ter apertado nada. Escrevi, deixei anotado no registro e fui dormir.
No começo a sensação foi meio estranha. Eu partia do princípio de que colocar alguma coisa no mundo carrega sempre um momento em que alguém decide que sim, isso sai, e mexe o dedo. O que estava na minha frente era um texto publicado sem que ninguém tivesse assumido esse momento.
O que segurava esse momento no lugar de uma pessoa não era nenhum aparato grande. Era mais simples: o horário em si tinha sido entregue como dado.
Antes disso eu apertava o botão de publicar toda manhã. Relia o texto da véspera e, se estivesse bom, publicava. Só isso, e mesmo assim, nas manhãs com a agenda cheia, a coisa ia ficando para depois. Algumas vezes esqueci de vez e só me dei conta depois do meio-dia. Na hora em que eu terminava de escrever, de noite, a intenção era sair de manhã; a hora real de sair dependia de como a minha manhã andasse.
Quando um texto pronto entra no banco de dados — o registro onde as entradas ficam guardadas linha por linha —, o prazo entra junto com o corpo do texto. Amanhã de manhã, oito horas, escrito na mesma linha. Essa operação de acrescentar uma linha se chama INSERT.
Uma linha, vista por dentro, fica mais ou menos assim.
posts.insert({
title: "o título",
body: "o texto...",
status: "draft",
deadline: "2026-07-23 08:00",
hold_flag: false
})
Título, corpo, estado atual, a hora do prazo e a instrução de parar — hold_flag — ficam gravados na mesma linha horizontal. A instrução de parar entra desde o início, desligada. O prazo está posto às oito da manhã seguinte porque assim uma noite inteira se intromete sozinha entre terminar e sair. Em vez de deixar o texto sair no momento seguinte, com o embalo da escrita ainda em cima, botei o prazo do outro lado de uma noite.
Dava para ter posto o prazo fora dessa linha. Uma agenda separada, uma planilha de acompanhamento: era possível. Só que aí o texto e o prazo dele passam a morar em lugares diferentes, e sobra espaço para reescrever um e deixar o outro velho.
O conteúdo do texto e a hora do prazo não moram em lugares separados. Os dois estão gravados na mesma linha, um do lado do outro. Reescrever é mexer nessa linha e em mais nenhuma.
Teve uma época em que eu anotava os prazos num caderninho à parte. Reescrevi um texto, empurrei a publicação um dia, e a data do caderninho ficou do jeito que estava. Ao reabrir depois, diante de um prazo ainda escrito ali que já devia ter sido cumprido, fiquei um instante sem saber se aquele texto tinha saído ou não. Quando o texto e o prazo moram em lugares diferentes, esse descompasso aparece com bastante facilidade.
Depois que a linha está escrita, não sobra nada para uma pessoa guardar de cabeça. Não precisa carregar "amanhã às oito tem que publicar" nem na cabeça nem num alarme.
Tem uma conferência pequena que passa para olhar o registro em intervalo fixo. A cada cinco minutos ela percorre todas as linhas. Escrito na forma mínima, o que ela faz é isto.
UPDATE posts
SET status = 'published'
WHERE deadline < now()
AND hold_flag = false
Quando acha uma linha cuja hora de prazo já passou e que não está com a instrução de parar, reescreve o estado daquela linha para publicado. A instrução de parar fica na mesma linha do prazo, então não tem outro lugar para ir procurar. Essa conferência não lê em momento nenhum o que o texto diz. Ela põe uma hora ao lado de outra hora e compara. Mais nada.
Prazo, normalmente, fica guardado na memória de alguém ou na agenda de alguém. Prazo que mora dentro de uma cabeça é esquecido, é empurrado para depois, estica conforme o ânimo do dia. Escrito na mesma linha do texto, deixa de ser lembrança e vira estado. Não dá mais para esquecer nem para empurrar.
Na época em que eu só carregava prazo na cabeça, ele esticava direto. "Amanhã cedo eu solto" virava "de manhã" quando a manhã chegava, depois "hoje ainda" quando a manhã já tinha passado, e teve dia em que levantei a cabeça e era fim de tarde. Ninguém ia me dar bronca, então para o lado de esticar não tinha fundo. Menos fraqueza de vontade, eu acho, e mais isto: enquanto o prazo estiver dentro da minha cabeça, eu consigo mexer nele para o meu lado o quanto quiser.
Como essa linha está lá, o texto sai quando a manhã chega. Ninguém precisa acordar cedo esperando. Termina de noite e o horário faz o trabalho. O que sobra para a pessoa vai na direção contrária: mexer na hora de quebrar a promessa, quer dizer, na hora em que quero parar. Querer parar é reescrever para true o hold_flag daquela linha. Só isso, e a conferência dos cinco minutos passa reto por ela. Em cima de um mecanismo que anda quando ninguém faz nada, uma mão só entra quando é preciso.
Os prazos começaram a ser cumpridos aqui, e não porque a minha vontade tenha ficado mais forte. O que se mexeu foi o lugar onde o prazo fica guardado: de dentro de uma cabeça para fora, para uma linha. Aquela surpresa da cama — já saiu — veio daí. Olhe menos para a sua força de vontade e mais para o lugar onde o seu próximo prazo está escrito.