La siguiente es una guía lista para compartir con los
estudiantes de la asignatura Diseño
Experimental. Está adaptada para Windows, clonando el
repositorio en el disco C:\, trabajando desde
Visual Studio Code y publicando una copia personal del
proyecto en la cuenta de GitHub de cada estudiante o grupo.
La idea central es que cada estudiante o grupo:
El repositorio base de la aplicación se encuentra en:
https://github.com/justorfc/design.git
La aplicación corresponde a una app multipágina desarrollada con
Python y Streamlit, con archivos
principales como app.py, requirements.txt, la
carpeta pages/ y la carpeta utils/.
Esta actividad tiene un propósito que va más allá de ejecutar una aplicación existente. Se espera que cada estudiante o grupo pueda apropiarse del aplicativo, estudiarlo, modificarlo y proyectarlo hacia su uso profesional.
En la práctica profesional, un ingeniero puede necesitar adaptar herramientas computacionales para resolver problemas concretos de análisis de datos, diseño experimental, modelación, visualización e interpretación de resultados. Por esa razón, este ejercicio busca que el estudiante:
Antes de iniciar, cada estudiante debe tener instalado o creado lo siguiente:
Git
Permite clonar repositorios, guardar cambios y subirlos a
GitHub.
Visual Studio Code
Será el editor de código utilizado para abrir, modificar y ejecutar el
proyecto.
Python 3.10 o superior
Se recomienda usar Python 3.10 o una versión posterior compatible con
las librerías del proyecto.
Extensión de Python en VSCode
Desde VSCode, ir a Extensions y buscar:
Python
Instalar la extensión oficial de Microsoft.
Cuenta personal en GitHub
Cada estudiante o grupo debe tener una cuenta activa en GitHub.
Conexión a internet
Será necesaria para clonar el repositorio, instalar dependencias y subir
el proyecto a GitHub.
Abrir PowerShell o la terminal integrada de VSCode y escribir:
git --version
Debe aparecer algo similar a:
git version 2.x.x
Luego verificar Python:
python --version
Si el comando anterior no funciona, probar con:
py --version
Debe aparecer algo similar a:
Python 3.10.x
C:\Se recomienda no clonar directamente dentro de carpetas del sistema
como C:\Windows o C:\Program Files.
En PowerShell, ejecutar:
cd C:\
mkdir Proyectos
cd Proyectos
Con esto se crea la carpeta:
C:\Proyectos
Dentro de C:\Proyectos, ejecutar:
git clone https://github.com/justorfc/design.git
Al finalizar, se habrá creado la carpeta:
C:\Proyectos\design
Ingresar a esa carpeta:
cd design
Verificar que el proyecto fue clonado correctamente:
dir
Deben observarse archivos y carpetas como:
app.py
requirements.txt
pages
utils
Desde la misma terminal, escribir:
code .
Si el comando code . no funciona, abrir VSCode
manualmente y hacer:
File → Open Folder → C:\Proyectos\design
Dentro de VSCode, abrir la terminal integrada:
Terminal → New Terminal
Verificar que la terminal esté ubicada en:
C:\Proyectos\design
Crear el entorno virtual:
python -m venv .venv
Si el comando anterior no funciona, intentar:
py -m venv .venv
Esto crea una carpeta llamada .venv, donde quedarán
instaladas las librerías del proyecto.
En PowerShell, ejecutar:
.\.venv\Scripts\Activate.ps1
Cuando el entorno virtual esté activo, la terminal mostrará algo parecido a:
(.venv) PS C:\Proyectos\design>
Si PowerShell bloquea la activación, ejecutar una sola vez:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Luego cerrar y abrir de nuevo la terminal de VSCode, y volver a activar:
.\.venv\Scripts\Activate.ps1
En VSCode:
Ctrl + Shift + P
Buscar:
Python: Select Interpreter
Seleccionar el intérprete que esté dentro de:
C:\Proyectos\design\.venv\Scripts\python.exe
Con el entorno virtual activo, ejecutar:
python -m pip install --upgrade pip
Luego instalar las librerías del proyecto:
pip install -r requirements.txt
O, de forma equivalente:
python -m pip install -r requirements.txt
Con el entorno virtual activo y estando dentro de la carpeta del proyecto, ejecutar:
streamlit run app.py
La aplicación se abrirá en el navegador. Normalmente aparecerá en una dirección local como:
http://localhost:8501
Si la aplicación abre correctamente, significa que el estudiante ya tiene una copia funcional del aplicativo Design en su computador.
Después de verificar que la aplicación funciona, cada estudiante o grupo debe crear su propio repositorio en GitHub.
Ingresar a:
https://github.com
Iniciar sesión con la cuenta personal o con la cuenta del grupo.
En GitHub, hacer clic en:
New repository
O también:
+ → New repository
Se recomienda usar un nombre claro. Por ejemplo:
design-mi-version
También se puede usar un nombre con el programa, grupo o apellido:
design-agroindustrial-grupo-03
design-experimental-apellido1-apellido2
Al crear el repositorio, seleccionar:
Public o
Private, según indique el profesor.Es decir, se recomienda no agregar inicialmente:
README.md.gitignorelicenseEsto evita conflictos al subir el proyecto local que ya fue clonado desde el repositorio del profesor.
Al finalizar, hacer clic en:
Create repository
GitHub mostrará una URL parecida a esta:
https://github.com/USUARIO/design-mi-version.git
Esa URL será necesaria para conectar el proyecto local con el repositorio propio.
Cuando se clona el repositorio del profesor, Git configura
automáticamente un remoto llamado origin apuntando al
repositorio original.
Desde la terminal de VSCode, dentro de:
C:\Proyectos\design
Ejecutar:
git remote -v
Debe aparecer algo parecido a:
origin https://github.com/justorfc/design.git (fetch)
origin https://github.com/justorfc/design.git (push)
Esto significa que, por ahora, el proyecto local está conectado al repositorio del profesor.
Sin embargo, el estudiante normalmente no tiene permiso para subir cambios al repositorio del profesor. Por tanto, se debe cambiar la configuración para que el proyecto suba a su propio repositorio.
upstreamSe recomienda no perder la conexión con el repositorio del profesor.
Para eso, cambiaremos el nombre del remoto actual de origin
a upstream.
Ejecutar:
git remote rename origin upstream
Luego verificar:
git remote -v
Debe aparecer algo parecido a:
upstream https://github.com/justorfc/design.git (fetch)
upstream https://github.com/justorfc/design.git (push)
upstream?En este contexto, upstream será el nombre del
repositorio original del profesor. Así, si el profesor hace mejoras
futuras, el estudiante podrá traer esos cambios a su proyecto local.
Ahora se agregará un nuevo remoto llamado origin, pero
esta vez apuntando al repositorio personal del estudiante o grupo.
La forma general del comando es:
git remote add origin https://github.com/USUARIO/NOMBRE-DEL-REPOSITORIO.git
Por ejemplo, si el usuario de GitHub es maria123 y el
repositorio se llama design-mi-version, el comando
sería:
git remote add origin https://github.com/maria123/design-mi-version.git
Cada estudiante debe reemplazar:
USUARIO
por su nombre de usuario en GitHub, y:
NOMBRE-DEL-REPOSITORIO
por el nombre real del repositorio que creó.
Luego verificar los remotos:
git remote -v
Debe aparecer algo parecido a:
origin https://github.com/maria123/design-mi-version.git (fetch)
origin https://github.com/maria123/design-mi-version.git (push)
upstream https://github.com/justorfc/design.git (fetch)
upstream https://github.com/justorfc/design.git (push)
En esta configuración:
origin apunta al repositorio propio del
estudiante.upstream apunta al repositorio original del
profesor.Antes de subir el proyecto, verificar el estado de Git:
git status
Si no se han hecho cambios, Git puede mostrar algo parecido a:
nothing to commit, working tree clean
Aun así, se puede subir el proyecto clonado al repositorio propio con:
git branch -M main
git push -u origin main
La primera vez, GitHub puede solicitar autenticación. En algunos equipos se abrirá una ventana del navegador para iniciar sesión. En otros casos, GitHub puede solicitar autenticación mediante Git Credential Manager o un token personal.
Si el proceso fue exitoso, al actualizar la página del repositorio propio en GitHub deberán aparecer los archivos del proyecto:
app.py
requirements.txt
pages/
utils/
Después de tener el repositorio propio en GitHub, cada estudiante o grupo debe trabajar siguiendo este ciclo:
git status
Este comando muestra qué archivos fueron modificados, agregados o eliminados.
git add .
Este comando prepara todos los cambios para ser guardados en Git.
git commit -m "Mejoras iniciales de la App Design"
El mensaje del commit debe describir claramente qué se modificó.
Ejemplos de buenos mensajes:
Agrega explicación teórica del DCA
Corrige visualización de gráficos RSM
Agrega página para diseño factorial 2^3
git push
Si es la primera vez que se sube la rama, usar:
git push -u origin main
Una ventaja de conservar el remoto upstream es que el
estudiante puede traer cambios futuros del repositorio original del
profesor.
Para revisar si hay cambios en el repositorio del profesor, ejecutar:
git fetch upstream
Luego integrar esos cambios a la rama local main:
git merge upstream/main
Después de integrar los cambios, subirlos al repositorio propio:
git push origin main
También puede usarse:
git pull upstream main
git push origin main
Si el estudiante modificó archivos que el profesor también modificó, Git puede mostrar conflictos. En ese caso, se deben revisar los archivos marcados por Git, decidir qué versión conservar, guardar los cambios y luego ejecutar:
git add .
git commit -m "Resuelve conflictos con cambios del repositorio base"
git push origin main
.venvEl entorno virtual .venv no debe subirse a GitHub porque
puede ocupar mucho espacio y depende del computador de cada
estudiante.
Verificar si existe un archivo .gitignore:
dir .gitignore
Si existe, abrirlo y comprobar que incluya al menos:
.venv/
__pycache__/
*.pyc
Si no existe, crear un archivo llamado .gitignore en la
raíz del proyecto y agregar:
.venv/
__pycache__/
*.pyc
.ipynb_checkpoints/
.env
Después de crear o modificar .gitignore, guardar el
cambio:
git add .gitignore
git commit -m "Agrega archivo gitignore para entorno virtual"
git push
cd C:\
mkdir Proyectos
cd Proyectos
git clone https://github.com/justorfc/design.git
cd design
code .
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txt
streamlit run app.py
git remote -v
git remote rename origin upstream
git remote add origin https://github.com/USUARIO/NOMBRE-DEL-REPOSITORIO.git
git remote -v
git branch -M main
git push -u origin main
git status
git add .
git commit -m "Describe aquí los cambios realizados"
git push
git fetch upstream
git merge upstream/main
git push origin main
Cada estudiante o grupo puede continuar la aplicación siguiendo una estructura como esta:
Página de inicio
Presentación general del aplicativo, autores, asignatura, programa y
propósito.
Diseños completamente al azar
Fundamento teórico, fórmulas, ejemplo, análisis en Python e
interpretación.
Diseños en bloques completos al azar
Explicación del bloqueo, tabla ANOVA, supuestos y ejemplo
aplicado.
Diseños factoriales
Efectos principales, interacciones, gráficos e interpretación.
Superficie de respuesta
Modelo de primer orden, trayectoria de máximo ascenso, modelo de segundo
orden, punto estacionario, superficie 3D y curvas de nivel.
Exportación de resultados
Guardar tablas, figuras o reportes en formatos útiles para informes
profesionales.
Aplicación a un caso real
Incorporar un ejemplo propio de Ingeniería Agrícola, Agroindustrial o
Civil.
push..venv.upstream para poder recibir
actualizaciones del repositorio base.Cada estudiante o grupo deberá entregar: