Keith Jefferies has witnessed a lot of change during his 46-year career in computer science at UCLA Extension. From programming in the age before the internet, teaching online classes through chat forums, to learning how to teach software development when AI has gained the ability to program, Jefferies has constantly adapted his lessons to best prepare his students for the newest innovations in programming.
“Computer Science--and software development in particular--has continually advanced due to increased capabilities of computer hardware and software development tools, in addition to the heightened demands of business, entertainment, design and science. How we code and how we learn to code is very different today than when I started teaching.”
Jefferies grew up in the Los Angeles area and became interested in programming when he was in middle school – a friend’s father was a professor of computer science at Pepperdine University.
“His house was across the street from the old Pepperdine Los Angeles campus, and we could visit and play with the big mainframe computer with video terminals. . He showed me a little programming and that got me hooked immediately,” Jefferies said. “That was at age 13. And so I just always had that as an option in the back of my mind. I was supposed to become a physician or dentist, but computers seemed much more exciting.”
By the time he was in high school, Jefferies had spoken to a professor at Loyola Marymount University who let him have an account on one of their computers so he could learn to program.
“That's how it really started,” he said. “I checked out a library book on BASIC and learned to code on my own there and I never looked back.”
He continued to pursue his passion at UCLA for his undergraduate and graduate degrees. And UCLA Extension was on his radar even earlier.
“My mom actually went to classes at UCLA Extension while I was in high school,” Jefferies said. “She worked towards certificates in the social welfare and education fields in the 1970s. From this, she pursued a career in Education, and became a teacher and a counselor. And so I knew about UCLA Extension very, very early.”
He began his career at UCLA Extension in 1979 as a programming lab consultant and teaching assistant, and has been learning and growing as an instructor with support from Extension ever since.
“My management has always been forward-thinking and they embrace new ideas and ways of teaching,” Jefferies said. “I've gotten constructive criticism from both my management and my students, and it's always made the course better and better.”
Jefferies has learned 18 different programming languages, co-authored a textbook with fellow instructor Fred Zerez and started his own IT consulting business called ComputerUp.
“Extension's been great because we keep up with what's in demand with employers and prospective students. And I'm always presented with new challenges,” Jefferies said.
He founded ComputerUp in 1993, and has used what he has learned from being the CEO of his own IT company in his teachings at UCLA Extension.
“Being out in the real world I've seen how important it is to pay attention to detail,” Jefferies said. “And so there are students who came out of high school or even college and they’ll say, ‘Well, that spacing and punctuation doesn't really matter,’ and I’ll respond, ‘No, it really does. A simple mistake like this can cost a company millions of dollars’. Detail is important.”
AI has also affected how Jefferies teaches, with some students trying to use AI to complete their assignments without taking the time to learn the material. Students who rely on AI tools early in their programming education will struggle later on because they did not take the time to learn the basics, but despite this, Jefferies knows that AI can be an important tool in software development.
“I actually have two sessions late in the course where we talk about how to use it effectively for learning and mastering coding languages. AI can be helpful in answering questions about coding syntax and to refine their coding and make it more efficient,” Jefferies says. “But in the first 8 weeks of the course, they really should not use it. And that's because they have to learn how to crawl before they walk.”
Jefferies is known to be an innovator when it comes to incorporating new technologies into his lessons.
“I was one of the first instructors to do online education at UCLA extension – that goes back to 1997. And back then our online classes were just message boards,” Jefferies said with a laugh.
Throughout his career he further developed his methods for online teaching, starting with audio recordings, then video, then screen sharing in classroom sessions, and eventually producing course modules which integrate everything together with the structure that’s easily accessible to the YouTube generation. He won UCLA Extension’s Distinguished Instructor Award in 2022 for his work innovating in the classroom and online education space.
“Our students are already sophisticated users of YouTube and Instagram, and many are content creators. With students at this level, I wanted to up the level of what we present at UCLA Extension,” Jefferies said.
Jefferies has used his experience as a seasoned instructor and CEO to elevate his classroom and content, preparing his students for successful careers in software development.
“It’s my job to get people prepared,” he said. “I'm really proud when they leave my course and they go on to more advanced courses and employ the foundational tools I plant in them. I want them to succeed in our curriculum and in their careers, giving UCLA Extension a strong reputation in educating computer and software development professionals.”