Q&A: "How Do You Make Video Coding Guides?"
Last week a blog reader asked me a pretty good question: “How do you make your coding guide videos?” I figured it’s a common question, so I wrote up a short Q&A-style blog post on the tools I use to create coding guides and videos.
You can use it as a starting point for producing your own screencasts and step-by-step guides.
One of the best tools for recording screencasts (recordings of your Mac or PC screen display) is Screenflow. I’m using Screenflow 5 to record my Mac display in tandem with a voice recording. Often, I also record short blurbs of face-to-face video.
When exporting, I use these settings:
- Screen Size: the native resolution of my MacBook Air,
- Encoding: H.264 at 1.2 Mbit/s with AAC audio at 256 kbit/s (relatively high).
- Framerates are set to Automatic, which means a key frame is made for every significant change in the frame and/or every few frames.
- As for H.264, I’m using the “Main Profile” which is similar to the standard definition digital TV MPEG–4 format. If I’m making a video that’s largely facetime or needs a lot of color, I’d use the “High Profile” format.
Generally, a bit of ghosting and color loss occurs. Given that most videos are 80% screen recordings, that’s OK.
Physical Recording Gear
It’s not all software, quality comes down to physical gear too. This is what I use:
- A MacBook Air, late–2013 model. Read here how my most important piece of equipment broke down, one time…
- A Logitech HD Pro C920 webcam. It has great quality and an easy mount screw.
- Two generic brand softboxes for diffuse lighting. This is key for recording naturally-looking videos. Put one on 1–1.5 meter on both sides of your face.
- A Røde SmartLav+ lapel microphone. This is key for clear audio and voice recordings.
- A Griffin iMic. This is technically just a USB soundcard, but it’s making a huge difference in audio quality. Analog jack inputs don’t really work well in MacBooks, too much noise interference from the laptops internals. Using an external soundcard clears that up. And a plus: music quality is definitely better with an iMic!
This is how I remember text I need to say…
I’ve had some trouble getting the SmartLav+ to work with my MacBook Air. It turns out the TRRS jack doesn’t work, and it’s output voltage is too low for the MacBook to pick up. I think this only happens in some models, though. Ultimately, I got the iMic and a TRRS-TRS converter and it all worked out fine.
Writing Coding Guides
A ton of coding guides on Swift are published every day, but 90% of them is garbage because the coder wasn’t thinking from the reader’s perspective. Here’s my Quality Assurance checklist for creating killer coding guides:
- Make sure you explain everything in great detail. Write an “aside” that explains theory next to the practical step-by-step coding guide.
- Explain how every line of code works. Don’t skip any code lines, and don’t assume the reader knows immediately what you mean. Use diagrams if needed, and repeat yourself if needed.
- Use the correct terminology. It may seem boring at first, but you can’t just call everything “stuff”. Plus: if the reader wants to Google “nil-coalescing operator” you’re glad you didn’t name it “?? thingie”.
- Create clear screenshots. I use Skitch for that; it’s got pretty cool quick-add-an-arrow-here-and-here features.
- Sit down and make a video. It’s a ton of work (about 2 days for a 10.000 word guide), but it’s much easier to follow than just a written guide. That said, I think a text guide in tandem with a video makes the best programming learning experience.
This is the workflow I use from idea to published guide:
- Build the app or feature I want to create a guide of. Make it as simple as possible, but not simpler.
- Write the coding guide itself. Cut into comprehensible parts. Make screenshots, diagrams, etcetera. Usually, I end up building the app for the second time.
- Attempt to follow the guiding guide myself. Refine the steps where necessary.
- Record a video of the guide. Usually, I do this in one sitting because it takes time to set up and tear down.
- Edit the raw video footage. Depending on the amounts of eh’s and err’s, this takes about one hour per 15–20 minutes of footage.
- Upload the video, publish the guide. DONE!
Over time, and depending on feedback, I rewrite part of the guides and restructure them. Also, quite often I have to update guides because parts became obsolete thanks to changes in Swift.
Concluding With: The Secret Ingredient
Want to know the secret ingredient for making awesome guiding guides?
Get started on your own video guide: download Screenflow, put your face in front of the camera, and start screencasting!
Learn how to code iOS apps with me. We'll focus on app architecture, best practices and fundamental topics.
Become an insider. Get access to our members-only courses and private community. » Learn more
Most Popular Content
- How To Make An App (In 9 Steps)
- How To Develop iOS Apps On A Windows PC
- How To: Pass Data Between View Controllers In Swift (Extended)
- Creating A Simple iOS Game With Swift In Xcode
- How To: Build A Real-Time Chat App With Firebase And Swift
- How To: Random Numbers in Swift
- Understanding The "Use of Unresolved Identifier" Error In Xcode
- Understanding The «Unexpectedly found nil while unwrapping an Optional value» Error
Comments & Questions
Got a comment or question? Let me know! I read and respond to every one. Thanks!