Karen Thurston
Assistant Professor

Contact LAC, M-237B
Karen Thurston's headshot

Most of my career experience has been in industry as a software developer (programmer/analyst), project and program manager, and software company CEO. Academic experience includes a time as a University of Idaho administrator where I directed a cybersecurity professional development program, and prior experience as a computer science lecturer at California State University, Sacramento, where I had earned an MS in computer science.

After teaching computer science at North Idaho College in Coeur d’Alene, Idaho beginning in fall 2017, I returned to my home state of California to be near extended family and friends. I am grateful for the opportunity to teach alongside a talented group of instructors, and hopefully inspire the future generation of software professionals as an instructor of cloud computing, computer science, and cybersecurity.

Ph.D. computer science, University of Idaho, Coeur d’Alene
M.S. computer science, California State University, Sacramento
A.B. English literature, University of California, Davis

Professional Certifications

  • Project Management
    • PMP (Project Management Professional)
  • Security
    • CISSP (Certified Information Systems Security Professional)
  • Cloud
    • Amazon Web Services (AWS) Certified Cloud Practitioner

My educational philosophy begins with the idea that learning is a lifelong endeavor. College is the time when students truly learn to learn. They specialize in a discipline or major, but the facts and foundations they learn about the discipline, I believe, are a side effect of the real value of a college education, which is to have the capacity to learn using a repeatable process and the accompanying personal discipline. Given my philosophy, I challenge students to think critically about the subjects I teach, to not just memorize facts and processes, but to uncover the reasoning for them, and to ask questions about how they might be improved, what might be some advantages or disadvantages, and other analytical approaches such as identifying the ethical considerations involved.

Additionally, in a more general philosophy of education, some subjects have direct applicability to the job market, in other words they are useful subjects to learn, but some are what we might think of as useless such as philosophy or rhetoric. However, these disciplines form the foundation for good decision making in many other disciplines, so they are also worthy of study and perhaps more valuable in the long run to advance knowledge for the good of society.

My educational values relate to academic integrity and ethics in teaching. Academic integrity requires honesty in crediting sources of information if they are not original, and in teaching students to do the same. This extends to sources within the classroom as well as outside references from various sources. My values also include fairness in grading by creating a syllabus for each course outlining the required outcomes with associated grading policies, homework and exam submission requirements, and published academic integrity requirements. I also make sure I’m aware of FERPA rules to be able to comply with those requirements for privacy. All students deserve equitable learning options with support for all learning styles and accommodations where necessary.

As far as teaching information technology classes in a college environment, I am excited to be teaching at this time when the world has seen rapid advances in information technology which have enabled higher education to offer classes to more students delivered in a variety of ways: live/classroom, live/online, and recorded. Assistive technology tools enable students with physical disabilities to succeed in information technology careers more readily than other disciplines, so I’m sensitive to those students in particular.

Because information technology is all around us, I especially prefer to teach students using project-based approaches to assignments using as much as possible topics that relate to current technology uses. For example, in my past C++ classes, students learned to code C++ programs to download html web pages using a utility (curl), parse through the file, and create a resulting XML file to interface to the Amazon Alexa environment for the purpose of creating audible news “flash briefing” skills. The assignments each week built on prior weeks’ work until the last week when they had a working program to build the XML file.

The availability of open source software has also allowed students to “dissect” working programs, for example a Tetris game, when learning about object-oriented programming practices. Similarly to how someone learning how a car operates by working with a real car, computer science students can benefit from learning how existing, complex programs work. Car mechanics wouldn’t try to learn how cars work by only studying individual components of a car or by looking at toy cars, but this is essentially how computer science has been taught over the years. It’s time to introduce new methods.