In yesterday’s inbox, from someone we’ll call “Rudy”:
"Hi, I've been putting together an Angular 2 video course and I'm wondering how much work/hours was put into your Elm video course, I've been considering doing one but I'm not sure if it'll be simpler than Angular 2 / React."
I appreciate your due diligence. Your question reminds me of the time Bob Landis, a legendary wildlife filmmaker, was asked how many days he spent in the field to capture the footage for one of his hour-long documentaries. A humble man, he chuckled a simple reply: “Years”.
I don’t mean to sound flippant. I wish I could quantify how much work I’ve put into the Elm course. Back when I started making courses I tried to track my hours in hopes of calculating the development cost. And the detail-oriented (ok, let’s call it obsessive) part of me wanted to analyze those metrics so I could more accurately estimate the cost of future courses. Alas, I soon realized that tracking my time was futile.
For this Elm course in particular, it literally has taken years. I first started learning Elm over the holiday season in 2014. Six months later we released our first Elm course. Being a relatively new language, Elm continues to change and so we continually update the course. Then, late last year we spent several months completely redesigning and expanding the course to use the latest version and techniques. As they say, it’s not a sprint, it’s an obstacle course.
So, if I were to count my hours, I’m not sure where I’d begin. Do I count all the hours spent gaining experience with the language before even considering developing the initial course? What about all the time I’m doing something else but can’t stop thinking about how to explain a concept in the course? Honestly, once I start working on a course it kinda takes over my brain.
And I do a ton of research while writing a course. Should I include those hours or just the time I’m actually writing the script and building the example apps? What about the dead ends, false starts, and the rewrites? The 2am, bolt-upright anxieties—“Did I say function when I meant method?”—surely count, right? And do the video retakes and bloopers count? If so, that’s going to be a bit embarrassing.
I think you see where I’m going with this. But even if I had a full accounting of my time and could give you a tally of hours, it would be utterly meaningless to you. Your context is different. Your programming experience and background are different. You’ll have a different process. And I’m assuming your course will be different. That is, unless you’re planning to create a nearly-identical course. Surely you wouldn’t do that, would you Rudy?
So please don’t use me as a benchmark. It’s nonsensical. If you’re really keen to create an Elm course, by all means go for it! But I’d encourage you not to do it based on how many hours it took me or even whether it will be simpler than Angular 2. Do it because you’re genuinely interested in Elm and want to share the joy of it with other folks. Do it because your creative spirit won’t let you not do it. And do it your own way, in your own time.
P.S. Don’t forget to account for the time it’ll take to choose the right font size, editor color theme, and answer e-mails like this one.