teaching machines

SENG 440: Lecture 5 – List Activity and Implicit Intents

Dear students, A major theme of mobile development (and the web) is services. Our apps tend not to be monolithic beasts that do everything themselves. Rather, they offload some of their work to other apps that have intentionally exposed as service providers. Today we’ll see Android’s Intent model for invoking services from other apps. We’ll […]

SENG 440: Lecture 4 – Task Scheduling and Activity Lifecycle

Dear students, Last time we saw how activities and layouts get married and make the screens of our apps. Today, we extend our discussion of both of these big ideas as write an app that shows the time in two different places on Earth. We’ll look at ConstraintLayout, updating the user interface without user interaction, […]

SENG 440: Lecture 3 – Activities and Layouts

Dear students, Now that we’ve examined Kotlin as a standalone language, it’s time to write our first Android apps. We will write a few today: one to emit Morse code’s dots and dashes and one to show the time in two different timezones. Before we forget, here’s your TODO list for next time: Work through […]

SENG 440: Lecture 2 – Conditionals, Functions, and Classes

Dear students, Last time we introduced Kotlin as our tool for developing Android apps this semester. This time we continue that discussion but raise the complexity a couple of notches. We’ll look at conditional statements to choose between values and code, functions and classes to manage complexity, and lambdas to pass code around to other […]

SENG 440: Lecture 1 – Mobility and Kotlin

Dear students, Welcome to SENG 440! I’m visiting the University of Canterbury thanks to Erskine Fellowship Program. When I’m not in Christchurch, I live and work in the north central part of the United States in a state called Wisconsin. I’m glad to be here and to be teaching this course in particular. I’ve taught […]

SENG 440: Project 1

See the PDF.

SENG 440 – Topics in Mobile Computing

Course Information Syllabus Enrollment: 34 Lectures Projects