Akın Aydın

Engenheiro de software

Este é o lado técnico do akinaydin.com: como meus projetos são construídos, com diagramas e código dos repositórios.

  • Cofundador e líder técnico da FitEscala
  • Mestrado em Inteligência Artificial (Aprendizado de Máquina), Liverpool John Moores University. Média das disciplinas: 78,8%; resultado final pendente.
  • Liverpool, Reino Unido

Diagramas de arquitetura

Architecture console

No diagram yet

Architecture console, idle.

Ready. Type `help`, or tap a command.

Toque em um comando ou digite um. Tente “ls” para ver todos os diagramas, ou “source” para ver o código do próprio console.

Artigos sobre os projetos

Seis projetos a fundo. Cada um mostra o problema, como foi construído, as decisões importantes e código do repositório.

Uma rede neural no seu navegador

Uma rede neural pequena, escrita do zero em TypeScript, sem nenhuma biblioteca de machine learning. Ela aprende a separar duas meias-luas entrelaçadas usando só o tempo livre do seu navegador. Clique em Grad check para comparar os gradientes escritos à mão com uma estimativa numérica.

Neural net, 1218 parameters

Layers 2-32-32-2 · tanh and softmax · SGD with momentum

Step
0
Loss
n/a
Train acc
0.0%
Params
1218
Budget
Idle frames only

Training idle at step 0.

Projetos menores

Sites para clientes, experimentos e trabalhos da faculdade, com poucas frases cada.

Sites para clientes

  • Anamaria Andrei

    Conceito

    Quatro propostas de loja online para uma artesã de Oxford que faz velas à mão, cada uma seguindo uma direção diferente. Uma delas tem uma vela 3D que você pode acender.

    HTML · Three.js · GSAP · Lenis

  • Yağız Cem Yılmaz

    No ar

    Um portfólio de várias páginas para um professor de música, músico de palco e regente de coral em İzmir: uma história em três partes contada pelo scroll, tipografia em movimento e uma cena WebGL opcional, com todo o conteúdo em um único arquivo de perfil verificado.

    Next.js 16 · React 19 · Motion · anime.js · React Three Fiber

    yagizcemyilmaz.com
  • Tiyatro Fısıltı

    No ar

    Um site em PHP com painel de administração para a companhia de teatro do Kuluçka Kahve Sanat, um café com palco em İzmir: programação, peças, blog, equipe e galeria, com dados de eventos para os buscadores. O painel tem autenticação por sessão, proteção contra CSRF, rate limiting e upload de imagens com uma allowlist de tipos MIME. O deploy é feito em hospedagem compartilhada, sem etapa de build.

    PHP · SQLite or MySQL · JavaScript

    kuluckakahvesanat.com
  • CIBES Research Centre

    No ar

    O site público do centro de pesquisa, mais as campanhas de anúncios do congresso na Meta Marketing API, que são o assunto da primeira nota abaixo.

    React · Vite · Tailwind · Meta Marketing API

    cibesresearch.org
  • Phinova Clinics

    Demo entregue

    Uma demo que refaz o site de página única de uma clínica como uma plataforma em nove idiomas: páginas de tratamentos e de profissionais, um assistente guiado que orienta o paciente, com consentimento, números de protocolo e encaminhamento para o WhatsApp, além de hreflang, um sitemap e JSON-LD.

    Next.js · Tailwind · Resend

  • Ogün Aslan

    Pronto

    Um site para um produtor musical, músico de palco e professor: páginas de produção, palco e aulas, além de um blog em turco com artigos estruturados, feito a partir do currículo e de entrevistas do produtor.

    Next.js · TypeScript

  • Maske Sanat Tiyatro

    Pronto

    Um site para um teatro e café independente de 50 lugares em Bornova. Cada informação remete a uma fonte em um arquivo de pesquisa, então a programação pode ser conferida de novo antes de publicar.

    Vite · HTML

  • Emir Özeren

    Fora do ar

    Um site acadêmico pessoal para um professor associado, com currículo, publicações e notas. Hoje está fora do ar.

    Astro

