Descargar English version

@Categulario

Abraham Toriz Cruz

Ubicación

Xalapa, Veracruz, México

+52 1 (55) 3852 0622

categulario [at] gmail [dot] com

Acerca de

Me han atraído las matemáticas desde que tengo memoria. Me desempeño como programador apasionado la mayoría del tiempo. Soy guía de montaña una vez al mes y ciclista de montaña todo el tiempo.

Creo profundamente en el código abierto así que mucho de lo que escribo está público ya sea en gitlab o en github.

Dos de las cosas que más disfruto son aprender y compartir conocimientos. He impartido cursos sobre programación en la Universidad Veracruzana y dado una cantidad tal de pláticas y talleres en otros lugares que he perdido la cuenta.

Formación

2018-actualidad
Programador freelance.
2017-2018
Arquitecto de software en Tracsa, Guadalajara.
2013-2017
Desarrollador web en Auronix, Ciudad de México.
2010-2017
Licenciatura en Matemáticas en la Universidad Veracruzana.

Idiomas que hablo

Tecnologías con las que me desempeño

Proyectos Interesantes

Karel.js

Karel es un lenguaje de programación orientado a la educación muy básico que soporta definición de funciones, bucles y recursión.

Creé una interfaz usando bootstrap 2 para una versión web del lenguaje y una vista dentro de un canvas del mundo de karel.

Actualmente trabajo en una versión nueva de la interfaz usando vue.js

demo código fuente legacy karel.js

Cacahuate

Cacahuate es un sistema de ejecución y monitoreo de procesos empresariales. Localiza a las persoas involucradas en un proceso definido y mantiene un registro de los sucesos. Es fácilmente integrable con sistemas existentes.

Para este proyecto diseñé un formato basado en xml que permite definir un proceso dentro de una compañía con todas las reglas de negocio y personajes que implica. También escribí la mayor parte del código del backend de este proyecto.

Para este proyecto diseñé una infraestructura de componentes desacoplados usando el sistema de mensajería rabbitmq.

demo código fuente documentación pypi

Charpe

Charpe es un software de distribución de mensajes que se suscribe a una cola de rabbitmq y envía correos electrónicos o mensajes por telegram, aunque está diseñado para ser fácilmente extensible a medios de difusión arbitrarios.

código fuente pypi

Itacate

Itacate es un módulo que permite configurar cualquier proyecto python de la misma manera que se configura flask. De hecho es una extracción del módulo de configuración de flask en su propia biblioteca.

pypi

Fleety

Fleety es un sistema de rastreo de vehículos con capacidades para mandar alertas en tiempo real en base a reglas asociadas a geocercas o rutas. Diseñé una arquitectura modular que permitiría escalar horizontalmente la plataforma de ser necesario para satisfacer la demanda.

Escribí la interfaz HTTP de la plataforma, el ORM para la base de datos redis que utiliza, las adaptaciones del proyecto traccar del que depende, el componente cron que dispara eventos como generación de reportes en base a fechas, el componente broker que envía notificaciones por medios arbitrarios y un componente que genera reportes.

Todos los componentes están conectados entre si usando pub/sub de redis como sistema de mensajería, lo que los hace débilmente acoplados y pueden ser reemplazados con facilidad.

sitio

Coralillo

Coralillo es un mapeador de objetos (object mapper) para la base de datos redis. Te permite definir la información de la base de datos como clases y sus atributos. Tiene soporte para los campos geográficos de redis y para scripting en lua.

También tiene una extensión para usarse con flask.

código fuente documentación pypi

Map matching

Trabajé en una implementación de un algoritmo para encontrar la ruta en calles más probable para un vehículo que generó determinada traza GPS. El objetivo es usarlo para corregir las rutas de autobuses urbanos de xalapa recolectadas durante un mapatón organizado por codeando xalapa.

código fuente

Karelapan y karel de consola

Offline. Karelapan era una plataforma donde alumnos de preparatoria podían encontrar problemas de programación en el lenguaje karel y subir los códigos de las soluciones. La plataforma usaba django para gestionar los problemas, procedimientos almacenados de postgres para actualizar los puntajes de los alumnos y un intérprete del lenguaje karel escrito a mano en python.

código fuente

Contacto


Versión actualizada disponible en categulario.tk Este sitio no se come tus galletas