382

August 25th, 2021 × #Beginner#Debugging#Advice

Advice for New Devs

Scott and Wes share tips and advice for new developers just starting out, covering topics like learning fundamentals, debugging, soft skills, struggles all developers face, and more.

or
Topic 0 00:11

Soft skills are as important as coding

Wes Bos

to Syntax, the podcast with the tastiest web development treats out there. Today, we've got A show called Advice for New Devs.

Topic 1 00:15

Build projects you are excited about

Wes Bos

We're gonna go through both. Scott and I have our own opinions and advice for rid Someone who's trying to get into the game or someone that's trying to level up.

Wes Bos

And, also, we asked we put the bat signal out on Twitter and asked, rid Like, what is your advice? So we've got all kinds of stuff here, and Scott and I will sorta read through them and and give our thoughts as to if we think it's a good advice or not. Yeah. We are sponsored today by 3 awesome companies.

Wes Bos

1st 1 is Sanity structured content CMS. Second 1 is Sentry performance and error tracking, and third one is Cloudinary

Scott Tolinski

image hosting and transformation on the fly. I'll talk about all of them partway through the episode. How are you doing today, Scott? Doing good. Just, you know, keeping it up. We're going on our 1st vacation since the pandemic, so ready for that Next week. Wow. Yeah. Grandma and grandpa are coming to watch the kids for a little bit, and that's gonna be our 1st time away where we're both away from the kids for any any amount of time, really. Rid. So, scary.

Scott Tolinski

Definitely scary. But, same time, it's gonna be exciting and, you know, wonderful, hopefully.

Wes Bos

Yeah. Awesome. Cool. That's That's really exciting. Caitlin and I are gonna hopefully get away for 1 night with our with, somebody watching our kids ready. Once, once we do our anniversary in the summer, so we're stoked for that. That's nice. Yeah. That'd be nice just to get away. Yeah. Yeah.

Wes Bos

Alright. Well, let's get on into it. You wanna grab, the first little tidbit of advice again? These are this is advice from Scott and I, and then and later in the show, we'll get into rid Some of the community sent in suggestions.

Scott Tolinski

Yeah. So the first one, we have here is to get comfortable with your code Not working. We spend a lot of time writing code, and many of the time, it's under construction.

Scott Tolinski

It's got little guys hitting it with a hammer and a jack Jackhammer or whatever.

Scott Tolinski

Either way, this this code is under construction most of the time. And and when it's under construction, it's not going to be working, and it will hit bugs. You'll hit issues.

Scott Tolinski

Things will not work for periods of time, but you'll get through it. It's really just how it is. We we go back and forth between rid The code working and the code not working. And so you're gonna have to spend just as much time with the code not working if you're editing and then tweaking and learning new things, especially in the beginning. Next one we have here is compound learning and momentum is your biggest tool.

Wes Bos

I I have this quote on my JavaScript 30 course, which is There's no formation without repetition, and I think that is honestly the biggest tool for someone who is learning to code.

Wes Bos

I am not the smartest dev out there, but I feel like I have been pretty persistent over the years of continuing my learning.

Wes Bos

And now I look back at the, like, 15 years that I've been a dev, and I say, oh, wow. Like, I actually know a thing or 2, and there there was no, like, massive leap or bound. It was just that, like, every single day, I get a little bit better, and then you look back in years, and you're You're way, way ahead. So there's gonna be a lot of lows where you're thinking you're not making any progress and everything is frustrating and you're not even rid Sure. If you like development, there's gonna be a lot of highs where you're getting into some new tech, and you're super excited about it. And, Take those highs and lows as well, but just know that you're in this for the long game here, and having that momentum is is huge. Rid. Yeah. Absolutely.

Scott Tolinski

And and it is one of those things where you don't even notice it until you look back. The most common way that you hear this being expressed from developers is they'll say things like, rid. Oh, I looked at code I wrote a year ago, and what was I thinking? Yeah. And that's, like, such a common thing that you hear because that's just evidence that you are putting in that little time by time by time and just growing constantly.

Scott Tolinski

Next 1 is going to be to this is actually a huge one. In fact, this is one of those skills that rid me from a developer who was just getting into my 1st job to a comfortable developer who could solve my own problems without asking for help, And this is learning to read the error messages.

Scott Tolinski

The error messages, when things don't work, are really, really, really, really helpful. Let me tell you, that is the way you solve just about any issue. And when you're just getting started, you might not realize how to read them, And that's a skill in itself, but you also might not realize where to look. I remember, one time when I was maybe, like, rid. Just I didn't know what I was doing with with PHP at all or or a database. It was my 1st time working with a database. I was trying to get Magento working on some site with a cPanel, And I I broke a file because I didn't know what I was doing in PHP and the whole thing white screened. And all I would have had to do is look in the error log to figure out where the problem was. But instead, I was just like, well, I just I'm I'm gonna FTP. I'm gonna grab all the the local files and just start over. And that's what I did because I didn't know any better. Because I was like, well, I guess I I goofed something up. I don't even know. It's a white screen. That's it. That's it. Toast. Can't be fixed. Yeah. And there's always an error log, and that error log always gives you a road map to fix the problem no matter what it is.

Wes Bos

Yeah. I would say not always. Usually, sometimes it's pointing at something bizarre, but I've I've found that if you ask yourself questions, is this Error coming from my code. If so, then I goofed something up. Is it coming from a library? If it's coming from a library, rid. I initially would be like, well, the library is broken, but it's and more often than not, it's that you're not supplying the library with what is it it was expecting.

Wes Bos

Rid. And sometimes the libraries will check for that. Other times, they won't. Is this coming from the browser? I've had many issues where The error in the console was just totally unrelated to the thing that I was rid having trouble with, and there wasn't actually any error happening. And sometimes Chrome extensions can throw errors, or there's weird network errors or a big one I see is people are running privacy badger or the DuckDuckGo extension, and that's blocking something. And rid Just think about sorta take a step back and think about those types of things and learn to read a stack trace, as the stack trace will tell you rid. What function called what function called what function, and then it broke. So you can sort of step back, and more often than not, it's just dumped into your Your console or into your your terminal, and you're you're like, I've this is just gobbledygook to me. But if you can Learn to parse through it and throw out the pieces that are unnecessary. You can usually find a little bit of tidbit of information in there. Yeah. Totally.

