TheJoyOfHack

For people who like to make things

I’d like to share with you the various tools that I’ve found work well for my iOS class. I’ll show you what I use for video, displaying keyboard shortcuts, slides, and class notes.

Video

I have a couple of students who cannot attend in person, but attend via a live-streamed feed. I also want every class recorded so that I can provide a private video to the students. This allows them to refresh their memory or catch up on classes that they couldn’t attend. So I need two cameras, one for the live stream, and one for the recorded video. I decided to use the camera on my MacBook for the live stream, because I don’t like how the video appears, looking up at me. The angle is not very natural.

I bought a Logitech camera for the recorded video. This camera is placed on a little tripod that is itself placed on the desk right behind my laptop. I can adjust the angle of this camera to just what I want. Even though I share my desktop during the class, in previous classes my students have said that they prefer to see a small video of me talking superimposed on the screen-cast. They find it a lot better than a disembodied voice.

So, Macbook camera for live stream, and external camera for recorded video. For the live-stream I use Zoom.us. Of all the services I evaluated, I found that it had the best combination of features and price. Zoom also has an option to record the screen-cast, but it appears that I have no control over how and when the video file is produced. I like to process the raw video after I get home, so I can get back home as soon as possible. So I use ScreenFlow for recording the screen-cast. I like being able to edit out the 10-minute breaks, and easily add transitions and callouts. ScreenFlow and Zoom work very well together. Because ScreenFlow’s files can be rather large, I plug in an external drive while recording - I don’t want to use my laptop’s precious SSD drive for the video.

Keyboard Shortcuts

While I’m teaching I like to use Mouseposé. This app allows me to display the various XCode keyboard shortcut combinations as I use them. So students get to learn the most efficient way to, say, show and hide the various navigators.

Slides

I don’t often use slides, and when I do it’s usually for complex topics like UIViewController lifecycles. I’ve found Deckset to be the ideal tool for displaying slides because of its support for code, and the fact that the source is in Markdown and therefore very easy to grep.

Class Notes

When I plan each day’s class, I write my notes for that in class in Markdown and display the notes on my iPad. Because the notes are not on my laptop, my students never see me command-tabbing between XCode and my notes, in class or on the video.

Summary

I’m pretty happy with this setup. It’s reliable and simple enough for me. If you have any comments or suggestions, I’ll be glad to hear them on Twitter.

See you tomorrow.

This is the 26th of my 30 days posts.