Academic work

of Info

School

This section displays the Python code responsible for reading employee data from a CSV file, calculating race and gender distributions, and reducing company costs by adjusting salaries.

(Left) The employee data lists detailed demographic and salary information, which is used for further analysis on race, gender, and hiring trends.


(Right) The output summarizes key insights from the employee data: it includes the breakdown of hires by year, distributions of race and gender, combined counts of race and gender, and a salary reduction summary to achieve cost-saving targets.

DeGraffenreid v. GM Data Analysis

In my SI 206 coursework, I completed a data analysis project involving CSV files and nested dictionaries to explore the DeGraffenreid v. General Motors case, a pivotal civil rights lawsuit. The project focused on analyzing GM's layoff policies to reveal potential discrimination patterns. I developed Python scripts to read, process, and analyze employment data, considering race and gender factors.


I also designed an algorithm for an alternative layoff strategy, balancing ethical considerations with financial constraints. This project enhanced my skills in data manipulation and highlighted the complexities of algorithmic decision-making in socially sensitive contexts.

Coding projects

This project highlighted the impact of seniority-based layoff policies on marginalized groups, revealing how such practices can unintentionally reinforce systemic biases. Analyzing intersectional data emphasized the importance of considering overlapping identities to uncover deeper patterns of discrimination. Additionally, working with algorithms for layoff decisions emphasized the need for ethical considerations in data-driven approaches, as purely numerical solutions often overlook human complexities.

To effectively gauge availability, I developed a custom metric that assigns priority levels to various commitments, like exams, projects, and meetings. By considering the unique demands of each task, I assigned weights that reflect their importance. These weights were informed by feedback from my classmates, who shared insights on how they typically prioritize their own schedules. This method allowed me to create a nuanced system that not only tracks direct commitments but also accounts for necessary preparation time, giving a realistic picture of someone’s availability based on their workload.

Schedule Availability Analyzer

The Schedule Availability Analyzer is a tool designed to streamline scheduling by determining an individual's availability based on their commitments. By uploading a CSV file containing details on exams, projects, meetings, and other activities, users can input a person’s identifier (uniqname) and check their availability for a specific date. The tool considers both the direct commitment dates and preparation times, providing a comprehensive view of when a person is free or busy. This application helps optimize the planning process for meetings or events by offering a clear insight into potential scheduling conflicts.


Through this project, I enhanced my skills in handling CSV data, working with date manipulations, and implementing custom logic for availability analysis, all within Python. This experience also provided valuable insights into how tools like this can support effective time management for groups and individuals.