A better way to teach technical skills to a group
miriamposner.com
A better way to teach technical skills to a group
1–10 of 23 posts
Re: A better way to teach technical skills to a group
#2Re: A better way to teach technical skills to a group
#3This isn't to say that the other style of teaching doesn't have its place , but at its core (IMHO) resides in a more imposed tradition of social order, military influence, etc..
Re: A better way to teach technical skills to a group
#4Re: A better way to teach technical skills to a group
#5Re: A better way to teach technical skills to a group
#6After that, I go full on into SQL. This was initially motivated by the fact that SQL is a pretty important skill, and it is one of the most succinct ways to describe the concept of computationally joining two datasets to find interesting insights...which is basically the core of journalism (e.g. a list of names of business owners and a list of names of political campaign contributors)...but I've found it's a great way to teach computing in general. For most of these students who have never programmed, SQL is the first time that they've had to tell a computer exactly what they want. For example, I used to think it was a pain to have to specify every column you want to see with a `SELECT` statement...but this is in perfect contrast with how Excel works. The latter by default shows everything, and this has implications with not just computer performance and dataset size limitations, but in data filtering...that is, you're forced to see all the data columns at once, even if it's far too much to consume. With SQL, it's about knowing exactly what you want to see and telling the computer to do it exactly the way you want.
On the teaching side, this makes things far easier for me. I no longer have to teach a GUI, which is a long series of me saying "Click here...unless you're on PC/on version 2011X/have a window size less than 1024px wide" and writing tedious guides of screenshots. With SQL, I just write SQL. And the exercises can be stated in plain English.
For the exams, I basically made them write out a bunch of queries on real-world datasets which I described in plain English...I gave them the expected results, and so they had to write the queries that got the answers. Very easy to grade and very easy to give them help on (they were take home exams):
Baby name data: http://2015.padjo.org/assignments/midterm-babysteps-sql/
Medicare data: http://2015.padjo.org/assignments/midterm-wsj-medicare-walkt...
And to comment on the author's experience with the "stereotype threat", in which students of traditionally minority groups hesitate to speak up because they feel they are being judged by that group, e.g. xkcd #385 http://xkcd.com/385/...this is definitely a phenomenon. Last year I had a nearly all female class and they had no problems at all speaking up/out at me. In elective programming classes with more males, they generally were more reserved.
Re: A better way to teach technical skills to a group
#7Re: A better way to teach technical skills to a group
#8Obviously this isn't very scalable to a larger group though. I'm depending on the grassroots effect to take hold at some point and for others to spread that knowledge. Its effective, but not as quickly as I'd like. I may have to try some sort of workshop style like this in the future to get us to the point faster.
Re: A better way to teach technical skills to a group
#9A couple of issues with this approach:
- Make sure your material is good. Bugs in the material led to me repeating myself 1:1 a lot, and having to pause the class occasionally. Which leads to:
- Pausing the class is hard! People are at different stages of the material, so it's hard to find a good stopping point, though I did it a few times when something was either not resonating, or folks were going too fast and I sensed they were copy-pasting rather than fully understanding the point.
- The solution to this is to have 'core' material and then 'extra credit' stuff, but people feel behind if they haven't done all the material; nobody's happy only doing the core. In general, fear of "not keeping up" was a big issue in my class.
- Finally, some folks do learn differently, and you have to account for that. I spent a lot of time 1:1 with a couple particular students who weren't getting the tutorial format. Another felt like class was just "doing homework" and dropped out. I got around this by sending videos in a flipped-classroom approach between classes, but my students didn't have a lot of spare time and I couldn't rely on them doing anything outside class.
Re: A better way to teach technical skills to a group
#10I teach data journalism to a class of ~20 students with no teaching assistants and it sounds like my curriculum has some overlap with the author's. I spend the first few classes focused on spreadsheets -- including formulas and pivot tables. After that, I go full on into SQL. This was initially motivated by the fact that SQL is a pretty important skill, and it is one of the most succinct ways to describe the concept…