Inspiration
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Calendar
I recently started learning C#, and this is one of my first real projects. I wanted to build something practical, not just small console exercises. Since I’m connected to tutoring, I decided to create my own calendar application for a tutor, something simple, clear, and convenient for everyday work.
The main idea was to make a weekly schedule where lessons can be added, viewed, and managed easily. I also wanted to include a small subscription system to track how many lessons a student has completed.
I wanted to challenge myself and move from theory to practice. Watching tutorials is helpful, but building something from scratch forces you to really understand how things work.
I thought: “Why not create a tool that could actually be used in real life?” That’s how the idea of a tutor calendar was born.
I built the project using:
C#
Windows Forms (WinForms)
Visual Studio
JSON file storage for saving data
This project helped me understand:
How WinForms works (controls, panels, events)
How event handlers connect buttons to logic
How to work with DateTime
How to save and load data using JSON
How to structure a multi-file project
How to debug and fix errors
There were many problems along the way:
Lessons appearing on the wrong week
Data not clearing properly
Type conversion errors (like passing a List instead of an int)
UI elements not updating after changes
Old data still showing even when files were empty
One difficult part was synchronizing the UI with saved files. Sometimes data looked correct in code but displayed incorrectly in the calendar grid.
Another challenge was keeping logic clean when adding new features like subscriptions and student tracking. Final Result
In the end, I created a working tutor calendar where:
Lessons can be added and saved
Weeks can be switched
Data persists between sessions
Subscription tracking works
It’s not perfect, but it’s my first real C# project, and I’m proud of it.
In the future, I would like to:
Add editing and deleting lessons
Prevent time conflicts
Improve the design
Maybe connect it to a database instead of JSON
Try building a version using WPF
Log in or sign up for Devpost to join the conversation.