So, I’ve been working on Drifting Ruby for over a year now. I have really enjoyed the learning process of what it takes to build and maintain a screencast site. It has been a bittersweet journey. I love recording and editing screencasts. However, it takes a commitment and patience.
There are so many different aspects with regards to the creation of a screencast.
I wanted to give some insight of my normal process and what it takes, at a high level, to start a new episode and take it all the way to production. In some ways, Drifting Ruby has been a great reference even for myself to go back and look up a topic and concept that I had recorded months earlier.
Content and Topic
This is one of the hardest and most time consuming parts of the process. A large number of episodes are derived from community involvment, inspiration and suggestions. However, other topics are based on what I currently reading or experimenting with.
There are several instances where I’ll dive into a topic that I’m wanting to learn more. For instance, the recent episodes with
sidekiq have been an awesome journey. I definitely make mistakes along the way and I’m greatful for when someone calls me out on these! Without your knowledge and ideas as a community, this site wouldn’t work.
I’m a big fan of ScreenFlow. For the price, it is absolutely amazing. To some, the $99 price mark may be a deterrent. However, it has become an invaluable tool.
I will usually record in several segments and many times record the same segment multiple times. This definitely adds a lot of time to the process, but it pays off in the long run. I’ll typically record in a
1920x1080 resolution and up the font size or zoom of the window I’m recording. This is partially for quality reasons as well as readability. I’ve played around with recording at
1280x720, but when upscaled, I noticed artifacts and pixelation.
One big thing that I’ve noticed is that I have difficulty typing as I am speaking, regardless if I am speaking what I’m typing. This is why you may see several instances where I’ve already entered the code and take the moments to explain them.
Audio has been quite an issue for me in the past.
My earlier screencasts were recorded on a Logitech G35 Gaming Headset. I thought that the audio quality was good at the time. However, I got some feedback from audiophile friends of mine and they suggested that my audio quality could be greatly improved.
I made the investment and got a Blue Yeti microphone. There was a tremendous difference! However, I contacted my older brother who does a lot of this stuff for a living. He explained the differences between a condenser mic and a dynamic mic. I had no idea what the differences were!
I currently am recording on an Shure SM58 with a Peavey PV6 USB Mixer. It’s basically one of those microphones that you would see at a karaoke bar or a band using. The mixer is a fairly entry level and suits my needs. It’s fed directly into my computer via USB and shows up as an additional audio input source. I’ve noticed a tremendous difference in the quality of my audio captures.
I took it to the next level and started to pad my room with acoustic foam. The current videos you hear today are based on this new setup. Here is a clap test. The first two claps were with no room treatment and the last two claps are after room treatment. In both instances, I stood in the middle of the room and tried to keep as many variables as the same so that my results would not be skewed.
I am no means an audio expert. In fact, I have a really hard time telling the difference between different tones. However, I could tell a night and day difference with the room treatments. You’re missing out if you do any kind of audio recording and don’t have room treatments.
This is what a finished editing may look like. Over the course of 8 minutes and 17 seconds, I’ve had over 100 cuts and trims in the episode. Once in a while, and sometimes more often than not, I’ll clip something too early or not early enough. A few of my earlier episodes did not have any editing and was one solid recording. While this was much quicker and I was able to produce multiple videos a week, I wasn’t satisfied with the quality of the screencast.
In the earlier videos, I had gotten feedback that screens switched too quickly and that there weren’t enough pauses between breaths. I’ve definitely toned it down a bit. Someone even told me that I had the most monotone voice and that a computer generated voice would have been more pleasing to listen to. While I might be tone deaf, I listen to feedback and always try to take it as constructively as possible. In the more recent videos, I’ve tried to put emphasis on important parts in an attempt to combat my monotone.
This is a time consuming portion of the process as well. It is definitely shorter than any other step in the process, but still takes 30 minutes or so.
I am extremely fortunate to live in a city where there is gigabit competition. So, not only are the providers offering fast internet, it’s also reasonably priced. Uploading of videos takes no time at all!
I will usually go through and dissect the code written for the episode and post them under the show notes. I’ll include links to the various topics covered and come up with some sort of short description of the video. If an episode has a code changes to a template, I’ll upload the code base to the Drifting Ruby Github Repository
The breakdown of my time usually looks like this.
- Monday – Friday: About 1-2 hours twice a week on researching topics and deciding on what to cover.
- Saturday: About 4 hours to build the template for the episode and any final touches on points of interest to cover.
- Sunday: About 4-6 hours to record, edit and publish the episode.
Overall, I will spend 10-14 hours a week on an episode. That is almost a part-time job! I also have three children, all under the age of three. This makes finding the time to research and prepare for an episode difficult and spontaneous. It also means that these activities will usually not start until after 9PM. Typically, after a Sunday evening recording/editing/publishing, it is after midnight.