Produtos e experimentos

  • Anı Defteri

    Feito para um casamento de verdade

    Um web app de livro de mensagens para casamentos. Os convidados escaneiam um QR code e deixam um recado e até três fotos. Os noivos escolhem o que vai para o mural compartilhado e para um livro em PDF que eles podem baixar.

    Next.js · Supabase · React PDF

  • Charisma AI

    Descontinuado

    Um SaaS completo que mantive no ar por um tempo como projeto paralelo: entram uma selfie e um questionário, sai um perfil de carisma pontuado pelo Gemini, com plano de coaching, check-ins diários, um coach de IA para conversar, planos no Stripe e e-mails de lembrete. Tirei do ar de propósito; os padrões de cobrança e de pontuação dele foram para produtos posteriores.

    Next.js · Supabase · Gemini · Stripe · Resend

  • Automação para YouTube

    Engavetado

    Entra um prompt, sai um vídeo publicado: roteiro, imagens das cenas, narração com timestamps por palavra, vídeo, render no Remotion, SEO, thumbnail e upload. Cada etapa grava sua saída em disco, então uma execução que falhou é retomada a partir da etapa que falhou. Funcionava; engavetei porque tirava o foco dos produtos de verdade.

    TypeScript · Gemini · fal.ai · ElevenLabs · Remotion · YouTube API

  • Tatil Radar

    Pronto

    Calcula quanto custa de verdade uma noite no litoral de İzmir (hotel, jantar, praia e sair à noite) por região, e compara um mesmo hotel em 13 canais de venda. Cada link de hotel é verificado, e o que não foi verificado aparece marcado como tal.

    Next.js · TypeScript

  • Hands-Free Chords

    Protótipo funcional

    A webcam rastreia as duas mãos. Cada mão tem um menu radial, a nota fundamental à esquerda e o tipo de acorde à direita, e um gesto de pinça toca o acorde em uma DAW por uma porta MIDI virtual. Uma versão web está em andamento.

    Python · MediaPipe · OpenCV · mido

  • MOKOKO

    Pronto

    Um jogo de palavras em turco, com três rodadas, no navegador, com a lógica do jogo e as regras das palavras cobertas por testes unitários.

    React 19 · Vite · Vitest

  • Pipeline de conteúdo para o LinkedIn

    Em uso

    Um arquivo de marca, uma lista de pesquisa e uma fila de conteúdo. O Claude escreve duas versões, eu aprovo uma e ela é publicada pela API oficial do LinkedIn. Nada sai sem a minha aprovação.

    Claude · LinkedIn API · Markdown

  • HorrorGuess

    Pronto, não publicado

    Um jogo de adivinhação de terror em turco, feito com um amigo em dois dias. O modelo escreve uma história de fantasmas seguindo regras do tipo deve, pode e não pode, com a saída forçada por um schema, e o jogador adivinha qual de vinte criaturas ela descreve.

    React · Vite · TypeScript · OpenAI

  • Chordinia

    Pausado

    Um assistente de acordes e letras com um núcleo de teoria musical de verdade em Dart puro (parsing de acordes, detecção de tom, transposição com um toque, análise de afinação em tempo real), além de reconhecimento de músicas e letras. Pausado enquanto o Pistochia é lançado.

    Flutter · Supabase · ACRCloud · Genius API

  • Kuluçka Vampir Köylü

    Descontinuado

    Um app para noites de Lobisomem em um café: os jogadores entram com um QR code e recebem cartas de personagem que se revelam com um toque, as ações noturnas são resolvidas na tela do moderador e os votos ao vivo sincronizam em todos os celulares. Quem vê o quê é garantido pela row-level security, não pelo app. As noites do café funcionavam bem com cartas de papel, então ele foi descontinuado.

    Next.js · Supabase Realtime · Row-level security

  • aifindsit

    Workflow pronto

    Um bot de DM do Instagram feito como um workflow do n8n: uma mensagem chega por um webhook, o produto é buscado e a resposta leva um link para ele.

    n8n · Instagram Graph API

Universidade e código aberto

  • FlexFlow

    TCC, descontinuado

    Meu TCC na Yaşar University, em uma equipe de três: um app de fitness que conecta quem frequenta academia a personal trainers, com planos de treino e de dieta, academias próximas em um mapa, um coach de IA e controle de calorias. Eu fiz o app mobile; um colega de equipe fez o backend em NestJS.

    React Native · Expo · Firebase · NestJS · PostgreSQL

  • Smart Bed

    Protótipo, apresentado

    Uma cama hospitalar construída por equipes mistas de estudantes da Yaşar University e da Penn State Abington em três dias (março de 2024). Sensores na cama e uma câmera com IA monitoram o paciente e, quando ele começa a se levantar, uma unidade de parede avisa no celular da equipe de enfermagem antes de uma queda. Foi apresentada à Bordatech e saiu no site de notícias da universidade.

    M5Stack · MicroPython · AI camera

  • Venda de passagens aéreas com um assistente de IA

    Trabalho da faculdade, feito em dupla

    Uma API de passagens (voos, compra, check-in, auth com JWT) atrás de um gateway em Express com rate limit por IP, além de um assistente que responde em linguagem simples chamando os mesmos endpoints públicos que qualquer outro cliente. Os repositórios ficam no GitHub da minha dupla.

    .NET 8 · EF Core · Azure SQL · Express · OpenAI

  • Microsserviços de reserva de hotel

    Trabalho da faculdade, feito em dupla

    Sete serviços atrás de um único gateway (admin, busca, reservas, comentários, notificações e um agente de linguagem), cada um com o armazenamento que faz sentido para ele: Postgres para as reservas, MongoDB para as avaliações, Redis para o cache e uma fila de mensagens para os e-mails.

    Node.js · Express · PostgreSQL · MongoDB · Redis · RabbitMQ · Docker Compose

  • MiroFish, um fork com acréscimos

    Contribuição

    Acréscimos ao MiroFish, um motor de previsão multiagente de código aberto: um backend de memória plugável (Zep Cloud, ou Graphiti com Neo4j no seu próprio servidor), um monitor de custos em dólares, em tempo real, que interrompe uma execução ao atingir um limite definido, um watchdog para os processos e um botão de parada de emergência. O motor em si é trabalho do upstream; só esses acréscimos são meus.

    Python · FastAPI · Graphiti · Neo4j · Vue

