New Intro to AI Course at LCC

CS 123
A Non-Technical Introduction to Artificial Intelligence
This term I’m teaching a new course at Lane Community College, Intro to AI, which is a little different from courses I normally teach since it is a not a software development or programming course. The course covers the history, basic concepts, and applications of AI with an emphasis on how AI can be used for personal, educational, and business applications. This is an exciting time to engage with AI technologies, especially with the rapidly developing generative AI systems–think of ChatGPT, AI image, video, speech, and music generators.
Course Outline
These are the topics covered in the course:
- What is AI?
- Problem Solving with AI
- Machine Learning
- Neural Networks and Deep Learning
- The History of AI
- Generative AI
- Prompt Engineering
- Retrieval-Augmented Generation
- Custom GPT Chatbots
- Social and ethical issues
There are individual weekly learning exercises as well as teams projects such as:
- Researching applications of AI in their field of interest.
- Applying prompt engineering concepts to write advanced generative AI prompts.
- Creating a custom GPT chatbot that uses RAG (Retrieval-Augmented Generation) to provide it with a custom knowlege source.
You can view the course home page here: CS 123: Intro to AI
The course is offered in multiple modalities: in person, live via Zoom, or online with recordings of the class lectures. For class schedules and registration visit this page on the Lane Community College web site.
Using Multiple Database Types in an ASP.NET Core Web App
Sometimes, you might want to use one type of database, like MS SQL Server LocalDB, for development and a different type, like MySQL, on a production server. I’ll walk you through writing the code to use different database providers for Entity Framework (EF) depending on your environment: development or production. (more…)
Hosting Multiple ASP.NET Core Sub-Sites on a Single Site Hosting Account
If you have a Windows Server shared hosting account that only provides you with one web site, you are not really stuck with having just one site. In most cases, you can add additional sites by putting them in sub-folders (aka sub-directories) of the main site. (more…)
Get a Free or Low Cost Domain Name
In my previous post, I showed you how to set up low cost hosting for your ASP.NET Core web site on SmarterASP.NET. Now that your site is up and running, you probably want to get a domain name for your site. You can register one through your hosting service provider, but that will cost you about $12 a year–which isn’t terrible, but you can get one for less, or even for free!
Publishing an ASP.NET Core Web App to a Low-Cost Windows Hosting Service
You’re developing an awesome ASP.NET Core web app and need to give it a home on the internet. If you expect your app to experience light or medium traffic1, you can use an inexpensive shared Windows Server, IIS hosting provider like SmarterASP.NET. Of course, alternatively, you could publish your site to a low cost Linux VPS hosting service, like Linode, but that could cost a bit more and configuring the server will be quite a bit more work.
ASP.NET Core Razor Pages – Part 1
Introduction to Razor Pages
ASP.NET Core Razor Pages provide web developers with a way to create simple web applications (or web sites) using HTML, CSS, JavaScript, C# and the .NET library, but without the added complexity of the more powerful ASP.NET MVC framework. If you’ve used ASP.NET Web Forms, think of Razor Pages as an alternative that lets you just use standard HTML with helper code instead of dragging and dropping controls onto forms. (more…)
Women in Agile: The Changing Face of Agile – Session Notes
In this post, I will share my notes on a presentation about Women in Agile given for the Agile Alliance.
In this video, Natalie Warnert, the chair of Agile Alliance’s Women in Agile Initiative, explains the background behind the program. Then Cindy Morse, VP of Engineering Operations at Salesforce Marketing Cloud discusses her involvement and experiences in the greater technology community. This workshop is part of the Women in Agile Initiative.
– Description from the Agile Alliance web page. (more…)
Visual Studio Code: Use, Build, Improve
An Open-Source Project
In a previous post, I mentioned that I plan to participate in an open-source project as part of my sabbatical activities. After looking at quite a few projects, I found one that I believe will give me the experience I want- which is to get firsthand understanding of software development work-flow and practices in an open-source project.
A Cross-Platform Code Editor
The project is Visual Studio Code. VS Code is a lightweight, cross-platform, coding editor that supports plug-ins. It’s not an IDE, although with the right plug-ins it can give you all the power of a modern IDE. It is very similar to Sublime Text or Atom. In fact, it is built on Electron, the same framework used by Atom. (Electron is a framework for building desktop apps with HTML, CSS, and JavaScript.) (more…)
Open Source Machine Translation Projects
Why I want to contribute to an open-source project
I’m looking for an open source projects for machine translation of natural languages that I can contribute to. My motivation comes partly from my sabbatical project– one part of the project is to manage an open source project. No, I’m not looking for a project to take over. I just want to get some experience as a contributor before I manage a project. Another part of my motivation comes from my long-term interest in linguistics and translation- my master’s degree is in Linguistics. And, I’ve started getting sucked in by the exciting stuff happening now in machine leaning.
Agile Sabbatical
I am currently on sabbatical from Lane Community College studying the current “best practices” in Agile software development as they are being applied in the local software industry. I am conducting this study by:
- Reading current literature on Agile methodologies
- Visiting software development teams at local companies to do observation and interviews
- Applying what I learn to managing a software development team on an Open Source software project


