## Tutorial Codespaces paso a paso - Hola Mundo Python + C
### PASO 1: Crea tu repo de prácticas
1. Ve a github.com/new
2. Nombre: `mis-primeros-codespaces`
3. Marca `Add a README file`
4. Create repository
### PASO 2: Crea tu Codespace
1. Dentro de tu repo, dale clic al botón verde `<> Code`
2. Pestaña `Codespaces`
3. Clic en `Create codespace on main`
Espera 45 segundos. Se te abrirá VS Code en el navegador. Ya estás dentro de una máquina Linux.
Verifica que estás dentro: abre la terminal con `Ctrl + ñ` o `Ctrl + `` ` y escribe:
```bash
pwd
ls -la
```
### PASO 3: Hola Mundo en Python
Python ya viene instalado.
1. En el explorador de la izquierda, clic en `New File` -> `main.py`
2. Pega esto:
```python
# main.py
print("Hola mundo desde Codespaces!")
print("Python funciona!")
nombre = input("¿Cómo te llamas? ")
print(f"Hola, {nombre}!")
```
3. En la terminal, ejecútalo:
```bash
python main.py
```
O también:
```bash
python3 main.py
```
Listo. Acabas de ejecutar Python en la nube sin instalar nada en tu PC.
### PASO 4: Hola Mundo en C
Aquí es donde Codespaces brilla, porque C necesita compilador.
1. En la terminal, verifica si tienes compilador:
```bash
gcc --version
```
Si te dice `command not found`, instálalo:
```bash
sudo apt update && sudo apt install build-essential -y
```
2. Crea un archivo nuevo: `hola.c`
```c
// hola.c
#include <stdio.h>
int main() {
printf("Hola mundo desde C en Codespaces!\n");
int edad;
printf("¿Cuántos años tienes? ");
scanf("%d", &edad);
printf("Tienes %d años. ¡C en la nube funciona!\n", edad);
return 0;
}
```
3. Compila y ejecuta. En C no es directo como Python, son 2 pasos:
```bash
# Compilar
gcc hola.c -o hola
# Ejecutar
./hola
```
Si quieres ver los archivos:
```bash
ls
# Verás: hola hola.c main.py
```
**Explicación:** `gcc` es el compilador. Convierte tu `hola.c` (texto) en un ejecutable `hola` (programa que la máquina entiende).
### PASO 5: Hazlo pro - El archivo que te ahorra todo
Para no tener que instalar `gcc` cada vez, vamos a crear la configuración automática.
Crea esta carpeta y archivo: `.devcontainer/devcontainer.json`
1. Clic derecho -> `New Folder` -> `.devcontainer`
2. Dentro, `New File` -> `devcontainer.json`
3. Pega esto:
```json
{
"name": "Python + C",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/devcontainers/features/python:1": {
"version": "3.11"
}
},
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"ms-vscode.cpptools"
]
}
},
"postCreateCommand": "sudo apt update && sudo apt install -y build-essential gdb",
"remoteUser": "vscode"
}
```
Que hace esto:
- Instala Python 3.11 automáticamente
- Instala `build-essential` (gcc, g++)
- Instala extensiones de Python y C++ en VS Code
Ahora haz commit para guardarlo:
```bash
git add .
git commit -m "Agrego mi entorno Python + C"
git push
```
La próxima vez que crees un Codespace en este repo, todo vendrá instalado solo.
### PASO 6: Prueba con más lenguajes (misma lógica)
Una vez que entiendes el patrón, es igual para todo:
**Para JavaScript:**
```bash
echo 'console.log("Hola JS")' > hola.js
node hola.js
```
**Para Java:**
```bash
echo 'public class Hola { public static void main(String[] args){ System.out.println("Hola Java"); } }' > Hola.java
javac Hola.java
java Hola
```
### PASO 7: Cerrar y no gastar horas
1. Ve a github.com/codespaces
2. Verás tu Codespace activo. Dale a los 3 puntitos `...` -> `Stop codespace`
Tu código ya quedó guardado en GitHub porque hiciste `git push`. Puedes borrar el Codespace sin miedo, lo vuelves a crear cuando quieras.
---
**Reto para ti:**
Crea un archivo `calculadora.py` y un `calculadora.c` que sumen dos números que pida el usuario. Si lo haces, ya dominas la base de Codespaces.
¿Quieres que te pase el siguiente paso? Te puedo armar el template para C++ , Go y Rust en el mismo repo para que tengas un Codespace multi-lenguaje listo.