JOE: We’re recording now, so anything you say can and will be used against you in the court of law.
SHAI: Okay, so… bye, guys!
[Does your team need to master AngularJS? Oasis Digital offers Angular Boot Camp, a three-day, in-person workshop class for individuals or teams. Bring us to your site or send developers to ours — AngularBootCamp.com.]
[This episode is sponsored by Digital Ocean. Digital Ocean 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 VPSes are backed on solid-state drives and are fast and responsive. Check them out at DigitalOcean.com. If you use the code “angularadventures” you’ll get a $10 credit!]
JOE: Hey, everybody! Welcome to Adventures in Angular Episode 40. Today on our panel, we have Lukas Reubbelke.
JOE: Katya Eames.
JOE: And I’m Joe Eames. I’ll be your host today. And we have a special guest, which is Shai Reznik.
SHAI: Hello! Hey, you forgot Aaron Frost. “Hello.” And Charles Max Wood. “Hi there.” And… John Papa. [Mimics Italian accent] “Hey, I love ravioli code. I like ravioli!”
SHAI: So yeah, everybody is here. I will like to dub everyone together, okay and ask the questions.
JOE: [Chuckles] Shai, so we have you on the show today to talk about ng-wat. The first thing we’re definitely going to say is for anybody listening if you have not watched that talk from ng-conf, you should watch it. But before we get into it, I think it would be a great idea for you to introduce yourself and give us some background history, you know, your best friend growing up and any criminal record that you’ve got, so.
SHAI: Okay, so it started back in 1983. It was a cold day. My mother started… [Chuckles] Okay, so I’m Shai Reznik. And I come from two parallel backgrounds: one is frontend development and consulting, and the other one is entertainment. So I do improvisation. It’s like “whose line is it anyway?’ I am from Israel, so I do it mainly here in Israel. And I also have a standup comedian background. And I’m fascinated with video — especially online video. So for lots of years, it was a hobby of mine, which I recently turned into my new venture; a few months back that I started call HiRez.io, which is an online training school which combines teaching frontend development with humor. And mainly for people who don’t like long videos and pretty much gets distracted easily by online videos. So the first course that I launched is an Angular prepare your code for Angular 2.0; how to prepare your current Angular 1 code to Angular 2.
JOE: Can I ask if that video just basically Ctrl+A, Ctrl+X?
SHAI: Ctrl+A, Ctrl+X?
JOE: Or for the Mac inclined, Cmd+A, Cmd+X.
SHAI: Oh, yeah! Exactly. It’s copy-paste basically and just renaming stuff. No, actually, if you haven’t seen the first video, I can probably bet you never saw a crazier online video in your life.
JOE: Does that include people who’s seen ng-wat?
LUKAS: It’s crazier.
SHAI: You can argue that it might be crazier because I didn’t have the restrictions I had in ng-wat.
And yeah, so ng-conf was a big, big, big dream of mine ever since I saw the first one last year. And I saw the… I think it was John Papa’s talk with Ward Bell, interfering, getting up to the stage, and I was like “Okay, I must be there. Those guys are crazy, and I must hang around with these guys,” and stuff like that. [Chuckles] So yeah, this is like a short background on me. I kind of leaped onto the ng-wat, but I have like also funny stories from that. And I have also stuff that I didn’t actually… that didn’t make it to the actual talk because I think I had ten minutes, which I think I exceeded slightly. [Chuckles] It was 16 minutes, I think, in the end. So this is basically me. I do lots; like I’m a professional hand teaser also, and I juggle and stuff like that. But you don’t want to hear about that. So that’s about it. This is the episode.
LUKAS: So let’s get to our picks…
SHAI: I pick Lukas Reubbelke.
LUKAS: He’s the craziest guy you’ll ever see. And Shai, you should hang out with him.
LUKAS: I do have a question: so, a little bit of kind of an anecdotal story is you went on Thursday, and my talk was on Friday. And after you gave your talk, I literally, like, had a panic attack. And like I need to go work on my presentation [chuckles] it’s not good enough. And I need more jokes. But obviously, your talk was easily, in terms of just the entertainment value, was my favorite talk out of all of the ng-conf talks. And there’s a lot of good ones, but I really especially liked yours. And it was very well-received. I would be interested to hear what your impressions were of just the reception of all of a sudden, Shai Reznik comes out of nowhere and gives like the funniest talk ever. What was that like having the community just like lose their mind over your talk? And what kind of what came of that since?
SHAI: First of all, I am glad you asked. I have a scripted answer for that.
LUKAS: “It was a cold night in 1983…”
SHAI: [Laughs] Yeah. Okay, so the story behind ng-wat, I will get to the end result of my feeling after the talk. But it started like I said it was a dream of mine and it was a coincidence, I saw on ng-conf’s website a call for paper message and I was like “Yeah…” You know, I’m a perfectionist, so nothing is ever good enough, so I didn’t want to submit anything because I thought it wouldn’t get accepted. And I could say, “Yeah, if I would submit, it would get accepted and blah, blah, blah.”
So coming back to I think like six months ago or something like that, when I saw the CSP (call for papers), I was like “Okay, maybe I will submit like an a Angular WAT talk. I think I can deliver that talk, like on Angular.” So I come from a consulting background and for the past two and a half years, I’ve been consulting to like lots of enterprise companies both Angular. And I have so much frustration of teaching Angular. And I saw so much frustration from people who I taught Angular to about different concepts. And so he came natural to me to think of like all the stuff we go over as developer, learning this stuff. Like the stuff I talked about in the actual talk.
So I submitted the talk and then time went on and I never thought, Joe, I never thought you guys will accept it because I thought it was too far out or they are not related to like the technical conference or something like that. Although, I knew you guys are like fun people and you like crazy stuff. But who am I? Like you said, Lukas, nobody knew me and I was like, from Israel and stuff like that. And when I got like the e-mail from Dave accepting that pull request of the proposal, I was like, “Oh, my god!” I was sitting with friends and my wife next to me and like opening the phone and it was like Friday night and we were hanging around and stuff like that, having a laugh. And I was like “I can’t believe it!” And everybody was “What’s happened?” and I was like, “My talk got accepted to ng-conf.”
SHAI: And everybody don’t know ng-conf because these are my friends, right? They are not Angular people. So they were like, “What?” And literally, in Hebrew it sounds stupid to say “my talk,” okay, because it’s like saying “my conversation got accepted to ng-conf.” So I was like, “My conversation got accepted.” It’s like I got a call from someone. So my wife was like, “Okay, honey, you mean your talk got accepted, right?” I was so freaked out.
And I thought like all the meaning of this, like, fell upon me. Like, “Oh, it’s about to happen. I can’t believe I’m flying to…” it’s my first time in the States also, and I was, like, everything together like, “Oh, I can’t believe it. Now I need to deliver this.”
So I was super nervous. I started collecting all of my frustrations and stuff. Because when I submitted it, it was like “Yeah, I can do this talk. It’s easy.” And then when it got real, I was like, “Oh, wait. Can I do this talk?” [Chuckles] “Can I deliver this? Can I make it funny?” And yeah, so I started collecting stuff and I was preparing everything. And I did a test run like one week before the actual talk. And two days before I took the flight or one day or something like that, and I collected like the best Angular minds in Israel. And we are all friends like in the community, so we did a BBQ evening and like I did the first test run of the ng-wat talk. And I didn’t have time to prepare or rehearse it and stuff because I was working on the Angular 2 video in the same time, printing out shirts and stuff like that. So I didn’t have time, so I wasn’t really that prepared. And I thought to myself, “Okay, let’s try it. We’ll see how it goes.” And it went terrible.
SHAI: Okay? Like, nothing worked — nothing. It was the worst feeling ever because I was sitting there and these are my friends, right? They wanted me to succeed and they wanted to laugh, but they didn’t want, like, to fake it. So they looked at me, like, you know in complete silence when I finished the test run and they looked at me like, “It’s next week, right?” I was like “Yeah.” “Good luck, man. Good luck.”
And this is the time when I said to myself, now I got to panic, right? [Chuckles] Now, it’s on. Now I have like less than a week and I have flights in between and I need to do stuff once I get there. And so I have like less than a week to prepare a completely new talk, okay? Completely new. Before I go up the stage. So you ask how was it; this is the experience leading up to it.
So yeah, on the plane itself – on the flight – I rewrote everything. And I was improvising with my friend along who flew with me. And I took the points, like I had stuff about filter, but the punch line wasn’t funny enough. So I just took the idea behind it and started improvising; started like getting into characters and getting into like being mad. And really like saying stuff from my heart, right? So really frustrating like, “What? Were they high when they thought about it?” and stuff like that. And my friend alone started laughing on the plane. And I was like “Oh, that’s interesting. I will write it down.” And this is how I constructed the talk. And I rehearsed it learned the script stuff like that. And I never learned scripts because I do improvisation, and you don’t have scripts, right? So it’s another thing.
So by the time I got to the actual talk, I didn’t sleep the whole night before. [Chuckles] I couldn’t. I was so excited. I wasn’t afraid — I was excited. It’s different. My heart was like pumped up with adrenaline and I couldn’t wait to get on stage. I want to get it on already. And I remember getting out to the stage and… [chuckles] I don’t know if anyone heard it… I was getting out to the stage and everyone asked me if I’m ready because I was connecting all the cables and stuff like that. And he leaned to me like three times, I think he asked me “Are you ready?” And I was still waiting like for the HDMI and stuff like that. And I looked at him and I said “I was born ready.” And he gave me that look of “are you kidding me?”
Did you seriously just said it to me? What are you, Chuck Norris or something? We’re not in the eighties action movie, right? “I was born ready.” What was I thinking? I don’t know…
So the talk started and I remember like I had script, right? So I was supposed to say “Hi, I’m Shai Reznik,” and blah, blah, blah. And usually, I start out with “Hi, everybody. How are you feeling?” and stuff like that. And I remember telling myself: “Don’t ask how they feel. Don’t ask how they feel.” And what do you know, first sentence that came out of my mouth was, “How…” and I forgot English. I forgot how to speak.
I completely forgot all the words. And I was like standing there — seven hundred people in front of me — and I was like, “How is… how are…” and everybody was quiet. And I was like, “Okay! Never mind.” [Chuckles] “Lets restart.” And everybody thought it was on purpose, but it wasn’t. Okay, I was stupid for like three seconds then I continued being stupid but funny, okay? So this is like leading up to it.
And I was like “oh, I can’t believe it’s happening.” [Chuckles] I was so overwhelmed. And when it was over, I don’t really remember. I needed to watch the video several times after it to see what happened there, because I was so pumped up and under sleeping, completely blacked out — don’t have memory of what happened there. And I went down on stage and tried to get to my room to get some sleep, but I couldn’t sleep. And I just opened up my inbox and it was like three hundred e-mails in ten minutes.
And I’m not that guy to get like three hundred emails in ten minutes. And I thought “Oh, wow!” And all the tweets like quoting the talk, the stuff I said in the end and some part of the jokes. And it was amazing. It was like a dream. And my favorite sound in life, I think, is laughter. I don’t think you have like something that beats it. And to hear seven hundred people laugh at the same time, it was amazing — an amazing experience. And I told you before, I have long answers to short questions. So, yeah.
Also leading up to talk, I actually, when I got to Utah — to the hotel — I met people who got the chance to view the Angular 2 video I did a few days before. And so I got like people saying “hey, you’re the crazy video guy!” even before the talk, right? So I was like “Yeah, that’s me. I’m the crazy video guy.” And yeah, so I got like that warm feeling before, that some of the people already maybe knew who I am and some of the Angular team knew about me. And we actually met one day before. We had breakfast together. You remember, Joe. I was with you.
SHAI: So it was also funny. And do you remember like the first time we met, Joe? Do you remember what happened there?
JOE: No. Remind me. What happened?
SHAI: [Chuckles] You’re trying not to remember. So the night before on Tuesday I think, we sat down to have dinner with Aaron. And we joked about like because I’m from Israel, I can teach everyone wrong things about Israel, like, complete not true stuff, like, how we say “hello” and how we say “goodbye.” Just mess around with people. So I told him that’s totally what I’m going to do tomorrow on the breakfast that we’d have with Igor and Brad and everyone there.
So I think it was I did it to Igor, I think. So he came later than us. And when he came, I was like “Hey, Igor!” And I was two feet from him, so he was like “Whoa!” He didn’t know me — like, only from online and stuff like that — and I was like hugging him. And he froze. Like, didn’t move. And I was like, “Yeah.” And he’s like, “Hello.” “I’m Shai.” “Yeah, yeah.” And I said, “No, no. You know in Israel, we say ‘hello’ like this.” And I was like high-fiving him and spinning around going down, going up — doing crazy stuff. And he just stood there and looked at me like, “Really? This is what you do?” And I was like, “No, no. I’m just messing with you. Let’s go and eat.”
SHAI: And I think I did it also to Dan Wahlin later that day. [Chuckles] Again, I love to mess around with people. And it was a great opportunity for me because nobody knows me and I can make up stuff.
JOE: That’s awesome. So I can tell you, as an organizer, when we’re looking through talks and we saw your talk… did you know any of the organizers before ng-conf?
JOE: Right. That video is pretty funny. So obviously, one of the things we do when we look at submission talks is to say, you know, “Does anybody know this person? Have you seen them talk before? Are they a good speaker?” Because that’s important; we want to get good, quality speakers. And I don’t recall if somebody had said that they had seen you talk at all before. But when we looked at the talk, we were like, “The WAT talk is so awesome; for us to take a risk and do an ng-wat, it could be epic or it could just be a horrible fail.”
JOE: And I don’t know which way I may have voted about that, but I definitely know that we all have this sort of like, “This is a huge risk. This could just be horrible. This guy’s really got to be spot on.” And didn’t we accept you as a five-minute talk and then you came back and asked for ten minute?
SHAI: I didn’t ask. You bumped it automatically. I was actually planning for fifteen minutes because I’m not used to five-minute lightning talks and stuff like that. So I only present myself like for five minutes. [chuckles] So I thought, “Okay, nobody wants to hear five minutes about me. I need like fifteen minutes.” And actually I think like very short time before the conference, I got like the email: “you have five minutes.” And I think [?] sent me like, “Yeah, I spoke with him. You have five minutes.” And I said “Oh, okay. I thought I have fifteen. Okay, I’ll try and make it five minutes.” And then she came back to me and wrote like, “Yeah, you have a minute talk.” And she accidentally left of the “five.” And I was like replying, “Oh, okay… so it’s getting shorter and shorter. I will stop asking questions now.”
And she wrote like, “No, no. It was a typo!”
LUKAS: That’s when you’re like, “Hi, I’m Shai. Thanks for the talk.”
SHAI: [Chuckles] Yeah.
JOE: So obviously, the format of your talk — which was purely for entertainment — it’s not the kind of thing you would typically see in a technical conference. It was fantastic. It was very entertaining. But I think that one of the things, you know, it’s such a rare talk and people, you know, you can’t make a conference out of talks like that because the conference can’t just be fun, otherwise sponsors wouldn’t pay. But one of the things that people can, I think, really learn from watching this talk is your energy level was so great. And that kind of energy is awesome in talks. Regardless of even if it’s the most boring subject, that high energy level gets everybody excited.
And I will say, as an organizer, when we saw the topic, the title and what you said, it actually does mean a lot. Not all conferences are looking for something fun and edgy in their talks. We are. So if anybody is listening that’s thinking of submitting for ng-conf next year, this all good advice: and that is talks and submissions that have attitude get more points in the voting process than ones that are boring and straightforward. Because we’re looking for personality in talks because that’s what people talk… we can’t just have the good technical content; it’s should also have personality. But occasionally, like with Shai, it could all be personality.
LUKAS: I’m not complaining.
JOE: Lukas is a great example of that too. Lukas is one of those people that once people who see Lukas’ talk, are going to accept Lukas as the speaker for anything because they know it’s going to be fun and it’s going to have awesome technical content.
JOE: Yeah, a little bit of love.
LUKAS: Yeah. Sweet. You’re just saying that because I have to speak at ng-vegas in a couple of weeks, and I better bring that A-game.
SHAI: [Chuckles] But yeah, I concur. I agree.
JOE: So, we’re definitely bumping up against our time. I wanna ask if there’s anything else that you wanna cover, but based on the fact that you take so long in answering questions…
LUKAS: [unintelligible] “Okay, we’re done.”
SHAI: I’m glad you asked. Okay, it started in 1983…
LUKAS: On a cold night.
SHAI: I actually have a few more WATs that I have, but you know, you guys can pay an editor and just edit all this stuff out, so I don’t mind. You don’t need to eat, right?
JOE: Also, so is that going to be at ng-conf 2016? Is that going to be ng-wat 2?
SHAI: I don’t think so. I don’t think another ng-wat as the same format, will be… I think I have a better idea for next year. I don’t know if I need to expose it now or just leave it as a surprise, but I have a much better idea for next year. Because I think the format is good, and I believe that with Angular 2 and stuff like that, we’ll have more quirks and more stuff and more. But people are expecting it, right? So after the talk, like Igor started inviting me to GitHub issues; started tagging me like, “Okay, we must bring Shai on, so we wouldn’t laugh at our naming choices,” and stuff like that.
SHAI: So you asked about how the reaction is, yeah, I’m now on the GitHub committee of naming for Angular. So yeah, no. So probably, we’ll have. But we’ll see. I don’t know. I’m saying it now, but maybe we’ll have more materials for another ng-wat talk, but we’ll see about it. But I have here stuff that didn’t make the cut. And they won’t be relevant by the next ng-wat. And I want to just ask you if I’m not like hallucinating over this: do you remember that there was a name property in the directive definition object? Like a name property. Do you remember anything like that?
JOE: I don’t know if I’ve encountered that. Doesn’t ring a bell. Lukas?
JOE: I was like searching around in what every possibility was, like…
SHAI: Okay. It’s a good thing that I didn’t insert it in my doc. So yeah, no, I was preparing a lecture about directives two years ago or something like that and I was reading all the documentation word by word. And again, I really didn’t have time to sleep. I don’t know, it’s a recurring theme with me. So I read all the documentation, like when I got to four am or something like that, I bumped into the name property of the DDO, which you think is “okay, it’s the name of the directive,” but no.
And then I got to the transclude linking function definition. And you don’t want to read this stuff at like four or five am in the morning, when you are few hours away from doing a talk about it. Because to anyone who don’t know, I don’t know if they have it already in the documentation, but if you do a time machine, like back to the older documentation of Angular, the definition was “a transclude linking function is a transclude linking function pre-bound to the correct transclusion scope.” Imagine seeing this like if in five am in the morning and trying to explain it to other people.
SHAI: So yeah, I want to talk about ng [unintelligible] and all the stuff that… I actually made a video, like a parody about Angular 2.0. I don’t know if you guys have had the chance to see it, but it was after ng-europe and the announcement that we’re going to kill the controllers and we’re going to kill everything.
SHAI: So yeah, I wanted to talk about this and talk about what you see when you get the infinite digest loop error message and all this stuff. But yeah, I didn’t have the time, so never mind.
JOE: Awesome. Well, hopefully we’ll be seeing lots more of Shai. And who knows, ng-conf 2016, maybe he’ll make another appearance.
LUKAS: I vote yes.
SHAI: Yeah. I’ll be there.
JOE: All right. Let’s move forward to picks. Lukas, you’re up first.
LUKAS: So I have just one pick this week. And I think it’s appropriate for this podcast. I’ve been reading Dr. Seuss’ The Cat in a Hat, every night, for the last two weeks to my four-year old. And the book has really started to grow on me. And it’s actually really quite clever. And we actually even start to look at some of the illustrations. And I think it’s deceptively simple in the fact that it’s a kid’s book, but it’s actually really quite humorous. And so my pick this week is The Cat in a Hat by Dr. Seuss. I think it’s really quite a brilliant work of comedic genius.
JOE: I like it. Katya, how about you?
KATYA: My pick for this week is Pushing Daisies. It’s basically just Disney for adults. It’s perfect. [Chuckles] They had a pie-maker that can bring back the dead.
JOE: Yeah. It’s a TV series, right?
KATYA: Mh-hm. TV series. Two seasons with Lee Pace.
JOE: Yeah, who ultimately played…
JOE: Thranduil in Lord of the…
KATYA: The Hobbit. He Thranduil in… Lord of the Hobbit. [Laughs]
SHAI: I didn’t see that one.
JOE: [Chuckles] Yeah. That’s three more movies.
KATYA: …watch all six of them in a day.
JOE: And he was also in Guardians of the Galaxy.
KATYA: Yeah. He played the villain. Not Ultron, but the other villain who had the dance off with…
JOE: Awesome. So for my pick today, I’m going to pick StarCraft 2. The new version of StarCraft 2, the new expansion is coming out sometime soon, so I kind of got back into playing it just a little bit. I’m playing the campaign. It’s been really fun. Just to appreciate how fun a game it is and how well done it is and how awesome it is because they don’t produce a single bad game. Even though I may or may not like to play all of their games, every one of their games are awesome. So StarCraft 2 will be my pick.
I also do want to announce/mention that I am going to be hosting a webinar — giving a webinar — on May 14. It’s an hour long. It’s absolutely free on Angular 2.0: What you need to know.
JOE: So, Lukas, I will be telling you what you need to know.
LUKAS: Yes. I need that guidance in my life.
SHAI: Write it down.
JOE: Yes. So for anybody that is looking to get the scoop on Angular 2, this would be a great place to get it is this webinar on May 14th. Pluralsight is helping me do it. There will be a link on the show notes. Shai, you are last – and the best.
SHAI: [Chuckles] Okay. So, it started at… No, okay…
LUKAS: On a dark night…
SHAI: [Laughs] So yeah, I have two picks: one is related to your pick/mention, Joe, it’s the Angular 2 Google docs folder. So the Angular team has all of their documentation publicly open. And you can see like meeting and you can get updated on what’s about to come or the design decision and stuff like that. And so it’s really cool. And I’m checking it out every once in a while just to see what’s up and to see what is going to happen. So definitely check it out.
And the other one is a Chrome extension that I started using for listening to YouTube music. I don’t know if you guys picked it before on the show, but it’s called Streamus. And I’ll post a link. So Streamus, it’s really cool; you can just search for all your songs and just listen to StarCraft or Deus Ex soundtrack and stuff like that while you’re coding. So it’s cool. And these are my picks.
JOE: Cool! All right, thanks everybody for coming. Thank you, Shai, for being on the show.
SHAI: Thank you.
JOE: We’ll see everybody next week!
[This episode is sponsored by Mad Glory. You’ve been building software for a long time and sometimes it gets a little overwhelming; work piles up, hiring sucks, and it’s hard to get projects out the door. Check out Mad Glory. They are a small shop with experience shipping big products. They’re smart, dedicated, will augment your team, and work as hard as you do. Find them online at madglory.com or on Twitter at @madglory.]
[Hosting and bandwidth provided by The Blue Box Group. Check them out at bluebox.net]
[Bandwidth for this segment is provided by Cache Fly, the world’s fastest CDN. Deliver your content fast with Cache Fly. Visit cachefly.com to learn more.]
[Do you wanna have conversations with the Adventures in Angular crew and their guests? Do you wanna support the show? Now you can. Go to adventuresinangular.com/forum and sign up today!]