Akın Aydın

Ingeniero de software

Esta es la parte técnica de akinaydin.com: cómo están construidos mis proyectos, con diagramas y código de los repositorios.

  • Cofundador y responsable técnico de FitEscala
  • Máster en Inteligencia Artificial (Aprendizaje Automático), Liverpool John Moores University. Media de las asignaturas: 78,8 %; resultado final pendiente.
  • Liverpool, Reino Unido

Diagramas de arquitectura

Architecture console

No diagram yet

Architecture console, idle.

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

Pulsa un comando o escribe uno. Prueba “ls” para ver todos los diagramas, o “source” para ver el código de la propia consola.

Artículos sobre los proyectos

Seis proyectos a fondo. Cada uno explica el problema, cómo está construido, las decisiones importantes y código del repositorio.

Una red neuronal en tu navegador

Una red neuronal pequeña, escrita desde cero en TypeScript sin ninguna librería de machine learning. Aprende a separar dos medias lunas entrelazadas usando solo el tiempo libre de tu navegador. Pulsa Grad check para comparar sus gradientes escritos a mano con una estimación 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.

Proyectos más pequeños

Webs para clientes, experimentos y trabajos de la universidad, en pocas frases cada uno.

Webs para clientes

  • Anamaria Andrei

    Concepto

    Cuatro propuestas de tienda online para una artesana de Oxford que hace velas a mano, cada una en una dirección distinta. Una tiene una vela en 3D que puedes encender.

    HTML · Three.js · GSAP · Lenis

  • Yağız Cem Yılmaz

    En línea

    Un portfolio de varias páginas para un profesor de música, músico de escenario y director de coro en İzmir: una historia en tres partes que avanza con el scroll, tipografía en movimiento y una escena WebGL opcional, con todo el contenido en un único archivo de perfil comprobado.

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

    yagizcemyilmaz.com
  • Tiyatro Fısıltı

    En línea

    Una web en PHP con panel de administración para la compañía de teatro de Kuluçka Kahve Sanat, un café con escenario en İzmir: programación, obras, blog, equipo y galería, con datos de eventos para los buscadores. El panel tiene autenticación por sesión, protección CSRF, rate limiting y subida de imágenes con una allowlist de tipos MIME. Se despliega en un hosting compartido sin paso de build.

    PHP · SQLite or MySQL · JavaScript

    kuluckakahvesanat.com
  • CIBES Research Centre

    En línea

    La web pública del centro de investigación, además de las campañas de anuncios del congreso en la Meta Marketing API, de las que trata la primera nota de abajo.

    React · Vite · Tailwind · Meta Marketing API

    cibesresearch.org
  • Phinova Clinics

    Demo entregada

    Una demo que rehace la web de una sola página de una clínica como una plataforma en nueve idiomas: páginas de tratamientos y de profesionales, un asistente guiado que orienta al paciente, con consentimiento, números de referencia y derivación a WhatsApp, además de hreflang, un sitemap y JSON-LD.

    Next.js · Tailwind · Resend

  • Ogün Aslan

    Terminado

    Una web para un productor musical, músico de escenario y profesor: páginas de producción, escenario y clases, además de un blog en turco con artículos estructurados, hecha a partir del currículum y de entrevistas del productor.

    Next.js · TypeScript

  • Maske Sanat Tiyatro

    Terminado

    Una web para un teatro-café independiente de 50 butacas en Bornova. Cada dato remite a una fuente en un archivo de investigación, así que la programación se puede volver a comprobar antes de publicarla.

    Vite · HTML

  • Emir Özeren

    Fuera de línea

    Una web académica personal para un profesor titular, con currículum, publicaciones y notas. Ahora está fuera de línea.

    Astro