Habilidades, conforme o quanto eu uso cada uma

Sem estrelas, só a frequência com que cada uma aparece no trabalho real e onde você pode vê-la.

HabilidadeFrequênciaOnde aparece
JavaScript, TypeScript e Node.jsDiariamenteA maior parte do que está neste site roda nisso. Malton London Press
Next.js, React e SupabaseDiariamenteResearchGo, Ürünereklam, Malton London Press, vários sites de clientes e os meus dois sites. ResearchGo
SQL, design de APIs, CI/CD e GitDiariamenteUsado em todos os projetos. Migrations, checagens de banco de dados e pipelines de deploy aparecem nos artigos. Malton London Press
Python: pipelines de dados, scraping e machine learningEm produçãoO motor de leads da FitEscala, o worker de parsing do ResearchGo e minha dissertação de mestrado (modelos clássicos, ensembles e transformers, além de métricas de explicabilidade). Dissertação de mestrado: detecção explicável de phishing escrito por IA
React Native e ExpoEm produçãoFlexFlow, meu TCC com Firebase, e Pistochia, offline-first sobre SQLite com edge functions do Supabase. Pistochia
WebGL e Three.js (React Three Fiber)Em produçãoA letra 3D do akinaydin.com, com um contexto WebGL que se reconstrói sozinho quando a GPU o descarta. akinaydin.com
Meta Marketing API e campanhas de anúnciosEm produçãoUma campanha de congresso que passou de gastar às cegas para um custo por lead medido. A história está nas notas abaixo.
Playwright e automação de navegadorEm produçãoO pipeline de conteúdo para o LinkedIn.
AcessibilidadeEm produçãoO site de um projeto cofinanciado pela UE para pessoas que usam língua de sinais, feito para uma associação de educação especial em 2024 e 2025.
C, C++, C#, Java, Flutter e IoTOcasionalUso real, não diário: a cama inteligente rodava MicroPython em um M5Stack, o Chordinia é em Flutter e o sistema da companhia aérea é em .NET.

Notas de engenharia

Coisas que deram errado em projetos reais, e o que eu mudei.

2026.06

A campanha de anúncios que não conseguia ver o próprio objetivo

Um congresso precisava de inscrições, então a conta de anúncios rodou uma campanha de conversão. Só que nenhum evento de inscrição estava conectado ao pixel. A Meta otimiza para o que consegue ver, e ela não via nada, então um público semelhante gastou a maior parte do orçamento em três países que geraram milhares de cliques e nenhuma inscrição.

Um público mais esperto não teria resolvido isso. Mudar para os formulários de lead da própria Meta deu ao algoritmo um evento real para mirar, e a mesma conta começou a trazer acadêmicos qualificados a um custo por lead bem abaixo do valor habitual para B2B na UE. Os números medidos estão no relatório final; eu os deixo fora desta página de propósito.

Desde então, antes de ajustar uma campanha, confiro se ela consegue mesmo ver o resultado que eu quero.

2026.07

Os reflexos que derrubaram a GPU

O akinaydin.com tem uma letra 3D reflexiva que capta a luz do ambiente ao redor. A primeira versão renderizava o ambiente de novo e o passava pela geração PMREM a cada frame, então os reflexos estavam sempre atualizados. Num notebook rápido, parecia tudo bem. Em hardware comum, a aba perdia o contexto WebGL no meio do scroll, e a letra apagava.

Agora o ambiente é renderizado uma única vez, quando a página carrega. Contextos continuam se perdendo em dispositivos reais, então a página reconstrói o canvas automaticamente quando isso acontece, em vez de deixar um quadro morto para trás.

2026.07

Por que a rede neural treina devagar de propósito

A rede neural desta página poderia treinar muito mais rápido em um web worker sem throttle. Ela não faz isso, de propósito: quem passa rolando a página nunca deveria ver um frame perdido porque uma rede está treinando em segundo plano.

Por isso o treinador dá alguns passos de gradiente só quando o navegador tem tempo sobrando, em idle callbacks e em pequenas fatias de um frame, e nenhum quando ele está ocupado. A curva de perda demora mais para cair, e a página continua fluida.