JOE:
Hmm, if only Aimee knew somebody that dealt with technology. Oh, wait.
JAMISON:
No way. I have learned through sad experience that there's nothing worse than a room of engineers trying to fix a Google Hangout.
JOE:
[Chuckles]
[This episode is sponsored by Frontend Masters. They have a terrific lineup of live courses you can attend either online or in person. They also have a terrific backlog of courses you can watch including JavaScript the Good Parts, Build Web Applications with Node.js, AngularJS In-Depth, and Advanced JavaScript. You can go check them out at FrontEndMasters.com.]
[This episode is sponsored by Hired.com. Every week on Hired, they run an auction where over a thousand tech companies in San Francisco, New York, and L.A. bid on JavaScript developers, providing them with salary and equity upfront. The average JavaScript developer gets an average of 5 to 15 introductory offers and an average salary offer of $130,000 a year. Users can either accept an offer and go right into interviewing with the company or deny them without any continuing obligations. It’s totally free for users. And when you’re hired, they also give you a $2,000 bonus as a thank you for using them. But if you use the JavaScript Jabber link, you’ll get a $4,000 bonus instead. Finally, if you’re not looking for a job and know someone who is, you can refer them to Hired and get a $1,337 bonus if they accept a job. Go sign up at Hired.com/JavaScriptJabber.]
[This episode is sponsored by Wijmo 5, a brand new generation of JavaScript controls. A pretty amazing line of HTML5 and JavaScript products for enterprise application development in that Wijmo 5 leverages ECMAScript 5 and each control ships with AngularJS directives. Check out the faster, lighter, and more mobile Wijmo 5.]
[This episode is sponsored by DigitalOcean. DigitalOcean is the provider I use to host all of my creations. All the shows are hosted there along with any other projects I come up with. Their user interface is simple and easy to use. Their support is excellent and their VPS’s are backed on Solid State Drives and are fast and responsive. Check them out at DigitalOcean.com. If you use the code JavaScriptJabber you’ll get a $10 credit.]
CHUCK:
Hey everybody and welcome to episode 178 of the JavaScript Jabber Show. This week on our panel we have Jamison Dance.
JAMISON:
Hello, friends.
CHUCK:
Aimee Knight.
AIMEE:
Hello.
CHUCK:
Joe Eames.
JOE:
Hey everybody.
CHUCK:
I'm Charles Max Wood from DevChat.TV. If you missed the Angular Remote Conf tickets, it is not too late. I have the videos. They will be released. You can buy after the fact tickets for a little less than the regular price tickets. And then you can get into the forum and watch the videos. And I'm also going to be setting up some webinars with some for the talks that I didn't accept for the conference because they were really good proposals. So anyway, I'm super excited for that. So, keep an eye out for that. If you want to just go to the webinars, I'm going to charge separately for those from the regular conference tickets. But conference ticket holders are probably going to get a really good discount on that. I haven't quite set those prices yet. So, keep an eye out.
We have a special guest this week and that's Marc Grabanski. Did I say that right?
MARC:
Yes, you did. Hello.
CHUCK:
Do you want to introduce yourself real quick?
MARC:
Yeah, sure. I'm Marc. I'm a long-time user interface developer. I created the jQuery UI Datepicker and plugins before jQuery was even in existence. And I've been a really long-time fan of the show. I've probably listened to at least 60, 70 of these. And I'm super excited to be on this show and obviously supporting the show by sponsoring. [Chuckles]
CHUCK:
Yeah, we appreciate that. I also have to say that the datepicker was the only reason I ever installed that jQuery UI most of the time. [Chuckles]
MARC:
Yeah, that's what a lot of people say, [chuckles] that that's the reason they use jQuery UI, is that plugin. So, it's kind of a monster. It's kind of a beast. But it has every option you'd ever need.
JAMISON:
Do you just hate it now because you've spent so much time on it? Or do you love it still?
MARC:
Actually, it's funny because every time I login to my gym website or use a travel sight or something it's like, “Oh, there's the datepicker.” You know, signing some documents with the RightSignature or whatever, the datepicker's always there. [Chuckles]
JAMISON:
That's cool.
MARC:
Like, everything I use. So, it's just fun to see. I would love to create a new version of it, but I'm onto other things right now.
CHUCK:
It's like Marc's following himself around across the internet. [Chuckles]
MARC:
It is fun.
CHUCK:
And then nowadays you're doing Frontend Masters which is an online training website. Do you want to explain the idea behind it?
MARC:
Yeah, sure. To give you a tiny bit of backstory, basically I've experimented with a lot of formats of education. So, just trying lots and lots of different things, trying to get really my message across, the things that are in my head, teaching SVG and teaching jQuery back in the day and teaching all sorts of stuff.
So, I spoke at 50, 60 different conferences and just tried to figure that whole speaking end of things out. And that was great. And I was like, “Hey, I can run better conferences.” And so, I just ran five or six conferences. And one was at Google headquarters with 250 people. And it was a lot of fun running conferences. But I just never felt fulfilled, because conferences are sort of like, “Boom, pow, flash!” [Chuckles] Like, “Here's this cool stuff,” but it's not really… it's like Yehuda Katz was on stage at one of my conferences and Alex Russell and all these guys that I look up to. And it's like, “Well, I want to do that.” Yehuda was talking about data-driven UIs and all that stuff. It's like, “Yeah, that's awesome. Okay, how do I do it?” [Chuckles]
And so, that led me to… I created a seven-hour screencast course teaching what I knew. And I just didn't enjoy talking to myself, basically, to my computer in my basement. And I know a lot of people can really do that well. But it wasn't something that I enjoyed. So, I just started running workshops. I taught the first series of Frontend Masters which was just a workshop series. It was like six workshops. And then I invited domain experts in each of the topics to speak in the afternoons. And so, it was six of us. And I taught mornings. They taught the afternoons. And it sold out. So, people were going through the videos. And so, we went through [inaudible] just trying to figure out how to make an enjoyable experience out of live workshops. And it's just been iterating on that.
People were like, “Oh, I want to participate in these things live online.” So, I was like, “Okay. Here we go. Let's set up live streaming.” And I talked to live stream guy and he's like, “So, you want to build a TV studio. [Chuckles] Okay. Here we go.” So, we just keep iterating on things, making things better. And now since we have the live stream, it's awesome because there's over a hundred people online. They are chatting, asking questions. And we have a moderator that's watching the chat rooms making sure that the questions get asked to the teachers. And these are all-day sessions. 15 people in person, over a hundred online. And the teacher just loves teaching the audience.
Just like I said, if Frontend Masters existed where I could just go somewhere and teach for a day and have those videos broadcast to tens of thousands of developers, I would have just done it myself, you know? But because it doesn't exist, I just keep iterating on it. And obviously it's formed into a nice business. So, yeah.
JAMISON:
So, I spend a lot of time on Twitch.tv. And I'm really interested in the phenomenon of live streaming and participating with an audience and stuff. I have never thought about it in a technical standpoint though. It's usually just people playing video games and chatting with their audience.
MARC:
Yeah, I love Twitch. I watch it, too.
JAMISON:
So usually, when people do it on Twitch they're just focused on their game or whatever they're doing. And everyone's well, they just take a break and chitchat and participate in it a little bit. How do you balance teaching with keeping up with all the live stream viewers and making sure you're not leaving them behind or questions are getting lost or things like that?
MARC:
Yeah. So, we prep the teachers ahead of time to make sure that all of the code is easily accessible. So, that's always a big part of the problem, which is like, “Do the people online have access to the code and everything?” And then the second part which is what you're talking about which is all these people chatting and everything, we have a moderator that their job is just that. Their whole job is just that. So, if the teacher wants to glance and look at the chat room, we have it up all day. But the moderator just, it's their responsibility to make sure all the questions get asked to the teacher. And also, these are workshops. So, people are actually working through the code. So, we cut the [inaudible]. And the teacher can talk directly to the online students the entire work time. And so, a lot of the questions that come up in break, they'll reiterate once we get back to the podium.
So, that's how that works.
JAMISON:
Have you done any 'Frontend Masters Plays Develop a JavaScript Application' where everyone just types a letter and [inaudible], you compile into valid JavaScript?
MARC:
[Chuckles]
JAMISON:
Like 'Twitch Plays Pokémon' but for [MVC]?
MARC:
Twitch Plays Pokémon' [Chuckles]
MARC:
No. It is a cool idea. I've thought about some really cool live streaming ideas that we can do. But yeah, this is a format that works really well. So, we're just scaling it.
JAMISON:
So, how big do you think it can scale to? You said you have a hundred people, about. Is that your biggest class so far?
MARC:
Yeah. I typically try to keep it to 15 people in person and a hundred online, or 120. Basically because I find that that's a great mix of in-person questions versus online questions. We've had where it's 35 people in person and it's just like, the in-person room just completely dominates because they're just constantly asking questions. And the online people feel like they can't get in edgewise, right, when they paid for a ticket and they're there to get their questions answered as well.
And with more than 120 people, so we've gone up to 200, the chat room just gets way too noisy. And we'd have to really invest in moderation abilities and stuff like that to be able to scale over a hundred. But we just find that 100, 120 online is a great mix with the 15 people in person, between in-person people feeling like they get to ask their questions and online people being able to ask their questions. And everybody is happy and gets their questions answered with that kind of ratio.
So, we've played around with that a lot.
JAMISON:
Sure.
CHUCK:
I know that you record these sessions or workshops in Minnesota.
MARC:
Yeah.
CHUCK:
And do you have a lot of people actually travel in for that? Or are they mostly local folks that want to show up for these?
MARC:
Yeah. Because it's only 15 people, it's pretty easy to get that from the local audience. But we have had people from Amsterdam and Atlanta, around the US and around the world fly in. So, it does happen. It's just not exactly our focus, if that makes sense.
JAMISON:
And don't knock Minnesota. Minnesota is rad.
[Laughs]
JAMISON:
And everyone should fly in to Minnesota from all over the earth, because it's amazing.
MARC:
Yeah, it is pretty fun.
JAMISON:
Except maybe in the winter.
MARC:
In the winter it sucks, yeah.
JAMISON:
[Chuckles]
AIMEE:
Oh, I was just going to say except from November to March.
JAMISON:
No, it's only 20 below maybe a couple of weeks of the year.
AIMEE:
Yeah, yeah.
CHUCK:
[Laughs]
AIMEE:
I used to be from up there. I don't miss it. [Laughter]
MARC:
Yeah. Those months get really rough, for sure. Everybody's all depressed hanging their heads talking about how the weather is bad.
AIMEE:
I had a question because your format is very similar to my background into programming and how I learned. Originally I was learning in a vacuum by myself and then went to a bootcamp so I was around other people. Do you think that that format increases the value people get out of it because they have a shorter feedback cycle? They can ask questions and they can see that the people around them are having similar questions.
MARC:
Yeah. I'm obviously biased. [Chuckles] This is the format that I landed on that I like personally to participate in, but also to watch. So, I realize that it doesn't work for everyone. But it works enough where, especially with the videos now. We have some of the most popular programming courses in the world that have been recreated in this format. So, it clearly works for a lot of people. [Chuckles]
AIMEE:
I can imagine too, for the instructors, I'm curious, your thoughts. For them it's a shorter feedback cycle. So, if they're teaching something and they give this course at multiple different events, it's a lot easier for them to get feedback on too, like maybe they didn't cover one topic in enough depth.
MARC:
Oh, yeah, yeah.
AIMEE:
Or they think they went too far deep into something else.
MARC:
Yeah.
AIMEE:
And this way, they get immediate feedback and they can [inaudible] it.
MARC:
Yeah, exactly. With the online students, they're going to complain right away if they [chuckles], you know the, “When are we going to get into real application development?”
AIMEE:
[Chuckles]
MARC:
“I haven't put my hands on code in 30 minutes.” So, it's like, they will complain in the chat room. They'll complain over email. And it's not a bad thing, right? So, complaints are great because it gets you back on the right page or whatever. But yeah, it's cool because [inaudible], he did this [inaudible]. He's done it a ton of times and he was like, “It's amazing. Having the in-person audience and the online audience is like I just, even how I phrase things throughout the day.” Whereas… because it's a big stage at this point. You're talking to 115 people in the room, or whatever, and online. But it really is tens of thousands of developers because we not only publish on our own site but then through partners. And so really, we reach the biggest, widest, and really the deepest audience in programming. So, it's a big stage to be on, you know?
AIMEE:
I imagine too, like they say, the best way to learn something is to teach it. And in that kind of format, as opposed to somewhere where you're recording these lessons without any feedback, you really need to know what you're talking about because you're going to open up the discussion to questions that anybody may have. Whereas before, you're just reading off of a script. So, [I imagine]…
MARC:
Yeah.
AIMEE:
You'll be able to learn more that way, too.
MARC:
Yeah, especially for the teachers, that's a great experience. Screencasts are great because they can be a little bit tighter and that kind of thing where you are scripted so you can pack more into a shorter period of time. But yeah, those micro-adjustments throughout the day as well as like… when I was doing screencasts I actually sent out five iterations to get that feedback embedded in the actual content, where I don't think a lot of people actually do that.
CHUCK:
I'm curious…
MARC:
So yeah, that's a good way to get people's questions and their feedback right into the actual format.
CHUCK:
So, at this point you've done several of these workshops. How do you advise your teachers as far as structuring the course or structuring the workshop so that it's going to be the kind of thing that your audience actually wants to participate in?
MARC:
We've done about 50 of them now. So, it's pretty clear from either watching other teachers in the past or even talking with other teachers how this all goes about, but it's basically like a normal workshop where you have… the general cadence I tell teachers is 20 to 30 minutes of lecture, less of you have less material to go over or more if you have a deeper concept. And then typically 15 to 20 minutes of work time. And then in that work time is where a lot of the questions get asked by the students as they're working through the material.
And then you as a teacher go and actually walk through the solution and then answer people's questions along the way as well as bringing out any cool questions that came out during the work time. You're reiterating them and going through those common questions and common concerns. So, that kind of cadence of a little bit of lecture, a little bit of exercise, and then walking through the solution and answering questions along the way, is how we format it. And that's pretty… [Chuckles] I think that's pretty solid as far as how a workshop would go.
JAMISON:
So, I want to ask a little bit more about the online versus in-person thing. There's something about being online changes how people interact a lot. And it can be for the better and sometimes it can be for the worst, too. Like, people will just say awful, horrible things online that they never would in person. Have you had any problems with that or have you had any other ways in which the online participants have helped beyond just being more blunt about when they feel like things are getting boring?
MARC:
Yeah. I think it's generally good. The only really bad feedback is when the teacher doesn't give the right prerequisites. So, early on someone [chuckles] is like, “It feels like I'm in the deep end and I can't swim and get out or something like that,” to one of the workshops because they started off way too advanced, assuming ES6…
JAMISON:
Sure.
MARC:
Assuming React or whatever framework. And that's happened a few times where it's like prerequisites are the big deal now where it's like you need to have at least this amount of knowledge coming in. And so, those are a lot of times the biggest detractors for the audience is they didn't come in prepared with the right skill sets. But generally because we're focused on this intermediate to advanced audience I guess, I feel like the audience is actually really great because we appeal to that more hardcore audience. And they understand. A lot of them have participated in a lot of our workshops before. So, I don't know what part of this question I haven't answered yet.
JAMISON:
Sure. So, they're friendly.
MARC:
Yeah. Yeah, they're friendly.
JAMISON:
Yeah.
MARC:
Friendly and awesome. [Chuckles] Most of the time, yeah.
JAMISON:
Cool.
AIMEE:
I've found in my experience, being in a group like that, learning with each other, you kind of… I don't know. It starts off as a competition. Everybody wants to prove who's smartest by asking questions and doing certain things. But then by the end, everybody's working together and helping each other out.
MARC:
Yeah, you'll see in the chat room people are constantly sharing cool links and articles and stuff that go along with the workshop.
CHUCK:
So, I also am curious. How far in advance do you wind up booking your workshops?
MARC:
So right now, we have, let's see. So, it is September. So, we have three in October, four in November, and then I think three or four in December, or three in December. So generally, we keep in under three to five months. But usually it's two or three months. And at this point, it's way too many people [chuckles] that want to do the workshops than I can really accommodate. So it's just like, I'm actually not actively going after teachers at this point. They're just referring each other, and the same teachers coming back, and that kind of thing. So, it's pretty exciting but at the same time, a little bit overwhelming. [Chuckles] We ran 30 workshops already this year. So, I'm like, “Okay, I'm kind of done.” [Chuckles] But we have 10, 15 more to run.
JAMISON:
How do you scale this? You talked a little bit about scaling the classroom sizes and you feel like you found a good size. But how do you…
MARC:
Yeah. When I said…
JAMISON:
How do you scale the number of classes you give?
MARC:
Yeah. When I said scale, I mostly mean distribution, like reaching more people with the [inaudible] content. So, we could open a couple of workshop centers like say, I've thought about it in Europe and [inaudible] or San Francisco, or something like that, and have people head up those locations. But yeah, you can only have one event in one center at one time. So, it's not like we can run 10 events at the same time or whatever. So, it's mostly about scaling the distribution, reaching more people, making our content higher quality, a higher bar for quality, and that kind of stuff. But yeah, 50 workshops in one center in a year is a lot. [Chuckles]
JAMISON:
Yeah, it's like one a week.
CHUCK:
Do you see education online in general going this direction where it's going to become more these workshops or do you see it heading more toward…
MARC:
No. [Chuckles]
CHUCK:
Sort of the webinar where it's a shorter form of the live format. Or…
MARC:
Yeah.
CHUCK:
The online courses. We see all kinds of stuff.
MARC:
Yeah. E-learning is super exciting right now, obviously. There are lots of people experimenting with lots of different formats. I love some of the interactive stuff like Code School and some of the short form stuff like Egghead. It's really, really awesome to see. Oh, and there's CodeCombat, coding games in the browser and all this kind of stuff. So, all of that's really cool. The thing that was missing for me personally was just being able to ask questions of somebody who has a lot of experience, deep level experience. And I don't know how to do that other than this workshop format where they're actually in person, in the room with other people. If you do it just purely online, it feels like a hollow experience because you don't actually see the faces of the people. You don't actually get to talk with them and shake their hand and that kind of stuff.
Oh, the NodeSchool stuff is really cool too, right? Where they have interactive workshops that are supplemented by these interactive courses and that kind of stuff. So, I think that I'm just really excited about all the different formats. And clearly, some formats work really well. And this has been actually completely painful to birth. The first two and a half years were not so fun. But I felt like this is a format that I really wanted to nail down. And I think we've done that.
CHUCK:
I want to talk a little bit about the business model. We've talked a bit about the pricing and people can get in on the courses that are coming up and buy tickets. But you also, you said you make money by, for example you sell memberships to get access to all of the videos. You also have partners that I assume are paying you for access to the workshops. How does all of that break down business-wise as far as keeping the business doors open and [inaudible]…?
MARC:
Yeah, yeah.
CHUCK:
And stuff like that?
MARC:
Yeah, so my philosophy has always been to reach the most amount of people without going broke. [Chuckles] So, that's always been my philosophy.
JAMISON:
[Laughs]
MARC:
It sounds funny but it's true. We do price on the higher end for the subscription. So, it's 39$ a month or 390$ a year to get access to all of the videos. That's everything that we've recorded and finalized on the platform. But then we also do licensing and licensing to platforms like Pluralsight. So right now, we have a top five course there. And usually we're around the top 100 with at least five to seven courses. And the rest of our courses do pretty well on Pluralsight. We give them twothirds of our library and then they give us a licensing fee back. And then we're doing that.
We just signed a deal with O'Reilly which is similar, the same kind of thing where it's like we'll be on OReilly.com and Safari Online. And we'll give them roughly the same amount of our library and then keep some exclusive to our site so our members get first dibs on everything, our direct members. And then yeah, so licensing we get to reach a ton of people. We're on [inaudible] as well with 19 courses. And then we're launching a few more. But pretty much we have all of the big video distributors as partners. And they give us a certain percentage. And then obviously our direct subscriptions.
So, we make basically all of our money on video. And the ticket sales is really just to supplement the cost of creating each course. And also, it gives us an indicator of how popular something is going to be. So, if we don't sell a ton of tickets, we know that that course isn't going to be superhot. But if we sell out in a week or two, then that course is going to be pretty hot. And we better focus on pushing that out the door and making sure that it's all [inaudible], edited well and polished because it's going to be our primary money maker.
JOE:
So, what's selling hot right now?
MARC:
Well, a lot of our advanced fundamental type stuff. So, Kyle Simpson has an advanced fundamentals of JavaScript. So, really, really diving deep into how the JavaScript compiler interprets scope and all that kind of stuff. And yeah, obviously your Angular and React and framework type stuff. But honestly, our bread and butter is really the deep fundamentals where some of that stuff is really difficult to find out there, like really deep fundamentals. And hardcore functional programming, anything to do with functional programming.
And Jafar Husain who was just recently on this show, he was out here for two days teaching functional reactive programming with the observable pattern and stuff like that, how Netflix builds interfaces. So, stuff like that where it's pushing the edge or experienced people who have written large Angular, React apps, that kind of stuff. So, yeah I guess that's hot. [Chuckles]
CHUCK:
Yeah, there's a lot of really interesting stuff here too as far as Angular, CSS3. There are a bunch of things here that I'd like to learn a little bit more about. I'm curious though. As far as your technical setup, when you stream it out to your online subscribers, is that through Google Hangouts or Twitch or something else?
MARC:
Yeah. So, we just use Livestream.com because they have a pretty robust adaptive streaming. It would be great to have adaptive streaming in HTML5 but we don't have it currently. So, Livestream actually uses Flash. And so, if your connection dips you won't actually get disconnected. It will just lower your quality a little bit. And so, Livestream.com really is a super robust solution for that. So, we use that with the live stream studio here. And then we just have a custom Firebase chat next to it. So, everybody who's logged in authenticates with WordPress. We use WordPress on the frontend. And then we use Firebase for the chat and Livestream for the actual video feed.
CHUCK:
If somebody wanted to duplicate this, how would you feel about that?
MARC:
Oh, I'm all for it.
JAMISON:
[Laughs]
MARC:
I would say that the more education, the better. It's just awesome when I see something taking off in e-learning and new experiments. So yeah, I'm all for it. It's just really difficult to do this format. It took us two, two and a half years to figure out the actual process. And so, it's… yeah.
JAMISON:
That's the benefit of being a copycat, is they just [inaudible]…
MARC:
Yeah, you could just leverage all of that. [Chuckles]
JAMISON:
Yeah.
MARC:
Yeah, exactly.
JAMISON:
Like, thanks for all that had work, Marc. [Laughter]
MARC:
Yeah, that's totally fine. I'm already seeing some experiments out there. It's a kind of copycat. But that's fine.
CHUCK:
Just don't call it Backend Masters. That sounds bad.
JAMISON:
Yeah.
MARC:
Yeah, [chuckles] that does not sound good.
JAMISON:
Frontend Wizards. [Laughter]
JOE:
Frontend Wizards.
MARC:
Yeah. We tried to launch, was it, PHP Wizards. We actually had the whole logo and everything. But yeah, I've just decided to stick to frontend because that's what I do.
CHUCK:
There's plenty there, plenty there.
MARC:
Yeah, it's plenty there. We still have… you could look at our public planning document. There's like 50 topics that we haven't even touched.
JAMISON:
How do you select topics?
MARC:
Okay. So, since I have been a user interface developer forever, it's either selfishly I just pick, “This is the topic that I really want to learn about.” That was what it was originally. But now that we have such a large subscriber base, they tell us. The topics that we want, we put into a poll and then every year we poll everybody. And then that bubbles up like, what are the key topics that people need? Algorithms and data structures. That was towards the top. And now we're going to do four days on algorithms and data structures. Actually, we're going to do six. So yeah, focusing on what people are voting on as well as the combination of my personal interest. Because if I'm not super hyped about the topic then I'm not going to be so hyped about creating [a great event]. So, [just] a balance between what people are voting on and what I'm personally excited about.
And then also teachers recommending other teachers is actually the primary resource right now where people are like, “Oh, you need to get this guy from this language, or this framework, or tool, or whatever.” Or girl. We have women teachers. They all kill it. So, it's really cool to see the topics that the teachers that other people actually recommend to me. So I'm just like, “Oh yeah, that sounds cool. Let's do it.” [Chuckles] [Inaudible] do it.
JAMISON:
So normally, you don't really vet them too much? You just go by recommendations?
MARC:
Yeah, recommendations. Also, have they given at least five workshops before? Because that's what I find makes something successful, is you've at least given it five times. So, it's kind of a requirement. So, even if they're referred to me, I just ask, how many times have you given this workshop? And if it's less than five, I'm like, “Well, maybe you should give it once or twice more.” And I was like, “Yeah, it has some stuff to iron out.” So, generally five times is the baseline. But some people, like Jafar has given it a hundred times to Netflix internally. So, he was super excited to come along and give it and he killed it. But yeah. And advanced SVG animations, Sarah Drasner's coming. That's a super cool topic to me. I don't know that'll be the most popular topic on our platform but we can dive into these niche things that I'm personally interested in.
JOE:
So, what other topics have you got coming down the pike?
MARC:
Well, we recorded a ton that are actually in production, like Jafar obviously. Unit testing with Justin Searls and David Mosher, Chris Mather, Meteor, Henrik came out, Joreteg, and he did building modern web applications with Webpack and ES6 and React and that kind of stuff, and Ampersand. And then Scott Moss. He was a Hack Reactor instructor and now he's at Udacity. So, he did building a ‘componentized’ Angular application and then also three days on API design in Node. And then Mike North, Ember, Sarah on SVG animation, Bianca on algorithms and data structures. She's coming back. And Kyle Simpson's going to do another asynchronous programming, his style.
So yeah, it's a pretty good lineup coming up.
AIMEE:
Do you find that people come on their own accord or do you think there are people who are coming as part of a group with their company?
MARC:
Yeah, both. So, we'll have companies here, entire teams coming with four or five people from their team. And they'll actually come in person or we'll sell a group ticket which is a whole organization with 20 or 30 people online from their organizations. That happens quite often. But most of the time, it's individuals sponsored by a company. And that's how we sell most of the subscriptions as well as the tickets to the workshops. It's usually individuals who are interested in a certain topic or certain set of topics and then they're sponsored by their company.
CHUCK:
Now I looked on your website. I didn't see where to buy tickets for the individual session.
MARC:
Yeah, we [inaudible] over that at the email list. So, it is FrontendMasters.com/workshops. You can see some of the upcoming recordings. But yeah, we don't really have it. I don't promote the workshops at all because like I said, all the money that we actually make comes through subscriptions.
JAMISON:
So, you talked a little bit about your plans for some upcoming topics. What other plans do you have for Frontend Masters? Is it just keep going with the model that you've figured out? Or are you going to keep trying new things or what?
MARC:
Yeah. My philosophy is always to try new things. So, we're always trying new things internally. And we have a bunch of cool experiments that we haven't rolled out to everyone yet. But yeah, we'll always be experimenting with new things. It's just that this format is working really well and it works really well with our licensing partners. It's making them millions of dollars. So, they want more of the same from both us and to get on their platform. So, we'll definitely scale the existing format but we'll be playing constantly with new things, like always.
CHUCK:
So, part of me is a little bit tempted to do something like this. Of course, I've got 10 million other things going on. So, what that probably means is that I won't. But if I wanted to pull something together maybe in Ruby or in the mobile space or something like that, what's the hardest thing about starting something like this?
MARC:
Control the environment. Really, you have to have a space. You have to have a dedicated space. You have to have equipment, fallbacks for everything in case the live stream goes down. Just make sure to have two of everything and control the space. And then obviously have enough pull…
JAMISON:
Two of everything, that's a good one.
MARC:
[Chuckles] Have enough pull with the experts in your field to get them to trust you to not only do the content but also record it and all that kind of stuff, because I think people are pretty particular about their reputation and the way that their videos come out in the final product. So yeah, my case I started with friends and they trusted me enough to do it. But [chuckles] early days were kind of rough.
CHUCK:
And the economics of it, you have to put out a certain amount of money before you even get it recorded.
MARC:
Yeah.
CHUCK:
To fly your experts in, to do the marketing, to get whatever.
MARC:
Yeah. I rolled out over basically every dollar I got from consulting into this, to start it. And it was a painful process, like I said. It didn't take off until… we started it in the end of 2011 and it really didn't, at least the videos didn't start taking off until about 12 to 16 months ago. So, it was really two and a half years were really, really hard because we were living off the ticket sales, which ticket sales are not good to live off of. And now the subscriptions just far, far, far out-pays anything we've ever done. So, it takes a while to build a library that people actually will want to subscribe to. [Chuckles]
JAMISON:
So, this is a more generic question, but I guess it applies to anyone producing content around technology. It seems like there's a tendency for it to go out of date. I'm sure you have some stuff on ES6. In five years, people won't care about that. It'll be like, ES 'twenty-x-ty-six'. How do you keep up with things going out of date?
MARC:
Well in our case…
JAMISON:
Do you just keep building more stuff or what?
MARC:
Yeah, we would build more stuff for sure. We would invite people to speak on the next thing. But the biggest thing is just inviting the right people, the people that are either creating the framework, writing the books, that are on the core team. People who really can see where things are going and say, “Well, this is the 10, 20% of the library that you should focus on because the rest, it's in flux or whatever.” Just having the right people up on stage is the biggest thing, because they know where things are going. They know exactly what you should be focused on, because they're part of shaping that technology. And I think that's a big key to our success and why our content lives so long, is because we invite the people that are actually working on the technology.
And when you get into a situation where you have a college kid that's reading some documentation or whatever, they're excited about the technology and that's great. And they're writing about it, that's great. I'm all for education, like I said. But at the same time, they might be covering a feature or a bunch of features that will be deprecated next month. Then they have to re-write all those parts of the book again. Whereas somebody who is closer to the inside, a core team member or whatever, will see those changes happening and not put out material that's not going to live for a while. So, I think that's a big key to why our content lives so long.
JOE:
So, you mentioned a while ago that you get excited when you see other e-learning things going on. Is there any particular examples of other e-learning experiments that you haven't specifically mentioned that excite you or things that nobody is doing yet that the people are talking about doing, you think are exciting?
MARC:
Well, that would give you all the secrets. [Laughter]
MARC:
Just kidding. Yeah, I view us as like a mech to the teachers and I want to give them the tools. So, when I look at all the tools out there it's like there's parts of Code School that are cool. There are parts that I personally don't resonate with and that's fine. And stuff like CodeCombat, it's like a game and you're controlling a character. Parts of that are really great. Other parts I don't really resonate with. So, it's like looking at all these different experiments, and I can't… Untrusted is a really cool example of a JavaScript game where I actually went through most of it myself. And it gears itself more towards intermediate, more advanced content. Those are the kind of experiments
I like.
Exercism.io is something that I really like because you can use your own tools. Oh, NodeSchool as well, you can use your own tools and author the content and then push it to the tool. And you're not timed. There's no time limit. There are no points. There's no concept of points and… I guess in NodeSchool there is, badges or something. But yeah, I like that self-exploration and getting feedback from other people on Exercism is really cool. So, other people can comment on your code and so you can iterate on it and that kind of stuff.
So, I want a place where teachers can author different types of challenges and different types of content, not just file it here. But possibly we'll do screencasts and possibly we'll do some interactive stuff. But giving really the tools to be able to create alternate formats of content that are covering the same topics is what I'm excited about. Because a lot of it's the same content, right? We just all like to consume it in different ways. Some of us like the Code School style where it walks you through some basic thing and then you type it in and follow along. And other people like more selfdirected stuff like NodeSchool. Or other people like the gamification stuff like CodeCombat. So, I don't know. I don't think that one format's going to reach everyone. And so, we need to figure out ways that our content can live in these different places and reach different people.
JOE:
Yeah. I definitely agree with that. One of the things that I saw that I thought was really interesting is when my daughter started doing code in school, there was a book called 'A Better Way to Learn JavaScript' that was paired up with a bunch of online exercises that I thought was really cool. And then I recently encountered these guys that here in Utah are doing a thing called 'My Tech High' which is kindergarten through senior level high school that's specifically devoted technology. And you can take courses like Minecraft add-on authoring and lots of programming courses and stuff like that. There are just lots of interesting experiments going on [inaudible]…
MARC:
Yeah.
JOE:
In the e-learning space. And it's very cool.
MARC:
Yeah, it's really cool.
JOE:
Yeah.
MARC:
I do want to mention the giveaways that we do.
AIMEE:
Oh, yeah. Here we go.
MARC:
So yeah, Aimee I know you had inquired about getting your user group some licenses. But yeah, if you were on a user group or a conference and you want to give away free yearly access to your group, definitely reach out at support@frontendmasters.com or Marc, M-A-R-C, at FrontendMasters.com and just give me a link to your group and the general size so I can get you some free codes that you can give away at your meetup or conference.
AIMEE:
That is very nice of you.
JOE:
Awesome. So, I have a question. Let's say I was a professional figure skater and I want to get into programming.
AIMEE:
No. [Laughter]
JOE:
This is becoming a very popular thing. I'm imagining a school specific to getting professional figure skaters into programming.
AIMEE:
[Laughs]
JOE:
Once they're done, they decided to retire and won so many gold medals or so on. Is that something that you might want to maybe think about, maybe a branch of Frontend Masters?
AIMEE:
Of course, [inaudible].
CHUCK:
That is the ultimate joint venture.
JOE:
I think you'd start out with Code.org. There's the game where you play Anna and she's skating, where she goes and draws little pictures and you're drawing fractals and things like that. That would be the place to start.
AIMEE:
I'm going to guess that there is some actual seriousness to that. I think being from a very competitive sport, I don't know. It's hard to tell what came first, the person's drive to be good at a competitive sport or if they're so used to being driven in that sport. But I don't know. It's like in skating, you peak so young. I'm sure it's like with gymnastics, too, that it's kind of, what do you do for the rest of your life? [Chuckles]
MARC:
Yes. There is definitely crossover. If you can be good at one skill, any kind of sport, if you can be really good, that crosses over to other areas of your life. There are so many cases of people who are really great at one sport or one whatever, going into the workplace and just killing it because they have that drive to learn and succeed.
AIMEE:
It's amazing to me in the bootcamp, seeing all the different people's backgrounds. There were a ton of musicians. So, I think there's also some sort of connection there.
JOE:
Hmm. That's interesting.
MARC:
Yeah, musicians, literature.
AIMEE:
And they seem to be really good at it. They say, I think I've heard that people tend to think that musicians make good programmers because they're really good at recognizing patterns. So, just a thought, something I've heard before. Anyways.
JOE:
For people who are listening and may not be getting the context, last weekend I discovered this other former professional figure skater, Berlin Sohn.
AIMEE:
She's the girl that we picked, AJ and I, to win the scholarship for the bootcamp.
JOE:
Oh. Yeah, so pretty awesome. And I can't decide whose name is cooler, Berlin or Aimee Knight.
AIMEE:
[Chuckles]
JOE:
Both pretty cool names. Very awesome.
[Chuckles]
MARC:
Yeah.
JOE:
I thought it was funny seeing this other professional figure skater who's now developing. So, I'm giving…
AIMEE:
It's really cool.
JOE:
Aimee a little bit of teasing. But in all seriousness, I think you're right. There's correlation between doing something and being awesome at it, and then wanting to do something else and still be driven to succeed.
AIMEE:
Yeah.
CHUCK:
You know Joe, I think another 10 years, they'll both have rock bands named after them. So, it won't matter.
JOE:
Yeah, really. How cool is the name Berlin? Seriously…
AIMEE:
Yeah, it's very cool.
JOE:
If your first name's Berlin, pretty cool.
AIMEE:
It's very cool.
CHUCK:
The thing that I want to ask about is just marketing. How do you get the word out about Frontend Masters? Obviously you are sponsoring awesome podcasts.
MARC:
[Chuckles] Yeah.
CHUCK:
But what else are you doing?
JOE:
[Chuckles]
MARC:
Yeah. The general rule of thumb is anything I read, listen to, or watch, I want to be there. Because I am the audience. I'm the exact same person as everybody who's basically learning from Frontend Masters. I'm basically the same type of person. So, that's my general rule of thumb. Obviously I love JavaScript Jabber. I listen to tons of episodes. So, I want to be a primary sponsor there. Newsletters is a big thing. So, JavaScript Weekly, Node Weekly, HTML5 Weekly, these are really, really great publications that Peter Cooper puts out. And we're one of the early sponsors there. And it's been really fun because, well he's actually kicked me out of a few spots because I
[inaudible] take everything. And so, I'll take everything he'll give me. So, I'll basically just…
CHUCK:
[Laughs]
MARC:
will sponsor anything Peter Cooper does, I just will sponsor. I love that guy and love everything he does. Yeah, and we're just starting some experiments on buy/sell ads and YouTube and paid ads. But on the unpaid side, obviously exactly what I said. With the meetups, we give free licenses to meetups and conferences all around the world. As soon as they ask me, I will give away free licenses. I've given away a lot of free licenses and those customers eventually come back [inaudible] a year once their [inaudible] period comes up. So, we're in it for the long run.
And I don't mind doing giveaways and trying to basically… [Inaudible], we did a three-month free period or something that was exclusive to their audience. And so, just marrying giveaways and offers and stuff like that and giving away free videos. So, we have a YouTube channel. We put stuff on there. We put stuff on our website. So, if you want to preview any course, you get a full lesson for free, 10, 15 minutes, that will be exactly like the content that you'll see in the course. So, just trying to put out some free stuff. And we'll be doing a lot more of that, just trying to reach the type of people that are forward thinkers in frontend.
CHUCK:
The other question I have, now looking at this you've got a lot of teachers that have done courses on here. How do you compensate them? Do you pay them on the Pluralsight model where it's a certain percentage of the traffic?
MARC:
Yup.
CHUCK:
Or is it so much per view? How does that work out?
MARC:
Yeah, yeah. It's exactly the same. So, my philosophy there was, we're not here to innovate on pricing. It's basically, we have the subscription model and then we have however much money we make, we just dice up based on views or how many minutes watched of each course. And then we just cut that based on a percentage to the authors. And so, they get royalties monthly. But they also get paid to come out and do this.
So, they get all expenses paid plus, it depends on the experience of the instructor. But at least $3000 plus all expenses paid to come out. So, not only do you get paid a little bit upfront but you get paid on the royalties. And some of these people, what they started out making three years ago when we launched the platform, they're still making more money today on the stuff that was recorded in 2011. So, we're seeing a lot more repeat teachers because the royalty checks keep growing. And so, there's incentive to come back. We're exactly the same thing as Pluralsight. That's why Pluralsight's a partner with us in the sense of the subscription, the royalty model. But we have a very different way of actually recording the content.
CHUCK:
Right.
MARC:
And a very specific niche that we're trying to fill with frontend.
CHUCK:
Alright. Well, I don't think I have any more questions. Does anyone else?
JAMISON:
I'm fresh out.
AIMEE:
Nothing here.
CHUCK:
Alright. Well, let's go ahead and do the picks. We're going to take a minute to shout out to our silver sponsors.
[This episode is sponsored by TrackJS. Let's face it, errors cost you money. You lose customers, server resources and time to them. Wouldn't it be nice if someone told you how and when they happen so you could fix them before they cost you big time? You may have this on your Back End Application Code but what about your Front End JavaScript? It's time to check out TrackJS. It tracks errors and usage and helps you find bugs before your customers even report them. Go check them out at TrackJS.com/JSJabber.]
[This episode is sponsored by Code School. Code School is an online learning destination for existing and aspiring developer that teaches through entertaining content. They provide immersive video lessons with inbrowser challenges, which means that each course has a unique theme and storyline and feels much more like a game. Whether you've been programming for a long time or have only just begun, Code School has something for everyone. You can master Ruby on Rails or JavaScript as well as Git, HTML, CSS, and iOS. And more than a million people around the world use Code School to improve their development skills by learning or doing. You can sign up at CodeSchool.com/JavaScriptJabber.]
CHUCK:
Jamison, do you want to do picks?
JAMISON:
I do. I have two picks. They're both slightly selfish because they're kind of related to me. The first pick is the videos from React Rally started coming out. And Jessica Kerr's video is the first one that we release about functional principles in React. But I think it's broadly applicable enough that even if you don't use React, it's still helpful at seeing how functional programming can help you build UIs in a safer way. So, that's a really good talk and I recommend you check it out
My second pick is Matt Zabriskie and I were yelling about the term 'thought leader' and he inspired me to make a Chrome extension that changes the word 'thought leader' to 'thought-haver' [chuckles]. Because I think 'thought leader' is a stupid word. So, if you want that same experience in your life, you can go to my GitHub, check out thought-haver, and have more 'thought-havers' and fewer 'thought leaders'. Those are my picks.
CHUCK:
Alright. Aimee, do you have some picks for us?
AIMEE:
Yes. Sorry, I'm still laughing. That's good. So, since we're talking about Frontend Masters I was going to pick two courses that I did on there that I really liked. The first one was the Angular one with [] and then the second one was the Douglas Crockford one. So, I had a Pluralsight subscription and that's where I was watching those. And they're really good. So, I'd encourage people to go check those out.
And then I'm going to keep trying to do more health related picks. So, I think it was either last week or the week before, I picked Quest bars. This week, I [inaudible] something called LÄRABARs. So, they're good, nutritional bars. They're totally paleo. So, if you're sitting around at your desk and you want something good for you to eat instead of candy or soda, I would check out LÄRABAR. And that is it.
CHUCK:
Alright. Joe, do you have some picks for us?
JOE:
We didn't get Aimee's cat [inaudible] pick. Is that over?
AIMEE:
Oh god. I did not want to [inaudible] that. [Laughter]
AIMEE:
My husband for our fifth year anniversary on Friday, I was in the middle of work at three o'clock and I was actually on a Screenhero session and turned around and there it was: a kitten behind me. And my husband [inaudible].
JOE:
[Gasps]
AIMEE:
So, yeah. It was good. That's it, though. Two cats. No more. No more cats.
JOE:
[Laughs]
JAMISON:
What anniversary was this?
AIMEE:
It's a five year anniversary. I have a very clean house. It's immaculate clean and we'll have no more kittens, no more cats, no more pets.
JAMISON:
[Laughs]
AIMEE:
This is it.
JAMISON:
What he could have done was for the five days leading up to it, every day just another kitten.
AIMEE:
Oh god, no.
JOE:
Oh yeah. [Laughter]
AIMEE:
No, no, no.
CHUCK:
He listens to the show, right?
JOE:
That would have been awesome.
JAMISON:
And then you're a cat lady, because they outnumber you.
AIMEE:
Oh god, no. No more. This is it.
MARC:
With two cats, the people are just like, “Oh, okay. They can play together.” But with three cats, you start to become that person…
AIMEE:
Yeah, no.
MARC:
Everybody looks at.
JAMISON:
Yup.
MARC:
And they're like, “That person with all the cats.”
JAMISON:
[Inaudible].
AIMEE:
No, not happening. We have two. And so, this new kitten is actually pretty cool. It's not just like a regular old cat. We actually got a Bengal. And so, he's going to be really, really big one day.
CHUCK:
You know what's hilarious is that most of this conversation, with a couple of few exceptions like, “This cat is really awesome,” and stuff like that, I've heard the same conversations had about kids.
“We aren't having any more kids.”
[Laughter]
AIMEE:
No. We're [inaudible] having any cats. I refuse. I want my house to smell like nice and pretty, not like animals. [Chuckles]
CHUCK:
Yeah.
JAMISON:
[Chuckles]
CHUCK:
And we were having a conversation about whether we wanted to have more kids… yeah, it's funny.
AIMEE:
No more cats. They will have to be put up for adoption if we have any more.
MARC:
Yeah, we actually have three cats in between me and my wife. When we got married, we joined our cats together. And we have three of them in the house. And now we started having kids and then it was like, “Okay, we have to get rid of one cat per kid that we have.” [Laughter]
MARC:
And so, we found them good homes. And so, we're down to one cat and two kids. So [chuckles].
AIMEE:
Sounds like a good ratio.
MARC:
Yeah. It's good.
JOE:
Awesome.
CHUCK:
Alright. I'm just going to pick having some time off. I've been pretty wiped out, burned out, whatever. I think I'm heading for something, either emotionally or physically to blow out. And so, I took most of the day off. I just wanted to talk to Marc today. So, I jumped on this call. And of course, [inaudible].
JAMISON:
I hope we don't push you over the edge, Chuck.
CHUCK:
My shock mount's broken. So, I didn't want to hold my mic. So, that's why I'm on this setup instead. But yeah, I'm just going to pick taking some time off. And to be honest, I think the week after Angular Remote Conf, I'm planning on taking two days. And I think I'm going to go [chuckles] get a hotel room and just be somewhere really, really quiet.
[Chuckles]
JOE:
That's [incredible].
CHUCK:
Anyway, those are my picks. Joe, did we get your picks?
JOE:
We didn't.
CHUCK:
Okay, I was going to call on you and then we got sidelined by cats and kids and cats. Do you want to give us your picks?
JOE:
Alright. Last week I went and saw the movie 'The Man From U.N.C.L.E.' and it was awesome.
MARC:
Oh, it's so good.
JOE:
Possibly one of my favorite movies this year. Certainly one of my favorite movies this year. I [tried to] think of a better movie I've seen this year and having a hard time. Great movie. Fantastic, highly recommended.
I also blew a whole bunch of money on the latest Sphero because it's the BB-8 droid from the new Star Wars movie.
JAMISON:
Oh yeah.
JOE:
Which just [inaudible] me out to no end. And even though I already have a Sphero I had to have the BB-8. I'm super excited to get that, whenever it happens to arrive, and surprise my son with a Star Wars droid, robotic Star Wars droid, which is going to be totally cool. And that's it.
Of course, I want to remind everybody that tickets for ng-conf are available through the lottery and there'll be drawings going on for probably a couple of months. So, even if you missed the first drawing on September 22nd, no reason not to register because there'll be other drawings for tickets. And that's it for me.
CHUCK:
Alright. Marc, do you have some picks for us?
MARC:
Yeah, so when I'm in my car driving around, the podcast that I reach to other than JavaScript Jabber is the Timothy Ferriss podcast because he interviews all sorts of crazy people, like the founder of XPRIZE and these really cool people doing interesting things. So, that's what I go to as far as podcasts. So, definitely check that out.
And then I did mention in the show CodeCombat and Untrusted. I know that Untrusted has been picked in the past, but it's a really good JavaScript game. You should check it out.
CHUCK:
Awesome. Alright. Well, if people want to follow up with what's going on with Frontend Masters or with Marc, what should they do?
MARC:
There's FrontendMasters.com or Twitter.com/frontendmasters. My Twitter handle is 1marc. So, follow me up on that. Tweet at me, or whatever.
CHUCK:
Alright. Well, I guess we're done. We'll wrap up. We'll catch you all next week.
[Hosting and bandwidth provided by the Blue Box Group. Check them out at BlueBox.net.]
[Bandwidth for this segment is provided by CacheFly, the world’s fastest CDN. Deliver your content fast with CacheFly. Visit CacheFly.com to learn more.]
[Do you wish you could be part of the discussion on JavaScript Jabber? Do you have a burning question for one of our guests? Now you can join the action at our membership forum. You can sign up at
JavaScriptJabber.com/jabber and there you can join discussions with the regular panelists and our guests.]