Scott Tolinski

Rid And it is. It's always like you said, you have a that it's a treasure map. It it really is. It it often just leads you to where the issue could be. And and you're right. You know, it's so funny. I I'm on the some programming Reddit's just casually. Sometimes I I pop in to help, solve problems, and you wouldn't believe how many Just times the question is, I'm getting this bug.

Scott Tolinski

Can somebody help me fix it? And the bug is, like, can I read property of undefined? Know, can I read property ID of undefined? Yeah. And and the answers are just, well, why is this, this property undefined? I'm like, I don't know. We'll We'll figure it out. I mean, if that property is undefined, and you're trying to access a property of it, then, you know, that's it's going to throw an error. So figure out why your Object is coming in as undefined and then go from there. You know? It is funny because, like, everyone's yep. Your default can just be to, rid Well, I gotta ask for help. I don't know what to do for this, but the more and more you read it and just push on it, I think you can really make some progress. Yeah. I was talking to my wife the other day.

Wes Bos

Something wasn't working.

Wes Bos

I think I've told this story. Did I tell the story about the lamp? I don't know. I don't remember Lamp's story. Oh, I'll I'll tell it anyways. Anyways, we have a lamp that has a switch on it, and that lamp was plugged into a dimmer. And then that was plugged into a Wi Fi switch, which is plugged into the wall. And she just comes to me and says, the lamp's broken. And I was like, okay. Well, like, what part? Like, why is it not working? And she said, I don't know. It's just not working. Like, the lamp as a whole rid is broken. And, partially, that was just because she just wanted me to fix it and didn't want to deal with it. But I was just like like, figure out what at what point in the chain is the bulb? Is the switch? Rid. Is the dimmer? Is the Wi Fi switch or the power coming out of the wall? Is it isolated to one of those parts? And that will give you a much better idea of where it's at. And that sort of, like, debugging mindset is something that you can really once you have that sort of mindset, that applies, rid Like, literally everywhere in life, but you could just dig into things and say, okay. I understand the issue is coming from here.

Wes Bos

Now I have a little bit more clarity as to what could possibly be causing it. Yeah. And sometimes in some situations,

Scott Tolinski

like a lamp being broken, You just want the lamp fixed. Right? Hey. Lamp's broken. Fix the lamp, please. And then other times, when it's your career, like a programming, if you ready. Go to some other developer, an IRC or on Reddit or whatever, Slack, and you say, the lamp's broken. How do I fix it? Like, that's not helping you. Right? That's not helping you grow as a a developer. So if you're thinking about this for long term gains and growth, Then you definitely

Wes Bos

like, learning these, these debugging skills to help yourself solve these problems is an essential part of growing as a developer. Rid. Next one we have here is take time to learn the concepts that scare you. There are lots of things in programming rid that seem a lot scarier than they are. Hoisting, memoization, caching, there's a lot of these things where You're like, oh my gosh. I would never high order functions. These are all, like, scary words, and then you look up like, you look try to read a quick blog post that said, like, what is that? And then you're like, I don't understand what that is. But once you sorta get into it and realize what they are, you go, oh, rid That's not that complicated.

Wes Bos

That was being explained improperly, or it was just not the way that I liked it. So rid Take the time to dig into those specific things.

Wes Bos

At least learn the high level of what they are because as soon as you hit an issue,

Scott Tolinski

That thing will solve, then it will make very will be very, very clear. Totally. Totally. Totally. Next one is we all struggle. Rid. There are there are are points where, you know, I mentioned earlier when your your code's not working, but there are points where you really feel like I am too dumb to do this. I just cannot do this because, you know, you'll just spend hours on something and none of the solutions you try to fit re Worked at you know, nothing that you can do is getting you through this error, this bug, this situation. You cannot understand this one small concept that everybody else can understand. You've tried to learn Redux for the 8th time, and you don't understand why you need all this stuff.

Scott Tolinski

These are the types of things that everybody goes through all of the time. And as you're learning, the good indication that you're learning something is that you're hitting into things that seem like they're too hard for you and that you're struggling a little bit. If it's all easy all of the time, you're never gonna get there. So we all struggle. This stuff is hard. Give yourself a break in that regard. Just know that every single developer out there who's gotten to Anypoint has just put in the time to get past it. Now granted, there are some Naturally gifted people, but those people are few and far between. The majority of the industry has worked hard to get where they are.

Wes Bos

Totally. Yeah. There's you'll often see some of these YouTubers, or you'll see a 14 year old on Twitter who is just rid laying it and things like that, and that is not the norm. Most of us are just regular people where this stuff is hard for us, but we sort of kept at it, and it gets Gets a lot easier. I always tell people, like, you should be, like, pushing yourself, like, 6% more or rid. 12% more than you think you should because the struggle bus is where a lot of that learning will happen. And if you keep pushing yourself a little bit further, Very similar to working out or or, other things like that. You always need to be pushing yourself just a little bit further than you think you should be that's where the learning happens. Yeah. And working out is the perfect analogous

Scott Tolinski

because, like, if you think about it, you know, people wonder how people get To be in shape or, you know, really strong or any of that stuff, when in reality, all they're doing is showing up to the gym 4 days a week and putting in an hour. And, you know, that is really the the key to any sort of progress at all. It's just push through the hard stuff. Right? This next one is one of my favorite ones rid Taking a walk is good for solving bugs.

Scott Tolinski

You know, I used to work at an agency, and my boss and I used to just go for a walk around the block all the time. Be like, hey, man. I'm having a hard time with this bug. You wanna go for a walk? The point of the walk was not to talk about the bug and was not to, like, ruminate on it or or work on the The code itself. The point of the the walk was to get your head out of the code and get your head out of the current mindset that you're in And then get your brain just a little bit of time to relax.

Scott Tolinski

And when you do that, you come back to your code. You feel very different. And most of the time, You end up looking at it a totally different way or having another type of solution. This also works for, like, going to bed for the the night, you know, and then the solution when you wake up, it's a very common thing. This is one of the hardest things to do. It's like 11 o'clock, it's not working. It's 11:30, it's not working. And you're saying, I I just gonna fix this before I go to bed. It's 12. It's not working.

Scott Tolinski