Productos y experimentos

  • Anı Defteri

    Hecha para una boda de verdad

    Una aplicación web de libro de firmas para bodas. Los invitados escanean un código QR y dejan un mensaje y hasta tres fotos. Los novios eligen qué va al muro compartido y a un libro en PDF que pueden descargar.

    Next.js · Supabase · React PDF

  • Charisma AI

    Retirado

    Un SaaS completo que tuve en línea durante un tiempo como proyecto paralelo: entran un selfie y un cuestionario, y sale un perfil de carisma puntuado por Gemini, con un plan de coaching, check-ins diarios, un coach de IA con el que chatear, planes de Stripe y correos de recordatorio. Lo retiré a propósito; sus patrones de facturación y de puntuación pasaron a productos posteriores.

    Next.js · Supabase · Gemini · Stripe · Resend

  • Automatización de YouTube

    Aparcado

    Entra un prompt y sale un vídeo publicado: guion, imágenes de las escenas, voz en off con marcas de tiempo por palabra, vídeo, render con Remotion, SEO, miniatura y subida. Cada paso escribe su salida en disco, así que una ejecución fallida se reanuda desde el paso que falló. Funcionaba; lo aparqué porque quitaba foco a los productos reales.

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

  • Tatil Radar

    Terminado

    Calcula cuánto cuesta de verdad una noche en la costa de İzmir (hotel, cena, playa y salir por la noche) por zona, y compara un mismo hotel en 13 canales de venta. Todos los enlaces de hoteles están comprobados, y lo que no se ha comprobado aparece marcado como tal.

    Next.js · TypeScript

  • Hands-Free Chords

    Prototipo funcional

    La webcam sigue las dos manos. Cada mano tiene un menú radial, la nota fundamental a la izquierda y el tipo de acorde a la derecha, y un gesto de pinza toca el acorde en un DAW a través de un puerto MIDI virtual. Hay una versión web en desarrollo.

    Python · MediaPipe · OpenCV · mido

  • MOKOKO

    Terminado

    Un juego de palabras en turco, de tres rondas, en el navegador, con la lógica del juego y las reglas de las palabras cubiertas por tests unitarios.

    React 19 · Vite · Vitest

  • Pipeline de contenido para LinkedIn

    En uso

    Un archivo de marca, una lista de investigación y una cola de contenido. Claude redacta dos versiones, yo apruebo una y se publica a través de la API oficial de LinkedIn. No sale nada sin mi aprobación.

    Claude · LinkedIn API · Markdown

  • HorrorGuess

    Terminado, sin publicar

    Un juego de adivinanzas de terror en turco, hecho con un amigo en dos días. El modelo escribe una historia de fantasmas bajo reglas de tipo debe, puede y no puede, con la salida forzada por un esquema, y el jugador adivina cuál de veinte criaturas describe.

    React · Vite · TypeScript · OpenAI

  • Chordinia

    En pausa

    Un asistente de acordes y letras con un núcleo de teoría musical de verdad en Dart puro (parseo de acordes, detección de tonalidad, transposición con un toque, análisis de afinación en tiempo real), además de reconocimiento de canciones y letras. En pausa mientras sale Pistochia.

    Flutter · Supabase · ACRCloud · Genius API

  • Kuluçka Vampir Köylü

    Retirado

    Una app para las noches de Hombre Lobo en un café: los jugadores entran con un código QR y reciben cartas de rol que se revelan con un toque, las acciones nocturnas se resuelven en la pantalla del moderador y los votos en directo se sincronizan en todos los móviles. Qué ve cada uno se controla con row-level security, no en la app. Las noches del café funcionaban bien con cartas de papel, así que se retiró.

    Next.js · Supabase Realtime · Row-level security

  • aifindsit

    Workflow terminado

    Un bot de DM de Instagram hecho como workflow de n8n: llega un mensaje por un webhook, se busca el producto y la respuesta lleva un enlace a él.

    n8n · Instagram Graph API

Universidad y código abierto

  • FlexFlow

    TFG, retirado

    Mi trabajo de fin de grado en la Yaşar University, en un equipo de tres: una app de fitness que conecta a quienes van al gimnasio con entrenadores personales, con planes de entrenamiento y de dieta, gimnasios cercanos en un mapa, un coach de IA y seguimiento de calorías. Yo hice la app móvil; un compañero de equipo hizo el backend en NestJS.

    React Native · Expo · Firebase · NestJS · PostgreSQL

  • Smart Bed

    Prototipo, presentado

    Una cama de hospital construida por equipos mixtos de estudiantes de la Yaşar University y de Penn State Abington en tres días (marzo de 2024). Unos sensores en la cama y una cámara con IA vigilan al paciente y, cuando empieza a levantarse, una unidad de pared avisa al móvil del personal de enfermería antes de que se caiga. Se presentó a Bordatech y salió en la web de noticias de la universidad.

    M5Stack · MicroPython · AI camera

  • Venta de billetes de avión con un asistente de IA

    Práctica universitaria, hecha en pareja

    Una API de billetes (vuelos, compra, check-in, auth con JWT) detrás de un gateway en Express con rate limiting por IP, además de un asistente que responde en lenguaje llano llamando a los mismos endpoints públicos que cualquier otro cliente. Los repos están en el GitHub de mi compañero.

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

  • Microservicios de reservas de hotel

    Práctica universitaria, hecha en pareja

    Siete servicios detrás de un único gateway (administración, búsqueda, reservas, comentarios, notificaciones y un agente de lenguaje), cada uno con el almacenamiento que le encaja: Postgres para las reservas, MongoDB para las reseñas, Redis para la caché y una cola de mensajes para el correo.

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

  • MiroFish, un fork con añadidos

    Contribución

    Añadidos a MiroFish, un motor de predicción multiagente de código abierto: un backend de memoria intercambiable (Zep Cloud, o Graphiti con Neo4j en tu propio servidor), un monitor de costes en dólares, en tiempo real, que detiene una ejecución al llegar a un límite fijado, un watchdog para sus procesos y un botón de parada de emergencia. El motor en sí es trabajo del proyecto upstream; solo estos añadidos son míos.

    Python · FastAPI · Graphiti · Neo4j · Vue

