Skip to main content

Staff Professional Development system in Google Apps

For a while now we have been using an expensive online professional development system that nobody seems to get on with too well. So I was asked to come up with a system that works in Google Apps and does the basic core things that the paid for system does.

So the key things are:

  • Easy way for staff to record objectives.
  • Method for approving and reviewing these objectives.
  • Method for submitting CPD activities and having them approved.
  • Method of submitting overview statements.
  • Keeping all of this in a central easy to navigate central store for the head.

Seemed like an ideal opportunity to get my two favorite spreadsheet functions into action - importrange and query. So if you have not met these two functions - here are the basics:

Importrange
=IMPORTRANGE("1MHqboMSXVImyh_wFKi2WAazZinqCo_90tfYaEbOszqo","Form Responses 1!A1:N2000")
This pulls data from one Google Sheet into another. So I've got several forms as part of this system and want to pull data from them all into just one.
"1MHqboMSGVImyh_wFKi2ZAazZinqCo_90tfYaEbOszqo" = the spreadsheet key - found in its url
"Form Responses 1!A1:N2000" = the sheet you want to pull data from and the range 

Query
=query(staff,"select F,I,C where D = '"&B2&"'")
This function turns your spreadsheet into a database - so you can ask questions and get the data you want.
So in the example above, staff, is a named range where we are looking for some data - but it could be a whole sheet or any range of cells. The bit after the comma is the key bit - its the query - or the question you are asking. So in this case I want the data in columns F,I and C but only where the value in column D is the same as that found in cell B2. So I can extract data based on the result of the form submission. If you are referencing a specific cell as the condition, the syntax is '"&CELL&"' (so single quotes outside - double inside) - bit weird.

There are many other operators and things you can do with query - but it's a really powerful and useful function when you get use to it.

So the upshot is I've got a basic and functional free system for Staff Development that uses Sites, Sheets, Forms and a few Docs. The video below explains a bit more:

No doubt I'll add more functions in the coming months - but it will do the job to start with. I'm guessing other people have far cleverer systems - but I think the point is that you don't need to spend 1000's on a system when you can get the functionality you actually need for free (well a few hours work!).

Comments

Popular posts from this blog

Delete a specific email using GAM

If a user send an inappropriate email to a loads of people or get stung by some sort of email exploit you can quickly delete the email from all of the recipients using a GAM command. Step 1 - get the email header Go into Google Vault and search for the offending user or someone known to have got the message. Click show details and grab the email ID. This will be a long string of characters followed by @mail.gmail.com Step 2 - find out who has the email Go into Google Vault and find the original message sent by the offending user. Look at the details to see who got it. Copy the list and dump it into a spreadsheet. Clean up to just a list of emails with a column header 'mail'. Save as a csv file. Step 3 - delete messages with GAM Put your CSV file in your GAM folder - this e.g. assumes its called mail.csv Run: gam csv mail.csv gam user ~mail delete messages query rfc822msgid: MESSAGEIDHERE doit The alternative nuke option is: gam all users delete messages query rf...

Adding subdomains to G Suite

This is how I add subdomains (so basically new schools) to out G suite setup. I've got these steps documented on a scruffy set of notes that I've now got in Keep - so time to document them - for myself as much as anyone else! Steps in order (roughly) Add the new domain Verify the new domain Add MX records to hosting Add SPF record for Google to hosting Turn on email authentication Add DMARC record to hosting Setup custom Directory and restrict students OU to this. Create an admin quarantine for the domain. Configure SPAM setting for the domain. Turn on and off services as appropriate. Map a blank Google Site to the naked domain - if required. Setup some basic groups - allstaff, allusers (for directory) and students with appropriate permissions. Deploy custom wallpapers. So the steps in a bit of detail: Add the new domain & Verify ownership Click on Domains in the admin console: Add/remove domains followed by "add a domain" At this...

My favorite GAM commands - well a few of them at least!

Where would be without GAM? Paying for expensive syncing tools or doing tedious manual tasks in the admin console. GAM can automate most things you might want to do in G Suite. So these are a few of my favourite commands - one I use either as part of a batch file - or just standalone. There are loads more - but these are ones that are used daily. Classroom Create a spreadsheet of all your domains classes -  gam print courses todrive Create a spreadsheet of a teacher's classes:  gam print courses teacher fred@mydomain.com todrive Bulk create classes: gam csv classes.csv gam create course alias ~alias name ~alias section ~subject teacher ~teacher status ACTIVE where classes.csv is a list of classes you want to make. Add teachers: gam csv teachers.csv gam course ~alias add teacher ~teacher Add students: gam csv students.csv gam course ~alias add teacher ~student Sync Students (in this example to a group - but could be an ou/csv file) gam csv grou...