Just go to bed. You're you're gonna solve it, like, first thing in the morning if you do or just rid. Go for a walk. If it's the afternoon, it it will help you every time. Yeah. That is a bit of a a bummer one because sometimes you just wanna sit there and push rid through and fix this darn bug. But

Wes Bos

often, I'll just walk away from it, have a shower, go for a walk, whatever, rid. And then or you come back to it and be like, oh, that was simple. How was I totally missing that? Next 1 is get comfortable with the command line. It's Weird that most of our tools as web developers are still on the command line and not like a a wicked gooey tool with drag and drop. And rid I remember what was I learning? I forget what I was learning early on, and I was just like, oh, like, that's it? Like, there's no rid app that I can, like, click settings and things like that where so that that's just the reality of of the tools that we use. They're so flexible that Building some sort of interface for the type of things would be would be too complicated and and not give you the full control over it. So Getting good at like, and not, like, being amazing at, like, bash scripting because, honestly, writing bash scripts is not rid A good skill as a web or not not necessarily bad skill, but it's not something that you need. You can write JavaScripts if you JavaScripts. You can write many JavaScripts if you want to, script something, but being able to traverse a directory, to create files, to move stuff, to SSH into a box and and just be comfortable with those commands as to what you're doing, and you're not just pasting in random stuff that Someone on Stack Overflow posted 9 years ago. Mhmm. That's a huge one. That's like a big tool as a web developer that is not code related.

Scott Tolinski

Yeah. I think just even being able to I think, like, the top 10 skills for well, I don't know about 10, but the top skills for command line is just being able to navigate, Move files, copy files, delete files, SSH. Yeah. Like, those types of things. You don't have to be, like, A command line master, but you you do need to know how to get around, run git commands, those types of things. It's not as hard as you're expecting it. Most of the time, it's just memorizing what to do, but also if you if you you know what CD is, change directory, then you're never going to forget that it's CD. Right? So just understanding what all the commands, the words are behind them, and what they are will will definitely get you at least into that zone.

Scott Tolinski

Now Let's actually take a break to talk about one of our sponsors today, which is Sanity. West, do you wanna talk about Sanity?

Wes Bos

I would love to.

Wes Bos

Rid. Sanity is a content platform that powers better digital experiences. So what does that mean? Essentially, what it is, they rid They do all kinds of stuff, but, essentially, what they do is they are a CMS that is extremely flexible and extremely powerful. I'm gonna talk about Sanity Studio, which is the actual UI that you use to interface with Sanity. Sanity is a hosted solution, rid. But the Sanity Studio is actually code that you can run on your computer, and you have full control over that code, which is really, really cool. It's like the best Sort of the the best balance of they handle all the hard stuff, which is the database and the hosting of it and the scaling of it, and then You still have full control over the UI. So Sanity Studios is a React app that is fully featured, but if you wanna be able to control it, to skin it, rid. To be able to create your own components for custom inputs, you have full control over, and you can also host that rid Sanity Studio wherever it is you want. So do you have a next website or a next app that you want to Power with Sanity. Go to sanity.ioforward/ syntax.

Wes Bos

That will get you double the free usage tier, which is rid 200,000 API requests, 1,000,000 API CDN requests, 10 gigs of asset storage, and 20 gigs of bandwidth. Plenty, plenty, plenty. Thank you, Sanity, for sponsoring.

Scott Tolinski

1,000,000,

Wes Bos

dollar. 1,000,000.

Scott Tolinski

Alright. So this next one is going to be important if you're working out with a lot of designs, which I know a lot of us are, especially if you're in the agency world where you're getting a new design, you know, all the This is such an extremely valuable skill. It's being able to replicate a design pixel perfect, As in the designer gives you something, and you give it back to them as a fluid working website with the spacing and everything working exactly rid How it should be. You would not believe how many interns or junior devs that I've worked with in agency worlds That they get a design, and they bring it back. And they say it's done. And you look at it, you say, it's done? What do you mean it's done? This is not done. This doesn't look at all like the design.

Scott Tolinski

Like, what what's up with this gray color is very clearly not the same hex value that's in the document.

Scott Tolinski

Use, like, 2 2 pixels for the lines here when they they only have 1 in the design. You have this spacing is weird. The spacing is off. These icons are wrong. Like, You name it. People will do it, and then they'll try to say it's done.

Scott Tolinski

This always takes more time. I always got my stuff done really early recreate the design as a website, it's going to be way less time on your part because, You know, if you think, oh, I gotta do all these little details or whatever, those details are gonna save you so much time because you're not gonna have to go back to it after the diner designer comes and says, You didn't do This Isn't Right. It's so funny to me because it was always a skill that I don't think I I thought about too much. It was just something that I expected out of, my work. Right? Yeah. But I think some people, they don't think about it as in, like, this needs to be the way the designer is asking for it. Do it that way, And, you know, go from there if things need to be changed, but do it pixel perfect. Just absolutely do it. Spend the time. Make it make it nice.

Wes Bos

Yeah. Like, that's such a good thing because you we always talk about, like, JavaScript skills and knowing libraries and things like that. And, rid those things are very helpful, but being able to cut a design into a fully functioning website that looks exactly like it and is WellCoded is, like, a big, big, big part of our job. So go and grab a design from rid. You can go online. You can find prebuilt designs and just cut that thing to HTML, CSS, and JavaScript and make it work and make it be pixel perfect. Rid That will really

Scott Tolinski

I keep saying level up, so you you have to pay me here, Scott. Yeah. That will really level up your skills. Cha ching. Wait. No. You you have to use me. That's my trade. That's I guess I don't have a trademark on that. But Isn't that Mario? Yeah. There's a trademark on that. No. Mario doesn't level up.

Scott Tolinski

Who who Mario who levels up? I think it's a it's a concept from from RPGs. I think it comes

Wes Bos

I always thought that was Mario when he gets the big he gets the mushroom, and he goes no.

Wes Bos

No? Oh, man. My world is rock. Yep. Just rocked it. Next one we have here, this is one Scott added. I I very agree with this. Re you are on a team. Don't get stuck in the us versus them mentality of internal company teams. I would even extend this for Working with a client in an agency or a freelance as there's often people are frustrated with the other devs, the other designers, the client, and rid They're just like you even hear, like, people give out advice as to, like, how do you deal with this client? And they're always like, well, put your foot down and rid Do this, and it's like, wow. That seems very aggressive a way a a very aggressive way to deal with an another designer, another dev, or a client. Like, You're on a team. You're working with them to solve their problems.

