Bienvenido al Software Development Kit (SDK) del reporte semestral de Guatemala de UFM Market Trends. Este SDK tiene los siguientes objetivos:
- Agilizar la colección y procesamiento de datos.
- Facilitar la delegación de tareas.
- Reutilizar algoritmos y análises (y garantizar su consistencia).
- Servir como una herramienta educativa para futuros pasantes de UFM Market Trends en temas de economía, Data Science, e ingeniería de datos.
- Transferir el conocimiento y experiencia a futuras generaciones de analistas de UFM Market Trends.
El código está escrito en el lenguaje de programación Python, versión 3.
Para instalar la versión más reciente, corre el siguiente comando:
pip install git+https://github.com/UFM-Market-Trends/UFM-Market-Trends-SDK.git
Para instalar una versión específica, corre el siguiente comando:
pip install git+https://github.com/UFM-Market-Trends/[email protected]
Los cambios y mejoras son bienvenidos. Si quieres proponer uno, debes hacer un pull request en este repositorio. Si tienes alguna duda sobre este proceso, o cualquier comentario en general, puedes enviar un correo a [email protected]. Para que un pull request sea aprobado, debe observarse con cuidado la siguiente guía de estilo.
Si bien la naturaleza de este recurso es la investigación económica, nos apegamos a las mejores prácticas de la ingeniería de software al pie de la letra:
- El código (e.g., variables, funciones, etc.) debe ser escrito 100% en inglés. (Ej.
year
en lugar deano
). - El código debe regirse a la guía de estilo oficial de Python, de la cual se destaca:
- El uso de Snake case para nombrar variables y funciones. (Ej.
current_balance
). - El uso de CapWords (upper Camel case) para nombrar clases (Ej.
DatabaseModel
). - El uso de mayúsculas para definir constantes. (Ej.
AGRICULTURE = "agriculture"
)
- El uso de Snake case para nombrar variables y funciones. (Ej.
- Comentarios pueden (y se aconseja) ser escritos en español. Se recomienda su uso siempre y cuando sean concisos e informativos. (Ej.,
# Cálculo de la variación interanual (acum. 3 meses)
)
-
Abre una terminal en tu ordenador desde un folder de tu elección. Si no estás familiarizado con el uso de terminales, lee este artículo.
-
Clona el repositorio en dicho folder con el siguiente comando:
git git clone https://github.com/UFM-Market-Trends/UFM-Market-Trends-SDK.git
Si has tenido éxito, el resultado es una copia del repositorio dentro de un folder
nombrado UFM-Market-Trends-SDK
.
- Accede al subdirectorio
ufmtrends_sdk
desde tu terminal. Posiblemente corriendo la siguiente serie de comandos:
cd UFM-Market-Trends-SDK
cd ufmtrends_sdk
o simplemente cd UFM-Market-Trends-SDK/ufmtrends_sdk
- Ejecuta el siguiente comando para crear un entorno virtual. Si no estás familiarizado con los entornos virtuales, lee este artículo.
python -m venv ./virtual_environment
- Activa el entorno virtual corriendo el siguiente comando.
(Linux y MacOS)
source virtual_environment/bin/activate
(Windows)
env\Scripts\activate.bat
(Cuidado: En Linux y MacOS corres el comando en base al directorio local que
hemos llamado virtual_environment
, pero en Windows corres el comando en base
al script global env
automáticamente instalado en tu ordenador por el
comando venv
en el paso 4.)
- Para instalar las dependencias necesarias y empezar a desarrolar la librería,
ejecuta el comando
pip install -r requirements.txt
. - Si añades una dependencia nueva como parte de tu contribución, no olvides
ejecutar el comando
pip freeze > requirements.txt
. De este modo, futuros contribuidores al proyecto podran replicar el mismo entorno virtual que utilizaste. - Para desactivar el entorno virtual, simplemente ejecuta el
comando
deactivate
(por obvias razones, este comando solo funciona mientras estás dentro del entorno virtual).
Para incrementar la versión, utiliza el comando
git tag 0.1.0
(substituye 0.1.0
por el nuevo número de versión, por ejemplo, 0.2.0
)
y el comando
git push --tags
.
UFM Market Trends reserva el copyright ⓒ y propiedad intelectual de este software. Este paquete se brinda al público bajo la licencia Creative Commons (CC). Por favor cita apropiadamente cualquier uso o modificación de este paquete en cualquier publicación o uso interno.