In today's episode I talk about some of the front-end tools we use at Whiteboard. Today's episode is sponsored by Hired! Go to Hired.com/developertea to get started today!
In today's episode I talk about some of the front-end tools we use at Whiteboard.
Join Spec on Slack: http://spec.fm/slack
Mentioned on today's episode:
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.
Please take a moment and subscribe and review the show! Click here to open Developer Tea in iTunes.
Hey everyone and welcome to Developer Tea. My name is Jonathan Cottrell and today I'm going to be talking about the front-end tools that I use at Whiteboard. I'm really excited to talk about this because these are the tools that make up my day-to-day. It's the stuff that I work with each and every moment of the day. I could be talking to you for many, many episodes about the tools that I have used, both front-end and back-end, but I want to try to keep it a little bit shorter so that you guys have an overall picture of the tool set that I use, but also that a modern developer might end up using in the field, particularly a front-end developer. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. To be very clear, these tools are primarily related to HTML, CSS, and JavaScript, and more specifically, Teflonware. At the end of the evolution, evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution evolution which provides us a bunch of small methods that allow us to do things like a functional language may do, iterators and that kind of thing. We use Slick.js, which is a slider, and it comes with a bunch of resources with it, CSS resources and that kind of stuff. So that's a little bit more of a heavy-handed tool that we use. So it's kind of all over the map. There's a lot of small tools available for JavaScript, but knowing those base level tools, that's the most important piece to getting all of this working together. And then you will know when you need another tool, and it's a little bit easier to understand what you need once you have those base tools down. So understanding your transpiling, so that's the ES6 using Babel or something similar. Or if you want to write vanilla JavaScript without transpiling, that's perfectly fine as well. And then knowing the larger frameworks that you're going to be using, for example, jQuery and React, they're a little bit larger, quite literally in size, and they have a little bit larger of a size. So that's a little bit easier to understand what you need once you have those frameworks. And then you'll also want to know what those frameworks are, because they actually have a larger effect on your overall code base. And we also use some large frameworks like D3, but we use them less often because their use case for our projects is typically relatively limited. I also want to mention very quickly the idea of polyfills. Now Babel works on the concept of polyfills in a lot of cases, but the idea here is to provide functionality that the browser otherwise doesn't have, but another browser may have. So for example, the request animation frame, not every browser supports request animation frame, and so you have to write kind of a wrapper for all the other browsers. You could consider parts of the jQuery library polyfills, and there are a ton of these small polyfills available. So we use those throughout different projects based on our particular needs for that project. Finally, I want to go over our CSS tool stack, as you all know, this week I am at SassConf whenever you are listening to this episode. And so it may come as no surprise that we use Sass at Whiteboards. More specifically, we use the SCSS syntax of Sass. We also use straight CSS from time to time, typically not as much as we used to. And sometimes that's on legacy projects that don't necessarily have our current build process in the code base. But we do rely on SCSS. We actually have a WordPress theme that we start from that is open source that you can go and take a look at. It's called LaunchFrame. It's on GitHub, github.com slash whiteboard slash LaunchFrame. And all of these different tools, well, actually a lot of them, maybe not all of them, but a lot of them are visible there on GitHub. So if you're interested in kind of seeing how our Gulp file, for example, is organized, that's a great place to go and look. But we have our SCSS and all of our linting set up for that. And we have a lot of things that we can do there. So if you're interested in that SCSS, all of that is done via Gulp. I can't go over every single package because this episode, again, would be incredibly long. But we use Bootstrap 4 Alpha, which came out just a few weeks ago. Bootstrap 4 Alpha, we pull that in fresh on every project. Whenever it goes into the official version 4, we will most likely switch over to that as well. We tend to use BIM on most of our projects. That's Block Element Modifier CSS. This is more methodology than it is a tool, but it is a worthwhile tool to take a look at if you have had difficulty organizing your CSS, especially on larger projects. BIM is awesome for this particular use case. And then finally, we do tend to also use font icons. Now, I don't recommend using font icons if you only have one or two icons on the page. Only if you're using quite a few of those icons does it make sense. Otherwise, I think you should be using SVG for most of those icons. But we use Font Awesome and we use GitHub's Octicon. And both of these are really good, well-designed icon sets that are available totally for free, completely open source, and they're both available by using Bower, which we talked about way earlier in the show. So check those out if you are using icons all over your sites. Font Awesome and Octicon are both really high-quality font icon sets. So we've only scratched the surface when it comes to front-end tools. There are some really good ones, but I don't think we're going to talk about them today. So many tools available, especially when you're talking about processing tools, things that can help the actual development process be a little bit smoother. We didn't even talk about Git, for example. There are so many different tools, and we will be talking about these tools on this show more in the future. But we also talk about this kind of stuff in our Slack channel. I'd love for you to join me there. It's spec.fm slash slack. Now, if you have a specific question that is the best way to answer it, please do so. And if you have a question that is the best way to answer it, please do so. And if you have a specific question that is the best way to answer it, please do so. And if you have a specific question that is the best way to answer it, please do so. And if you have a specific question that is the best way to answer it, please do so. to find me and ask me that specific question about that specific tool. Again, all of the links for all of these tools can be found in the show notes. And if you want to hear more about tools in the future, please let me know. Reach out to me on Twitter or on Slack. You can find me on Twitter at Developer T. You can email me at developer T at gmail.com. Thank you so much for listening to this episode of Developer T. I hope you've had a fantastic and productive week, and I hope you have a restful week. Thank you again to today's sponsor, Hired.com. If you are looking for a job and you are a developer or a designer, there is no reason you shouldn't at least check out Hired.com. It's totally free to you, and there's no risk in checking it out. So go to Hired.com. Make sure you use the special link in the show notes, because if you do end up getting a job through that link, you can double your signing bonus. Normally, they give out $2,000, but if you use that link, it turns into $4,000, just like that. So, check out the show notes. Again, those are at spec.fm. Thank you so much for listening to today's episode of Developer T, and until next time, enjoy your tea.