Scott Tolinski

I think you should do better than that. Yeah. To speak on, like, the team aspect side of things, I've been on dev teams where, like, you get into, like, a dev team meeting, and it's all like, did you see this done design I got? Or, like, this This designer doesn't know what they're doing or is so and so manager and ensure that's part of just, like, company interpersonal relationships where there are No. Everything isn't always amazing and whatever, but you are on a team with these people, and you are working to get these things to be the best there are. So If you you're working with a subpar design or whatever, it's not doing you any good to rip on it, to feel worse about it, rid hate on it in any sort of way, but it is also not good to build up some sort of a us first then type of deal where, you know, that's everybody's rid against each other. Like, yeah, you are 1 big team. I know that's, like, such a it's such a thing where where the developers, they can get, like, Kind of pompous about being able to create stuff, even new developers. Like, I made this website, and this dumb designer couldn't do it. Like, they couldn't write this code. Yeah. Well, you couldn't do their design.

Scott Tolinski

You know, you they're they're different skills. They're different jobs. And I think it it's important to keep all of that in mind that everybody's working together on rid You are all a team. These are all your people. Like,

Wes Bos

you should all you should all be lifting each other up. That's something I see a lot with New devs where they think that dumping on a technology or a library or a CMS or Another person's implementation, they think that that makes them look like they're good. Mhmm. You know? Like, oh, I hate we would see this all time in the boot camp. People would spend They'd be 4 weeks into being a web developer and be like, I hate WordPress. It's awful. Like, what a bad way to template out things. They're like, okay. You don't You don't know that much yet. Like, calm down.

Wes Bos

But by being opinionated about something doesn't make me think that you're good at what you're doing. It just rid me think that you're a bit of a jerk. Yep. Yeah. I hear you.

Scott Tolinski

Next one is going to be, you are not an expert, especially as a new person, and and this goes right along with what you're just saying. If you're new or even intermediate or even advanced, I would say to any state rid Within this this game of being a dev, you are not an expert. You won't be an expert. And even if you are an expert, you're probably at the very, very top of the field. Let's just say that. You're working in some agency or some whatever. You're not an you're not an expert. You might know things. You might know a lot of things, but there's always other things. You know, it it's too often that some developers get into a flow where they say it'll like you said, they'll they'll dump on a technology because they don't like it. There there's Endless posts on any of the social media, Reddits, whatever, where people are like, well, you might not like us older developers, but, You know, we know that you're you know, don't jump on the latest hype train or whatever. They're like, okay. We get it. You can write HTML and CSS. But There are very valid reasons why many companies are using certain specific technologies. Yeah. Those technologies exist, and they have users. They have validity.

Scott Tolinski

So, like, rid. Give them that validity. And and maybe instead of just putting your feet in the sand and saying, I'm not doing this. I mean, this is very common, especially when rid. Sass came out, and and and developers were like, I like writing CSS the real way with CSS. And it's like, well, I like not writing out vendor prefixes, And I like not duplicating my my class names with nesting, and and I like variables. You know? And I think those those concepts and those things often get lost because People put their feet, and they just plant them, and they say, I don't need this thing. And, I think that's important thing to keep in mind. You're always going to be learning. You're a student forever. Rid. And if you have the student forever mentality, you'll keep your brain a little bit open. It's so easy to fall into the trap of, like, you know, every single developer who uses Vue must be dumb. No. They're just they're just, bro, you know, they're very productive, and they're they're probably just looking at it a different way than rid You are with whatever tool you're using. Do you know what I mean? Yeah.

Wes Bos

Next 1 we have here is scaffold out with comments, rid Or I like to call this pseudo coding. So sometimes you'll say, like, okay. I I hear this from a lot of people. I know what I need to do, but I don't even know where to possibly start. Read. Into that, I say, like, you start writing pseudo code. So don't write the code. Write like, okay. I need to get an array of names. I need to filter them for names that start with w.

Wes Bos

And then for each name, I need to loop over it and send off a fetch request.

Wes Bos

And then once all of them are back, I need to loop over the results, render them to HTML, and then stick them into the DOM. And If you can write those all into comments with, like, 1, 2, 3, 4, 5 up beside each of them, then it's like, okay. Well, I can

Scott Tolinski

rid Instead of like, oh, this thing is overwhelming, I can focus on on, you know, on just the 1 piece of the pie that I'm trying to do right now. Paint by numbers. I even do this for HTML. If there's, like, a a grouping of, like, a header or something, I'll just have a comment and say header. And then that way, I, like, have a spot for it Whenever I come back to it. Whenever I want to work on the header, it has a spot. Yeah. I think scaffolding with comments is just a great way to organize your stuff and to get your Your stuff isn't outlined. It's the same thing as, like, writing an outline before you write a paper. It just helps helps every time your code ends up becoming more organized and probably less refactors rid along the way. But if you do refactor, Wes, you're probably gonna hit some bugs and some new bugs maybe. If you're using Woah. Using TypeScript, maybe not. Who knows? But With any of this stuff, you'll probably need an error and exception handling tool like Sentry.

Scott Tolinski

If you wanna head over to century.i0, use the coupon code Tasty treat, all lowercase, all one word. You will get 2 months for free of Sentri's amazing error and exception handling tools. Not only that, but you get performance tracking tools. You get, just so many new things every single month. I swear, every single time I I log on to Sentry, there's, like, Some new little widget or new tool that gives me access to some bit of data that I didn't have before, whether it is getting a better idea of what the error picture on our site really looks like Or getting a better picture of what that performance pie looks like on our site as well. So head on over to [email protected] code tasty treat, All lowercase, all one word, and you will get 2 months for free. Thank you so much for Century for sponsoring. Alright. Let's get into

Wes Bos

our Twitter advice. So I sent out a tweet It says, what is your advice for new developers? Scott Talinski and I are doing a syntax podcast on the topic and wanna hear your different opinions.

Wes Bos

Please include your background in the reply.

Wes Bos

