One day, one day, open wide death and get ready to stuff your face with JavaScript CSX, zero module, fire to jet workload, bring it to the soft skill, web development, the HCS, the craziest, the tasty, web development treats coming in hot, here is West Sarah Kuda, boss, and Scott, tell your local toolie ski. Welcome to syntax on this Monday, hey, see, treat to work on talking about some of those unknown glamorous skills that will improve your life as a developer. I'm talking about some nitty-ditty things that are going to really just make your life a little bit easier. We're going to be talking about the wise, the ones that maybe some of these skills that are good to focus on for a little bit.
Whenever you get some free or downtime, my name is Scott Tullis, I'm a developer from Denver Color Out with We'll Flip to Talk. And with me, as always, is Zu- Also sponsored by company that's good for a lot of things in your life. And that is a Prismacad Prismacad Prismacad.io. Check it out at Prismacad.io, or it's like a full-time syntax, and you're going to be greeted with a really neat little landing page.
It's awesome. Yeah, it's fun. There's some images of, oh, what's an eye? Do you have a cover of those images to get the fun gifts?
You can be a team-wester, team-scot. It's a really fantastic, a highly recommend checking this out. But what is Prismacad Prismacad is a new way to make your website editable for the whole team. What does that mean?
Well, it's a content management system, and a tool for online editing. Basically, it makes editing your content really super nice now. If you love really smartly designed interfaces, I mean, just check out their homepage or landing page. And then some of their examples of this, CMS back end.
It's all fantastic. You can choose your framework to set up. It works with, I mean, a lot of the stuff we're talking about on the show all the time. No JS, React.
Next JS, you have to be viewed. No, all that good stuff. It works with a standard of RESTful API as well as a GraphQL query. It's really super cool.
You can clean easily deploy with like now, nullify, or local, or your favorite host platform, whatever that may be. They also do a really nice job of getting started with different options, whether that's with next JS or with Gatsby or any of these tools that we love. Now, this will be one of those brand new next CMS tools that we have been craving over here at syntax. Check it out at Prismacad.
Oh, forward slash syntax. And give it a try. Give it a look, see if this is the back end CMS of your dreams. Okay, let's get going on this.
I wanted to start this off with maybe why some of these skills are needed. I was thinking about this as we started getting into the new year and thinking about resolutions. And the genesis for this show in my mind came from essentially non-code related things. I was going to dance practice because we don't have to be boy break into for 15, 16 years now.
So I went to dance practice and I was sort of realizing that I've been going to this practice for 15, 16 years. And there's stuff that I know that I'm not good at that would make me much better at that craft that I avoid every single practice and I avoid it because it's difficult. It's a little green. Maybe isn't the fun slashy stuff that I'm working on either way.
There's these things in life in general, not just in dance, not just in code, whatever. There are these things that we put off because they're not as glamorous as I was thinking of sort of in my mind. They're not as fancy or flashy or interesting, but they're going to make your life that much better every single day. So that was really sort of the general idea.
And so maybe let's get into a little bit why it's needed as a developer, a little bit more specific to developing why some of these skills are going to be needed to make your life easier. Yeah, I think I said it right. So they just get in the way of you being a better developer. So when you're in the headspace of trying to fix a bug or trying to get something done on a certain timeline, when you don't have these like non coding skills that come along with being a web developer, they are distracting.
They take headspace. You only have so much brain power to devote to things. And like I'm just thinking about like full destruction. And when I was in teaching a boot camp, I would see people all the time with bad full destruction.
They had files all over the place and they're editing around file and they're frustrated with like, it's just a mess with things like that. And that's not something that should get in your way when you're a developer. Right? You should be focused.
You should be frustrated. Other things like while your code isn't working. And I think that's important to spend time on these. It's not something that I just like sit down and work on these skills, but it is something where I continually say, okay, I'm spending 15 minutes figuring out how to better do this right now.
Yeah, I have these things that are, you know, I was inspired one time when I was a junior developer and we have been given a CSV of like 10,000 products from a gentle site that need to work. And I remember looking at the state I'm thinking this is not taking me forever to do in Excel. I was a junior, very junior and this other developer there was like, listen, I can convert this into whatever magenta needs because they need a CSV is very different organization for it. And he's like, I can convert this in about an hour if you let me write a script to modify this to the database.
And I was like, what, that's the magic. I didn't under, you know, I'm a website builder. I don't understand tools that mess with officer to do all that, you know, convert it to a CSV. That'll just seem like magic to me with it up, hit a button.
And this task that I was going to take me a whole day, took him about an hour to do. And it was pretty mind blowing somebody who was just getting into this stuff to know that, oh, yeah, we have these programming skills that allow us to do such amazing things. And if you can flex those skills to make yourself a better programmer or have more tools in your toolbox and then you're just going to be able to accomplish more things faster. And largely, like I said, we don't do it because they're boring sometimes, right?
Like is working on your file structure really that exciting? I don't know sometimes, I'm really deep about it. Like if it's bad enough. Oh, yeah, gotta get these folders right.
For those guys, we're boring. It's not always your focus either, right? It's not the thing that you're excited to interested it up. So for those reasons, it can definitely be hard to get going on some of these skills.
All right, let's jump into what are the skills that we think us developers should have. The first one we have here is just good command line skills. And this isn't being like amazing spin up Docker and do everything from the command line, but just being able to move around the file system to rename things, to delete things, to just your basic commands of being comfortable in that command line is super important. That's actually why I made my command line power user.com course just because I was seeing a lot of developers sort of struggle with basic stuff.
It was around the time that like all of them stuff was getting popular. And that was very new to people because before that everyone had these nice little gooies that would do it all for you. Yeah, go get this stuff like that. Yeah, I agree.
And in the next episode, we're talking about backup solutions. I found out like things like this analogy, right? This analogy is like server you're an answer. I don't know.
It's like infinitely queer to move in manager files via command line that it is to doing sort of via finder or anything where you're dragging moving files. So if you have those abilities, they're going to kind of handy in ways that you might not expect. And the headline tools in particular, renaming files, battery naming files, those kinds of things. I use that stuff all the time.
All the time. All right. So I'm going to link to the delete node modules to rename my file folder structure, which is going to get into our good file hygiene stuff. But again, I just I think command line skills will go really, really far if you let them.
So next one would be keyboard skills. When we're talking about like, like keyboard skills, you know, sometimes we have a lot of things in here where you're talking about like jumping towards lines and the line beginning of line, uh, kind of lines moving the line up. Those kind of things are definitely very code editor specific, right? But those are at the end of the day, keyboard skills to have those because a lot of stuff transferable, especially programming right.
Whether or not you're in VS code or anything or whatever. You have these things function. They might not be the exact same key bindings, but getting used to using your keyboard to do lots of things is going to take you a long way. I definitely am a mouse user at some point, but like being able to navigate and run a file really quickly and easily is definitely a huge thing for being fast.
Yeah. Yeah. I think like selecting and just cursor skills in general is okay, like moving lines, selecting an entire line, jumping the cursor by word instead of just like pushing it and then like trick it. It's a bit of a coffee while you wait for it to go to the front of the line.
Again, when I talk about these were just things that people would see me just flying around on it. And it's a little bit overwhelming because you're like, oh, I probably knows 300 400 shortcuts. But if you just learn one week and get really good at that one during that week and every time you say, like, oh, I can use that shortcut here. You have to stop and figure out what that is, but it will become just part of you.
And I don't want to be one week is like 100 a year. So you'd be fine. Yeah, you get to learn tons. And I can really like using custom keyboard shortcuts for some things.
I talked about this even in my video editing practice because video editors specifically, right? They have thousands of different keyboard shortcuts. They can do a billion different things. And chances are I don't need to do most of those things.
For instance, I really have like three keyboard shortcuts. It's like blades, like slice the audio video file, like roll it up to and roll it up fast. And if those words, I mean, you think don't worry about it. Either way, those are three functions I use and it makes a lot of sense to me to just assign them to three keys without even modifier.
So I just assigned them to ZXC on my keyboard. And now in a video, I'm playing the piano. Because that is really in tune with my workflow. I don't really necessarily feel too bad about doing that.
I know sometimes people don't like the change to me to default. But me personally, I think that if you're finding yourself doing a specific thing a lot, it's going to be super useful for you to have a custom keyboard. I was thinking about this today when I was using the change case package in my VS code. Yeah.
You use change case. I use change case all the time. Yeah, it allows you to obviously go up or lower camels, blah blah. Things like that.
Yeah, I just started using care being relevant or whatever using to do camera. Yeah. So I was just using the cap-class modifier to do all my change case keyboard commands. And my gosh, it saves me so much time.
You're never deleting deleting deleting, deleting, rewriting whatever you're just copying and taking change in case. It's so fast and easy. And again, this really suits my workflow more than everyone's, but it's something that's a male is a lot better. Yeah.
Totally unrelated. Okay. I'm talking about a VS code plugin. I just got, oh, yeah.
Oh, I got time for a VS code plugin. Okay. I just know it's anybody. It was called React prop types generate.
And just like, you know, I hate writing prop types. Oh, yeah. I often just don't because I just don't feel like figuring importing the component, which is prop dash type, naming it as capital P prop types. And then the component property is lowercase props.
I'm like, I don't want to do it. And I got this little, it's not because I don't like prop types. It's not like all the scaffolding around setting them up. I got this little plugin that will just be used to like your rack component.
And it will scaffold out all of the prop types and then allow you to enter any of the type it is. And then you can go through and set them all. And I was like, oh, man, that was such a stopper for me in writing better code because of how annoying it was. And this little keyboard shortcut will just immediately go for me.
Yeah. I don't want to be here. I'm sitting like D I have my pinky in the air. I talked about, you know, types.
But what I did is I actually wrote like a snippet library that doesn't stuff for bringing the different types I typically use. And I have code joining types. So my types are generated by a code generator and blah, blah, blah, blah. There's so much better in Africa.
But yeah, I told you I was still writing prop types like an interval. And I'm just going to be like, yeah, no, no, okay. So we get it's got you used type script. Congratulations.
See, this is the same. It's like I finally get you're becoming one of those people. Do you cross my two guys? I don't know because I'm a big dude across it, but I know it's hilarious.
Because it is one of those people. I get this and stuff. So I'm sorry about it. Next one up is going to be communication and interpersonal skills.
Now we're not going to spend any time on this one in this show because we get a whole show on communication skills. So you're going to go ahead and check that. At least you would have said that is so 125. 125.
So go ahead and listen to that one. Next up is going to be time management skills. This is a big one for those of you who are not good at figuring your game projects. And on time.
This is something that we have done an entire show on. I don't know if we have. No, I don't think we should do an entire show on time management because it's an important thing being both like being able to quote how long something will take as well as the opposite, which is being able to take your time and say, OK, this amount of time I'm going to spend on email and GitHub issues and whatever. And this amount of time I'm going to be spending on my calendar.
I actually just screenshot it my calendar. This we can have one thing and that's where it's like all week. And on top of that, I can't just like squander that beautifully open week. I have to make sure that chunk of it is spent on things like actually focusing on my courses or recording and writing code.
And the other part is getting my actual my product like my entire course platform up and running. And then other part is just like taxes and accountants and things like that that I should probably follow up with and whatnot. So being able to take a big block of time and efficiently use all of that because you can certainly have the opposite where you don't have any time to do anything that you'd like to do. Or you can have just a big block of time.
You're not sure how to properly use it. Yeah, totally. And I always like absolutely my Twitter right. Whatever it will be totally distracting for me.
I talk all the time about using it app to block things. There's a numerous extensions of their little block sites for you social media. Whatever as well as apps for whatever your platform has just Google it. I know OS is especially iOS and Android starting to add things like digital wellness to blocks or apps for you at certain times.
So those tools I need particularly to manage my time because my self control is not so great. So next one is going to be West is favorite topic as well as one of mine. Which is good. File hygiene.
And this is one of those that can get totally out of hand. You work on your computer for a couple weeks and you know your documents folder has 800 files in it. You download the folder at 800 files in it. And those are necessarily good things to have.
You should have like when I restart something. You should have an idea of where does this go on my computer. Is it for me? It's a full project.
We'll get a numbered folder in the name of the project. Just like me goof it around. We'll get thrown into my demos folder of me. Just like I'm wondering how this new version of the thing works.
Or I'm trying to do something. I'm working on a hot dip and I need to write some code to get that. That'll throw that in my demos. And then I'll have another folder that's just called Delmi.
And anything that is somewhat temporary. I'll just put it in there and then I'll blow away everything in that folder. A lot of times that's just like somebody's having problem with my courses. I'll clone the repo, fix it.
And then send them email about how to have a file. So that's really important. I see a lot of people with messy desktops and demos folders. My rule of thumb is nothing to say for the desktop.
Nothing to say for the demo folder. You should be able to delete those at any time. Or maybe even just run a schedule to just delete all those things into your trash every now and then. Just because if you have those on your desktop and you're not with folder, you're going to be tempted to work out of there.
And then before you know it, you've lost whatever it is that you were working on. So have a proper folder structure for that as important. Yeah. I have so many interesting folder structures.
I'm like, you know, like I have the site folder. And it's like I mentioned, like I mentioned, like a goof around project. I have one that's called experiments. And I just use the first three experiments.
Here's experiments. Here's here's personal. Here's a lot of tutorials. These are all my main things.
But again, download should not be safe. Desktop should not be safe. Totally agree with either of those pictures and pictures, movies and movies. All of those things that just happen, you know, how many times do you leave a picture or a movie or something on your desktop.
And it just sort of sits there. I mean, why don't you just drag into the movies? Well, they're even better. Create a sort of workflow for that.
Now, one thing I really like to do is I use an app called CleanMyMac that goes ahead and let me know about files that I haven't been accessed in a long time. Maybe extra large files that exist in my machine that maybe just shouldn't be there or whatever. And I go through and I delete a ton of stuff all the time using CleanMyMac. It also does a whole like, here's where you're set to store.
There's another app I use called DaisyDisk. DaisyDisk shows me just about every single size of every folder. So I can see it specifically. There's another thing that went unruly or something that's not sort of to the size you're expecting it.
It's important to keep an eye on just not enough or hardware address space on your computer, but necessarily you just overall weight of where these things are stored. Because the more things that you have in many different folders and the further and further gets away from any kind of system, part of it is to get back to any sort of kind of actual system. And the very last one is I like to create utilities to help maintain proper folder structures. For instance, I have a nice little utility that I wrote that creates my level up each time I have a series, I create the folder structure for me.
For instance, I want to start a new series, I create a new series just by running this utility, and that utility gives the series a name and creates this whole folder structure for me where it's sourced like the places or the raw footage, the places or all of the assets, the places or the source, the completed code, the places or the actual project. All this stuff is generated for me because the last thing that I want to do is think about that when I'm starting a new project, you're getting ready. So I've taken the time to create this stuff ahead of time to just tell me out. And I think that's who we're able to have.
Awesome. Yeah. I think those are some good tips things that you can work on. I'm curious for you.
I mean, your data to focus on these do or how would you say you get better at these things? It really depends on what it is. If it's a command line, utilities stuff can be really bad. I remember when I was first learning that stuff, I said, I'd like an hour every day to learn about this.
So things are better. I knew I wasn't good at it. My coworkers were able to do stuff that I wasn't able to do, you know what that's seeing. The neat little tips and tricks that have advanced things with the basic man's even like being able to see file permissions and stuff.
And the way that's not just a LS or whatever. Right. So maybe I'm a little bit beyond the introductory. I did set aside some time to get better at that.
A lot of these things, it can be the process of identifying what things are you not working on because you know that they're going to be no fun for you. And you're at it. You're going to do this. When you get even just take 10, 15 minutes to vary routine a little bit and to try something new and hopefully get better.
Yeah. A lot of people say like, why would you stop what you're working on to spend 10 minutes to focus on something? Because it just drags you from actually getting the job done. And I'm big on that because I know that the next time I do this, I won't have to stop and it's going to save me time and frustration and headspace in the long run.
So well, we're stopping what you're doing to figure it out. Sometimes it goes down a bit of a rabbit hole before you know it. You're trying to figure out what the difference between Python 2.7 and Python 3 is. But at that point you have to just rage quit and keep going through life the old way, but hopefully most cases you can benefit from that.
Yeah, definitely don't put off too many things in life to get that far. But sometimes I think it is a cost benefit analysis of how better it is going to make my life and is that where that time is usually itself. Cool. All right.
Thanks for tuning in. We got a banger of a show coming up on Wednesday about backups and Synology Home Servers. It's going to be pretty fun. So let's record that.
So make sure you tune in. We have the most exciting show on backups. It's kind of not Wednesday. All right.
Good to see you. Please. Please. Head on over to syntax.fm for a full like of all of our shows and don't forget to subscribe to your podcast player or drop a review if you like the show.