Hello! My name is Chelsea Troy. I am the instructor for Mobile Software Development.
What are we doing in this class?
How do you learn a new programming language from scratch? How do you track down insidious bugs and issues in your code? How can you identify the risks of what might go wrong in your application, and what techniques can you use to mitigate them?
These are just a few of the software engineering questions we’ll talk about in this course. Our example languages: Swift and Kotlin. Our example frameworks: iOS and Android. You’ll write an app based on the next generation of Angry Birds for iOS.
You’ll also look at examples of apps in production—apps that track the coronavirus outbreak, organize your expenses, and report on the weather.
For Android, you’ll build a mobile application that allows you to log your mood, track it over time, and identify how your activities influence how you’re feeling.
If you want to know exactly what this class is all about, here’s a video. It’s 30 minutes long and covers exactly what we are doing in this class and why—including how this class might differ from what you are expecting.
If you join this class, you will see a similar lecture to this during the first part of the first session.
Is there homework?
Yes. Each week there will be at least one homework assignment. My hope, on the homework assignments, is to provide enough volume to ingrain the material, but not so much that folks can’t focus on the quality of their work. You will also have three projects, each of which you will have multiple weeks to complete. There will not be exams.
Will this class turn us into dual-platform mobile developers?
By the end of this class you should be able to develop a mobile app, hopefully in either Android or iOS, slowly, using the skill-building techniques, debugging techniques, and general software development techniques we’ll go over in this course.
Think of this course as a skills-based course, and we’re using mobile development as the substrate for building those skills. But these skills should help you out some on any stack, and you’ll also understand the landscape of mobile to go into mobile development if you choose.
We will also have some in-class discussions about some contextual aspects of software development that you should understand: things like debates around data privacy, accessibility, and our responsibility for caring about what we build and who it affects.
But this particular course won’t make someone a seasoned practitioner of either framework. Unfortunately that’s too much to ask of you (or me!) for ten weeks at three hours per week 🙂
Things you will need
First and foremost: you will need access to a Mac with XCode. If your machine of choice is a PC, I recommend subscribing to MacInCloud at the $20/month plan. This will cost you $60 in total for the duration of the course (3 months) and will allow you to develop your iOS apps.
Please feel free to reach out to me with any additional questions. I’m looking forward to meeting you in class!