And at the time of recording, this has 63 replies, so we're not gonna be able to get through them all. I would recommend That you take a little peruse through the replies because there's lots and lots of good nuggets in there, especially from devs. Rid That's the one thing nice thing about Twitter is that there's devs from all different backgrounds and experiences. And some people have been devs for for 2 months, and some of them have been 25 years. So it's kinda cool to see the different advice from people who have different amounts of experience because, also, like, someone who just came out of a boot camp, a 25 year old dev is not gonna have advice for somebody that rid Came out of a boot camp. Well, they they might, but it it's some really good advice if somebody has just gone through it themselves maybe a year before you. Word. Ben Newton says soft skills are as important as coding skills if you want to go far. Ben is

Scott Tolinski

And that's not that's like a real thing because the other devs were just rude to clients. They didn't have the understanding of how to talk about their projects in a way that People would understand because they wanted to get too much into the code stuff, too much into the specifics, not enough about the goals and and what the the big results are. So soft skills Yeah. How to work with clients, how to work with your fellow developers, how to work with a design team, or any of that stuff, rid. They will take you very far because when people like you, you get promoted. It that's a that turns out to be a thing. Yeah. Absolutely. I totally agree with this one as well. Rid. One of the later pieces of advice is always be interviewing

Wes Bos

even if you're not necessarily looking for a job. Those skills of going through an interview and talking to people rid. And going back and forth and talking about yourself are key.

Wes Bos

I find myself doing this a lot as sometimes I'll go into, like, a business. And, You know, sometimes when you you meet somebody who just loves to chitchat or or talk about their whatever project you're doing, whether it's like you're going into Home Depot or whatever, and The person just wants to talk your ear off. I find myself being like, yeah. I'm trying to get out of there as soon as possible because I'm like, I don't I don't feel like talking to you. Mhmm. But I always, like, push myself A little bit to be like, alright. Let's just, like, build up my, like, communication skills and try to ask 3 or 4 questions about what it is that they're they're talking about, And I find that that has helped build up my soft skills. Even at conferences as well, you're chit chatting with somebody, try to asking lots of questions, try to pull information out of them Because that builds up your conversational

Scott Tolinski

skills. Yeah. Hey. It's funny. I have a a friend who it can border a little bit on, like, Turning it into an interview sometimes, so it's, like, not always great, but he asks really great questions sometimes. And sometimes it's too much. Right? Like, sometimes it'll be like Yeah. Even just very simple questions.

Scott Tolinski

You know, we're let's say we're talking about cars. I say I like this car. What do you like about it? Okay. I like this and this and this.

Scott Tolinski

Okay. That's pretty cool. But even like that same question, what do you like about it? It's a good question that people just don't ask, believe it or not. Like, oh, I really like this podcast. Oh, tell me. What do you like about it? What's your favorite thing about this podcast? And, again, if you say, give me 5 things that you like most about this pod. I mean, that's a little bit different, but, you know, if you're asking those kind of questions rid actually show you you care to a deeper degree than just, like, oh, cool. That sounds like a fun podcast or something.

Wes Bos

You know, it it's engaging a little bit more. Rid Yeah. Kalyn and I have a friend that is like that. And every time we go home from, talking to that friend, we're like, we like that guy. He asked such good questions. He's always interested in what you're doing. Yeah. You know? And instead of just trying to talk about yourself and blah blah blah or have these really, like, rid. Shallow conversations, she just, like, knows what to ask. You know, like, damn, you're you're a good conversationalist.

Wes Bos

Mhmm. Ready. Yeah. Let's go. Next piece of advice is from Eric McCormack, Ed Moose on Twitter. Learn, observe, try. Don't be afraid to blog Or speak to push yourself beyond your comfort zone. Something we talked about earlier is push yourself. It's okay to hack on stuff in your free time, And it's okay not to. I think that that's a good one. We heard that from a bunch of people is that sometimes you're going to be super stoked about rid You wanna code every minute of all of your life. You wanna build things. You just the ideas are flying. And other times, you just don't wanna See a computer after work, and all you wanna do is go home and work on your pizza dough or whatever it is that you're working on. And rid Knowing that that is okay, I always was thinking we had another one from, Jason rid. Leggy says you don't have to code for fun. Many people don't. Some do, and some love it. Doesn't mean you're a bad dev. If you don't feel like it, you need to improve rid Your skills by studying and learning. Sure.

Wes Bos

But if you don't like doing it, don't worry about it. And I thought about replying as my re Plumber friend who likes to plumb for fun will disagree.

Scott Tolinski

Yes.

Wes Bos

Because it's one of the one of the few jobs where People, like, expect you to go home and do the same thing, and that is not just that some for some people, this is just a job, rid. And they are good at their job, but they're not doing it for fun on the side. I have a buddy who's a plumber, and he doesn't plumb for fun on the side, but he's constantly rid. Curious. He's always solving problems. He's always learning new things, trying out lots of, like, just random stuff in life. Like, he's grafting fruit rid trees right now, and I'm like, that's really cool. And I think, like, he just has lots of good life skills, which is problem solving, being curious, and That will make you a better dev in the long run, I believe, even if it's not necessarily just code related. Yeah. And we should say, though, I I think When you're starting out and if you need to, like,

Scott Tolinski

really cram for some stuff, like, I mean, in college Yeah. You would rid. Cram all night and work, you know, study, study, study. I think that there's a difference between that and coding for fun. I I Used to code a lot for fun, and it was legitimately for fun, but it was only ever on projects that I was going to use for something, Like creating tools for myself. And and I feel like that's different because that's not working necessarily.

Scott Tolinski

I'm not Creating something that's Yeah. Expected to make money or expected to be used by someone else. I'm making something, you know, just for myself. It's a you know, just an Expression in that way. And I think that can be maybe the better approach to coding for fun, so to say. You know? Yeah. Agree. Alright. Next one is from Andrew Nickerson. He says, start by building a project that's interesting to you. Don't worry about understanding all of the tools and methods off the bat. Just something that works. Depth of understanding can come after the joy of creation.

Scott Tolinski

And Andrew is dead on there. In fact, that's kind of exactly what I was just talking about for fun. It can be really fun if you just Really take on to something that is interesting to you and not just something that has goals that are monetary or something like that. Right? If you're creating something just rid for yourself just as something you're interested in, and it can really, really help you push forward into things. You know, I I think The large part of my understanding of JavaScript and JavaScript frameworks overall has come from projects like this where I'm just, rid I wonder if I can do this thing. In one of the things I was like, I wonder if I could, build a tool that randomly tells me a breakdancing move to do every 30 seconds Or every 5 seconds or something. So that way I could be dancing and then have it shout at moves to me. And then you start to get into text to speech APIs, and you know, you build the thing, and then it's fun. I mean, that's awesome. And then you've learned a whole bunch of new APIs. You've learned a whole bunch of new skills, and you got something out of it.

