Project: Automated UCI Classroom Schedule Aggregator
Overview:
During my work at UC Irvine, I identified a significant inefficiency in how my team and other departments accessed classroom schedules. To address this, I independently developed an automated tool using Google Sheets and web scraping techniques to consolidate schedule information from multiple university portals into a single, user-friendly interface.
The Challenge:
Checking the schedules for over 180 classrooms involved logging into two separate, often cumbersome university scheduling websites (like 25Live). The mobile interfaces for these portals were particularly user-unfriendly, making quick schedule checks on the go difficult. This manual process was time-consuming and inefficient for our daily operations, which included managing AV/IT support across these numerous rooms.
My Solution & Approach:
Within the first few months of my role, I designed and built this "Classroom Schedule Aggregator" as a practical solution:
Automated Data Retrieval:
Using my expertise in spreadsheet applications and data manipulation (likely involving Google Apps Script or a similar mechanism to perform web scraping), the tool automatically pulls real-time schedule data directly from the university's scheduling portals.
Centralized & User-Friendly Interface:
The information is consolidated into a Google Sheet with a simple dropdown menu to select a classroom. It presents the schedule in an easy-to-read format, optimized for both desktop and mobile viewing.
Real-Time Accuracy:
By fetching live data, the tool ensures users always have the most up-to-date scheduling information, eliminating reliance on potentially outdated or manually compiled lists.
Impact & Outcomes:
Significant Time Savings & Increased Productivity: The tool drastically reduced the time and effort required for staff to check classroom schedules, empowering them to quickly find available rooms or verify bookings.
Widespread Adoption & Enhanced Efficiency: Created solely by myself, this tool was quickly adopted and became heavily utilized by nearly everyone within my department and even shared with other departments, highlighting its practical value.
Improved User Experience: It provided a vastly superior mobile experience compared to the official portals, directly addressing a key pain point for staff working across campus.
Optimized Resource Management: By making schedule information readily accessible, it indirectly supported better classroom utilization and coordination for support tasks.
Demonstrated Initiative & Problem-Solving: This project showcases my ability to identify inefficiencies, leverage technical skills (data manipulation, web integration) to develop practical solutions, and create tools that enhance operational workflow.
-
This automated scheduler is a clear example of my commitment to process improvement and delivering user-centric solutions that directly benefit team productivity and operational effectiveness.
____________________________________________________________________________________________________
Connectivity Scout​​​​​​​
Project: Custom Network Device Connectivity Scout & Uptime Logger​​​​​​​
Overview:
I developed a custom tool using Python and the Google Sheets API to automate the monitoring of network device connectivity within our department. This solution provided a clear, daily overview of device statuses, integrated seamlessly with existing data workflows, and generated valuable data for proactive maintenance and disaster recovery planning.
(Image 1: Screenshot of the Google Sheets dashboard showing online/offline devices. Image 2: Snippet of the Python script for connectivity checks.)
The Challenge:
Our department needed an efficient way to track the online status of numerous critical devices spread across various locations. While commercial solutions existed, they often involved significant costs, complex setup, or cumbersome processes for importing and managing our pre-existing device inventory data (which was maintained in spreadsheets with device names, IP addresses, and locations). The goal was to create a tailored, low-overhead solution.
My Solution & Approach:
Recognizing the limitations of off-the-shelf options, I designed and built the "Connectivity Scout" in approximately four days. The key aspects of the solution included:
Python Scripting:
A Python script was developed to systematically ping or check the responsiveness of each device listed.
Google Sheets Integration:
The script directly interfaced with a shared Google Sheet, updating device statuses (online/offline) and last-seen timestamps in real-time. This leveraged a familiar interface for the team and allowed for easy management of the device list.
Tailored Data Handling: A significant advantage was its ability to directly use our existing spreadsheets. This eliminated the need for complex data migration and made adding or updating device information straightforward for the team.
Impact & Outcomes:
Proactive Daily Monitoring: The tool became a daily resource, enabling us to proactively identify and address offline devices, often before they impacted users or critical classroom activities.
Simplified Operations: Its integration with Google Sheets meant minimal learning curve and hassle-free maintenance for the team.
Enhanced Disaster Recovery Planning: The daily logs of device statuses proved invaluable. Over time, this data helped us identify patterns, such as which devices were most susceptible to power-related issues like brownouts or surges.
Data-Driven Preventative Measures: These insights directly informed our disaster recovery strategies and led to targeted preventative actions, such as reinforcing specific vulnerable devices with additional surge protection, thereby improving overall system resilience.
Rapid, Cost-Effective Development: This custom solution was developed quickly and without incurring licensing costs, providing immediate value to the department.

