• Designed and developed a visualization tool for the exploration of generic and large knowledge graphs through filtering, exploration, and grouping features.
• Implemented the tool module in three different knowledge graph environments: DBpedia and two private knowledge bases.
• Conducted a 10-user evaluation where the tool outperformed the baseline in one of the two defined user tasks and reached a 79.5 score in the System Usability Scale method.
Technology stack: Java, Spring Boot, Vue.js, D3.js, SPARQL.
• Executed performance tests of existing trained classification/segmentation models (cytology field) fine-tuning with the group’s private oral cell image dataset.
• Studied deep learning techniques applied to image classification and segmentation.
Technology stack: TensorFlow, Python.
Back-end team (October 2021 – March 2022):
• Implemented a database event proxy REST API service, in the OpenAPI Specification, almost zeroing the rate of accumulated database commands in the notification service.
• Created a service dynamic installer, making the process of creating specific new instances easier.
• Implemented the replaceable tags feature in the body of a message in the notification service for clients.
• Technology stack: Delphi.
Front-end team (February 2021 – September 2021):
• Developed a simulated exchange wallet component for the crypto trading web platform, supporting virtual positions.
• Optimized the login screen loading with JavaScript asynchronous imports, reducing its required file size by 47%.
• Designed an asset conversion method from several different quote sources using JavaScript promises.
• Technology stack: Vue.js, JavaScript, CSS, HTML.
• Applied the Nearest Centroid algorithm and TF-IDF method to build an advisor recommendation system.
• Developed The Gold Tree, a web tool for academic genealogy analysis.
• Cleaned anomalies in a database with more than 500 thousand rows.
• Received a research scholarship.
• Technology stack: PostgreSQL, JavaScript, HTML, CSS, Python, Scikit-Learn.
Publications:
[1] Madeira, G., Borges, E.N., Baranano, M., Nascimento, P.K., Lucca, G., de Fatima Maia, M., Santos, H.S. and Dimuro, G.P., 2019. The Gold Tree: An Information System for Analyzing Academic Genealogy. In Proceedings of the ICEIS 2019 (pp. 114-120).
[2] Madeira, G., Borges, E.N., Lucca, G., Santos, H. and Dimuro, G., 2019. A tool for analyzing academic genealogy. In Lecture Notes in Business Information Processing, vol 378, (pp. 443–456).
[3] Madeira, G., Borges, E.N., Lucca, G., de Carvalho Segundo, W., Wieczynski, J.C., Santos, H.S. and Dimuro, G.P., 2021. Using Academic Genealogy for Recommending Supervisors. In Proceedings of the ICEIS 2021 (pp. 885-892).
GPA: 9.32/10.00
Some of the topics covered:
• Logic and Programming Languages
• Operating Systems
• Hardware
• Interpretation of Computer System Specifications
• Databases
• Programming Logic
• Operating System
• Types of User Interfaces
• Designing, Analyzing, and Planning Software Development
This is an application for generating ASCII arts from images. In its interface, there are some pre-processing image operations like resize, brightness, contrast, threshold, edge detect (Canny), and blur. Those are used to adjust the input image for better results in the output of the two available algorithms for conversion to ASCII code implemented in this app.
The first is a structure-based algorithm, using the template matching strategy, where an 8x8 kernel iterates the image computing the difference with all characters glyphs, and the one with less difference is chosen. Now, the second one is tone-based, where a density strategy is used. Given a pixel, the luminance 0-255 value is mapped to an array of characters ordered by density.
The project was developed for the final assignment of the Fundamentals of Digital Image Processing course (INF01046) at UFRGS.
The goal of this project was to build an application for image manipulation (like Adobe Photoshop) but implement the image operations instead of using some method of existent libraries.
There are available operations like 3x3 convolution, quantization, brightness, contrast, rotation, flip, zoom in/out and negative.
This application was developed for Fundamentals of Digital Image Processing course (INF01046) at UFRGS.
INFinityDrive is a Dropbox-like service, that allows file sharing with automatic synchronization between different devices.
It is implemented using the Transmission Control Protocol (TCP) Socket API with C++. In its core functions, important concepts such as programming with multiple processes/threads, communication and concurrency control were used.
Another important mechanism implemented is the replication system with leader election. Using the Ring Election Algorithm it makes sure that when the primary server crashes, a backup server takes the responsibility.
It was tested with 5 computers connected to a network. One as the main server, 2 as backup servers and 2 as clients. Tests included:
This project was developed for the Operating Systems II course at INF-UFRGS.
The goal of this project was to build a compiler from scratch for a language specified by the professor. It was separated into 7 incremental parts:
This project was developed for the Compilers course at INF-UFRGS.
It includes the pre-processing, classification model and evaluation of a recommendation system based on academic genealogy.
Selecting an academic supervisor is a complicated task. Masters and Ph.D. candidates usually select the most prestigious universities in a given region, investigate the graduate programs in a research area of interest, and analyze the professors’ profiles. This choice is a manual task that requires extensive human effort, and usually, the result is not good enough. In this paper we propose a Recommender System that enables one to choose an academic supervisor based on his/her academic genealogy. We used metadata of different theses and dissertations and applied the nearest centroid model to perform the recommendation. The obtained results showed the high precision of the recommendations, which supports the hypothesis that the proposed system is a useful tool for graduate students.
Games usually have graphics and sound. However, as the visual is usually preferred, it ends up not taking advantage of resources that an audio-only game could offer. Murk's idea is to be an immersive game by listening, where there are no graphics, just sounds. The user will put on headphones, close his eyes and concentrate to understand where he is and what elements are around him. Game's main goal: turn off radios across the map by surviving the monsters.
This project was developed for the Human-Computer Interaction course at INF-UFRGS.
This work seeks to use the technique of creating knowledge graphs to recommend news and users. A knowledge graph was built from the MIND dataset through an initial pre-processing and storing it in a Neo4j database, which is based on graphs. After that, queries and an interaction interface for news and user recommendation were developed.
Currently, news and users are recommended simply by searching first-level nearby nodes. More complex methods could be implemented using the same knowledge graph.
This project was developed for the Database Project course at INF-UFRGS.
Academic genealogy investigates the relationships between student researchers and academy professionals. In recent years, it proved to be a powerful technique to help analyze the spread of scientific knowledge. Tools that make to visualize these relationships among academics easier are potentially useful and have been proposed.
This work specifies and describes the development of a Web information system for creating and visualizing academic genealogy trees from a set of metadata extracted and integrated from multiple sources. The proposed system allows a researcher to query and track information about his or her advisers and graduate students at any level. A case study was explored to validate the system using data from more than 570 thousand theses and dissertations.
The project was developed in the Information Management Research Group (GINFO) of the Universidade Federal do Rio Grande (FURG) and was partially funded by the FAPERGS.
Z-Waves is a game where you survive in a zombie-apocalyptic world. There are successive waves of zombies, making the game harder and harder. You can find "Cow boosts", which give more speed, rate of fire, and extra life.
This project was built using OpenGL for the Fundamentals of Computer Graphics course at INF-UFRGS.
Simple music creator using Java and Jfugue music lib.
Given a list of commands, those are converted to music when the user presses play.
Project developed for the discipline of Program Construction Techniques (INF01120) at UFRGS.
Youtube database modeling and a simple tool to connect with db and run some interesting queries
Developed for the discipline of Database Fundamentals (INF01145) at UFRGS.