Wes Bos

Rid Totally agree is you can do what's called just in time learning is when you need to learn something, when you need need something, like The drag and drop API is probably a good example. I'd say most developers have not implemented the drag and drop API because they haven't had to. But if you need to, then you can just go ahead and and learn it at that time. You don't need to learn the drag and drop API and just sit there ready to get the next project because you might not ever have a project with that. But if you need that type of thing, then you go ahead and learn it just in time.

Wes Bos

Next one is from Michael Powers on Twitter. Ask questions, break things once in a while.

Wes Bos

I do that a lot more often than I'd like. Read. Learn vanilla everything even if it feels like a waste of time.

Wes Bos

Think about writing that function from scratch rather than importing a package. Rid Think about importing a package rather than writing it from scratch. That's that's a good question, and finish it off complete JavaScript thirty. I like that. Rid Just learn vanilla even if it feels like a waste of time. We see that from a lot of people right now. They just wanna get into whatever's gonna get them a job, but rid. Scott and I have been around long enough that we've seen a couple different frameworks come and go and libraries come and go. We know that just knowing rid. Vanilla JavaScript is going to be your core asset, and you'll be able to pick up whatever framework or library. Like, you've been listening to this podcast. Rid. Scott just completely rewrote his entire platform in a different framework.

Wes Bos

Why? Because he's good at JavaScript,

Scott Tolinski

And he was able to just pick it up really quickly and start to implement the type of thing. The whole idea of components and styles and scoping and Event listeners, they apply through any framework. Yeah. Those types of things they do. And if the browser APIs aren't going anywhere, so it's not like you're gonna be investing your time in learning something that might not be here next year, you know. So Yeah.

Scott Tolinski

You know, imagine if you would've spent A ton of time learning Backbone JS. I mean, I guess, the skills were definitely transferable to React, but they were, you know, specific skills.

Scott Tolinski

So you could always invest that time in the main stuff. And now I'm not saying that to dunk on backbone JS or anything. I'm just saying that it's not that widely used anymore. And Nowadays that people if you would have spent that time learning the foundations, well, maybe you you would be able to take a little bit more with you, and not that rid Backbone was that intensive. Maybe backbone was a bad example. Either way, you could replace the word backbone with anything here, and point still stands.

Wes Bos

Yeah. Literally, any framework library, as long as you have your your good fundamentals. Like, definitely go ahead and and learn that framework as well, because that's what you wanna use, and that's what's gonna get you the job. But don't neglect your your vanilla JavaScript or your fundamentals in whatever languages is you're learning because that's gonna That's gonna come with you wherever you go. Yeah. Next one is from Jason Lee.

Scott Tolinski

He says, dev for about 15 years. It doesn't matter how long you do this job. Most of the stuff rid. There will probably be unknown and confusing. There is just too much.

Scott Tolinski

Don't worry about it. Just learn what you need to learn to do to what you want to do for what you want to do. So, I mean, Jason's also well, he's right on. I mean, there is too much stuff, and that can be seen as a big plus for some people who like to learn a lot of things, then that could Seem like a big scary thing for people who, like, really structured.

Scott Tolinski

Like, learn this, then learn this, then learn this, then learn this. This is not like that. This is a rid. Spiderweb of many different impot you know, many different things, and it's impossible to know the entire spiderweb.

Wes Bos

Next one we have here is from re Don't be afraid of the documentation and reading other people's code. I've been coding since 10 years. Started with PHP, learned CSS, HTML JS and now totally into TypeScript and typed PHP.

Wes Bos

That'd be a kind of an interesting show, typed PHP.

Wes Bos

Read. I agree with this one.

Wes Bos

Learning to read documentation and go through it all is super key. And, like, I'm not just, like, rid Saying like, oh, like, search it and find it, but, like, literally take a couple hours to just parse the documentation so that you know what is in it And, like, sort of the what are the surface area of it is, and that you'll be able to understand the the library and jump into the parts that you need much quicker.

Wes Bos

Rid One other thing I'll say here is that when I was a new dev, reading other people's code made me more confused and more anxious.

Wes Bos

Rid. I would often, like, just, like, sit down and, like, start reading someone's code. I'm like, I have no clue what this is doing, especially if it was, like, very manicured, like, done by a really, really good dev. Sometimes that stuff is just way too abstract for me, and things were in too many places to to understand What was going on? So if you are very new to dev, don't feel like if you feel like reading other people code is getting you nowhere, maybe take a break on that for

Scott Tolinski

couple months and then come back to it and say, ah, now I understand what's what that's doing. Yeah. I didn't get good at reading other people's code until somewhat recently. I always thought it was, like, kind of rid. So, you know, reading it straight up, just somebody saying, hey. Read read the source isn't always going to be, you know, the best way, I think. Alright. Next one is from Max.

Scott Tolinski

Max says, know your trade offs. Every single choice you make has its upsides, rid. But also its downsides. If you're not sure of the downsides, it's almost always because you don't know about them, not because they don't exist. Figure them out. And this is a very interesting point, and this one might be a little bit better for the intermediates, I think. Because when you're first starting, I don't know if you have the brain capacity to really context upsides and downsides as much. But once you kind of know the lay of the land and getting past, like, the learning of the syntax of humps and stuff like that, It is important to know, like, okay, you know, CSS frameworks.

Scott Tolinski

Yes. They have upsides, and they have downsides.

Scott Tolinski

Why do some other people not use them? That's a good word to start with. So looking at something like that and saying, alright. What are the upsides and what are the downsides? And are the downsides big enough downsides for me to not implement something like this, or are they not are they important to me? Are they things that I will maybe eventually appreciate or not appreciate right now, but there is, like he says, upsides and downsides to everything.

Wes Bos

Yeah. I think that this one rid is really good advice, but maybe more like intermediate dev Mhmm. Advice. Because, like, if someone's like you're 6 months into being a dev, and you're like, alright. I'm gonna choose the database. Let's talk about the upsides and downsides of relational DB versus non relational DB. Like, you don't you don't know. Yep. Like, you're not gonna learn that stuff until you're rid Until you've actually done it and felt the pain. So I thought this was a really, really good advice, but maybe not for absolute beginners. Totally agree. Yeah.