-


This project demonstrates my ability to identify operational needs, rapidly develop practical solutions using scripting and APIs, and create tools that not only solve immediate problems but also provide long-term data insights for strategic improvements.
____________________________________________________________________________________________________
Project: AI-Powered Departmental Knowledge Assistant
Overview:
To enhance our department's ability to quickly access information from an extensive library of Confluence articles (hundreds of incident responses and solutions), I set up and configured an extensible, self-hosted AI interface called OpenWebUI. This system utilized a Retrieval-Augmented Generation (RAG) approach, leveraging the campus-provided ZotGPT API (an Azure-proxied version of ChatGPT), to provide an intelligent search and summarization capability for our internal documentation.
The Challenge:
While our Confluence knowledge base was comprehensive, navigating and finding specific solutions or incident responses within hundreds of articles could be time-consuming, especially for newer team members like our student workers. The goal was to create a more intuitive and efficient way to query this internal knowledge.
My Solution & Technical Implementation:
Self-Hosted AI Interface: Deployed OpenWebUI on our internal office VLAN, providing a secure and accessible platform for AI interaction.
Leveraging Campus AI Resources: Integrated the system with the ZotGPT API, ensuring compliance with campus AI usage policies.
Retrieval-Augmented Generation (RAG): The core of the project involved setting up a RAG pipeline. I developed a Python script to interact with the Atlassian Confluence API, allowing the AI to fetch and process relevant content directly from our department's knowledge base articles.
Focused Use Case: This system was designed to act as an intelligent assistant, making it easier to find specific procedures, troubleshooting steps, or past solutions documented in Confluence.
Impact & Outcomes:
Improved Knowledge Accessibility: Significantly streamlined the process of searching through hundreds of internal documents, providing quick and contextually relevant answers.
Empowered Student Workers: This tool had a particularly huge positive impact on the efficiency and autonomy of our student workers. They were able to find answers and resolve issues more independently, considerably reducing their need to request assistance from senior staff.
Enhanced Team Efficiency: While particularly beneficial for student workers, senior staff also found it useful at times for quickly locating specific pieces of information.
Demonstrated Foresight: Shortly after this implementation, Confluence itself introduced a similar AI-powered search functionality. This validated the need and the approach I had taken, demonstrating a proactive understanding of how AI could enhance knowledge management.
Learning & Reflection:
This project was a valuable exercise in applying emerging AI technologies (RAG, LLM interfaces) to solve a practical internal challenge. Even though the specific tool was eventually made less critical by platform updates, it successfully demonstrated the power of AI-enhanced search for internal knowledge bases and provided significant interim benefits to the team. It also honed my skills in API integration, self-hosting applications, and tailoring AI solutions for specific organizational needs.
____________________________________________________________________________________________________
Project: ServiceNow Quickfill -  Chrome Extension
Overview:
CTS SN Quickfill is an open-source Google Chrome extension I developed to streamline and accelerate the process of completing forms and records within ServiceNow instances. It allows users to save, manage, and quickly apply predefined default values and custom entries to common fields, significantly reducing manual data entry and improving efficiency for ServiceNow users.
The Project & Motivation:
As a frequent user of ServiceNow, I identified an opportunity to reduce repetitive data entry and improve workflow efficiency when creating or updating records. While ServiceNow has native templating features, I envisioned a more dynamic tool that would allow for quick on-the-fly adjustments and personalized default settings that are easily manageable. This led to the creation of CTS SN Quickfill.
Key Features & Functionality:
Quick Fill Modal: An intuitive pop-up modal for inputting and applying values to various ServiceNow fields.
Customizable Defaults: Users can set and save default values for common fields like Category, Channel, State, Caller, Configuration Item, Assignment Group, and Assigned To.
Dynamic Dropdown Management: Allows users to save, manage, and easily select from lists of frequently used entries for fields like Caller and Configuration Item, complete with add/remove functionality.
On-Page "Quickfill Defaults" Button: A convenient button injected directly onto the ServiceNow form to apply all saved default values with a single click.
Smart Field Interaction: Engineered to correctly trigger ServiceNow's internal field processing for reliable data assignment.
User-Centric Design: Features clear labels, intuitive controls, visual cues for default settings, and an optional "Auto-Open on New" setting for enhanced workflow integration.
Technical Highlights:
Developed using standard web technologies: HTML, CSS, and JavaScript.
Interacts with the ServiceNow DOM to identify fields and inject UI elements.
Utilizes Chrome's local storage for persisting user preferences and default values.
Published on the Chrome Web Store and available as open-source on GitHub for community contributions and transparency.
Availability:
GitHub Repository: https://github.com/RonnieSNAFU/CTS-SN-Quickfill/tree/main
Chrome Web Store: https://chromewebstore.google.com/detail/cts-sn-quickfill/eadefppnebkkoidiehagfbkppiahlioh
Learning & Impact: This project was a valuable experience in browser extension development, DOM manipulation, and creating user-focused productivity tools. It showcases my ability to identify user needs, design a practical solution, and execute its development from concept to a published application. The extension has the potential to save users significant time and reduce errors in their daily ServiceNow usage.
____________________________________________________________________________________________________
Project: Personal AI Chat Playground & Multi-Model Gateway
Go to ai.ronnieaishman.com, create an account, and email me if you want to test OpenWEBUI
Overview:
Driven by my interest in AI and efficient tooling, I engineered a personal, self-hosted AI chat environment accessible via a secure subdomain (https://ai.ronnieaishman.com). This setup leverages OpenWebUI for an enhanced user interface, LiteLLM as an API proxy for various Large Language Models (LLMs), and robust containerization and security practices. The platform serves as a personal AI experimentation hub and is also shared with close friends.
Technical Architecture & Implementation:
Host Environment: Deployed on a home server running Windows Subsystem for Linux (WSL), with SELinux enabled for enhanced system security.
Containerization (Docker): The entire application stack is containerized using Docker, ensuring portability, isolation, and ease of management. Separate Docker containers were configured for:
OpenWebUI: Providing a feature-rich, self-hosted web interface for interacting with LLMs, surpassing many native UIs with features like RAG support.
LiteLLM: Acting as an intelligent API proxy. This allows consolidation of multiple LLM API endpoints and enables granular API key management, including allowing friends to securely use their own API keys for cost-effective access.
SWAG (Secure Web Application Gateway): An Nginx-based reverse proxy that automatically handles SSL certificate provisioning and renewal (via Let's Encrypt) for https://ai.ronnieaishman.com, ensuring secure HTTPS access.
Networking & Security:
SWAG manages secure external access and routes traffic to the appropriate backend services.
SELinux provides an additional layer of mandatory access control on the host system.
User Management: OpenWebUI's user management features are utilized to allow friends to create their own accounts and use their own API keys, promoting fair usage and cost management.
Key Features & Benefits:
Enhanced AI Interaction: Provides a superior, customizable interface for interacting with various LLMs compared to standard offerings.
Centralized API Management: LiteLLM simplifies interaction with multiple LLM backends and offers flexible API key management.
Cost-Effective Sharing: Friends can leverage the platform using their own API keys, making access to powerful AI models more affordable than individual subscriptions.
Secure Self-Hosting: Demonstrates the ability to securely deploy and manage web applications with proper SSL encryption and host security (SELinux).
Practical Application of DevOps Principles: Showcases skills in containerization, reverse proxy configuration, API integration, and system security in a personal project context.
This project serves as a practical demonstration of my capabilities in deploying, securing, and managing modern web applications and AI tools, from the underlying infrastructure to the user-facing interface. It also highlights my proficiency in leveraging containerization and automation for efficient and secure application delivery.
Back to Top