Habilidades, según cuánto las uso

Sin estrellas, solo la frecuencia con la que aparece cada una en el trabajo real y dónde puedes verla.

HabilidadFrecuenciaDónde se ve
JavaScript, TypeScript y Node.jsA diarioLa mayor parte de lo que hay en esta web funciona con esto. Malton London Press
Next.js, React y SupabaseA diarioResearchGo, Ürünereklam, Malton London Press, varias webs de clientes y mis dos webs. ResearchGo
SQL, diseño de APIs, CI/CD y GitA diarioLo uso en todos los proyectos. Las migraciones, las comprobaciones de base de datos y los pipelines de deploy aparecen en los artículos. Malton London Press
Python: pipelines de datos, scraping y machine learningEn producciónEl motor de leads de FitEscala, el worker de parseo de ResearchGo y mi trabajo de fin de máster (modelos clásicos, ensembles y transformers, más métricas de explicabilidad). Trabajo de fin de máster: detección explicable de phishing escrito por IA
React Native y ExpoEn producciónFlexFlow, mi TFG con Firebase, y Pistochia, offline-first sobre SQLite con edge functions de Supabase. Pistochia
WebGL y Three.js (React Three Fiber)En producciónLa letra en 3D de akinaydin.com, con un contexto WebGL que se reconstruye solo cuando la GPU lo descarta. akinaydin.com
Meta Marketing API y campañas de anunciosEn producciónUna campaña de un congreso que pasó de gastar a ciegas a un coste por lead medido. La historia está en las notas de abajo.
Playwright y automatización del navegadorEn producciónEl pipeline de contenido para LinkedIn.
AccesibilidadEn producciónLa web de un proyecto cofinanciado por la UE para personas que usan lengua de signos, hecha para una asociación de educación especial en 2024 y 2025.
C, C++, C#, Java, Flutter e IoTOcasionalUso real, no diario: la cama inteligente usaba MicroPython en un M5Stack, Chordinia está en Flutter y el sistema de la aerolínea, en .NET.

Notas de ingeniería

Cosas que salieron mal en proyectos reales, y lo que cambié.

2026.06

La campaña de anuncios que no podía ver su objetivo

Un congreso necesitaba inscripciones, así que la cuenta publicitaria lanzó una campaña de conversión. Pero no había ningún evento de inscripción conectado al píxel. Meta optimiza hacia lo que puede ver, y no veía nada, así que un público similar se gastó la mayor parte del presupuesto en tres países que generaron miles de clics y ninguna inscripción.

Un público más inteligente no lo habría arreglado. Pasar a los formularios de leads de la propia Meta le dio al algoritmo un evento real al que apuntar, y la misma cuenta empezó a traer académicos cualificados con un coste por lead muy por debajo de lo habitual en B2B en la UE. Las cifras medidas están en el informe final; las dejo fuera de esta página a propósito.

Desde entonces, antes de ajustar una campaña, compruebo que de verdad puede ver el resultado que quiero.

2026.07

Los reflejos que tumbaron la GPU

akinaydin.com tiene una letra en 3D reflectante que recoge la luz de su entorno. La primera versión volvía a renderizar el entorno y lo pasaba por la generación PMREM en cada frame, así que los reflejos siempre estaban al día. En un portátil rápido se veía bien. En hardware normal, la pestaña perdía su contexto WebGL en mitad de un scroll y la letra se quedaba a oscuras.

Ahora el entorno se renderiza una sola vez, al cargar la página. En dispositivos reales los contextos se siguen perdiendo, así que, cuando pasa, la página reconstruye el canvas automáticamente en lugar de dejar un recuadro muerto.

2026.07

Por qué la red neuronal entrena despacio a propósito

La red neuronal de esta página podría entrenar mucho más rápido en un web worker sin throttling. No lo hace, a propósito: alguien que pasa haciendo scroll nunca debería ver un frame perdido porque una red esté entrenando en segundo plano.

Por eso el entrenador da unos pocos pasos de gradiente solo cuando el navegador tiene tiempo libre, en idle callbacks y en pequeñas porciones de un frame, y ninguno cuando está ocupado. La curva de pérdida tarda más en bajar, y la página sigue fluida.