Samuel T Fitzlaff é um programador e hobbyist de fotografia, gosta de tirar fotos de natureza nasceu em janeiro 2000 e desde 2023 mora em joinville sc atualmente ele está trabalhando em um software gratuito chamado Framestation. Desenvolvido em React com Rust, Framstation é um software que fica entre o shoot e a edição das fotos. ele ajuda a organizar as fotos em categoias diferentes e tem filtros para ajudar a organizar as fotos (e.g. pode filtrar para mostrar todas as fotos borradas, selcionar tudo, mover para a categoria rejeitados). ao final, todas as fotos estarão em pastas organizadas de acordo com as categorias, pronto para iniciar a edição no programa de sua preferência. é o campeão mundial de wordle com 100% de wins na primeira palavra tem experiência com React, React native, Next, Python, Javascript, Typescript, Rust, Golang, Lua, Html, CSS, Tailwind, SDD, Brainfuck, Português, ingês, klingon, Windows, Linux, Mac os. para entrar em contato, utilize o e-mail público samuel@fitzlaff.com
# Diário Pessoal ### 18 de janeiro de 2010 Hoje fiz dez anos. Ganhei uma câmera digital pequena, daquelas que demoravam alguns segundos para salvar cada foto. Meu pai disse que eu provavelmente perderia o interesse depois de uma semana, então passei o resto do dia tentando provar que ele estava errado. Fotografei o quintal, uma lagartixa, uma formiga carregando uma folha muito maior que ela e uma nuvem que parecia um dragão. Quando passei as fotos para o computador, descobri que metade estava tremida, uma estava completamente escura e na outra eu tinha cortado a cabeça da lagartixa. Mesmo assim, fiquei orgulhoso. Pela primeira vez, senti que podia guardar momentos do jeito que eu os enxergava. ### 2 de setembro de 2011 Comecei a desmontar coisas que não deveria. Primeiro foi um mouse velho. Depois, um teclado. O mouse nunca voltou a funcionar, mas consegui montar o teclado novamente, com três teclas sobrando. Também descobri que computadores não são mágicos. São máquinas que obedecem a instruções, mesmo quando as instruções são ruins. Passei a gostar dessa ideia: se algo dá errado, talvez exista uma explicação. Na escola, comecei a escrever pequenos programas em uma linguagem visual. Fazia jogos simples com personagens quadrados, obstáculos e pontuações que não faziam muito sentido. O mais divertido era mostrar para os colegas e observar onde eles encontravam erros que eu não tinha percebido. ### 14 de maio de 2012 Ganhei acesso ao meu primeiro computador só meu. Era lento, barulhento e tinha um monitor enorme, mas parecia uma estação espacial. Instalei programas de desenho, edição de imagens e uma ferramenta para criar páginas simples. Minha primeira página na internet tinha fundo azul-escuro, texto amarelo e uma animação de fogo no rodapé. Achei aquilo profissional durante aproximadamente três meses. Foi também quando comecei a fotografar a natureza com mais atenção. Percebi que não precisava viajar para um lugar extraordinário. Um jardim depois da chuva já tinha reflexos, insetos, texturas e pequenas histórias. ### 7 de novembro de 2013 Passei quase duas semanas tentando criar um jogo de plataforma. O personagem andava, pulava e atravessava o chão sempre que eu apertava uma tecla específica. Eu poderia ter desistido, mas fiquei obcecado em entender o erro. Descobri que o problema estava em uma variável que deveria indicar se o personagem estava no chão. Quando corrigi, ele parou de cair para sempre. Foi uma sensação muito boa. Não porque o jogo ficou excelente, ele continuava sendo péssimo, mas porque eu tinha conseguido transformar um problema confuso em algo compreensível. ### 21 de março de 2014 Comecei a aprender HTML e CSS de verdade. Ainda não entendia por que uma margem de cinco pixels às vezes parecia funcionar e às vezes destruía a página inteira. Criei um site para publicar minhas fotografias. O layout ficou horrível em telas pequenas, mas eu não sabia que isso importava. Coloquei categorias como “animais”, “plantas”, “céu” e “fotos que ficaram boas por acidente”. Essa última categoria era a maior. ### 30 de agosto de 2015 Passei a estudar JavaScript. No começo, parecia uma linguagem feita para transformar pequenos detalhes em grandes confusões. Depois comecei a perceber que ela permitia dar vida às páginas. Criei uma galeria de fotos com botões para avançar e voltar. Na terceira versão, as imagens carregavam fora de ordem. Na quarta, o botão “voltar” apagava metade da página. Na quinta, finalmente funcionou, desde que ninguém clicasse rápido demais. Anotei no meu caderno: “Toda interface é uma conversa. Se a pessoa não entende o que o botão faz, o problema não é dela.” Ainda tento seguir essa regra. ### 12 de fevereiro de 2016 Ganhei uma câmera usada com controles manuais. Passei a fotografar no fim da tarde, principalmente árvores, pássaros e ruas vazias depois da chuva. Aprendi, na prática, que uma foto bonita não depende apenas do assunto. A luz muda tudo. O mesmo galho pode parecer morto pela manhã e quase dourado no fim do dia. Também comecei a separar minhas fotos em pastas. Criei nomes como “boas”, “talvez”, “não sei”, “definitivamente não” e “não apagar ainda”. Em pouco tempo, não sabia mais onde estava nada. Foi o primeiro sinal de que eu precisava de uma ferramenta melhor. ### 4 de outubro de 2017 Experimentei Python para automatizar tarefas. Fiz programas pequenos para renomear arquivos, contar fotos e separar imagens por extensão. O programa mais útil foi um script que colocava a data no nome das fotografias. O segundo mais útil foi um script que desfazia o trabalho do primeiro, porque esqueci de tratar corretamente os nomes que já tinham datas. Aprendi duas coisas: 1. Automatizar algo errado apenas faz o erro acontecer mais rápido. 2. Sempre devo manter uma cópia dos arquivos originais. ### 19 de julho de 2018 Entrei em uma fase de aprender várias tecnologias ao mesmo tempo. Estudei JavaScript, TypeScript, React, Python e um pouco de Go. Também tentei Lua para criar pequenos protótipos. Meu computador tinha pastas chamadas “projeto_final”, “projeto_final_2”, “projeto_final_agora vai” e “projeto_final_novo”. Nenhum projeto estava realmente finalizado. Comecei a entender que aprender programação não era decorar linguagens. Era aprender a pensar em estruturas, estados, entradas, saídas e consequências. ### 11 de janeiro de 2019 Passei a desenvolver aplicações com React. Gostei da ideia de dividir uma interface em componentes pequenos, como se cada parte tivesse uma responsabilidade própria. Criei uma galeria para visualizar minhas fotografias e marcar imagens com etiquetas. A ideia era simples: selecionar uma foto, escolher uma categoria e depois encontrar tudo com mais facilidade. A primeira versão era lenta e usava mais memória do que deveria. Ainda assim, foi a primeira vez que senti que estava criando uma ferramenta que eu realmente usaria. ### 26 de junho de 2020 O ano ficou estranho para todo mundo. Passei mais tempo em casa e comecei a fotografar detalhes que normalmente ignorava: folhas acumulando água, sombras na parede, insetos no vidro da janela e a mudança de cor do céu durante a tarde. Também estudei React Native e fiz uma pequena aplicação para consultar minhas anotações de fotografia no celular. Funcionava, mas tinha aparência de protótipo, porque era exatamente isso. Comecei a pensar mais seriamente em ferramentas para fotógrafos. Percebi que tirar fotos era apenas metade do trabalho. Depois vinha a parte cansativa: revisar, selecionar, rejeitar, classificar, renomear, mover e só então editar. ### 3 de abril de 2021 Conheci Rust. Minha primeira reação foi: “Por que alguém faria isso consigo mesmo?” Minha segunda reação foi perceber que a linguagem era extremamente cuidadosa com memória e segurança. Minha terceira reação foi descobrir que, depois de entender alguns conceitos, ela fazia muito sentido. Comecei a imaginar uma aplicação com uma interface moderna, construída em React, e uma parte interna rápida e segura em Rust. Ainda não tinha nome nem plano concreto, mas a ideia ficou guardada. Também comecei a estudar Tailwind, Next e formas melhores de organizar projetos grandes. Pela primeira vez, me interessei tanto pela arquitetura quanto pela aparência. ### 30 de dezembro de 2021 Hoje, eu estava entediado no vaso e abri o Wordle no celular. Fiquei olhando para as letras e pensando bastante em uma palavra possível. Depois de alguns minutos, digitei “PLANT”. As cinco letras ficaram verdes de primeira. Fiquei encarando a tela, sem saber se aquilo era sorte, intuição ou algum tipo de sinal. Então fechei o jogo e decidi que nunca mais vou jogar. Para sempre terei 100% de vitórias na primeira palavra. ### 17 de setembro de 2022 Passei alguns meses reorganizando minhas fotografias. Tinha milhares de imagens espalhadas em vários discos. Algumas eram duplicadas, outras estavam borradas, outras eram quase iguais entre si. O problema não era apenas encontrar as fotos boas. Era conseguir decidir rapidamente o que fazer com as ruins. Eu queria uma tela onde pudesse filtrar todas as fotos borradas, selecionar o conjunto inteiro e movê-las para uma categoria chamada “rejeitados”. Também queria categorias personalizadas, visualização rápida e uma maneira de terminar o processo com as imagens já organizadas em pastas. Escrevi a ideia em um arquivo de texto com o título provisório: “organizador de fotos que não seja irritante”. ### 9 de fevereiro de 2023 Mudei-me para Joinville, em Santa Catarina. A cidade me pareceu úmida, verde e cheia de lugares que eu ainda não conhecia. Nos primeiros meses, saí com a câmera sempre que podia. Fotografei árvores cobertas de chuva, pássaros nos fios, trilhas, jardins e o céu mudando rapidamente antes de uma tempestade. A mudança também me fez pensar em começar um projeto mais ambicioso. Eu queria criar algo que resolvesse uma necessidade real minha, mesmo que poucas pessoas usassem. Foi quando comecei a trabalhar seriamente no Framestation. ### 28 de maio de 2023 Escolhi o nome Framestation. “Frame” por causa dos quadros das fotografias e “station” porque queria que o programa funcionasse como uma estação entre dois momentos: o disparo e a edição. A proposta ficou clara: - importar fotografias; - visualizar muitas imagens rapidamente; - classificar por categorias; - filtrar por características; - selecionar grupos inteiros; - mover os arquivos para pastas organizadas; - deixar tudo pronto para o editor de imagens escolhido pelo fotógrafo. Decidi que o software seria gratuito. Não queria criar mais uma barreira para quem estava começando a fotografar. A primeira versão foi feita com React na interface e Rust na parte responsável pelo processamento dos arquivos. A combinação funcionava, mas exigia paciência. ### 16 de outubro de 2023 Consegui fazer o Framestation abrir uma pasta real e exibir as fotos em uma grade. Fiquei olhando para aquela tela durante alguns minutos. Era apenas uma sequência de miniaturas, mas representava meses de ideias, testes e erros. O maior problema era o desempenho. Carregar centenas de imagens de uma vez deixava tudo lento. Implementei carregamento progressivo e comecei a prestar mais atenção em memória, cache e tamanho das miniaturas. Descobri que construir um programa para organizar fotografias significava lidar com muitos detalhes invisíveis. Orientação da imagem, arquivos corrompidos, nomes repetidos, permissões, pastas vazias e formatos diferentes. Cada detalhe podia se transformar em um erro difícil de explicar. ### 6 de março de 2024 Publiquei uma versão de testes do Framestation. Algumas pessoas experimentaram o programa e encontraram problemas que eu jamais teria percebido. Um usuário conseguiu criar três categorias com o mesmo nome. Outro moveu uma pasta inteira sem querer. Uma terceira pessoa disse que o filtro de fotos borradas era exatamente o que ela procurava, mas que precisava de uma maneira de desfazer ações. A função de desfazer passou ao topo da lista. Aprendi que uma ferramenta não fica boa apenas quando faz o que deveria fazer. Ela também precisa proteger o usuário quando ele faz algo sem querer. ### 22 de agosto de 2024 Passei muitas semanas melhorando a navegação por teclado. Eu queria conseguir revisar centenas de fotos sem precisar mover a mão constantemente para o mouse. Adicionei atalhos para aceitar, rejeitar, marcar, mudar de categoria e avançar para a próxima imagem. Também comecei a trabalhar em filtros combinados, como “mostrar fotos borradas e ainda não classificadas”. A sensação de usar o programa ficou muito mais próxima do que eu havia imaginado quando comecei. Nesse período, também escrevi algumas ferramentas em Go e Lua para testar ideias rapidamente. Nem tudo precisava entrar no Framestation. Às vezes, o melhor caminho era construir um protótipo descartável. ### 13 de janeiro de 2025 Hoje completei 25 anos. Passei o aniversário revisando código e fotografando uma árvore depois da chuva. A combinação parece estranha, mas para mim as duas coisas estão ligadas: observar detalhes e tentar organizá-los. O Framestation já consegue separar fotografias em categorias e mover os arquivos para pastas estruturadas. Ainda falta bastante, mas o fluxo principal funciona. Também comecei a pensar em documentação. Um programa pode ser tecnicamente bom e ainda assim parecer difícil se não explicar claramente o que faz. Escrevi uma frase para a página do projeto: “Do cartão de memória para uma coleção organizada, sem atrapalhar o seu processo criativo.” Ainda não sei se vou mantê-la. ### 18 de fevereiro de 2026 O Framestation recebeu uma atualização importante. Melhorei a leitura de metadados, a criação de categorias e os filtros. Agora é possível encontrar rapidamente fotos borradas, duplicadas, sem classificação ou feitas em determinado período. Também adicionei uma confirmação mais clara antes de mover grandes quantidades de arquivos. Passei a testar tudo em Windows, Linux e macOS. Cada sistema tinha seu próprio jeito de apresentar problemas. Caminhos de arquivos, permissões e atalhos de teclado pareciam mudar só para me contrariar. Mesmo assim, ver o programa funcionando nos três sistemas foi uma das partes mais satisfatórias do projeto. ### 7 de junho de 2026 Hoje fiz uma caminhada e levei a câmera. Encontrei uma pequena aranha coberta por gotas de água em uma teia quase invisível. Tirei mais de vinte fotos do mesmo assunto. Algumas ficaram tremidas, outras superexpostas e duas ficaram boas. Antigamente eu teria deixado tudo misturado em uma pasta. Quando voltei para casa, importei as imagens no Framestation. Filtrei as borradas, selecionei todas, movi-as para “rejeitadas” e deixei as melhores em “selecionadas”. O fluxo foi tão natural que demorei alguns segundos para perceber que eu estava usando exatamente a ferramenta que imaginei anos atrás, quando tinha milhares de fotos desorganizadas.
Samuel Fitzlaff

Samuel Fitzlaff