The University of Arkansas Department of Electrical Engineering and Computer Science is hosting its annual high school programming contest on Friday, March 7. For the past 20 years, EECS staff has gathered student teams from roughly 20 schools to compete against each other. Ozarks at Large’s Jack Travis invited associate professor and contest organizer Kevin Jin to visit the Bruce and Ann Applegate News Studio to discuss the event and its value for students.
Jin says the teams will work together on site to create an algorithm capable of solving complex problems. For example, students may have to create an operation that can play games.
Kevin Jin: Such as a bingo game with special rules, and determine the best way to complete that game within the optimal amount of time. So, you need to write your computer code to complete that game as fast as possible. Every team will write their own code and then see who can maybe get the most correct output within a certain amount of time. So the right code for that, and this is one example of one problem set. They solve other problems, usually coming from the easiest to the most difficult ones. We always design some problems that are easy for everyone to solve, even for junior high students, and some are pretty hard. There is a kind of equivalent to medium and high difficulty levels to the ACM type of algorithm tests.
Jack Travis: Yeah, that kind of leads me to my next question. Whenever teams are registering, is there any specific skill level that is required to be in this competition, or is it kind of for everyone?
Jin: That’s a very good question. We offer this opportunity to every high school student who has basic programming knowledge. That’s why we organize the teams into two types of teams. One is called a competition team. Usually they are selected by the coach, and there are kids who are talented in programming. Usually they get trained and do exercises beforehand.
There’s another group of students called the exhibition team, where they come and experience the same experience. The only difference is that their score is not in the final competition list, but they go through the entire process and experience the environment and the team setting. They do the problems with their teammates, and their scores will be judged, and they have this experience. Basically, you don’t have to be perfect or professional in solving those problems, but you’re welcome to join.
Travis: This sounds like a really good way for if I were a high schooler, or my kid was in high school, and they’re interested in computer science and programming, but they’re maybe not sure. They haven’t had much experience.
Jin: Yeah, I think so. Algorithm is a very core component of computer science. For example, these days AI changes every corner of our life and changes so rapidly. AI is essentially based on algorithms. AI is based on a bunch of very powerful algorithms. So for kids, knowing algorithms and being good at algorithms can help shape our future, even shape how AI goes in the future. I think knowing algorithms and being good at algorithms is a key part of advanced computer science in the future.
Travis: And even if you don’t win, there’s incentive for you to come and just be at the competition, even if you don’t walk away with a first-, second- or third-place trophy. Can you talk about that and why?
Jin: I think winning is one thing, but participation is more important than just winning. From past years’ experience, what I see is that many students come in and spend a whole day in the event here, and when they leave, they always leave with a smile. Part of that is they have those experiences of going to the university and talking with college students, understanding what their future will look like.
Many of them also leave with goodies and prizes in hand and all smiles. It’s also a good opportunity for parents to come and see the university and interact with professors. They’re saying, “Hey, is this a good place for my kids to spend the next four or five years?” I think that’s a very good opportunity to know things around them and see how the college looks and how fellow students look.
Travis: Kevin, did you ever do anything like this when you were a kid?
Jin: Yeah. Math is important. I love math. I love computer science. I didn’t train professionally, but I participated in ACM-based programming contests a couple of times. I didn’t win anything, but I enjoyed going there with my friends. It was just a fun time.
Travis: Cool. You said that you’ve only been an organizer for five years now.
Jin: Yeah, about five years.
Travis: So like you said, though, this has been going on for 20 years now. It started in 2006. Over the course of that entire lifespan, or just your tenure running the contest, how has it changed at all?
Jin: From my perspective, it has changed a lot. In the past, we were running things on a local computer, and the local environment required lots of setup from our staff. The problems also evolved a lot over the years. People tend to get smarter and smarter, and the problems probably get more difficult.
One big change we’ve seen is that starting about three years ago, we employed a new cloud-based platform that replaced the old platform. Students can practice exercises not only during the event day, but also on their own time after school to get familiar with the problem set before the competition. The problems are still secret, but there are lots of other problems available online, and there are databases in cloud-based platforms that students can practice on daily. That’s been a big change over the last few years.
Travis: And it behooves people to go ahead and sign up now and start practicing.
Jin: Yeah.
Travis: One more question. Learning how to work on an algorithm is especially beneficial as AI continues to take hold of our society and embed itself. Did that change? Were you always doing algorithm-based problems, or has that been in response to algorithmic problem-solving becoming more prevalent within your industry?
Jin: From an AI perspective, AI has become smarter and smarter. It can produce code much faster and more efficiently than human beings, so lots of people use AI to assist their daily programming work. Some people have concerns about whether AI will replace programmers who write algorithms. On the other side, only by being good at programming algorithms can we judge whether an algorithm produced by AI is correct, efficient or safe. Being able to identify good and bad algorithms, and efficient and inefficient algorithms, is a super important and essential skill for the next generation of computer science students.
That was Kevin Jin, organizer of the University of Arkansas Department of Electrical Engineering and Computer Science High School Programming Contest, speaking with Ozarks at Large’s Jack Travis. The contest takes place Friday, March 7, on the Fayetteville campus. The competition is open to students outside Arkansas, and every competitor will receive a prize. Win or lose, more information and registration details are available online.
Ozarks at Large transcripts are created on a rush deadline. Copy editors utilize AI tools to review work. KUAF does not publish content created by AI. Please reach out to kuafinfo@uark.edu to report an issue. The audio version is the authoritative record of KUAF programming.