Proyecto Final
El clímax de este curso es su proyecto final. El proyecto final es tu oportunidad de tomar tus nuevos conocimientos en programación de paseo y desarrollar tu propia obra de software. Siempre y cuando tu proyecto retome las lecciones de este curso, la naturaleza de tu proyecto depende completamente de ti. Puedes implementar tu proyecto en cualquier lenguaje (o lenguajes). Eres bienvenido de utilizar infraestructura además del codespace de CS50. Todo lo que te pedimos es que construyas algo que te interese, que resuelvas un problema real, que impacte tu comunidad, o que cambies el mundo. Esfuérzate en crear algo que sobrepase este curso.
Ciertamente el desarrollo de software rara vez es el esfuerzo de una sola persona, se te permite la oportunidad de colaborar con uno o dos compañeros/as para este proyecto final. No hace falta decir que, se espera que cada estudiante en cualquier grupo contribuya equitativamente al diseño e implementación del proyecto del grupo. Además, se espera que el alcance de un proyecto de dos o tres personas sea, respectivamente, el doble o triple de un proyecto de una persona típica. El proyecto de una persona, para recordarte, debería conllevar más tiempo y esfuerzo de lo que se requiere por cada uno de los conjuntos de problemas de este curso. Ten en cuenta que el personal de CS50 audita las entregas a CS50x incluyendo este proyecto final. Los estudiantes encontrados en haber violado la política de honestidad académica serán retirados del curso y considerados no elegibles para un certificado. Los estudiantes quienes ya hayan completado CS50x, si se encuentran con casos de haberlas irrespetado, tendrán su certificado de CS50x (y el certificado de edX, en caso de aplicar) revocado.
Ideas
- Una aplicación basada en la web utilizando JavaScript, Python y SQL
- una aplicación de iOS utilizando Swift
- un juego utilizando Lua with LÖVE
- una aplicación de Android utilizando Java
- una extensión de Chrome utilizando JavaScript
- un programa de línea de comandos utilizando C
- una aplicación basada en hardware con la cual programar algún dispositivo
- ...
Empezando
Crear un proyecto entero puede verse desalentador. Aquí hay algunas preguntas que deberías pensar a medida que empiezas:
- ¿Qué hará tu software? ¿Qué características tendrá? ¿Cómo será ejecutado?
- ¿Qué nuevas habilidades necesitas adquirir? Que temas necesitarás investigar?
- Si trabajas con uno o dos compañeros, ¿qué hará cada quién?
- En el mundo del software, la mayoría de las cosas toma más tiempo de implementar de lo que esperas. Y entonces es muy común lograr menos avances de los que esperas en una cantidad fija de tiempo. ¿Qué podrías considerar como un buen resultado de tu proyecto? luego, un mejor resultado? y por último, el mejor resultado?
Considera definir metas a cumplir para mantenerte en trayectoria.
Si utilizas el codespace de CS50, crea un directorio llamado ~/project para almacenar el código fuente de tu proyecto y otros archivos. Eres bienvenido de desarrollar tu proyecto fuera del codespace de CS50.
¿Cómo entregarlo?
¡Debes completar todos los 3 pasos!
Paso 1 de 3
Crea un video corto (no mayor a 3 minutos de longitud) en el que presentas tu
proyecto al mundo, ya sea con diapositivas, capturas de pantalla, grabación de
audio, o mostrando su funcionamiento en vivo. Tu video debería incluir de alguna
forma el título de tu proyecto, tu nombre, tu ciudad y tu país, y cualquier otro detalle
que te gustaría conllevar a los espectadores. Puedes ir a howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-
screen por recomendaciones sobre cómo hacer una grabación de pantalla, aunque
eres libre de usar una cámara real. Sube tu video a YouTube (o, si está bloqueado
en tu país, en un sitio similar) y apunta su URL; está bien marcarlo como “oculto”
pero no lo marques como “privado”.
Paso 2 de 3
Crea un archivo de texto README.md (llamado exactamente así!) en tu carpeta
~/project que explique tu proyecto. Este archivo debería incluir el título de tu
proyecto, la URL de tu video (creado en el paso 1 previo) y una descripción de tu
proyecto. Puedes usar lo siguiente como una plantilla.
# YOUR PROJECT TITLE
#### Video Demo:
#### Description:
TODO
Si no estás familiarizado con la sintaxis Markdown, puedes encontrar la sintaxis
de
escritura y formato básicos de GitHub útil . Si estás usando el codespace de CS50,
también puedes previsualizar tu archivo .md haciendo clic en el icono “previsualizar”
explicado aquí: Markdown
preview in vscode. Los archivos README
estándares para
proyectos de software pueden llegar hacia los miles o cientos de miles de palabras
de longitud; el tuyo no necesita ser así de largo, pero al menos deberías llegar a
usar unas cuantas cientas de palabras para describir las cosas a detalle!.
Tu archivo README.md
debería tener al menos múltiples párrafos de longitud, y
debería explicar lo que es tu proyecto, que contiene y hace cada uno de los archivos
que escribiste, y si debatiste ciertas decisiones de diseño, explica por qué las has
hecho. Asegúrate de distribuir suficiente tiempo y energía en escribir un README.md
que documente tu proyecto detalladamente. ¡Siéntete orgulloso de él! Si es muy
corto, el sistema lo rechazará.
Ejecuta el comando submit50 debajo dentro de tu carpeta ~/project (o cualquier directorio que contenga un archivo README.md y el código de tu proyecto, el cual también debe entregarse), ingresando tu nombre de usuario y contraseña de GitHub cuando se te solicite. Por seguridad, verás asterisco en lugar de los caracteres reales de tu contraseña.
submit50 cs50/problems/2024/x/project
¿Problemas con la entrega?
Si encuentras problemas es porque tu proyecto es muy grande, intenta comprimir
todo el contenido de la carpeta (exceptuando README.md
) y luego entrega eso en su
lugar. Si aún es muy grande, intenta remover ciertos archivos de configuración,
reduciendo el tamaño de tus entregables debajo de 100MB, o intenta subirlo
directamente usando la interfaz web de GitHub visitando github.com/me50/NOMBREDEUSUARIO (donde NOMBREDEUSUARIO
es tu propio
nombre de usuario de GitHub) y manualmente arrastrando y soltando carpetas,
asegurando que cuando lo subas lo estés haciendo en tu rama cs50/problems/2024/x/project
, en caso contrario el sistema no será capaz de
verificarlo!
Paso 3 de 3
Asegúrate de verificar tu boletín de notas en cs50.me/cs50x unos cuantos minutos
luego de haberlo entregado. Solo mediante la carga de tu boletín de notas puede el
sistema verificar si has completado el curso, y eso también es lo que ejecuta la
generación (instantánea) de tu certificado de CS50.
¿Cuándo se entrega?
Se deberá entregar el dia sábado 23 de noviembre a las 11:59pm.
¡Esto fue CS50x!
Registro de cambios
- 28-10-2024
- Version Inicial
- Traducción