What Is ChatGPT And How Can It Make You A Better Developer

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
no chat GPT will not take your job and if anything my job as a teacher is more at risk because of what chat GPT can do in this video I want to talk about what it can do how you can actually use this as a developer to get better and write better code and why it's impossible for this tool to take your job [Music] welcome back to web dev simplified my name is Kyle and my job is to simplify the web for you so you can start building your dream project sooner and today I want to talk a lot about chat GPT I think this is a really cool AI program and it has a lot of potential but none of that potential has anything to do with replacing your job I went through I've been using it for a little while kind of trying out different prompts seeing what it can do and what I've really noticed about chat GPT is that it's really geared towards giving you answers to questions and that's essentially the reason that this tool was built you can even read down here it's of in free research preview and that chat GPT was optimized for dialogue it's optimized for you talking to someone like a chat bot essentially but like a really really good chatbot that can answer almost any question you throw at it it's not optimized for creating or writing code and you can definitely tell when you start asking it really code based questions because it gets things wrong or it gets things incorrect or it's just not how you would do it it's just not optimized for that it can do it but it's not what it's meant to do for this reason and this reason alone this is not going to ever replace your job as is but it could be built upon to be more geared towards code and in that case it could really help you with your job but I still don't think it'll replace your job because of other reasons we're going to talk about in this video now when it comes to asking chat GPT questions I'm really happy with the responses they give me for example I asked what is next js13 and it told me really briefly what next is and some of the differences that version 13 comes with and overall it's really good at answering these kinds of simple questions even coding related ones like I asked it to give me a simple next.js and Firebase integration and it wrote out not only explanations of what is going on but the different commands I need like installing Firebase setting up a config fire file for Firebase and then initializing in how you can reference it now this doesn't actually really talk anything about how to integrate it with nexjs this is really just how I can do this with Firebase it's just saying once it's installed you can import it in an xjs but nothing else about how to specifically use it next year so it's not perfect and that's okay you can continue to refine your question maybe ask it some more points I could have followed this up by saying hey give me more information on how to actually implement this in next year and it would have given me more information back but as just an initial response this is pretty good and is helpful with certain things and it's also really good for just asking generic questions I thought this one was pretty funny I figured I would ask it who I am to see if it would be able to tell and it was pretty accurate for almost everything except for it thought that Travis Nielsen runs my YouTube channel which would be hilarious because he has great content but obviously that's not true and something else that I really think this is good for is when it comes to writing things so I asked it to write me a Blog article in markdown on the three most popular HTTP status codes I actually have a bar article talking about much more than three but I have a ton of HTTP status codes on my most recent blog article I'll link in the description for you but this actual blog article it wrote which I told it do in markdown which it did use markdown for is actually fairly you know good it has you know title Heroes has some basic explanations it has the top three things and it has explanations of what each of those three things do now I would go ahead and make this a better blog article if I wrote it from scratch but this took chat jpt like 45 seconds to write and it would take me much longer to write so this is a good place for like starting out with certain things like hey write me a Blog article on this and then I can take that blog article and modify it and actually make it useful for my audience and more correct and you know more detailed than what they give you here now one thing I did notice we can actually see my next example of why this thing I noticed is I said write CSS code to create a simple Parallax effect and I noticed that a lot of answers that this gives you back have a lot of repeated information or they're very like you can kind of tell it's an AI polling information from things because it tells you a lot of stuff you don't really need to know like it's like to create a parallax specs use background attachment and background position here's an example of how to do that and then it would like explain to you what the background attachment property is in like more detail and like it would repeat a lot of things in that way especially some of the other previous examples I tried with this and you know it has more details down here so it's really good at being super detailed but a lot of this stuff is kind of repetitive and you don't really need to know it's like oh you can use background image to put an image as your background like that that's pretty self-explanator I don't need explanation for that so I found that a lot of things were like that where you could clearly tell it's like oh let's just copy paste this from this part of the web copy paste this from this part of the web and so on now when I did end up giving it some code things like hey write a typescript type for this very simple Json object it was able to do it perfectly fine like here we go it used an interface instead of a type no big deal but it was able to get the number and the string correct for all of my different keys and it even showed me how I could actually use this if I wanted to I mean sure that's great it's not what I asked but it works and this right here is where I really think it excels I was like you know what the use ID Hook is kind of confusing the react docs aren't good enough for me what does this do so I'm asking hey when should I use this hook I don't know why I kind of know what it does but I don't know when I should use it this gave me a really good explanation of kind of What the hook does why I should use the hook and it even gave me example of using it in the specific use case that it mentioned so I think this type of questioning where I'm like hey I'm confused on this programming topic what should I do like half the questions you would ask to stack Overflow are questions you could ask to chat GPT and it would give you a response that is just as good as what you're going to get from stack Overflow so this is where I think this really excels in the learning process or if you're just stuck with something asking questions like this is going to give you really good detailed explanations of everything and these explanations have made a lot of sense to me I read through it and it's pretty much exactly what I would tell someone another thing that I've actually heard people have had reported success doing is paste dealing like error messages into chappy GPT and being like hey what is causing the problem with this error and maybe even putting their code in there too and it'll be able to figure out what that problem is as long as it's fairly common obviously if it's super Niche No One's Gonna Know But if you have a fairly common problem like maybe you made a typo into something or you just have something fairly common or code that's wrong it might actually be able to fix that for you but it's going to be pretty Hit or Miss now another thing that I found interesting is I was trying to ask it what does this function do I just took a function from a project I recently did for a video pasted it in here all this function really does is just take one variable of data these two variables right here and convert them into a different object that just transforms the data into a new format so I took this I pasted it in and I said what does it do and this explanation was honestly pretty much entirely useless it was just like hey this function takes in an input and then it returns an output I mean that's really all it told me and it also said it used variables from the input to give me the output I mean it wasn't that useful of an explanation but also it's a pretty simple function so it's not too big of a deal I also took some more code down here and kind of asked what this did and again it's a very similar thing it just explained line by line kind of what the code did it was like here it did a loop here it added things by using the set function so it was very rudimentary if that makes sense like it wasn't too useful like it didn't give me overall like what is the actual meaning behind this code which is what I was really hoping to be able to see because sometimes when you get complicated code bases you may know what every line of the code does but you don't know what all the code together is really trying to accomplish I was hoping this might be able to help with that problem but it looks like it's not quite there which makes sense because it's a fairly complex thing to explain and it probably wasn't trained on a lot of code examples now some of the final stuff I did was asking it to create functions for me so I asked it to create a function that takes in three numbers essentially three coordinates and converts them to a normalized 3D vector and it was able to do that perfectly fine using typescript this makes sense it could do this this is a very simple function to write I mean it's the four lines of code here essentially so I was able to do this no problem which I think is really good so if you have really simple problems that you need solve that are just kind of a pain to write this is a tool that when it's converted into a more coder friendly way could be really useful for doing things like this but as soon as you ask it to do more complex tasks like I tried to ask it earlier to create a to-do list application for me using typescript and react and the code was coming along really well it looked like it was giving me really good code but I noticed immediately multiple bugs within the code for example what it was using as the unique ID to represent each to do was the index of that element inside the list so for example if you added an element to the list it would give you an ID of zero because it's the first element in the list and so on then when you needed to remove elements it would just remove them at the index of your ID so if my element had an ID of five I would pass Five to my remove function and remove the element at the index of 5. but now my array has changed its lengths though all the indexes are no longer correct so now when I go to remove another element for example sample at index 6 it's currently going to remove the seventh element instead of the Sixth Element so this is a big problem that you know I saw in the code and it's a problem that a lot of people may not realize when they're just copy pasting the code so it's all right for these smaller things but as soon as you get to more complex code even is something as simple as a to-do list I found it really started to break down it just wasn't that functional now the main reason for these short companies is you have to realize how these actual AI programs are created and how they work they're pretty much all created by being fed a ton of data and then that data is processed and they're looking for patterns and things inside the data and then based on answers or questions that you give it whatever you ask it it's going to try to take all of its data that it's calculated and figure out okay what's the best thing I can give you in to respond to that question so you know if it's looked at a hundred different to-do list applications and I ask it to create a to-do list for me it's going to take all those to-do lists that it's looked at and it's going to try to create one based on the input that I gave it since I said typescript and react it tried to find some typescript react related stuff for me now obviously that's a very simplified version version of how this AI works but the key is the AI is only as smart as the data that you train it on so in this case this you know application this AI is not really meant for coding related stuff it's meant for like a chat application that's why they called it chat GPT and not code GPT for example so it's not going to be amazing at doing coding related tasks for you that's why I found it was much better like creating blog articles or answering questions for me than it was at writing code for me that right there means that it's impossible for this specific program to take over your job because it's not meant for that but what if someone did do that they created their own code GPT where they specifically trained it on coding and they wanted to be as good as possible at doing coding for you kind of like GitHub co-pilot is doing well this again is still not going to replace your job because again you can only train on the data you give it and generally when you're working on large projects all of the code is private if you're working in a company all their code is going to be private that means the larger more popular and bigger code bases out there for these large companies all those are going to be private so the data you have to train these programs is mostly going to be coming from open source software which some of it is quite large but a lot of it is going to be smaller projects projects that people have created for like side projects side hobbies and there's not going to be nearly as many large-scale Enterprise code bases inside of your training data and that means when you try to use this tool on an Enterprise code base it's not going to be able to pick up on all the things that you're doing a lot of things that are done on Enterprise are not done in smaller applications and same thing vice versa smaller applications do a lot of things that you don't do when a large Enterprise scale so that right there is another hurdle of these types of AI programs taking over your job but let's assume that wasn't a problem we had infinite amount of code to feed this thing as data and it was all different spectrums of quality and data levels and scale level so it was pretty much as good as you could possibly be writing code well that's great but what happens when we need to actually write this Ai and actually change this Ai and make updates to this AI you need developers to do that it's not going to be able to update itself we're not quite at Sky let you know there's no Terminators running around so we need some way to write the code that's going to write these AIS and that's where developers come in so maybe 10 15 years down the road these AIS are going to be powerful enough to write out really simple web applications for us and that might replace quite a few web developer related jobs that also means we've opened up a ton of other jobs for writing more complex code like more complex web apps that these AIS can't do and for writing out the code for these AIS as well so if we even do replace some jobs we're going to be opening up other jobs all within the same developer kind of space obviously it's a different skill set but you're still having that developer job and again I don't think these tools will ever get to the point at least in my lifetime where they can overtake writing out large-scale Enterprise applications I mean if we get AIS that can write out Facebook you know level code or Google level code for us that's a whole different problem like we don't even need developers at that point if we have that level of AI skill and it's going to replace so much more than just a developer job the key takeaway here is this tool is amazing at answering questions for you and doing things like writing out simple blog articles but it's not there when it comes to code and even if someone writes a tool like this for code such as GitHub copilot it's going to be used as a tool by developers to make writing code quicker and easier and not something that takes over your job now if you think this is cool and you want to build out your own AI machine learning project I have a full video covering how to do that it's going to be linked right over here and with that said thank you very much for watching and have a good day
Info
Channel: Web Dev Simplified
Views: 139,467
Rating: undefined out of 5
Keywords: webdevsimplified, chatgpt, what is chatgpt, chat gpt, will chatgpt replace programmers, will chatgpt take my job
Id: Gmx-54k3pUk
Channel Id: undefined
Length: 12min 50sec (770 seconds)
Published: Tue Dec 13 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.