It’s been about two years since my last reflection post – originally a habit formed through my GAANN fellowship, but one I’ve missed keeping up with. As I near the end of my PhD and continue teaching, I’ve realized how valuable these reflections are for tracking my growth and clarifying what I want to improve moving forward.
This year, I taught three different courses as a Visiting Lecturer (yay!) and a continuing PhD student:
- Intro to Data Mining (two sections each semester)
- Intro to Machine Learning (first time teaching it last semester)
- Data Structures (first time teaching this course this semester)
Each brought its own unique challenges and lessons. Below are some key takeaways and goals I’m setting for myself going forward.
General Teaching Reflections
Across all my classes, one of the themes this year was building structure without sacrificing flexibility. I care about student-centered learning and love giving students room to grow, especially in project-based courses. Still, I’ve learned that this freedom can sometimes become overwhelming without strong scaffolding.
In Intro to Data Mining, I tried having students start their group final projects earlier, which was great in theory but ended up feeling a bit messy in execution. I already require students to complete a project proposal and a section on group expectations (a group “contract”). However, I feel like some groups still struggled. Next semester, I want to provide more structure: clear checkpoints, better templates, and some support around project management skills. Many students may encounter this type of group work for the first time, and I want to better prepare them for success.
Teaching Intro to Machine Learning for the first time was a major milestone, and it was hard. My impostor syndrome was strong. I spent many late nights trying not just to review material but to convince myself I really knew it. What helped most was realizing how much overlap there was with Data Mining. Once I became more familiar with the terminology and could clearly organize the content in my own head, I gained the confidence I needed to teach it well. I helped support weekly quiz creation and am incredibly grateful for Dr. Lee’s support, especially over the summer while preparing. The homeworks were deeply thoughtful and challenging. I learned a lot just from seeing how they were structured. While it was stressful, it’s also satisfying to now look back and think: I did that. I made it.
One moment that really stuck with me was when I came into class after a particularly long night of reviewing material. I explained a math concept, breaking it down step-by-step, and one sleepy student wrapped in a blanket suddenly shouted, “That’s it??” It was such a heartwarming moment for me. What had initially seemed intimidating now made sense, and I felt proud that I was able to make the content approachable. Those reactions, where something clicks, make it all worth it.
In Data Structures, I started off feeling a bit unsure of my role, mostly giving out activities and wondering if students were really learning. But by mid-semester, I found my rhythm: I incorporated short whiteboard lectures, invited students up to break down problems together, and did more live coding demos to walk through more complex concepts like trees and recursion. This helped shift the classroom energy and made things more interactive and engaging. This was very enjoyable, and I want to continue building on these strategies next semester.
I also loved the team I worked with this semester! Dr. Perez in particular was incredibly helpful and kind every time I had questions or needed help figuring out a tool. He did so much behind-the-scenes work, and I learned a lot just from collaborating with him and seeing how he approaches both teaching and course logistics.
Reflecting on my course evaluations for the year:
Across both semesters, students commented on my organizational clarity, flexible teaching style, and focus on creating an inclusive learning environment. In Machine Learning, students appreciated the mix of math foundation, applied coding, and real-world final project design. In Data Mining, the autonomy and structure of project-based learning was particularly praised, with students enjoying the ability to tailor their work to personal interests (which I loved to see all the varied projects!). Across courses, many emphasized the helpfulness of hybrid options, allowing students to join through Zoom when needed for 3156 and 3162, Discord for informal out-of-class communication (though it seemed relatively quiet, perhaps they just appreciated the option), and my responsiveness to emails. This was particularly reassuring, since oftentimes I’d feel a bit overwhelmed with the increased email volume compared to previous years (and only teaching one class per semester). Areas for growth include offering more varied or scaffolded project support and continuing to refine how flipped content is balanced in-class.
Designing for Student Experience
One of the most meaningful professional development experiences I had this year was participating in the CCI Student Classroom Experience Taskforce. This initiative gave me access to student engagement data from my own courses—categorized into groups like “ghosts,” “jets,” “lost,” and “shocked”—and helped me reflect further on how course structure, time, and environment shape student participation.
It was especially eye-opening to compare two sections of the same class (Data Structures), taught the same way, yet yielding different student engagement patterns.
- In Section 002 (T/R at 4 PM in a traditional lecture hall), I had more ghosts, jets, and lost students. The lecture-style room layout, with students sitting far from the front and limited ability to move around, made it harder to foster informal conversation or group collaboration. I also noticed that students seemed more fatigued by that time of day, possibly juggling work or other classes beforehand, making it harder to engage deeply.
- In contrast, Section 051 (M/W/F at 12 PM in a lab-style room) had far fewer ghosts, jets, and lost (0–1%), but a higher number of shocked students. The closer, lab-style setup made it easier to interact with students and encourage questions and collaboration. The earlier time slot (but not too early) likely helped with energy and focus as well.
These observations affirmed something I’ve long felt intuitively: environment and timing matter, even when content and instruction are consistent. Classroom format can influence whether students feel connected, safe to ask questions, or able to work with peers. I’ve started rethinking how I choose activities, structure group work, and even when I hold office hours based on these factors.
I also participated in the Faculty Showcase for Professional Development and Teaching, where I had the chance to impromptu support a presentation on our ITCS 2214 course. We highlighted the use of active learning and CodeWorkout, a flexible platform that gives students immediate coding feedback, and discussed how students learn to write their own tests. This session reminded me of how much I enjoy co-creating meaningful learning environments and also introduced me to a resource I’m excited to explore further: KEEN Cards, a platform where educators can share activities, course content, and instructional ideas. I’d love to explore how I might use one in my own teaching, or even publish a card myself one day to share something from my Data Mining course.
Separately, these experiences—especially the showcase and the Ally industry visit—got me thinking more about entrepreneurial learning in the classroom. Not necessarily in a business-focused sense, but in how we encourage students to take ownership of their work, define their own questions, and practice creative, self-driven problem solving. It was affirming to realize that many of the things I already do—like having students build portfolios, break down real-world problems, and develop communication skills—are aligned with these values.
All of these experiences reinforced that classroom design is not just about content delivery. It’s about community, flexibility, and empowering students to see themselves as capable, growing professionals.
Student Community and Engagement
This year, I served on the CS Outreach and Student Organizations Committee, a faculty committee focused on supporting and promoting student engagement. Through this, I heard about a group of students interested in forming a CCI Student Council, and I was excited to help however I could. Although the Council is student-led, I ended up attending their bi-weekly meetings as well—initially just to be a resource, but I found myself genuinely enjoying the discussions and energy they brought.
One way I supported their efforts was by helping design a faculty interest form. The goal was to find out which instructors would be open to having student organizations briefly visit their classes, what types of orgs they’d be open to, and what protocols or timing would work best. It was a simple but impactful step to help bridge communication between students and faculty.
Listening to the students’ enthusiasm and initiative was incredibly motivating, and I’m hopeful about continuing to support them moving forward. This experience also tied into some inspiration I got from a presentation by Dr. Shehab near the end of the semester, with one point emphasizing the importance of highlighting student accomplishments. As a small step in that direction, I’ve started encouraging students to connect with me on LinkedIn so I can endorse their skills and cheer them on outside the classroom. I’d love to take further steps in the future—perhaps through more structured shoutouts, portfolio features, or social media engagement that celebrates the great work students are doing.
Industry Connections in the Classroom
A continued goal for my Data Mining course has been bridging the gap between coursework and the professional world. This semester, I reached out to Jay Skipworth to explore the idea of inviting industry professionals for a “Day in the Life of a Data Scientist” presentation. I’m also hopeful some of them will attend students’ final project presentations—a valuable opportunity for students to share their work with a broader audience and gain external feedback.
One of the highlights of the year was visiting Ally with other faculty and engaging in rich, candid conversations with industry partners. It was a reminder of how powerful informal, honest exchanges can be in shaping both curriculum and student preparation. I left the visit feeling energized and inspired—not just to invite more professionals into my classroom, but to lower the barriers to that engagement. Even casual conversations, async Q&As, or lightweight guest visits could make a meaningful impact.
I’ve also been thinking more about how I can empower students to take initiative in building their professional networks. As we near the end of this semester, I have started encouraging students to add skills to their LinkedIn profiles and connect with me and others. I’d love to build on that momentum next year—possibly through alumni spotlights or career Q&A boards.
AI for Learning
This year also deepened my interest in AI’s role in education, not just as a tool students might use, but as a learning partner. In my Data Mining class, I introduced discussions around responsible AI use and encouraged students to co-create classroom norms around tools like ChatGPT. In Data Structures, I saw firsthand how easy it is for students to over-rely on AI without developing foundational problem-solving skills, so I tried to focus more on scaffolded exercises and class discussions that helped students reflect on why certain solutions work. I discovered that I really needed to put more emphasis on the importance of problem solving and critical thinking as a skill for them to practice and develop, and not something to let AI tools do for them, despite my openness to its use in the Data Mining class.
Much of this reflection has also been shaped by conversations with fellow faculty, particularly Dr. Ayman Hajja and the CHAIS group, whose insights pushed me to think more critically about the long-term implications of AI in learning. These discussions helped reframe my approach: rather than focusing solely on managing student use of AI, I’ve become more interested in how we can teach students to use AI meaningfully, as part of their learning growth, not as a shortcut.
I was also able to present at this year’s Charlotte AI Summit for Smarter Learning, about which I will write another reflective post. I explored this topic further by discussing my experiences on co-creating AI usage policies with students, balancing trust and accountability, and building a classroom culture that treats AI as a supportive companion, not a crutch. Preparing for this talk has inspired me to experiment with future ideas like:
- Guided AI reflection prompts
- Structured peer review with optional AI support
- In-class debates on AI’s role in learning and labor
This is still very much a work in progress, but I’m excited to continue the conversation and to keep refining my approach as both technology and student needs evolve.
Final Thoughts
Teaching multiple courses while finishing my dissertation has been a balancing act, but it’s also been incredibly rewarding. I feel more confident in my teaching style as I continue to grow and experiment with new strategies, especially when I lean into a blend of interactive demos, collaborative problem solving, and real-world connections.
There’s still a lot to learn, but for now, I’m thankful for my students, my teaching teams and mentors, and the opportunity to keep growing.
Looking forward to summer and next year. 🙂
