Part Two: Paul Straw & Sean Washington (@paulstraw & @seanwashington)
Published 10/26/2015
In today's episode, I talk to Paul Straw and Sean Washington from Does Not Compute, the newest member of the Spec family.
Mentioned in today's episode:
- Does Not Compute, Paul and Sean's podcast
- CoffeeScript
- ES6 Features
- React Native
- Spec Slack community
- Slashrocket Community
- Octopus Creative
- @PaulStraw
- @seanwashington
Today's episode is sponsored by Hired.com! If you are a developer or a designer looking for a job, Hired is a fantastic place to begin your journey! The special link for a doubled bonus is https://hired.com/developertea.
And lastly...
Please take a moment and subscribe and review the show! Click here to open Developer Tea in iTunes.
Transcript (Generated by OpenAI Whisper)
Hey everyone and welcome to Developer Tea my name is Jonathan Cutrell and today is the second part of my interview with Paul and Sean. They are the hosts of a brand new show on spec.fm called does not compute. If you miss the first part of the interview make sure you go back and listen to that first. You can always subscribe to Developer Tea and iTunes and whatever podcasting app that you choose to use. Thank you so much for listening to today's episode and thank you to today's sponsor higher.com. If you are a developer or a designer that is looking for a job higher should be where you begin your journey. Higher.com will talk more about them later on in the show. Thank you so much for listening to today's episode and now let's get to the rest of the interview with Paul and Sean from does not compute. I wanted to talk to you guys about ES6. I'd love to know what you think about ES6, what are your favorite parts of the new spec and maybe things that you don't like about it. I have something that I don't really like about it but I want to hear from you guys first. Paul, let you feel this first. So I don't think Sean or myself have really used ES6 a ton. Octopus as a whole is a... We're actually a coffee scripture. Oh, okay. So ES6 to me is interesting. ES6, ES7, the whole thing to me is kind of interesting because a lot of the people who really strongly advocate for it are also really against things like coffee script. But at the same time they say, oh, you need you need Babel or whatever. You need something to transpile it for me. ES6 into ES5 compatible code. So that to me, at least, feels like kind of solving the same problems in just a slightly different way. There's stuff like the arrow functions and classes and destructuring that you have in ES6 that coffee script is provided for years really well. And not to say there's anything like ES6 is inherently bad or it'll never be useful. But right now, if you need to support a wide range of browsers, I think that it's not necessarily always a great choice. Okay. All right. And let's hear from Sean on that because I have my feeling... I'm going to tell you guys what I feel about coffee script after this. Well, I actually have a little bit of experience with ES6. I have messed with React and Navi Native a little bit as well. I guess I can only say this because of my previous experience with coffee script in that when I'm using ES6, I just want to write coffee script. And I guess I can say the same thing when I'm writing regular JavaScript ES5. I just want his coffee script. But I do... I mean, I just like... I'm a fan of progress and improvement, right? And so there's a lot of things in ES6 that are coming out like arrow functions, for example, that people are taking advantage of. And I think that's great. I think that progress is good. So I'm all for it. It's interesting because I have taken some flack from people when I talk about coffee script because they say things like, oh, well, you have to transpile. But then I'm thinking, well, you're using Babel anyway. So you're doing the same thing, right? But at the end of the day, if you're productive with ES6, go for it. I'm cheering you on. I'm productive with coffee script. I'm sure. And I guess so that's really my opinion wrapped up as well. Like, if you like coffee script, that's fine. Don't let anybody tell you that you're wrong for liking coffee script. The reality is there's going to be a compiler for coffee script for the foreseeable future. So what you are learning about coffee script is not going to be moot all of a sudden. And a lot of the stuff in coffee script actually maps pretty decently to ES6. So whenever ES6 becomes standardized and a critical mass of people are using it, then the transpiler is just going to transpile to ES6. And it's not a big deal. It's totally fine. I personally, I never got over onto the coffee script train, even though a lot of logical people said that I should. And looking back, I probably should have because it just protects you in a lot of different ways from writing stupid stuff in JavaScript. Yeah, it does. It really does. But I never did that. When ES6 stuff started coming out, and I started seeing like tail call optimization and all the other little stuff that eventually is going to actually make a difference in how JavaScript works in the browser, like for real JavaScript, not just compile JavaScript or transpile JavaScript, rather. That got really interesting to me. I think for a lot of people who are coming from writing JavaScript, that ES6 is going to be really attractive, right? Because I'm not used to the white space. I'm not used to some of the other little pieces of coffee script. Now we'll say this, if you are a Ruby developer and or a Python developer, then you're going to have a much easier time with coffee script than someone who isn't. Who doesn't have experience with those languages? I think. What would you guys say about that? I think that's completely true. But also for me personally, I was pretty much just a JavaScript developer at the time when I initially picked up coffee script. I was sort of an early adopter there. For me, a lot of the stuff, what's really interesting to me is that a lot of the stuff that coffee script has provided since the beginning, the arrows and the triple quotes for essentially what amounts to template strings. Just all that sort of stuff that the question mark operator, all that stuff, it's like a lot of that has been copied over to ES6. I think that's really interesting because I'm super excited to see what coffee ends up doing next. Because I feel like it's almost an indicator of what's going to come to mainstream JavaScript a few years after that. Yeah, I agree. I think some of these pre-compiled languages, even if you jump over to CSS stuff, SAS or less, some of the stuff has made an impact in some way on the spec for future stuff in Cors. For example, we're going to get nested stuff eventually in CSS because of most likely, because we've seen it kind of proven in these other pre-compiled languages. We've seen it prove the model has just been proven over and over by large companies adopting these pre-compiled languages and using them with pretty decent success. Totally. Cool. We know where we stand on CoffeeScript versus ES6, I think. I do think that JavaScript is a very important and increasingly important language. I talked to Eric Elliott on the show a few weeks back. We talked about JavaScript pre-match the whole time. But I think JavaScript is one of those base-level languages now. Whereas that used to, well, I won't go so far as to say that. But I do think that JavaScript is going to be a fundamental language and a lot more universities will probably pick it up in the coming years because it is now becoming kind of that available everywhere language. Yeah. It's something that any new programmer kind of almost needs to know JavaScript at this point. Just because it is so ubiquitous. It's everywhere. I mean, you can use it on the client. You can use it on the server. It's getting faster and faster every day. And it's just something that if you learn JavaScript, it's like you're not going to be sad that you learn JavaScript. Yeah. It's not time wasted. Right. And some of the syntax is really so close to other stuff that you're, I mean, once you leave JavaScript, it'll be like you've already learned parts of other languages. I think that's one of the great things about programming. And that's something that I tell everybody. Anytime I'm helping a person who's new to programming or whatever, or even moderately experienced person, it's like, should I learn this language? It doesn't. It doesn't matter. You can't learn it because all of the skills, 90% of the skills that you're going to learn from that language are completely portable. When you understand the concept of objects, it doesn't matter if somebody calls it something else. It doesn't matter if somebody calls it a table in a different language or if somebody calls it a hash or whatever. Like you kind of get that. And there are semantic differences. But overall, picking up one language is kind of like picking up 20 to 30% of every language. Yeah. The interesting thing about JavaScript is that you can practice different paradigms in JavaScript. And that's, I think that's the biggest difference between languages is, you know, what is the underlying paradigm for this particular language? For example, Ruby is a class-oriented language with inheritance and meta-programming. Whereas JavaScript, you have like, you can do functional or you can do completely declarative or you can do something kind of like classical inheritance or you can do prototypical or prototypical. I never know what the word is. Perytypical. Perytypical. You can do inheritance through prototypes in JavaScript. There are many different things that you can implement in JavaScript that you can't necessarily, you know, I can't really practice functions in or functional programming in Ruby as cleanly as I could in JavaScript. All right, guys, we're going to take a quick sponsor break and talk about hire.com. Today's sponsor hired us the place to go if you are looking for a job as a designer or developer. They source companies around the world that are looking for people to fill positions for equity, for salary, designers and developers. You get the offer up front. You don't even have to talk to the company before you see the offer, by the way. So it avoids any kind of awkward conversations, you sign up and then they find you the offers. Of course, you go through the normal hiring processes for that particular company, but you also get a bonus from hire.com of $2,000. That's their normal bonus at least. But if you use the special link that you can find in the show notes at spec.fm, you can actually double that bonus from $2,000 to $4,000. That's only if you use the special link in the show notes. And the cool thing is you get up to five offers in a given week and it's 100% free for you. So if you're already job hunting, there's really nothing to lose and you have so much to gain. Go and check it out hire.com. Don't forget to use the link in the show notes to double your bonus to $4,000. You can find those at spec.fm. Thanks, hired. Well, I'm going to go ahead and get to the kind of the last questions I always ask my interview please and I'll ask you both at the same time and then you can take turns answering. All right. So if you could give any advice to pretty much all programmers regardless of their age or their experience level, what advice would you give? Looking back at it now, I guess one of my answers would be don't let people bully you into making decisions. I feel hanging out in a couple of different slacks, obviously the spec slack and the slash rocket slack. I see people asking questions like what should I use or what tools should I use? And then I see a barrage of answers and people basically saying if you don't use this, you're incorrect or you're doing it wrong, which I think is not helpful at all. And so if you're new to programming and you're learning and there's something you're interested in and like if React looks cool to you, then that's awesome. Obviously, I mean, you should learn JavaScript first, but don't let people push you around in those decisions. Obviously, you should find some people that you look up to and you allow them to speak into your programming life. But don't just jump on every trend that comes across because trends, they come and they go. But the underlying concepts of programming and JavaScript like the basics, they will always be there. That's great. That's kind of just good life advice. Don't let people you bullying and don't let people bully you into thinking. A certain thing. Yeah, that's good. For me, I think it would be go make a blog. Whether, and I guess this isn't for completely new people, but if you're just starting out trying to learn back and stuff, go make a blog. If you've been programming for 15 years, go make a blog because the blog that will come out of somebody who's been programming Ruby for a month and the blog that will come out of somebody who's been programming a bunch of different languages for 10, 20 years. Those are going to be two completely different products. That's one of the really cool things because you can make a blog as simple or as complex as you want. That's just such a cool project because you have user authentication, you have the permalinks, you have to deal with, you have image uploading and processing. Relationships? Yeah, there's so many different things that you can get out of a blog. I think it's one of the most flexible models as it were for a thing to make. It just scales so well for different skill levels. Absolutely. It's especially true if you have a multi-user blog. That's when things get really interesting. When you have multi-authors, right? Totally. And somebody who's brand new, they don't need to think about that. It's just going to be their personal blog. But if you're a really good programmer, add multiple users, add in permission levels, add in different types of posts, add in all that stuff. But it fits to what you're ready to do. And if you don't like the word blog for that, if that sounds too reductive to you, then call it a publishing platform. As it turns out, that is still a very big thing on the web. So whatever you want to call it, blog is kind of the canonical term for it. But some people think that that's like too easy of a project. It's not. I can go ahead and tell you it's not. I've built a lot of these things and they have unique problems. In every single case, I'm learning something. Yeah. It can be anything from the simplest project to the most complex. Absolutely. I mean, the Vox media team, they have their chorus platform that they have a bunch of developers on who work on it full time. Yeah. So if you think that's easy, right, right. And if you want to, you know, if you're maybe comfortable with your back-end chops and you want to work on your front-end chops, build a blog with the WordPress API maybe, or make your own API in the Rails API or with Rails API and use React or View or probably use View and build that like Adam Simpson just built his blog using React in the WordPress API. And at first, I was like, why would you do that? But then I was thinking about it and it makes sense because he wanted to learn something and it's a personal project. And there's a server, there's content that you need to pull from. It's just like a perfect way to learn. Okay. So the second question, and this is the last question before we sign off for the day. The second question is, what do you wish people would ask you about more often? That's a really good question and I've never been asked that before actually. I think I've got an answer. Go for it. Anything. I feel like there's such a big, it's kind of a big problem in programming. And the technology industry as a whole is like people feeling like they're dumb if they ask some question. And I don't think that's the case at all. There are so many people and Sean and I actually talked about this in an upcoming episode of does not compute. But there's not people in the tech industry really want to help, especially people who hang out in the Slack channel for spec or the Slack channel for... Slack. Slack it. Yeah. Those people are there because they want to help you learn. They're there because they want to hang out and just talk about cool things and just explain stuff. So just ask whatever. This community is generally really friendly and if somebody's not, then they're jerk anyway. So forget them. But there are so many people out there who really do just want to help you. That's very true. And to kind of piggyback on that. I find that... So Paul and I basically look at each other because our deaths are facing opposite directions. And so a lot of times I'll lean over and I'll just start talking at him and I'm not necessarily trying to communicate to him. I'm talking at him and as I'm talking at him or asking him questions, I actually find a solution that I'm looking for. And so I find that by asking questions, you learn... By learning how to frame your questions rather, you actually can find... You can come up with a solution a lot faster. Rubberducky, you're the one. Yeah. Yeah. But, you know, like what Paul said, ask, ask any questions. There are no dumb questions. And if people say there are dumb questions and ignore them, it's all relative anyway, right? Absolutely. You know, so just go and ask. So how I learned was just by asking people, I had Paul as a Skype contact for a year and I messaged him incessantly for a year. And it turned into a job. So just ask anybody. And if you don't know who to ask, hit me and Paul up, hit Jonathan up, you know, anyone in spec. Just ask us any questions. We will always want to answer them. Absolutely. Yeah. Please come and join us. If you want to be in the spec Slack, by the way, spec.fm slash Slack, that will be in the show notes, of course, which you can find at spec.fm. But at that point, you would probably just click the big Slack logo that you see on spec. But we would love to have you join us. There are over a thousand people in that Slack community now, guys. It's pretty incredible, isn't it? It's amazing. Yeah, it grew so fast. Yeah, it did. I'm so glad that you guys are going to be a part of spec. It is so exciting for me to see another set of really smart, awesome developer people who are doing podcasts. And they're doing it with me on spec. That's really cool. Which is happy to be a part. The spec is doing some really great stuff. I've been consuming specs products for a while now. For me, it's kind of a, wow, what just happened, sort of deal. But we're very happy to be a part. It's exciting. When is the first episode officially? Tuesday the 13th. So this coming to you? So it will have been out by the time that this episode airs. If you are listening to this, make sure you go to spec.fm, actually. It will be right there available for you. Of course, they will be on iTunes and all those other providers that you already use Developer Teaon. And go and subscribe. Do this right now. I'm going to be a little bit greedy for them because they won't be greedy here. I don't know. Would you guys be, I guess you guys probably wouldn't be greedy. I'm going to tell you to go and subscribe to does not compute right now in whatever podcasting app that you use so that you don't miss a single episode of Paul and Sean. You guys enjoy their voices just as much as I do. I'm sure. This has been super fun, Jon. Absolutely. Thanks for coming on the show, guys. Thanks, Eric. Thanks so much for listening to today's episode of Developer Tea, my interview with Paul and Sean from does not compute the latest addition to the spec family. You can join us and talk to all of us in Slack. In our Slack community, you can find us at spec.fm slash Slack. Turn up and you can discuss just about anything you want to. We each, each of the shows has its own room and we talk about the show. We talk about, you know, even programming issues and problems and I'm in there and so we're Paul and Sean. We have a great time there. So go and check it out. Spec.fm slash Slack. Don't forget to subscribe to does not compute in whatever podcasting app that you use and subscribe to Developer Teawhile you're at it. You won't miss any episodes of either show. That would be great for us and great for you, wouldn't it? So make sure you subscribe in whatever podcasting app you use to does not compute and Developer Tea. Thank you for listening to today's episode and thank you to hired.com. Today is awesome sponsor. If you are looking for a job as a designer or a developer and you want a $4,000 bonus instead of a $2,000 bonus, go to the show notes at spec.fm. Click on the link for hired and it will take you to a special version of hired.com that will double your bonus. Check it out hired.com. Thank you again to hired. Thank you again to Paul and Sean and thank you to you for listening to Developer Tea and until next time, enjoy your tea.