Deus ex Machina: Eddy Xu is Programmed for Success

customImage

Mr. Macdonald and Eddy Xu leading the charge in computer programming.

For many Miller School students, the term deus ex machina brings back memories of Mrs. Burke’s lectures in Latin about the plot device in which a seemingly unsolvable problem in a story is abruptly resolved by something unexpected. Translated, deus ex machina means “god from the machine.” While this device is not held in high regard by literary critics or Mrs. Burke, the idea of an unsolvable problem being resolved unexpectedly is one of the appeals of recent advances in computer programming and artificial intelligence. 

Here at MSA, Eddy Xu is on the cutting edge of this exciting field.

This spring, he used his computer programming know-how to give back to his school when he stepped up to help Mr. Macdonald as a teaching assistant for the quickly growing Computer Programming course. His assistance had a deus ex machina feel to it. Mr. Macdonald explained: “Our computer science class has become very popular. Much of the course work is self-paced, and students need one-on-one instruction to be successful. Having an experienced computer programmer like Eddy Xu step up and help teach the course was like having a superhero sweep in to save the day.” 

Eddy Xu hopes that his work in computer programming will continue to contribute positively to the world around him. He sees computer programming and artificial intelligence as one possible solution to many problems that face our world today. With his skills and his desire to solve problems, Eddy Xu will impact the world around him. 

We sat down with Eddy to learn more about his passion for programming. 

What do you find most interesting about computer programming? 

My first foray into computer science was during the summer of my 9th grade year when I self-studied AP Computer Science A using the Java programming language. After receiving a decent grade on the AP exam at the end of my sophomore year, I continued to deepen my knowledge through self-study. In my junior year, I began applying my newfound programming skills to solve problems in engineering and mathematics. For example, I wrote several programs in my differential equations class to automate calculations.

During this time, I also started teaching myself Python and eventually became proficient in it. I put my skills to use by developing an engineering design software for the Concrete Canoe Team. Through my experiences, I discovered a deep interest in computer programming, which allows me to tap into my creativity and hone my problem-solving abilities. I find immense satisfaction in seeing my code come to life and solving complex problems.

My passion for computer science grew even more when I took 15-112 Fundamentals of Programming and Computer Science at Carnegie Mellon University during the summer session. The course introduced me to a wide range of programming concepts, including data structures, algorithms, and recursion. Through interactive coding assignments and projects, I gained a deeper understanding of computer science as a field.

Now I am headed to Carnegie Mellon University next fall, and I am thrilled to continue my computer science journey in one of the top-ranked CS Universities in the world. I know that the road ahead will be challenging, but I am determined to push myself and make the most of my time at CMU. With hard work, dedication, and a passion for computer science, I am confident that I can achieve my goals and make a difference in the field.

How will computers shape human life over the next fifty years?

Computers and technology have already transformed our lives in significant ways, and they will continue to do so in the next fifty years. Currently, the usage of the diffusion model in image generation has already impacted the animation production and painting industry. And the recent GPT-3 model shows us the potential and application of artificial intelligence in various text generation tasks. We can expect to see advancements in artificial intelligence, robotics, virtual and augmented reality, and quantum computing. These technologies will have a profound impact on industries such as healthcare, transportation, manufacturing, and entertainment, among others. They will also create new opportunities for innovation and entrepreneurship.

You are headed to Carnegie Mellon University next fall to study computer programming. Tell us more about your decision to apply and enroll at CMU.

According to US news, Carnegie Mellon is tied with MIT, Stanford, and UC Berkeley for first place in the computer science rankings. However, my decision to apply and enroll at Carnegie Mellon University was not just based on its ranking in computer science but also on its academic excellence and innovative approach to education. As a top-tier research university, Carnegie Mellon offers a wealth of resources and opportunities for students to pursue their passions and make meaningful contributions to their fields.

My experience attending the summer session at Carnegie Mellon University was a critical factor in my decision to enroll in the university. During the program, I had the opportunity to take classes in computer science and immerse myself in the campus culture. I was impressed by the quality of education and the expertise of the faculty, who were not only knowledgeable but also approachable and supportive. The coursework was challenging but rewarding, and I appreciated the emphasis on practical experience and hands-on learning.

Another factor that drew me to Carnegie Mellon was its location in Pittsburgh, a city that has been recognized as a growing tech hub with a thriving startup scene. This provides excellent opportunities for internships, networking, and practical experience, which are essential for success in the computer science industry.

Overall, I believe that Carnegie Mellon's reputation, academic excellence, and innovative approach to education make it an ideal place for me to pursue my passion for computer programming and prepare for a successful career in the field.

 

This year, you are co-teaching computer science with Mr. Mac. What has teaching taught you about computer science? How has it informed your own study of computer science? 

Teaching computer science with Mr. Mac has been an enriching experience that has taught me a lot about computer science. One of the biggest lessons I have learned is the importance of breaking down complex concepts into simple terms that students can understand. In doing so, I have been able to better understand these concepts myself and gain a deeper understanding of the fundamentals of computer science.

Teaching has also helped me develop better communication and problem-solving skills. When helping students work through coding challenges, I have had to think creatively and find new ways to explain concepts that may be difficult for them to grasp. This has allowed me to develop a more intuitive understanding of computer science and think more critically about complex problems.

Moreover, teaching computer science has helped me to develop a more collaborative mindset. I have learned that teamwork and collaboration are essential to success in the field, and that the exchange of ideas and perspectives can lead to better solutions and more efficient code.

Computer programming is a popular course at MSA. Why do you think young people are interested in this subject? 

Young people may be interested in computer programming because it provides them with the opportunity to create things and solve problems in a tangible way. It is also a highly relevant skill in today's job market, with many industries seeking individuals with programming expertise. Additionally, computer programming can be a creative outlet that allows individuals to express their ideas and develop unique solutions to problems.

What area of computer programming is most interesting to you? What career would you like to pursue?

Computer science is a young, rapidly growing discipline with a large number of branches and deep connections with other fields, such as discrete mathematics. Due to the ever-changing landscape of the industry, I am unable to predict my future area of focus. At the moment, I am enjoying exploring the many different areas of computer programming and find them all fascinating in their own way. From web development to artificial intelligence, there are numerous interesting and exciting fields to explore within computer programming.

However, I am currently more interested in building a strong foundation in the fundamental theories and concepts of computer science rather than focusing on a specific area. I believe that by doing so, I will be better equipped to explore different fields and make informed decisions about my career path.

What has computer programming taught you about life in general?

Computer programming has taught me several valuable lessons that apply not only to the field of computer science but also to life in general. One of the most significant lessons is the importance of perseverance and persistence in the face of challenges.

Programming can be difficult and frustrating at times, but I have learned that with patience, determination, and a willingness to learn from mistakes, I can overcome obstacles and achieve my goals. This lesson applies to many aspects of life, where perseverance and persistence are often essential to success.

Another lesson that programming has taught me is the value of collaboration and teamwork. In programming projects, collaboration with others is crucial to the success of the project. Through working with others, I have learned the importance of communication, listening to feedback, and respecting different perspectives and ideas.

Programming has also taught me the value of organization and planning. Planning and organizing my code before writing it is essential to achieving efficient and effective results. The same principle applies to life, where planning and organization can help me stay focused and achieve my goals.