Build-Your-Own-X: recopilación de recursos para dominar habilidades de programación
Build-Your-Own-X: recopilación de recursos para dominar habilidades de programaciónIntroducción
¿Qué es build-your-own-x?
Este repositorio llamado build-your-own-x reúne muchas guías y tutoriales detallados, paso a paso, sobre cómo recrear desde cero diversas tecnologías, ayudando a la gente a aprender creando las tecnologías populares desde la base. La idea proviene de una frase de Richard Feynman: "Lo que no puedo crear, no lo entiendo", lo que significa que hay que hacerlo uno mismo para comprender de verdad cómo funciona una tecnología. Hacer énfasis en la comprensión profunda mediante la creación es una buena manera de aprender programación.

¿Qué incluye principalmente Own-X?
Relacionado con 3D
Renderizadores 3D: hay una introducción al trazado de rayos en C++ para dibujar gráficos 3D, y también tutoriales para escribir motores 3D por software en C#, TypeScript o JS.
Realidad Aumentada (AR): hay un tutorial introductorio de AR en C# con Vuforia y Unity 3D, y también un tutorial de ARKit en C# (con vídeo).
Relacionado con redes y sistemas distribuidos
Cliente BitTorrent: hay tutoriales que enseñan cómo hacer tu propio cliente BitTorrent.
Blockchain / Criptomonedas: por ejemplo, un tutorial para hacer una criptomoneda basada en prueba de participación llamada NaivecoinStake usando TypeScript.
Pila de red: hay contenido para enseñar a crear tu propia pila de red.
Relacionado con robots
Chatbots: hay un tutorial para hacer un bot de IA sencillo para Facebook Messenger con Node.js (usando API.ai), y también un tutorial para hacer un bot de Slack en 20 minutos con Python, la API de Slack Events y Django.
Relacionado con herramientas de línea de comandos: hay tutoriales para enseñar a crear tus propias herramientas de línea de comandos.
Relacionado con bases de datos
Construcción de bases de datos: por ejemplo, un tutorial para hacer una base de datos desde cero con Go, explicando persistencia, índices, concurrencia y otros aspectos.
Relacionado con contenedores: hay tutoriales para enseñar a crear tu propio Docker.
Relacionado con emuladores / máquinas virtuales: hay tutoriales para enseñar a crear tu propio emulador o máquina virtual.
Relacionado con frameworks/bibliotecas de frontend
Relacionado con React: aprendiendo cómo funciona el React Reconciler creando un DOM ligero de React, y también tutoriales para hacer un framework de frontend desde cero con componentes (plantillas, estado, VDOM).
Relacionado con juegos
Desarrollo de varios juegos: hay un tutorial para hacer un Tetris multiplataforma en C++ (centrado principalmente en la lógica básica del juego), un tutorial para hacer Snake en JS, HTML y CSS, y también un tutorial para hacer juegos con Python y Pygame.
Relacionado con control de versiones: hay un tutorial para hacer un cliente Git sencillo en Python, capaz de crear repositorios, hacer commits y subir el código a GitHub.
Relacionado con la pila de protocolos de red: hay contenido para enseñar a crear tu propia pila de red.
Relacionado con redes neuronales
Construcción de redes neuronales: por ejemplo, un tutorial de redes neuronales para programadores de JS (empezando por los perceptrones, primera parte), un tutorial para hacer un motor de expresiones regulares en Python (con distintos enfoques como backtracking, NFA, DFA), y también un tutorial para hacer una red neuronal desde cero con JS.
Relacionado con sistemas operativos
Desarrollo de sistemas operativos: hay un videotutorial para hacer la pila de software y hardware de un ordenador sencillo con C, incluyendo la escritura de un Kernel 201 con soporte de teclado y pantalla, y también un tutorial para aprender a hacer un sistema operativo con el kernel de Linux y Raspberry Pi.
Relacionado con motores de física: hay tutoriales para enseñar a crear tu propio motor de física.
Relacionado con lenguajes de programación
Construcción de varios lenguajes: hay tutoriales para hacer tu propio Lisp en C (en menos de 1000 líneas), "Let's Build a Compiler" en C y x86, un manual para hacer un intérprete en Java, un compilador en Python desde el código fuente hasta el código máquina, y para crear tu propio lenguaje de programación en Racket, entre otros.
Relacionado con motores de expresiones regulares: hay un tutorial para hacer regex en JS con un método funcional (usando derivadas), y un tutorial para hacer tu propio motor de regex en Python (con backtracking, NFA, DFA, etc.).
Relacionado con motores de búsqueda: hay tutoriales para enseñar a crear tu propio motor de búsqueda.
Relacionado con Shell: hay tutoriales para enseñar a crear tu propio Shell.
Relacionado con motores de plantillas: hay tutoriales para enseñar a crear tu propio motor de plantillas.
Relacionado con editores de texto: hay tutoriales para enseñar a crear tu propio editor de texto.
Relacionado con sistemas de reconocimiento visual
Reconocimiento de matrículas: un tutorial para reconocer matrículas con Python y aprendizaje automático.
Reconocimiento facial: un tutorial para hacer un flujo de reconocimiento facial con Python y Tensorflow.
Relacionado con motores de vóxeles: hay tutoriales para enseñar a crear tu propio motor de vóxeles.
Relacionado con navegadores web: hay tutoriales para enseñar a crear tu propio navegador.
Relacionado con servidores web: hay tutoriales para enseñar a crear tu propio servidor.
Otros
De NAND a Tetris: hay contenido para construir un ordenador moderno a partir de sus principios básicos.
Tutoriales estilo vibe coding: hay tutoriales de BYOX hechos siguiendo el estilo vibe coding.
Redes en C#: incluye tutoriales de redes en C# para hacer un servidor de chat TCP, un juego TCP, un Pong con UDP, etc.
Animación 3D en C#: un tutorial en C# y GLSL para cargar y renderizar animaciones esqueléticas 3D desde cero.
Relacionado con JavaScript: por ejemplo, implementar los métodos call(), apply() y bind() en JS.
Relacionado con Node.js: incluye tutoriales para hacer un servidor y una solución sencilla de Single Sign-On (SSO) desde cero con Node.js.
Relacionado con Python: por ejemplo, hacer un escáner sencillo de documentos móviles con Python en 5 minutos, y un tutorial para hacer una red generativa adversarial (GAN) sencilla con Tensorflow.
El repositorio Own-X es adecuado para quienes quieran aprender de forma práctica los principios底层 de las tecnologías. Tanto si acabas de empezar como si llevas mucho tiempo programando, podrás encontrar contenido adecuado a tu nivel.
Asistente de guiones▸
Apps AI
Noticias AI