 So, Addy, why is there a skeleton on your desk? So, there's a skeleton on my desk, because I ordered this off Amazon yesterday. Matt, why don't you ask the question? I was like, why are you talking to him, Addy? He clearly teed you up to stop the show. I know, but I was like, OK, let's reset. Start properly. So, are you going to explain the skeleton and the coffin? Oh, this? This is a coffin I ordered off of Amazon last night. Oh, good. So, you needed speedy delivery on it? Yeah. Yeah, I did. It's ruined my recommendations now. It just keeps saying, subscribe and save on coffins for your friends and family. But why is it here, Addy? So, this is here because it's the end of an era. This is the final episode of Totally Tooling Tips. Yeah. And is it partly my fault? Mostly my fault? I don't know. It depends how you want to spin it. We can say it's 51% your fault and 49% mine. So, I'm actually changing teams within Google. So, I'm actually working on open source rather than develop relations. And I can't really do this anymore. I am a manager now, so I spend time really managing and tweeting. So, the reason we're doing this last episode is because it's been a while since we've done our last episode. It's been like a year since the last one. But I don't think either of us wanted to just leave it just hanging one last episode. Yeah. We kind of owe it to everyone who's viewed and stuck with us. We had people coming up and saying, will they? Won't they do a new season? And I think a wrap-up's good. Yeah. I think it's needed. So, let's go back to where we started off. It all started at the coffee shop. The very first episode we did was about Sublime, I think. Oh, yeah. We did a whole ton of Sublime plug-ins. What's mostly changed is a lot of people have shifted over to VS Code. Yep. Love it. It's great. It's relatively fast. Great plug-in ecosystem. Atom in the middle. And that's still actually going and being developed, which is cool. Obviously, you should still be checking out plug-ins because there's a ton of useful ones. Yeah. But yeah, VS Code is the one that I'm using now pretty much constantly. The coffee shop was interesting because we didn't realize that it was going to stay running the entire time that we were shooting. We thought we had booked it out. Yeah, so people were coming in to get coffee every five minutes. You must have used Dreamweaver, right? Yeah, I used Dreamweaver, but I used other tools before Dreamweaver. I used Notepad. Notepad's not really at all, is it? What are you talking about? Notepad was the pinnacle tool of its time. Yeah, with the coffee machine, with the milk fruffer thing. It's fine. It didn't fit in. We were like, yeah, mocha, chai, jasmine. It's our Starbucks order. It's great. I forgot all of those tools. Anyway, we did those, and then we moved to the game shop and we kind of did another round of stuff, which was good. So what do you think the future holds for life? The future for life. Global warming. Skynet taking over the human species just being obliterated. But on the flip side, we've got ES6, so it's all going to be okay. Everything worked out great then. It's going to be great. Game shop was interesting because then we had the trains running over the top of it, but at least it was closed. So that was helpful for the most part. Then we did the freezing cold outside show. Here we are back in our natural environment next to lifeless barges and wildlife that probably hates us. But it stopped raining, so we're right. It stopped raining. Look on the plus side. The tooling gods are being kind today. I should also probably say, because I forgot to say it earlier, I'm wearing a hat right now to distract from the fact that if you've seen like season one, and seen like this season, or whatever season this is, you may have noticed my accent changed a little bit in between. So that has to distract from that because my accent is now just one long Markov chain generated by all sorts of things. Yeah, I'm trying to work out if you keep a consistent British accent throughout the series or whether it's just during videos you have a British accent, and then outside of the videos you suddenly turn more into a California accent. I've been told that I just have it when you're around. So I'm entirely placing blame on you. This is why we're going to carry on like having lunch together. So at least I have some British sounding people around me. Yeah, I see. Good. What else changed? We went from sort of linting. So we went from J.S. Hint to E.S. Lint. We got J.S.C.S. J.S. Hint. J.S.C.S. E.S. Lint. I forgot about J.S.C.S. Yeah. We just wrote a history book about tooling at some point. And then I'm big on TypeScript at the moment, which means I'm also using T.S. Lint now. Mm-hmm. Because reasons. TypeScript has taken off. Lots of people love it. And then there was testing, which we talked about Makar and Chai. I've now, I still use Makar and Chai for running browser tests. Should we do testing framework bingo? Yeah, Makar, Chai, Latte, chocolate. I mean, if you can get it at a coffee shop, it's good. Makar, Chai, Ava, Jest. Cypress fits in somewhere in there. And then you've also got Selenium. Now Puppeteer. But I've also switched from Makar to Ava for the most part, unless I need it to run in the browser, then I'm on Makar. So feature requests for Ava. If you could run in the browser, that would be cool. I feel like, I feel like one of the things we were talking about is how, how far time on this show was just spent complaining about things and hoping. It was kind of a therapy session for us. We'd kind of build up all these problems during the week. And then we'd come in to do some shows. And then it would just be venting. Hashtag bitch the web forward. Yeah. But thank you for anyone who was working on a tool, saw our video, and actually changed something because they thought it would make us happier along with all the other developers using it. I have to plus one that. It was really nice getting any authors reaching out to us on Twitter or wherever else and talking to us about our feedback or what they're working on next. And that's kind of nice. Are there lessons we want to share? Do you learn anything doing this? The only thing that I feel like I've learned is you will always end up needing a build tool. You will need certain tools in that build tool. You are going to get so much crap on Twitter after this about sort of the browser is now able to do native ES modules. You're able to like skip a build step during dev time. All that fun stuff. If you're building production web apps, you need a build tool unless you want to have a horrible life. We enjoy not being controversial. That's great. That's my opinion. I'm going to stick with it. You can build a nice web app without any tooling, it's just going to make your life so much easier and your web app will be faster. Anyway. Anyway. Yes, you need to build a build chain with minification, linting, image optimizations, CSS prefixing and JavaScript prefixing, I think somewhere in there. And then you probably want tooling for your GitHub pull request so it's actually testing your stuff. What tools are you actually using at the moment? I'm kind of curious. It's been a year since we shot anything. Personal stuff. I'm TypeScript. I'm using Gulp to manage build processes. I'm then using rollup to do minification. I'm actually using CSS auto prefixer. I've moved away from SAS just because it kind of, with CSS variables, that was the main thing I needed and the mix-ins I've kind of shied away from because I realized I'd get myself in a mess. That's just me. I feel like I've been a little bit more on the framework tooling side of things for a little bit. Yeah, you're doing like a ton of stuff with PWA supports and frameworks and stuff. Lots and lots of Webpack and rollup. Playing a lot with React, Redux, Preact. All those fun things. Taking a look at Next at the moment. You did your image optimization book as well. Fitted that in somewhere in between. I feel like there's lots of conversations in the community at the moment about sort of large-scale CSS and whether you should use CSS modules, cloud components, emotion, CSS and JavaScript, Shadow DOM, all sorts of weird and wonderful things. Both components are the one thing where I want to use them, but I'm not totally sure that they're stabilized yet. Interesting. I feel like custom elements are at a pretty decent place and browser support for Shadow DOM has been improving, but at the end of the day. You can get pretty far without Shadow DOM, but it was that the polyfills and everything to make it work always seemed to cause me issues to a point where I would work in one browser, I'd try and make it run, it didn't, and I tried using the polyfills and then it didn't work in either or it would work in one, but not the... How do you stay on top of tooling related things these days? I've willfully just pretended that there are no new tools. As long as I just have something updating my packages and they keep on working, I'm fine. That seems fair. I wouldn't be surprised if a lot of people do the same thing. Yeah, it's just as long as I don't get deprecated, I'm fine. I mean, the tools are there to help you get productive and do stuff and you shouldn't just be choosing things because they're cooler on, you know, the orange website or whatever. But there's always that chicken egg situation. You never try it. You'll never know if it's better for whatever reason. This is true. And I feel like, let's say a new minification tool came out. Should you use it or not? It should ultimately kind of be determined by how long does it take to build and how small is the final size. If neither of those things are drastically different, it's arguable whether you should do it or not. Again, in my opinion, other people would argue we should go for the smallest size possible and at that point you could argue we should just run both tools, the smallest one and run. No, I completely agree. One thing we should say, something that we usually didn't have time for because we're trying to keep things nice and compact was a huge thank you to everybody that works on tools. People don't always realize it, but sometimes these really super popular dependencies are only maintained by one or two people in their free time. Yeah. And I don't think those folks usually get anywhere near as much kind of credit for the great work they do. Popular tools as well. You think of the issues they probably have to deal with, the community management, dealing with pull requests from random people. It's a lot to try and then make a code base that still continues to grow and is maintainable and approachable for anyone who wants to help fix it. So yeah, serious kudos to anyone who does that. Choose tools you will use. No, seriously, choose tools you'll use. I feel like you can watch a show like this and then feel like you have to go use all of the new shiny things. And that's not always the case. So that's always going to lead to a good outcome. Choose tools you'll use. I'm just trying to unpack that a little bit because it makes zero sense to me. I'm like, choose tools you'll use. It's like, I don't know if I'm going to use it until I at least pick it to try it. Well, it means choose tools you're going to use longer term. Tomorrow, Webpack has a new version of itself called Ultra Pack, say, do I use it? I don't know. If I'm on Webpack, it could be better. It could not be. Okay, let's expand it. Choose tools you've evaluated for considerable period of time and derive value from. Oh my God. So this is why I'm leaving totally to my tips. Is the way the show is ending? No. I would just say if a tool is working for you, do not just change it because you feel like the trend is going that way. Only if you feel like the tools that you're using are on shaky ground, you don't necessarily think that they're going to be around in the foreseeable future. Maybe at that point you start thinking, well, actually it's not serving my purpose or maybe I need to move on to something else just to make sure I'm not certainly surprised by some big issue. So one of the great things about this experience has been it's kind of like JavaScript therapy or tooling therapy for us. Well, it's just, for us we can complain about current environment that we're in in terms of workflow, tooling, just basically going through the churn of learning new tools, trying new tools, keeping on top of the tools, even if we don't use them. We know what it's like waiting six hours for a dependency to properly be resolved and a bug to be figured out. So we hope that through this show we've conveyed some tips that have been useful. Yeah, and we kind of... I imagine there's a lot of people in the community that kind of feel like they could have been the only ones and everyone else is on top of the latest tools and stuff like that, and I kind of hope that through totally tooling tips people felt like it was okay to not be on top of everything. And it was also super interesting having the community comment on a lot of videos kind of explaining, hey, there's a new bunch of tools that I'm using that I'm really enjoying and then we kind of created this back and forth where we're learning about things while we're sort of talking about new things and for me it's just thank you so much for getting involved and for watching and just taking a part in all of this. So we got a lot out of the show I enjoyed doing it got to hang out with you a lot got to complain, we got to learn a lot of new things. It's been a privilege doing this show and getting the opportunity to talk to you about tools hopefully you got something of value out of it. I hope the same as well and just thank you so much for watching it's been awesome, it's been a fun ride. It has been a fun ride. So with that... Bye I guess. Bye.