(function(e){function t(t){for(var o,r,s=t[0],c=t[1],l=t[2],u=0,p=[];upersonalized advertising system for the clients of the drinks company BubbleTown using computer vision and deep learning. Through a camera the video from the exterior of the BubbleTown\'s place is obtained, then its frames are extracted and processed in order to been analyzed with 3 convolutional neuronal networks to detect faces and, from it, the age, the gender and the personality of a potential client. Based on this parameters, a drink is recommended to him or her and it\'s displayed near to his or her face with augmented reality. Implemented in the minicomputer NVIDIA Jetson AGX Xavier.

This work is published as an article in the MDPI magazine Sensors Vol. 22, Issue 1 (January 2022) by me and other authors.","ESP":"Este es un sistema de publicidad dirigida a clientes de la empresa de bebidas BubbleTown utilizando visión por computadora y aprendizaje profundo. Por medio de una cámara se obtiene video del exterior del local de BubbleTown, después se extraen y procesan imágenes del mismo para ser analizadas con 3 redes neuronales convolucionales para detectar rostros y, a partir de estos, la edad, el género y la personalidad de dicho cliente potencial. Con base a estos parámetros, se le recomienda una bebida y se despliega al lado de su rostro con realidad aumentada. Implementado en la minicomputadora NVIDIA Jetson AGX Xavier.

Este trabajo esta publicado como un artículo en la revista del MDPI Sensors Vol. 22, Núm. 1 (Enero 2022) por mi y otros autores."},"badges":["TensorFlow","TensorRT","CNN","KNN","SSD","MobileNet","RTSP","Python","OpenCV","Augmented Reality","NumPy","MongoDB","NVIDIA","Jetpack","Classification","Regression","GStreamer"],"roles":["Deep Learning Developer","Computer Vision Developer"],"authors":["Arturo Lara","Victor Morales","Marco A. Moreno","Carlos A. Duchanoy","Hiram Calvo"],"infoButton":"https://www.mdpi.com/1424-8220/22/1/63","githubButton":"https://github.com/vicleo14/PublicidadBT","color":"#343a40"},{"id":"cnn","icon":"fa fa-delicious fa-2x","title":{"ENG":"Neuronal Networks","ESP":"Redes Neuronales"},"description":{"ENG":"These are various exercises with neuronal networks using TensorFlow 2 and Keras, mostly convolutional. Some of these are the following: color and geometric shapes classification with a common MLP, descending gradient examples, models using the MNIST dataset, classifiers of fictional characters and typical dishes from the mexican food, and even object detection models such as the Single Shot Detection with personalized re-trainings, that also include its implementation in the TensorRT SDK. Additionaly, the preprocessing of the data to get a more effective training with better results is shown.","ESP":"Estos son diversos ejercicios con redes neuronales utilizando TensorFlow 2 y Keras, principalmente convolucionales. Algunos de estos son: clasificación de colores y formas geométricas con un MLP común, ejemplos del gradiente descendiente, modelos utilizando el dataset MNIST, clasificadores de personajes de ficción y de platillos típicos de comida mexicana, e incluso modelos de detección de objetos como la Single Shot Detection con reentrenamientos personalizados, que además incluye su implementación en TensorRT. Adicionalmente, se muestra el preprocesamiento de los datos para obtener un entrenamiento más eficaz con mejores resultados."},"badges":["TensorFlow","TensorBoard","Keras","Python","Jupyter Notebook","NumPy","AutoEncoder","Scikit Learn","CNN","MLP","SSD","MNIST","MobileNet","Data Augmentation","TensorRT","COCO"],"githubButton":"https://github.com/brokenerk/Advanced-Neuronal-Networks","branchButton":"https://github.com/brokenerk/TRT-SSD-MobileNetV2","branchButtonTitle":"SSD+MobileNet TensorRT","color":"#17a2b8"},{"id":"data-mining","icon":"fa fa-table fa-2x","title":{"ENG":"Data Mining","ESP":"Minería de Datos"},"description":{"ENG":"These are some practices done with data mining methods, using the libraries Pandas and Scikit-learning in Python. These examples include: implementation of decision trees for classification problems; use of clustering algorithms such as K-Means, MST (Average and Complete Link), BIRCH, DBSCAN, among others; analysis of datasets to identify the correlations between its classes and its data distribution; and exercises of linear regressions to predict behaviours. Additionaly, there are included cleaning and preprocessing methods of large datasets, association and decision rules.","ESP":"Algunas prácticas realizadas con métodos de minería de datos, utilizando las librerías Pandas y Scikit-learning en Python. Entre estos destacan: implementación de árboles de decisión para problemas de clasificación; uso de algoritmos de clustering como K-Medias, MST (Enlace Promedio y Completo), BIRCH, DBSCAN, entre otros; análisis de conjuntos de datos para identificar las correlaciones entre las clases de este y su distribución; y ejercicios de regresiones lineales para predecir comportamientos. También se incluyen métodos de limpieza y preprocesamiento de grandes conjuntos de datos, reglas de asociación y de decisión."},"badges":["Pandas","Scikit Learn","Python","Jupyter Notebook","Clustering","IRIS","NumPy","Decision Tree","Linear Regression","K-Means"],"githubButton":"https://github.com/brokenerk/DataMining","color":"#dc3545"},{"id":"siga","icon":"fa fa-usd fa-2x","title":{"ENG":"IPN SIG@ Contable","ESP":"IPN SIG@ Contable"},"description":{"ENG":"I worked 6 months for the IPN as web developer on its institutional systems. My principal contributions were for the SIG@ (Institutional Administrative Management System), where all the mexican IPN offices carry out the registration of information related to the financial, accounting, human capital and material resources processes of the institute. I was highly involved on the updates, maintenance and reengineering of the accounting modules.","ESP":"Trabajé 6 meses para el IPN como desarrollador web en sus sistemas institucionales. Mis principales contribuciones fueron en SIG@ (Sistema Institucional de Gestión Administrativa), en donde todas las dependencias mexicanas del IPN llevan a cabo el registro de la información relacionada a los procesos financieros, contables, de capital humano y recursos materiales del instituto. Estuve altamente involucrado en las actualizaciones, mantenimiento y reingeniería del módulo de contabilidad."},"badges":["ColdFusion","jQuery","JavaScript","Bootstrap","Datatables","Select2","SweetAlert2","HTML-CSS","Oracle","MVC"],"roles":["Full Stack Developer"],"takeALookButton":"https://www.siga.ipn.mx/","color":"#28a745"},{"id":"cart","icon":"fa fa-cart-plus fa-2x","title":{"ENG":"E-Commerce","ESP":"E-Commerce"},"description":{"ENG":"A basic e-commerce website: it allows to create an account, edit personal info such as address, login as an user that can add products to his or her shopping cart, see and edit the amount of the products on it, remove them, proceed to checkout, add reviews, ask questions, wishlists and even purchase the order.
The system allows real credit cards and make charges with the help of the Paypal API, so keep in mind that!","ESP":"Un sitio de web e-commerce básico: permite crear una cuenta, editar información personal como lo es el domicilio, acceder como un usuario que puede agregar productos a su carrito de compras, ver y editar la cantidad de estos, removerlos del carrito, proceder al pago, agregar reseñas, hacer preguntas, listas de favoritos e incluso comprar la orden.
El sistema admite tarjetas de crédito reales y realiza cargos con ayuda de la API Paypal, ¡así que téngalo en mente!"},"badges":["Python","Flask","Paypal","Bootstrap","Vue3","JavaScript","PostgreSQL","Docker"],"roles":["Full Stack Developer","Database Manager","UI Developer","DevOps"],"githubButton":"https://github.com/brokenerk/e_commerce_api","takeALookButton":"https://e-commerce-front.up.railway.app/","color":"#343a40"},{"id":"compiler","icon":"fa fa-file-code-o fa-2x","title":{"ENG":"Compiler","ESP":"Compilador"},"description":{"ENG":"This is an attempt to implement the first half of the components from a compiler: we implemented a lexical analyzer of Deterministic Finite Automatas through tokens, and 6 parsers: creation of Deterministic Finite Automatas and Grammars using recursive descent analysis, LL(1), LR(0), LR(1) and LALR. Also, we offer operations with Non deterministic Finite Automatas (NFA).
Each automata is displayed in its graphic representation.","ESP":"Esta es una implementación tentativa de la primera mitad de los componentes de un compilador: implementamos un analizador léxico de Autómatas Finitos Deterministas por medio de tokens, y 6 analizadores sintácticos: creación de Autómatas Finitos Deterministas y Gramáticas utilizando análisis descendiente recursivo, LL(1), LR(0), LR(1) y LALR. Además, brindamos operaciones con Autómatas Finitos No Deterministas (NFA).
Cada autómata se despliega en su representación gráfica."},"badges":["Python","Flask","jQuery","Jinja2","Vis.js","Materialize"],"roles":["Full Stack Developer","UI Developer"],"authors":["Abigail Nicolas","Randy Guzman"],"githubButton":"https://github.com/brokenerk/Compiladores","takeALookButton":"https://com-piler.up.railway.app/","color":"#007bff"},{"id":"rand","icon":"fa fa-random fa-2x","title":{"ENG":"Random Seed","ESP":"Semilla Aleatoria"},"description":{"ENG":"This is the web implementation of the Random Seed Algorithm, that is used to solve complex linear programming problems.
It\'s a iterative algorithm based on a number of populations, each one of the same size. Therefore, in this tool the populations info, the restrictions and the objective function can be entered.
It displays all the iterations and find the most accurate result.","ESP":"Esta es la implementación web del Algoritmo de Semilla Aleatoria, que es utilizado para resolver problemas complejos de programación lineal.
Es un algoritmo iterativo basado en un número de poblaciones, cada una del mismo tamaño. Por lo tanto, en esta herramienta se puede ingresar la infomación de las poblaciones, las restricciones y la función objetivo.
Muestra todas las iteraciones y encuentra el resultado más preciso."},"badges":["Python","Flask","Jinja2","jQuery","JavaScript","Materialize"],"roles":["Frontend Developer","UI Developer"],"authors":["Arturo Lara"],"githubButton":"https://github.com/brokenerk/MCTD/","takeALookButton":"https://random-mctd.up.railway.app/","color":"#17a2b8"},{"id":"saeeb","icon":"fa fa-graduation-cap fa-2x","title":{"ENG":"SAEEB","ESP":"SAEEB"},"description":{"ENG":"This is a web system prototype for academic managing of students from elementary schools in Mexico.
The intention is that the account created will be used by the student\'s parents or tutors and it will allows to schedule appoinments with the teachers, check the student\'s grades, send emails or notes between de teachers and parents, update the student\'s academic and personal info, and also generate their global grades in PDF.","ESP":"Este es un prototipo de un sistema web para la administración de estudiantes de escuelas secundarias en México.
La intención es que la cuenta creada sea utilizada por los padres o tutores del alumno y permitirá agendar citas con los profesores, revisar las calificaciones del alumno, enviar emails, avisos o recados entre padres de familia y profesores, actualizar la infomación académica y personal del estudiante, e incluso generar la boleta global de calificaciones del alumno en PDF."},"badges":["PHP","MySQL","HTML-CSS","JavaScript"],"roles":["Backend Developer","Database Manager"],"authors":["Abigail Nicolas","Yahir Carillo"],"githubButton":"https://github.com/abiisnn/SAEEB","color":"#E89980"},{"id":"chat","icon":"fa fa-comments fa-2x","title":{"ENG":"Multicast Chat","ESP":"Chat Multicast"},"description":{"ENG":"This is a common public chat room that allows to send and receive text messages, images and also file links via multicast. All you have to do is login with an username.
Also, if you want a private chat room, you have to select the user with whom you want to begin the conversation, and a new tab will open.
Dont forget to allow pop-ups!","ESP":"Esta es una sala de chat pública común que permite enviar y recibir mensajes de texto, imágenes e incluso links de archivos vía multicast. Todo lo que se debe de hacer es acceder con un nombre de usuario.
Incluso, si se desea una sala de chat privada, puede seleccionar al usuario con el que se quiera iniciar dicha conversación, y una nueva ventana se abrirá.
¡No olvide permitir los pop-ups!"},"badges":["Node.js","jQuery","JavaScript","Socket.IO","HTML-CSS","Socket.IO-File-Upload"],"roles":["Frontend Developer"],"authors":["Abigail Nicolas"],"githubButton":"https://github.com/brokenerk/Chat-Multicast","takeALookButton":"#","color":"#52987A"},{"id":"central","icon":"fa fa-desktop fa-2x","title":{"ENG":"Remote Visualizer","ESP":"Visualizador Remoto"},"description":{"ENG":"Distributed system that allows viewing the screens of up to 30 remote computers in parallel from a central one. The screenshots update every 5 seconds and the quality of them can be selected. Uses the Request-Responde protocol (improved UDP sockets) so that the information doesn\'t get lost or repeated, guaranteeing the sending and receipt of the images. Perfect to use in a computer laboratory to monitor all at the same time. Implemented with the web server Moongose.","ESP":"Sistema distribuido que permite visualizar las pantallas de hasta 30 computadoras remotas en paralelo desde un equipo central. Las capturas de pantalla se actualizan cada 5 segundos y se puede seleccionar su calidad. Utiliza el protocolo Solicitud-Respuesta (sockets UDP mejorados) para que la información no se pierda ni llegue repetida, garantizando el envio y recibo de las imágenes. Perfecto para utilizarse en laboratorios de computadoras para monitorear todas al mismo tiempo. Implementado con el servidor web Mongoose."},"badges":["C","C++","Mongoose","Sockets","jQuery","JavaScript","Bootstrap"],"roles":["Full Stack Developer","UI Developer"],"githubButton":"https://github.com/brokenerk/SistemasDistribuidos/tree/master/Proyectos/P3%20-%20CentralLab","color":"#6c757d"},{"id":"ukraniofest","icon":"fa fa-book fa-2x","title":{"ENG":"Book Analyzer","ESP":"Analizador de Libros"},"description":{"ENG":"Distributed system that analyzes books in the spanish language as plain text files. Through 4 different servers extracts all the words from it, counts them and then compares them with the 10 thousand most frequently used words in spanish. The more words from this list the book has, the better percentage of understanding for the reader it will have. Implemented with the web server Moongose and with the Request-Response protocol through improved UDP sockets.","ESP":"Sistema distribuido que analiza libros en el idioma español en forma de archivos de texto plano. Por medio de 4 servidores distintos extrae todas las palabras de éste, las contabiliza y después las compara con las 10 mil palabras más frecuentes utilizadas en el español. Mientras más palabras de este listado tenga el libro, mejor porcentaje de comprensión para el lector tendrá. Implementado con el servidor web Mongoose y el protocolo Solicitud-Respuesta por medio de sockets UDP mejorados."},"badges":["C","C++","Mongoose","Sockets","Vue.js","Vuetify"],"roles":["Backend Developer"],"authors":["Eric Trejo","Luis Santuario","Rafael Hernandez","Ricardo Sagrero"],"githubButton":"https://github.com/brokenerk/LibroUkranioFest","color":"#ffc107"},{"id":"stars","icon":"fa fa-star-half-o fa-2x","title":{"ENG":"Star Cluster","ESP":"Cúmulo de Estrellas"},"description":{"ENG":"This is a project that implements the Brute Force Star Cluster Algorithm.
From a big population of stars in the sky (actually a bunch of points in a 2D space), the algorithm finds the two of them that have the minimum distance between each other. We put an animation of how the algorithm is supossed to be working when it calculates the distance from point to point.","ESP":"Este es un proyecto que implementa el Algoritmo de Cúmulo de Estrellas por Fuerza Bruta.
De una gran cantidad de estrellas en el cielo (que realmente son una gran cantidad de puntos en un espacio 2D), el algoritmo encuentra aquellas dos de entre todas que tengan la distancia minima entre ellas. Pusimos una animación de como el algoritmo debería trabajar cuando calcula la distancia entre cada uno de los puntos."},"badges":["Vis.js","Anime.js","jQuery","JavaScript","Materialize"],"roles":["Frontend Developer","UI Developer"],"authors":["Abigail Nicolas","Cynthia Parra"],"githubButton":"https://github.com/brokenerk/brokenerk.github.io/tree/master/projects/CumuloEstrellas","takeALookButton":"./projects/CumuloEstrellas/index.html","color":"#007bff"},{"id":"oae","icon":"fa fa-calendar fa-2x","title":{"ENG":"Organize An Event","ESP":"Organizador de Eventos"},"description":{"ENG":"A web system that controls the assistance and documentation in an academic ceremony. It allows to pass assistance using bar and QR codes.
Additionaly it lets to get the statistics of the event (in PDF), generate the prizes for the guests in PDF as well, send their invitations via email, and to have differents types fo users (standard and administrators).","ESP":"Un sistema web para controlar la asistencia y la documentación en una ceremonia académica. Permite pasar asistencia utilizando códigos de barras y QR.
Adicionalmente permite obtener las estadísticas del evento (en PDF), generar los reconocimientos para los invitados también en PDF, enviarles sus invitaciones via email, y tener diferentes tipos de usuarios (estándares y administradores)."},"badges":["PHP","React.js","Typescript","Materialize","NPM","MySQL","MVC"],"roles":["Backend Developer","Database Manager"],"authors":["Oscar Rosas","Abigail Nicolas"],"githubButton":"https://github.com/SoyOscarRH/OrganizeAnEvent","color":"#243547"},{"id":"cobra","icon":"fa fa-window-restore fa-2x","title":{"ENG":"Cobra 4.3","ESP":"Cobra 4.3"},"description":{"ENG":"A scholar excursions manager software for students from the CECyT No. 8 - IPN school that allows to teachers and directives to create and supervise these. When all the information is entered, the system generates all the formats needed by the directorate in Word format. It was a huge idea because before Cobra, all the documents were filled out by hand, making the process so stressful, slow and full of errors.","ESP":"Un software de gestor de visitas para alumnos del CECyT No. 8 - IPN que permite a los maestros y directivos crear y supervisar dichas excursiones. Cuando toda la información es ingresada, el sistema genera todos los formatos necesitados por la dirección en formato de Word. Fue una gran idea porque antes de Cobra, todos los documentos eran llenados a mano, haciendo este proceso muy estresante, lento y repleto de errores."},"badges":["VisualBasic","Office Word","Office Access"],"roles":["Backend Developer","Database Manager"],"authors":["Maeli Dueñas","Cesar Coronado","Saul Garcia","Tonathiu Cruz"],"githubButton":"https://github.com/brokenerk/Cobra-4.3","color":"#dc3545"}]}')},"52af":function(e,t,a){e.exports=a.p+"img/allJeux.cc6c569f.jpg"},"56d7":function(e,t,a){"use strict";a.r(t);var o=a("7a23");const n={class:"container-fluid"},i={class:"row"};function r(e,t,a,r,s,c){const l=Object(o["q"])("language-switch"),d=Object(o["q"])("the-navbar"),u=Object(o["q"])("about-me-card"),p=Object(o["q"])("project-card"),b=Object(o["q"])("the-footer");return Object(o["m"])(),Object(o["f"])("div",n,[t[0]||(t[0]=Object(o["g"])("div",{id:"aboutMe"},null,-1)),Object(o["h"])(d,{"about-me-caption":c.aboutMeCaption,"projects-caption":c.projectsCaption,"resume-caption":c.resumeCaption,"resume-file-name":c.resumeFileName},{default:Object(o["t"])(()=>[Object(o["h"])(l,{id:"languageSwitch1"})]),_:1},8,["about-me-caption","projects-caption","resume-caption","resume-file-name"]),Object(o["h"])(u,{"welcome-text":c.welcomeText,"introduction-text":c.introductionText,"header-text":c.headerText,"resume-caption":c.resumeCaption,"resume-file-name":c.resumeFileName},{default:Object(o["t"])(()=>[Object(o["h"])(l,{id:"languageSwitch2"})]),_:1},8,["welcome-text","introduction-text","header-text","resume-caption","resume-file-name"]),Object(o["g"])("h1",null,Object(o["r"])(c.projectsCaption),1),Object(o["g"])("div",i,[(Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(s.projects,e=>(Object(o["m"])(),Object(o["d"])(p,{key:e.id,project:e,"take-a-look-caption":c.takeALookCaption,"download-it-caption":c.downloadItCaption,"see-in-github-caption":c.seeInGithubCaption,"more-info-caption":c.moreInfoCaption},null,8,["project","take-a-look-caption","download-it-caption","see-in-github-caption","more-info-caption"]))),128))]),Object(o["h"])(b,{developedByCaption:c.developedByCaption,poweredByCaption:c.poweredByCaption},null,8,["developedByCaption","poweredByCaption"])])}var s=a("89b0"),c=a("51e6");const l={class:"navbar navbar-expand-lg navbar-dark bg-dark fixed-top"},d={class:"container-fluid"},u={class:"navbar-nav ml-auto"},p={class:"nav-item"},b={class:"nav-link text-white"};function m(e,t,a,n,i,r){const s=Object(o["q"])("navbar-item");return Object(o["m"])(),Object(o["f"])("nav",l,[Object(o["g"])("div",d,[t[2]||(t[2]=Object(o["g"])("a",{class:"nav-link text-white",href:"#"},[Object(o["g"])("span",{class:"navbar-brand mb-0 h1"},"Enrique Ramos")],-1)),Object(o["g"])("button",{class:"navbar-toggler",onClick:t[0]||(t[0]=(...e)=>r.collapseNavbarList&&r.collapseNavbarList(...e))},t[1]||(t[1]=[Object(o["g"])("span",{class:"navbar-toggler-icon"},null,-1)])),Object(o["g"])("div",{class:"navbar-collapse",style:Object(o["l"])("display:"+i.collapseClass)},[Object(o["g"])("ul",u,[Object(o["g"])("li",p,[Object(o["g"])("div",b,[Object(o["p"])(e.$slots,"default")])]),Object(o["h"])(s,{href:"#aboutMe",caption:a.aboutMeCaption},null,8,["caption"]),Object(o["h"])(s,{href:"#projects",caption:a.projectsCaption},null,8,["caption"]),Object(o["h"])(s,{href:a.resumeFileName,caption:a.resumeCaption,target:"_blank"},null,8,["href","caption"])])],4)])])}const g={class:"nav-item"},h=["href","target"];function f(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("li",g,[Object(o["g"])("a",{class:"nav-link text-white",href:a.href,target:a.target},Object(o["r"])(a.caption),9,h)])}var j={props:["href","target","caption"]},v=a("6b0d"),y=a.n(v);const O=y()(j,[["render",f]]);var w=O,k={components:{NavbarItem:w},props:["aboutMeCaption","projectsCaption","resumeCaption","resumeFileName"],data(){return{collapseClass:"none"}},methods:{collapseNavbarList(){"none"===this.collapseClass?this.collapseClass="block":this.collapseClass="none"}}};const S=y()(k,[["render",m]]);var x=S,C=a("df57"),E=a.n(C);const P={class:"jumbotron"},N={class:"row"},I={class:"col-12 col-sm-12 col-md-8 col-lg-8"},T={class:"row"},A={class:"col-12 col-sm-9 col-md-9 col-lg-9"},D={class:"col-12 col-sm-3 col-md-3 col-lg-3"},M={class:"row"},L=["innerHTML"],B={class:"row"},G={class:"col-8 col-sm-12 col-md-8 col-lg-8"},z={class:"row"},q=["innerHTML"],F={class:"row"},R={class:"col-12 col-sm-12 col-md-3 col-lg-3"};function _(e,t,a,n,i,r){const s=Object(o["q"])("technologies-stack"),c=Object(o["q"])("social-networks"),l=Object(o["q"])("generic-button");return Object(o["m"])(),Object(o["f"])("div",P,[Object(o["g"])("div",N,[t[2]||(t[2]=Object(o["g"])("div",{class:"col-12 col-sm-12 col-md-1 col-lg-1"},null,-1)),t[3]||(t[3]=Object(o["g"])("div",{class:"col-12 col-sm-12 col-md-2 col-lg-2"},[Object(o["g"])("br"),Object(o["g"])("br"),Object(o["g"])("br"),Object(o["g"])("img",{src:E.a,class:"img-fluid rounded-circle"})],-1)),Object(o["g"])("div",I,[t[0]||(t[0]=Object(o["g"])("br",null,null,-1)),Object(o["g"])("div",T,[Object(o["g"])("div",A,[Object(o["g"])("h3",null,Object(o["r"])(a.welcomeText),1)]),Object(o["g"])("div",D,[Object(o["p"])(e.$slots,"default",{},void 0,!0)])]),Object(o["g"])("div",M,[Object(o["g"])("p",{class:"col-8 col-sm-12 col-md-8 col-lg-8",innerHTML:a.introductionText},null,8,L)]),t[1]||(t[1]=Object(o["g"])("b",null,"Technologies Stack",-1)),Object(o["g"])("div",B,[Object(o["g"])("div",G,[Object(o["h"])(s)])]),Object(o["g"])("div",z,[Object(o["g"])("p",{class:"col-8 col-sm-12 col-md-8 col-lg-8",innerHTML:a.headerText},null,8,q)]),Object(o["g"])("div",F,[Object(o["h"])(c),Object(o["g"])("div",R,[Object(o["h"])(l,{href:a.resumeFileName,color:"#343a40",caption:a.resumeCaption},null,8,["href","caption"])])])])]),t[4]||(t[4]=Object(o["g"])("div",{id:"projects"},null,-1))])}const V=["href"];function J(e,t,a,n,i,r){return Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(i.socialNetworks,e=>(Object(o["m"])(),Object(o["f"])("div",{class:"col-2 col-sm-2 col-md-2 col-lg-1",key:e.id},[Object(o["g"])("a",{href:e.link,class:"text-dark",target:"_blank"},[Object(o["g"])("i",{class:Object(o["k"])(e.icon)},null,2)],8,V)]))),128)}var H={data(){return{socialNetworks:[{id:"github",link:"https://github.com/brokenerk",icon:"fa fa-github fa-3x"},{id:"linkedin",link:"https://www.linkedin.com/in/eramos-/",icon:"fa fa-linkedin-square fa-3x"},{id:"email",link:"mailto: er204863@outlook.com",icon:"fa fa-envelope fa-3x"}]}}};const U=y()(H,[["render",J]]);var Q=U;const K={class:"row"};function W(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("div",K,[(Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(i.technologiesStack,e=>(Object(o["m"])(),Object(o["f"])("div",{class:"col-1 col-sm-1 col-md-1 col-lg-1",key:e.id},[Object(o["g"])("i",{class:Object(o["k"])(e.icon)},null,2)]))),128))])}var $={data(){return{technologiesStack:[{id:"python",icon:"fa devicon-python-plain fa-3x py-3"},{id:"flask",icon:"fa devicon-flask-original fa-3x py-3"},{id:"poetry",icon:"fa devicon-poetry-plain fa-3x py-3"},{id:"numpy",icon:"fa devicon-numpy-plain fa-3x py-3"},{id:"pandas",icon:"fa devicon-pandas-plain-wordmark fa-3x py-3"},{id:"javascript",icon:"fa devicon-javascript-plain fa-3x py-3"},{id:"nodejs",icon:"fa devicon-nodejs-plain-wordmark fa-3x py-3"},{id:"vuejs",icon:"fa devicon-vuejs-plain-wordmark fa-3x py-3"},{id:"react",icon:"fa devicon-react-original-wordmark fa-3x py-3"},{id:"sql",icon:"fa devicon-azuresqldatabase-plain fa-3x py-3"},{id:"sqlalchemy",icon:"fa devicon-sqlalchemy-plain fa-3x py-3"},{id:"azure",icon:"fa devicon-azure-plain fa-3x py-3"},{id:"aws",icon:"fa devicon-amazonwebservices-plain fa-3x py-3"},{id:"docker",icon:"fa devicon-docker-plain fa-3x py-3"},{id:"git",icon:"fa devicon-git-plain fa-3x py-3"},{id:"linux",icon:"fa devicon-linux-plain fa-3x py-3"}]}}};const X=y()($,[["render",W]]);var Y=X;const Z=["href"];function ee(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("a",{class:"btn text-white",style:Object(o["l"])({backgroundColor:a.color,borderColor:a.color}),href:a.href,target:"_blank"},Object(o["r"])(a.caption),13,Z)}var te={props:["href","color","caption"]};a("58c7");const ae=y()(te,[["render",ee],["__scopeId","data-v-4f0265da"]]);var oe=ae,ne={components:{SocialNetworks:Q,GenericButton:oe,TechnologiesStack:Y},props:["welcomeText","introductionText","headerText","resumeCaption","resumeFileName"]};a("241f");const ie=y()(ne,[["render",_],["__scopeId","data-v-06f75930"]]);var re=ie;const se={class:"col-12 col-sm-6 col-md-4 col-lg-4",id:"col-card"},ce={class:"card h-100"},le=["src"],de={class:"card-body d-flex flex-column"},ue={class:"row"},pe={class:"col-2 col-sm-2 col-md-2 col-lg-2"},be={class:"col-10 col-sm-10 col-md-10 col-lg-10",style:{"padding-top":"0.2rem"}},me={class:"card-title"},ge=["innerHTML"],he={class:"mt-auto"},fe={class:"card-footer text-center"},je={class:"row"},ve={key:0,class:"col"},ye={key:1,class:"col"},Oe={key:2,class:"col"},we={key:3,class:"col"},ke={key:4,class:"col"};function Se(e,t,n,i,r,s){const c=Object(o["q"])("icon-button"),l=Object(o["q"])("generic-button");return Object(o["m"])(),Object(o["f"])("div",se,[Object(o["g"])("div",ce,[Object(o["g"])("img",{src:a("b5a1")("./"+n.project.id+".jpg"),class:"card-img-top"},null,8,le),Object(o["g"])("div",de,[Object(o["g"])("div",ue,[Object(o["g"])("div",pe,[Object(o["g"])("i",{class:Object(o["k"])(n.project.icon)},null,2)]),Object(o["g"])("div",be,[Object(o["g"])("h5",me,Object(o["r"])(s.projectTitle),1)])]),Object(o["g"])("p",{class:"card-text",innerHTML:s.projectDescription},null,8,ge),Object(o["g"])("div",he,[(Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(n.project.badges,e=>(Object(o["m"])(),Object(o["f"])("span",{class:Object(o["k"])("badge text-"+s.checkTextColor),style:Object(o["l"])({backgroundColor:s.checkColor}),key:e},Object(o["r"])(e),7))),128)),t[0]||(t[0]=Object(o["g"])("br",null,null,-1)),(Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(n.project.roles,e=>(Object(o["m"])(),Object(o["f"])("span",{class:"badge badge-roles",key:e},Object(o["r"])(e),1))),128)),t[1]||(t[1]=Object(o["g"])("br",null,null,-1)),(Object(o["m"])(!0),Object(o["f"])(o["a"],null,Object(o["o"])(n.project.authors,e=>(Object(o["m"])(),Object(o["f"])("span",{class:"badge badge-secondary",key:e},Object(o["r"])(e),1))),128))])]),Object(o["g"])("div",fe,[Object(o["g"])("div",je,[n.project.infoButton?(Object(o["m"])(),Object(o["f"])("div",ve,[Object(o["h"])(c,{href:n.project.infoButton,color:n.project.color,icon:"fa fa-info-circle fa-3x",title:n.moreInfoCaption},null,8,["href","color","title"])])):Object(o["e"])("",!0),n.project.githubButton?(Object(o["m"])(),Object(o["f"])("div",ye,[Object(o["h"])(c,{href:n.project.githubButton,color:n.project.color,icon:"fa fa-github fa-3x",title:n.seeInGithubCaption},null,8,["href","color","title"])])):Object(o["e"])("",!0),n.project.branchButton?(Object(o["m"])(),Object(o["f"])("div",Oe,[Object(o["h"])(c,{href:n.project.branchButton,color:n.project.color,icon:"fa fa-code-fork fa-3x",title:n.project.branchButtonTitle},null,8,["href","color","title"])])):Object(o["e"])("",!0),n.project.takeALookButton?(Object(o["m"])(),Object(o["f"])("div",we,[Object(o["h"])(l,{href:n.project.takeALookButton,color:n.project.color,caption:n.takeALookCaption},null,8,["href","color","caption"])])):n.project.downloadItButton?(Object(o["m"])(),Object(o["f"])("div",ke,[Object(o["h"])(l,{href:n.project.downloadItButton,color:n.project.color,caption:n.downloadItCaption},null,8,["href","color","caption"])])):Object(o["e"])("",!0)])])])])}const xe=["href"],Ce=["title"];function Ee(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("a",{href:a.href,style:Object(o["l"])({color:a.color}),target:"_blank"},[Object(o["g"])("i",{class:Object(o["k"])(a.icon),title:a.title},null,10,Ce)],12,xe)}var Pe={props:["href","color","icon","title"]};const Ne=y()(Pe,[["render",Ee]]);var Ie=Ne,Te={components:{IconButton:Ie,GenericButton:oe},props:["project","takeALookCaption","downloadItCaption","seeInGithubCaption","moreInfoCaption"],computed:{language(){return this.$store.getters.englishLanguage},projectTitle(){return this.language?this.project.title.ENG:this.project.title.ESP},projectDescription(){return this.language?this.project.description.ENG:this.project.description.ESP},checkColor(){return"#6c757d"===this.project.color?"#f8f9fa":this.project.color},checkTextColor(){return"#6c757d"===this.project.color||"#ffc107"===this.project.color?"black":"white"}}};a("bef2");const Ae=y()(Te,[["render",Se],["__scopeId","data-v-7c7d391a"]]);var De=Ae,Me=a("61fa"),Le=a.n(Me),Be=a("e896"),Ge=a.n(Be);const ze={class:"row py-4 bg-dark"},qe={class:"container-fluid"},Fe={class:"m-0 text-center text-white"},Re={class:"m-0 text-center text-white"};function _e(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("footer",ze,[Object(o["g"])("div",qe,[Object(o["g"])("p",Fe,Object(o["r"])(a.developedByCaption)+" Enrique Ramos - Copyright "+Object(o["r"])(i.actualYear),1),Object(o["g"])("p",Re,Object(o["r"])(a.poweredByCaption),1),t[0]||(t[0]=Object(o["g"])("p",{class:"m-0 text-center text-white"},[Object(o["g"])("img",{src:Le.a}),Object(o["g"])("img",{src:Ge.a})],-1))])])}var Ve={props:["poweredByCaption","developedByCaption"],data(){return{actualYear:(new Date).getFullYear()}}};a("05a2");const Je=y()(Ve,[["render",_e],["__scopeId","data-v-1625e32a"]]);var He=Je;const Ue={class:"custom-control custom-switch"},Qe=["id","checked"],Ke=["for"];function We(e,t,a,n,i,r){return Object(o["m"])(),Object(o["f"])("div",Ue,[Object(o["g"])("input",{type:"checkbox",id:a.id,class:"custom-control-input",onClick:t[0]||(t[0]=(...e)=>r.switchLanguage&&r.switchLanguage(...e)),checked:!r.language},null,8,Qe),Object(o["g"])("label",{class:"custom-control-label",for:a.id},Object(o["r"])(r.languageCaption),9,Ke)])}var $e={props:["id"],computed:{language(){return this.$store.getters.englishLanguage},languageCaption(){return this.language?"Switch to Spanish":"Cambiar a Inglés"}},methods:{switchLanguage(){this.$store.dispatch("switchLanguage",{language:!this.language})}}};const Xe=y()($e,[["render",We]]);var Ye=Xe,Ze={components:{TheNavbar:x,AboutMeCard:re,ProjectCard:De,TheFooter:He,LanguageSwitch:Ye},data(){return{projects:c.projects}},computed:{language(){return this.$store.getters.englishLanguage},aboutMeCaption(){return this.language?s.ENG.aboutMe:s.ESP.aboutMe},projectsCaption(){return this.language?s.ENG.projects:s.ESP.projects},resumeCaption(){return this.language?s.ENG.resume:s.ESP.resume},resumeFileName(){return this.language?s.ENG.resumeFile:s.ESP.resumeFile},welcomeText(){return this.language?s.ENG.welcome:s.ESP.welcome},introductionText(){return this.language?s.ENG.introduction:s.ESP.introduction},headerText(){return this.language?s.ENG.header:s.ESP.header},takeALookCaption(){return this.language?s.ENG.takeALook:s.ESP.takeALook},downloadItCaption(){return this.language?s.ENG.downloadIt:s.ESP.downloadIt},seeInGithubCaption(){return this.language?s.ENG.seeInGithub:s.ESP.seeInGithub},moreInfoCaption(){return this.language?s.ENG.moreInfo:s.ESP.moreInfo},developedByCaption(){return this.language?s.ENG.developed:s.ESP.developed},poweredByCaption(){return this.language?s.ENG.powered:s.ESP.powered}},methods:{toggleLanguage(e){this.language=e}}};a("7974");const et=y()(Ze,[["render",r]]);var tt=et,at=a("5502");const ot=Object(at["a"])({state(){return{englishLanguage:!0}},mutations:{switchLanguage(e,t){e.englishLanguage=t.language}},actions:{switchLanguage(e,t){e.commit("switchLanguage",t)}},getters:{englishLanguage(e){return e.englishLanguage}}});var nt=ot;const it=Object(o["c"])(tt);it.use(nt),it.mount("#app")},"58c7":function(e,t,a){"use strict";a("0f8b")},"5cad":function(e,t,a){e.exports=a.p+"img/server.3eec7232.jpg"},"5ef0":function(e,t,a){},"61fa":function(e,t,a){e.exports=a.p+"img/vuejs.82b9c7a5.png"},"646a":function(e,t,a){},"6b85":function(e,t,a){e.exports=a.p+"img/oae.a26494b4.jpg"},"6c2b":function(e,t,a){e.exports=a.p+"img/chat.a21faa9b.jpg"},7974:function(e,t,a){"use strict";a("646a")},"82f2":function(e,t,a){e.exports=a.p+"img/ukraniofest.fdb3e18f.jpg"},8571:function(e,t,a){e.exports=a.p+"img/data-mining.657273d2.jpg"},"89b0":function(e){e.exports=JSON.parse('{"ENG":{"aboutMe":"About Me","projects":"Projects","resume":"Resume","resumeFile":"./cv/resume.pdf","takeALook":"TAKE A LOOK","downloadIt":"DOWNLOAD IT","seeInGithub":"See in GitHub","moreInfo":"More Info","developed":"Developed by","powered":"Powered by","welcome":"Welcome, I\'m Enrique Ramos","introduction":"I’m a Software Engineer specialized in backend development with 5 years of experience working in internal systems from diverse banking, marketing and retail enterprises.

Passionate for learning and understanding how to boost complex and engaging processes from any type, in order to provide to consumers robust, simplified and user-friendly products with the highest standards to analyze, organize and monitor information and data for their business decision makings.

I’m a curious and a proactive person, always looking to improve my hard skills such as problem solving, development with programming languages and technologies, algorithms and requirements analysis, software architecture and infrastructure design, but also other softer ones like teamwork, communication, assertiveness, ethic, leadership and management.","header":"Software Developer
Bachelor of Science in Computers Systems Engineering graduated at ESCOM - IPN
Technician Degree in Computation graduated at CECyT No. 8 - IPN
"},"ESP":{"aboutMe":"Sobre mí","projects":"Proyectos","resume":"Curriculum Vitae","resumeFile":"./cv/resume.pdf","takeALook":"DAR VISTAZO","downloadIt":"DESCARGAR","seeInGithub":"Ver en GitHub","moreInfo":"Más Info","developed":"Desarrollado por","powered":"Creado con","welcome":"Bienvenido, soy Enrique Ramos","introduction":"Soy un Ingeniero de Software especializado en desarrollo backend con 5 años de experiencia trabajando en sistemas internos de diversas compañias bancarias, de marketing y de autoservicio.

Apasionado por aprender y comprender cómo impulsar procesos complejos y atractivos de cualquier tipo, con el fin de ofrecer a clientes productos robustos, simplificados e intuitivos para el usuario con los más altos estándares que analicen, organicen y monitoreen información y datos para la toma de decisiones empresariales.

Soy una persona curiosa y proactiva, siempre buscando mejorar mis habilidades como la resolución de problemas, desarrollo con lenguajes de programación y tecnologías, algoritmos y análisis de requerimientos, arquitecturas de software y diseño de infraestructuras, sin olvidar aquellas otras sociales como trabajo en equipo, comunicación, asertividad, ética, liderazgo y gestión.","header":"Desarrollador de Software
Ingeniero en Sistemas Computacionales egresado de la ESCOM - IPN
Técnico en Computación egresado del CECyT No. 8 - IPN"}}')},"94c4":function(e,t,a){e.exports=a.p+"img/siga.5389b151.jpg"},a9d0:function(e,t,a){e.exports=a.p+"img/solar.e5a169e6.jpg"},b0bd:function(e,t,a){},b5a1:function(e,t,a){var o={"./allJeux.jpg":"52af","./apms.jpg":"0eb4","./cart.jpg":"daaf","./central.jpg":"c447","./chat.jpg":"6c2b","./cnn.jpg":"1c1b","./cobra.jpg":"4e3e","./compiler.jpg":"04a9","./data-mining.jpg":"8571","./oae.jpg":"6b85","./papplus.jpg":"d412","./photo.jpg":"df57","./rand.jpg":"3e4d","./saeeb.jpg":"152d","./sensor.jpg":"ce8e","./server.jpg":"5cad","./siga.jpg":"94c4","./sniffer.jpg":"d2f5","./solar.jpg":"a9d0","./stars.jpg":"dc57","./tt.jpg":"316a","./ukraniofest.jpg":"82f2"};function n(e){var t=i(e);return a(t)}function i(e){if(!a.o(o,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}n.keys=function(){return Object.keys(o)},n.resolve=i,e.exports=n,n.id="b5a1"},bef2:function(e,t,a){"use strict";a("50ca")},c447:function(e,t,a){e.exports=a.p+"img/central.e9a9e1ef.jpg"},ce8e:function(e,t,a){e.exports=a.p+"img/sensor.2cd12aa8.jpg"},d2f5:function(e,t,a){e.exports=a.p+"img/sniffer.29c1383b.jpg"},d412:function(e,t,a){e.exports=a.p+"img/papplus.9adbabc6.jpg"},daaf:function(e,t,a){e.exports=a.p+"img/cart.0704bf3b.jpg"},dc57:function(e,t,a){e.exports=a.p+"img/stars.9a86a505.jpg"},df57:function(e,t,a){e.exports=a.p+"img/photo.db62764e.jpg"},e896:function(e,t,a){e.exports=a.p+"img/bootstrap.b4ce8da8.png"}}); //# sourceMappingURL=app.fac79995.js.map