How I got into computer science

Dec 24, 2024 · 6 min read

This is not a story of extraordinary success. I am an ordinary individual with a modest career. I share my journey to inspire those from underprivileged educational backgrounds who aspire to make a mark in academia.


Before College

I was born in a small town near Jinan, Shandong Province, China. From elementary to high school, I attended average local schools. By high school, most of my peers had moved to better schools in cities, while my classmates were primarily from rural areas. My academic performance was average throughout high school. Looking back, I feel my early education did not guide me effectively. With proper direction, I could have achieved more, though I wasn’t particularly gifted.

The first time I took the national college entrance exam, I scored 409 points—a score that could only get me into a mediocre vocational school in Shandong. I hesitated about retaking the exam. Could I really improve much in a year?

Fate intervened when I learned that a girl I admired in high school was also attending a preparatory program. She was outstanding and kind, though I had never mustered the courage to confess my feelings. Her presence was like a bolt of lightning—it ignited a determination in me. I decided to give it one more year and devote myself entirely to studying. That year, I transformed and significantly improved, although my weak foundation limited my progress. I raised my score by 126 points—a remarkable feat in my town—but she got into a prestigious university, while I ended up at an ordinary one.


College

I majored in Software Engineering. While my romantic ambitions didn’t work out, the drive I developed stayed with me. By the end of my first semester, I ranked third among hundreds in my department. By the end of the year, I had earned a substantial scholarship.

Although my university wasn’t top-tier, the best students in every department were exceptionally talented. As one of the top students in computer science, I had the opportunity to connect with other exceptional individuals across departments. It was a joyful time—my academics thrived, and I often achieved full grades or near full grades in my exams. I also built meaningful friendships. Looking back, however, I realize I was too narrowly focused on coursework, which limited my perspective.For example, I invested a significant amount of time learning C# and .NET, which, so far, has turned out to be of little use. I lacked the courage to explore broader opportunities and platforms, a common shortcoming among students from ordinary universities. Sometimes, the choices we make matter more than sheer effort.

This period helped me regain my confidence, and I even attempted to reconnect with the girl I liked in high school. However, her response was definitive: she was in a happy relationship and felt her wait had been worthwhile. Accepting her decision, I deleted all her contact information and moved on. Though I was heartbroken, the experience allowed me to reflect on my life. I realized my life had been shallow—you must cultivate your own soul before seeking a soulmate. I began reading extensively, exploring subjects like psychology, complex systems, cognitive science, and neuroscience, alongside CS. My interest stemmed from a desire to understand myself better.


Master’s Studies

I took the entrance exam for a Master’s program and was admitted to another average university, marginally better than my undergraduate institution. When I began my program, a professor approached me and eventually became my supervisor. When I inquired about possible research directions, his response was, “Anything.” It was only later that I realized “anything” often translates to “nothing”—I had to determine my research direction entirely on my own.

Despite this, I deepened my knowledge of computer science, reading extensively about math, programming languages, design patterns, functional programming, and more. My progress was fueled purely by curiosity, as I lacked a clear research focus.

One day, while reading about personality theories, I wondered: could people’s behaviors on social media correlate with personality traits? Could a program assess personality based on social media activity? Without much knowledge of machine learning, I stumbled upon a relevant problem. After some literature review, I discovered a research group at the Institute of Psychology, Chinese Academy of Sciences (CAS), working on this. I reached out to a professor there, who generously invited me to join their lab as a paid visiting student.

I spent about two years at CAS, where I deepened my understanding of psychology and machine learning. It was another truly fulfilling time in my life—I was financially independent, worked in a multidisciplinary team of kind and brilliant individuals, and pursued projects that genuinely interested me. During this time, I also met a new Psychology Ph.D. student who shared many of the interests I had cultivated through my reading. In 2024, she became my wife.


Ph.D. Journey

I passed the language exams and was admitted to Virginia Tech for a Ph.D., which meant parting ways with my girlfriend. With her encouragement, I pursued my academic ambitions. The first two years were particularly challenging. My advisor supported continuing the research direction I had followed during my master’s—applying machine learning to psychology, specifically for analyzing social media users. While the area was promising and led to a publication using convex optimization, I found myself unsatisfied and eager to shift focus. Two challenges stood in my way: first, I no longer had the support team for data collection and analysis that I had relied on during my master’s; second, I wanted to delve into foundational methods rather than merely applying existing ones. Inspired by my lab mates, I began exploring graph neural networks.

This path was not straightforward. Drawing on my background in cognitive and neuroscience, I initially pursued neuroscience-inspired approaches, only to realize their limitations after extensive reading. Whether due to insufficient persistence or capability, I pivoted to a hybrid bi-level optimization topic involving graphs.

This shift came at a cost. Many of my exploratory efforts failed to produce publishable results, and my inefficient approach prolonged my Ph.D. to over seven years. While many colleagues regard me as knowledgeable, I often lose interest in the topics I work on once I fully grasp the existing research and realize the marginal contributions I’m making. This is, unfortunately, a reality in academia—most publications, even in top-tier conferences and journals, offer only incremental advancements. While this can be disheartening, I understood that it’s a necessary part of the journey toward making a truly significant contribution, if that moment ever comes. Although I eventually completed my Ph.D., I wouldn’t consider myself an expert in the field.


Now

After receiving several job offers, I chose Northern Illinois University (NIU) due to its lighter teaching load, allowing me time for research. Now, I have high hopes for graph neural networks, which I believe could be the next big breakthrough in AI. One advantage of my extensive reading and research across diverse fields is that I’m now uncovering more connections between my past experiences and what I aim to pursue next. This growing sense of integration has made research increasingly enjoyable and rewarding for me.


This journey was far from linear, but every step shaped who I am today. If my story resonates with you, I hope it encourages you to persevere.