Wes Bos

Next one we have here is from Pat Clark.

Wes Bos

Build a report with PMs and clients beyond rid Technical. Learn their business language, and they'll learn yours. Technical stuff becomes even easier with good relationships. Front end dev, rid CMS dev for 13 years. That's that's really important. So CMS dev probably working with all kinds of different businesses to Make those businesses money. And he probably has gone into tons of different industries and talk to different types of people, and he's trying to solve a business problem, And they're trying to solve a technical problem. So if you're on the same page and you can understand what happens, you're going to build something much better. I thought that was good advice.

Scott Tolinski

Totally. Alright. Another one is from Musa

Wes Bos

Bargazi.

Scott Tolinski

Bargazi.

Scott Tolinski

I wanted to throw an extra a in there, Barragazi. Musa Barragazi, He says that leave things better than you found them. And this is such a good one. It is such a good one because, yes, You know, a lot of times, we we hit files, and they're crap. And you say, oh, it's just crap. I gotta work it. And, yeah, It can be really, really easy to work in a crap file and leave it a crap file or not improve it in some sort of way. And sure enough, that That is the time to do that. But what you don't wanna do is you don't wanna continue the crap just because 0 is already crap there. You wanna at least rid Improve it in some way or move it in the correct direction by at least your contribution to this thing is not making it any worse.

Scott Tolinski

So leave things better than you found them. I think that's a a really nice thing, especially if you're working in a project with a team. You will probably get a good reputation as somebody who writes good code. Rid. Last 1 we have, build things that excite you from David Moore. Totally agree. If you are trying to improve your skills,

Wes Bos

Sitting there doing a to do app that doesn't make sense or building an app that has no relation to something that you're excited about, rid Just change that app to be something you are excited about. I see it all the time, and people who take my courses, they say, alright, Wes. I took your course, But Mhmm. I made this instead, and then they show me, like, whatever a little app it is that they built for, somebody the other day is a re Preschool teacher, and they sent me what they're doing. And they just took the slick slices from Gatsby and made it into it's, like, still has the same styles, which I thought was awesome, rid. But it just does something totally different for his specific use case, and that's the coolest thing to see because you're gonna go a lot further when you're excited and invested in the thing because it's solving a problem or excites you for what you're building. Yeah. Totally.

Scott Tolinski

Cool. Well, that is it for this advice. There are so much there I I think this might be one of the single most helpful episodes that we've done because there's so many tasty treats in this episode. It's nothing but tasty treats, and, we didn't have to bring them all. We got some help from the, you know, our our, I wanted to come up with some keyword for that, but I can't come up with anything. So Yeah. What are our syntax listeners called? Yeah. We don't have, rid Taxi heads. What? Curly brackets. Curly brackets. Oh. Wes, you're good at naming things. What's up with this? What are the let's Okay. Hold on. Let's think about this for a second. Yeah. Let's think they are,

Wes Bos

People that listen to syntax.

Scott Tolinski

I'm trying to think of something positive.

Scott Tolinski

Yeah.

Scott Tolinski

Their commits? They're committing to listen to the podcast?

Wes Bos

Yeah. That's Yeah. That's getting there. I think we need to throw this out to everybody listening. It's better than taxi heads. Yeah.

Wes Bos

Taxi heads. Not a good not a good one at all. Send us, Send us on Twitter at Sodex FM

Scott Tolinski

what you think Sodex listeners should be called. Yeah. Yeah. Yeah. Cool. Well, that's it. Now it's part of the show where we talk about sick picks, and sick picks are the things that, we think to be pretty sick. Rid It can be just about anything. I have a sick pick for you today, Wes, that I don't know if you're aware of, and I think this is the type of tool that is going to be right up your alley. This thing is gonna be right down Main Street for you. Alright. This is called [email protected], And this thing is you could think of it as like Alfred. It's it takes the place of Alfred, so it's something that you would use instead of Alfred.

Scott Tolinski

But let me tell you, I'm impressed. I'm impressed very much so that I'm considering just using this instead of Alfred. It connects to a lot of tools, So GitHub or Google or Asana or just Mac stuff in general, you can script commands really easily. Not that you can't in Alfred, but, like, This thing is really neat. There's a lot of of really helpful tools in here for this. And one thing that I really liked about it I don't know if you've ever tried to In what was it? In in Alfred, let's say you have a number value with a comma in it, which typically happens if you're copying and pasting it from places And you're trying to add it up. Let's say you have a bunch of of, like, bank accounts and you're trying to add them all up, the values or whatever. If the Commas are in there. Alfred doesn't know what to do, so you have to go through and manually remove all the commas. Oh, that's a setting in Alfred. What? You just turn it off. Well, whatever. Rid. Raycast does it by default, so Raycast better. Yeah. It should be default. Yeah. Either way, I found this thing to have a lot more tools, and, it's really neat. I like it. So I have I've

Wes Bos

yeah. Sorry. Go ahead. No. No. I've just been running it for a little bit, and I think it's a I think it's a neat little tool. I'm excited about this because I've always found that scripting in Alfred to be a little bit tricky, and it stopped me from ready. Writing custom workflows,

Scott Tolinski

so it would be really cool. Like, can you write workflows in JavaScript with this thing? I don't know. I have not done that yet. I haven't had the time. It looks webby.

Scott Tolinski

It's in beta right now. You can install it via Homebrew even.

Scott Tolinski

Rid I'll see the scripting API. That's how you know it's legit. Yep. That's how you know it's legit. It's yeah. Missing something, build it yourself. Rid. By default. Learn why it's it's it's just neat, and I haven't had to configure it all so far. So, yeah, it looks it's it's nice. John Lindquist from Egghead

Wes Bos

Wrote a little tool for running short little scripts.

Wes Bos

And it's not like Alfred, but it's a little tool for running little scripts, and I thought rid That thing looks pretty cool. There's some neat tools coming out, and especially, like, is this this Raycast thing is looks like it's built

Scott Tolinski

