I’m sorry that we didn’t work out in the end. I don’t regret meeting you, and will always treasure the time that we spent together. But we have different ambitions, so I cannot stay with you.

I remember the first time I cried because of you. It was a rainy day late September. You and I worked in the morning on a software project. And I was so frustrated because I didn’t understand what was going on. I didn’t have any knowledge in Java1, yet you refuse to teach me. You gave me 200 slides, and told me to learn it myself.

After lunch, we made plans to work on a hardware lab2. We do this every week on Sunday, from 1-7. It was our special thing. But usually the lab took way longer than that. So we would meet up on Monday, Tuesday and Wednesday, each for a couple of hours to complete it. But I didn’t mind, since I got to spend time with you and Verilog3.

But that day, when we were having lunch, my brain was filled with frustrations from the morning. The software project was not working, and now we had to work on the hardware lab. What if we couldn’t do the lab at all? And even if we could, will we get it done today? How were we supposed to make time to do the Java project? And I wasn’t even sure I could complete the Java project even with endless amounts of time. You and your labs and projects made me jump straight into the abyss.



The pressure of being with you, along with my feelings of uncertainty in my ability really got to me. And I cried for the first time in a long time.

I think what I was really missing back then was a belief in myself. And that’s what you taught me these past 3 months. Having been through what I thought were insurmountable challenges and unconquerable labs, I now have confidence in myself to tackle anything.

However I have decided that we should break up for the better. It’s not because I’m scared for what’s ahead of us⁠—I believe that if I stayed, we would’ve done well on our future hardware and software projects. I have to admit that I had faults in this relationship. I should’ve had more faith in both myself and us, faith that we would be able to ace the labs and projects that you so wanted to do. And I shouldn’t have been so proud; I should’ve asked you for help when I needed it and not have left all my questions till the end. But you disappointed me so many times. When I wanted to read a book, or go out with my friends, you made me do the lab with you. Time and time again, all you think about is Verilog and Java. I think you should date them instead. I don’t want to spend what was supposed to be the best years of my life looking at waveforms in ModelSim4 with you on the weekend, or studying for 3 exams on the same day.

Myself, along with all your exes, are so reasonably smart. Looking at the bigger picture, we were the ones that had a 95% average in highschool, and out of those that did, we were the top 20 or so percent. So the fact that you make your labs and projects so hard that me, along with all your exes, struggle so much, and spend all our time devoted to you is stupidly mind boggling. The world doesn’t revolve around you, and I’m choosing to say goodbye so I can welcome some balance into my life. You’re unreasonably over controlling, whether you like to admit it or not.

CPSC and I have decided to be together. I believe that he will give me more time to myself, so I can go read a book, or go out with my friends. I hope you find someone too, someone that has the same priorities as you, someone that likes you enough to spend all their weekends and weekdays with you, looking at waveforms on ModelSim or debating whether to use a hashmap or an arraylist. How romantic.

Sincerely,

Cindy



1 Java: a programming language used in the course CPEN 221. We were expected to use the language without ever being taught it.

2 In the course CPEN 211, which deals with hardware, we were assigned weekly homework "labs" which took anywhere from 10-20 hours to complete.

3 Verilog: a hardware programming language, used in CPEN 211.

4 Modelsim is a program that simulates Verilog code. The waveforms is a graph of the current happenings going on inside the code so that one scrutinize the graphs to find where the errors are.