Web App Dev with GAS course

Next month (July 2020) I’m teaching a course called Web App Development with Google Apps Script. I’m excited about it but I realized that I’ve never really described what will happen in the class, especially for those outside of Hamline who might be interested in auditing.

This is what we call an experimental class in that it’s not in the bulletin. You can teach those three times before you have to get it in the bulletin. This will be the first time I teach it. It’s in our new Computational Data Science program and it doesn’t have any prerequisites.

If you’re interested in auditing, the fee is $250 and you can get the form here. The details of the class (that are needed on that form) are here. If you want the 4 undergraduate credits for it, the cost is something like $2,600 (hence the plug for auditing if this is just skill development for you).

Why GAS

I do a ton of Google Apps Script programming in my job in the Dean’s office. Here’s just a few examples:

  • Major Declaration form (students submit their major choice and information about their advisor choice. Chairs are informed and eventually fill in the advisor using a specialized dashboard)
  • Scheduling notes (the fall 2020 schedule is in a spreadsheet that is used to make a web page for Administrative Heads to put in notes about the classes. Notes are emailed to the appropriate audience with a link to a page where more notes can be added)
  • Synchronous Dashboard (Participants in a meeting or a class can interact using emotion buttons, chat, hand raising, and an interactive whiteboard)
  • Dashboard for phone queues for summer registration (Students are in groups to ask general questions but FERPA-related questions are sent to a queue system where students request a phone call from the appropriate offices)
  • Tool to spawn Google Meets breakout rooms

I find GAS to be great for a lot of reasons. See the “Why GAS” chapter of the book I’m writing for the course.

Goals for the course

I’m hoping that my students will be able to:

  1. Make a web page that displays useful but protected information
  2. Protect their pages using the built-in authentication (really that’s just for GSuite customers)
  3. Allow and leverage communication with a back-end spreadsheet that acts as a database
  4. [most importantly] produce an App that address a concern of theirs.

Structure of the course

We’ll meet on Tuesdays and Thursdays synchronously for two hours (9-11 CDT). Those sessions will involve me doing some live coding but mostly encouraging the students to work on their projects in ways that they can help each other (like I talk about in this post under “sharing screens in lab”). Most sessions will likely have a few pauses where we’ll identify the tools they need to develop. I’m hoping for conversations like “I wish I could filter the rows to only get the ones that need attention” that would lead to a discussion about the filter tool in javascript.

There will likely be daily assignments that address:

  • Javascript skills
  • GAS tools
  • App brainstorming
    • including helping each other

along with weekly goals to reach. It’s possible I’ll have them work in teams, but that depends on the number of students. Right now there are only 3 registered and only a couple that I know that are thinking of auditing. Likely with that number I’ll just have them work alone. If there’s enough to work together, though, I think it might be fun to have them use at least some aspects of the Agile approach.

Is this a programming course?

No, not really. I’m hoping students can think of a problem that a simple web app could solve and that they’re willing to learn how GAS can help them achieve it. I want them to start by explaining in English what they’d like to accomplish and break it down into small steps. Then for each I can work with them to determine the minimal amount of programming skills they’d need to develop to do it. This is very similar to what I talk about in this post about the CDS course I just finished teaching.

I’m sure some will really take issue with this, but I think I’m ok with students “just getting it to work” as opposed to really understanding some of the syntax they’ll find via google. Certainly that’s what I’m going through as I’m working with a student right now to create a tool that music directors can use to have a fruitful remote rehearsal using the Audio Web API.

Is this for me?

Yes!

Seriously, though, if you’re inspired by some of the projects I’ve talked about or see a need to fix some unaddressed problems in your workplace, GAS and specifically Web App Development using GAS might be for you. You don’t have to know how to program, I’ll help you with that!

One of the beauties of GAS is that all you need is a google account. From there you can do all your programming in a browser. You don’t need any other software. I do most of my programming on a Chromebook!

Your thoughts?

I’d love to hear your thoughts about this. Here are some starters for you:

  • I really think this is great. How would it work if . . .
  • I think this is dumb. Why don’t you instead . . .
  • I thought you loooovvvve PHP. Why aren’t you teaching about that and your beloved Laravel?
  • I’m interested, but I know I can’t make all those synchronous times. Can I still audit? (yes)
  • $250? That’s highway robbery. This should be free.
  • I’m a staff member at HU, how much for me to audit? ($0)
  • I’m a student at HU, how much for me to audit? (possibly $0, still working on it)
  • Wait, what are you building for virtual music rehearsals?

About Andy Rundquist

Professor of physics at Hamline University in St. Paul, MN
This entry was posted in dean, programming, teaching. Bookmark the permalink.

1 Response to Web App Dev with GAS course

  1. bretbenesh says:

    I thought about signing up. Then I realized that I just don’t have the time (or the money) this summer.

    I am going to look into GAS a bit, though, and do some self-study. Thanks so much!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s