in HTML CSS. I bet that is gonna work on Windows one day, and that will be amazing. There's a lot of neat things in here. What's nice about it is you can interact inside of applications a little bit better. You know, like, you wanna do anything and get, you can do that without installing an extension Or or those types of deals. You can give me my calendar. Just installed it. Yeah. Give me my calendar

Wes Bos

in a glance. It's got a things integration.

Wes Bos

Rid. Man, this looks amazing. I'm super excited. I've been a alpha user for probably 10 years, and I've been a huge fan of it. But rid. I've always felt like or not always, but, like, I feel like after 10 years, like, I kinda want

Scott Tolinski

a little bit more from this type of thing. You know? I would say there has not been a ton of change rid. From Alfred version 2 to Alfred version 4, it's just kinda been stagnant. So Yeah. Yeah. I agree.

Wes Bos

Especially if this works on Windows, how sick would that be? Because someone can rid. Finally, stop being like, oh, here's the, like, watered down version on Windows, you know, like, when you're recommending an app, and you have to, like, say, here's the Here's the kinda crappier version. This is Albert.

Scott Tolinski

Albert is the one on Linux. Oh, Albert.

Scott Tolinski

Oh, and what's the one on Windows called? No. I mean, that lit that is a literal thing. It actually exists.

Scott Tolinski

No no jokesies there. I don't know about Windows. Yeah. What would Windows be? What's a what's a gal and dork? Yeah. Like an Allen rid Or, no. Yeah. It's gotta be, yeah, like a butler kind of name. I don't know.

Scott Tolinski

Jeeves. Ask Jeeves.

Scott Tolinski

Start with an a. Ask Jeeves. That starts with an a.

Wes Bos

There you go. That's I think that's taken.

Wes Bos

Anyways, I got a sick pick for you today, and that is Amazon based battery and rid Screen replacements for your iPhone. So I have an iPhone 10 XS Max, and rid I get splashed all the time from my kids because they're splashing in the bathtub or if I'm in the boat, things like that.

Wes Bos

And, I know that it's supposed to be waterproof, but I think, finally, some water got into it. And there was a little strip of the phone rid That just stopped working. And I tried doing the whole putting in desiccant beads and and things like that, and it just didn't work. So I'm sitting here being like, alright. I'm a couple months out from the new ones coming out. This thing is 3 years old. So I I flipped back to my iPhone 7 plus, but the battery was awful on it. Like, I had to charge it 4 times a day. So for, like, the $25 Canadian, probably, like, 19 American, I got a brand new battery, And it was really easy to open up. It came with a new waterproof gasket that you could install. It came with all the tools, and It's like a brand new phone now that I have a a brand new battery in it.

Wes Bos

And then I was thinking, okay. That's cool. But could I fix my rid. Ten x s max because, like, the screen is gone on it. Like, it it did the whole touchscreen doesn't work or not the whole, but part of it. It's really annoying. I couldn't type e.

Wes Bos

So I went on Amazon, and then, like, Apple wants, like, 429 Canadian bucks to to replace the screen as in no way that's happening.

Wes Bos

So I went to Amazon. I found they have LCD versions of the display, which it's not rid as good as the OLED that comes on the phone, but it's pretty good. Wouldn't that mess with the phone if you were using, like, rid An LCD flat and then not an OLED? Like because doesn't the phone do optimizations for being OLED, or am I tripping on that? I think so. I think so. But The iPhone has this thing called True Tone, which it adjusts it based on, like, what's going on at the room. You don't get that, but It was like I would say it's 87% as good. So it's the colors are a little off, but face ID still works, Which is key if you wanna do things like pay with your phone, and it came with a waterproof gasket. It was a $100, and I was like, you know what? This This is money well spent. A $100 will get me through couple more months until I can get the the new phone, and then also, like, This phone is not getting thrown into a landfill. I can give it to a family or friend or something like that when it comes time. So they're very ready. Easy to install. A lot of people are like, you're electronics wizard. I was like, literally, anyone that can turn a screwdriver and plug things in could be able to rid this. So I would encourage anyone What if you're clumsy? I think you could do it. You just gotta be you have to be gentle because, I actually I didn't put enough heat I didn't put enough heat on my screen because I was in a rush, and I cracked the old screen, which is fine because it was garbage anyway. But You just gotta go slow with these types of things and watch a couple YouTube videos. Mhmm. K.

Wes Bos

Pewdie. Alright.

Wes Bos

Shameless plugs. What do you got for me today, Scott? Shameless

Scott Tolinski

plugs. I'm going to plug level up tutorials.com forward slash pro where we have a new tutorial series every single month. And let me tell you, this is August 25th.

Scott Tolinski

So the course that's coming out in August man, we are we are so far ahead of the recording on these. It's funny. I'm also ahead on recording the pod or they're recording the tutorial series. So the tutorial series that's coming out on August is going to be on web components, and it's basically going to be a web components 101. If you don't know a ton about them and you're curious, this is the perfect place to, start from scratch. And this, of course, is going to be for beginners. It's rid Going to be for people who hear the words web components and say, I know that kind of is something. I kinda get it, but I don't know what it is. So that's for you if this is a course rid you. The course that came out in July was from Kobe Fayock on Next JS and ecommerce. So it's awesome, awesome course from Kobe. He's the man. So check it out at level uptutorials.comforward/pro.

Scott Tolinski

Sign up for the year and save 25%.

Wes Bos

I'm going to shamelessly plug all my courses, west boss .comforward/courses.

Wes Bos

And if you use the coupon code syntax, you can get $10 off learning JavaScript, CSS, React, rid. You name it. You can learn at beginner javascript.com is a big popular one of mine, so use coupon code syntax. Currently on a summer sale, So grab them while those prices are sizzling.

Scott Tolinski

Summer sale. Cool. Nice. Nice. Nice. Awesome. Well, that's it for advice for new devs. Another piece of advice, Keep listening to the syntax.

Scott Tolinski

That's a good piece of advice right there. So thank you so much for listening. Wes, do you have anything else for today? That's it. Thanks for tuning in. Re Peace. Peace.

Scott Tolinski

Head on over to syntax.fm for a full archive of all of our shows. And don't forget to subscribe in your podcast player or drop a review if you like this show.

Share

Play / pause the audio
Minimize / expand the player
Mute / unmute the audio
Seek backward 30 seconds
Seek forward 30 seconds
Increase playback rate
Decrease playback rate
Show / hide this window