Coding Habits that earned me a 4 Crores Package!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hi everyone in this video we're discussing the coding habits I would inculcate in 2023 more specifically I've seen there are some specific habits and if you inculcate them early in your engineering or computer science career it can have compounding effects and the kind of developer you become in five to ten years can vary a lot based on how well you've adopted these habits this video May I'll go through what I feel are seven to eight things I should have known in college by the end of it now I sort of spend my day juggling through these habits and I just want to share yeah probably good to have in your pocket I'll also be coding a little bit just so I'm not just talking throughout the video and I'm actually doing the things that I want you guys to do with that let's get right into the video the first habit is not being afraid of any framework or language so when you start to code initially okay someone taught you something and then for example or maybe react s okay you do that many times and then you become very good at it but the downside is in PHP so I have a few friends videos and that's all they know and that's how they are going through their career versus the second guy this is a good idea to distribute your load across course so the second person will be much more successful because in the long term he is not dependent on a framework because Frameworks change very quickly also when you're joining a company initially you wouldn't know what framework you'll be working with so the best thing to do is to keep your fundamentals very strong and not be afraid of any language or framework that's out there in the end it's all logic and the language is just a way to describe your logic or deciding of your favorite language earlier in your career is usually considered a bad idea the second point is spending more time in the terminal so for the people who don't know the terminal is basically a simple way for you to describe what you want to do and like get things done without a GUI GUI being everything that you see here you want to play a video let's say so let me go to my you'll just navigate through this path and reach the video that you want to play and then you'll click on the video so this was the GUI way of playing the video now what I want you to do is terminal and everything you want to get done needs to be done from here for example and the next thing I need to do is somehow play it QuickTime Player may play wavy and what I'll do now is try to find if there's a command that can run QuickTime it I can't find it usually Max all the applications are stored in the application folder so if I go here I can't find QuickTime Player luckily before the video I also installed VLC and I can't find the binary of VLC right here though man at least terminal say VLC player Collier now the next thing I want to do is I want to play the video I was playing and usually the thing to do there is look for the commands that this binary provides and in this case there are many options but let me just play a random video my God development and it pays so as simple as that uh for example let's say I want to make a website try to do it inside here itself I know initially abhi um to the video from this very simple GUI why should I go through the terminal but this is how you spend more and more time here and eventually this will make you faster try to install WSL Windows just spending time on bash because most servers that you deploy in the future where you actually won't have access to any GUI you will only be able to access them through a terminal bash is what is running on the machine compared to Windows let me just create a new folder of course the test folder exists um a DOT txt and if I press LS I can basically list all the files in this folder which is just one file the same thing to do on Windows would be dir I think dir command says eventually when you will deploy your project on a server foreign for this let's call it a HTML test make it private for no reason so I mean these are commands you should either know by now and if you don't uh both paramedic dtc's variety you can look at that so I struggled for a really long time here and if you can find out what was the mistake that I made why I wasn't able to push to this repository let me know in the comments uh hopefully you guys were faster than me you can pause the video here if you want to think about what I did wrong but what I did wrong basically was I did not have any comments here and so I'll just create a random comment and try to push oh sorry so now I've pushed my repository which has basically nothing a single file onto GitHub the good thing now is one I have a cloud backup of my code and you might be thinking cloud backup camera but using a version control system has a lot of benefits now that we have done that what we were discussing was push into GitHub so if you don't know at all what git GitHub um GitHub is basically a place where people push their code and keep their code I've made this repository private but you can create a public repository for example if you look at my GitHub I have a bunch of public repositories that I contribute to and a bunch of my personal repositories as well for example this one everyone can look at it always do this because code can basically restain your machine forever and not there versus if you've pushed it it might just help someone out also it creates like a decent portfolio kind of it so now that we understand that and let me just go back to the repo we have pushed the file here let me just create a better file like an index.html file so this is basically a random file that I created which is an HTML file so you can basically look at it inside the browser we will do that real quick and of course the thing to do is to open the file directly from your terminal how can you do that uh slash application slash Google Chrome basically the same thing we did for VLC followed by the file name and it opens up here so again I could have gone I could have opened this in a GUI and double clicked on it but I prefer to open it directly in the terminal uh Kentucky let me just push it and so what I'm doing here GS GH is an alias for gate push origin head what I have now is my code deployed on GitHub and settings index.html file so learn git learn GitHub start pushing your code and I will very soon be releasing a video with a good friend of mine hernu Singh where he will be contributing to an open source project which is probably the next step after you have written an open source your own projects it's a good idea to contribute to other projects for example I've contributed to um a webrtc project right here and to do that also you need to understand kitten GitHub so effectively if you want to dive deeper into the world of development make your own code public and understand and contribute to other people's code you will have to understand getting it so get into the practice of doing that as soon as possible Next Step this is a recent thing we didn't have this when I was in college frankly this is a very New Concept maybe we did so this is called cicd cicd stands for continuous integration and continuous deployment what that means is but when I was looking at this locally I opened this in Google Chrome and I could see what it looks like but every time I'm pushing it to GitHub or Logan is which is a very tedious process if this file could automatically get deployed somewhere every time I push my code here foreign have to go through this whole process of cloning the project locally so let's do that next there are a bunch of ways for you to add CI CD usually GitHub provides you a way for you to run an arbitrary code on every git commit and it's effectively what you want to do is every time there's a new push to this master Branch you want to deploy this somewhere on the internet so other people can see there are a thousand ways of hosting a static website like this I'll go with the easiest one which is using a service like yourself all you have to do is import a repo from your GitHub which in our case is HTML test we know the root directory is well it's a simple HTML project let's see nope let's go with other uh I mean TK this was very easy because this is a very basic HTML project index.html file this gets a little harder I mean as you saw there were a list of front-ended Frameworks that you could select to deploy here so virtual makes it very easy to deploy any website as you can see it took less than a second so I continue to my dashboard if I visit this I can basically see a hosted version of my website what is cool is if I change this file uh either Mr smart coder which is you I add the changes that I did commit them uh new add Mr coder and push it what will happen is if I go to my GitHub now you can see there's a workflow that's running what happened is every time I'm pushing now a new deployment is happening and the deployment is pushing my recent code onto the internet somewhere which in this case is this website you can test it out as well the new changes are here so this gets more and more complicated as you add back into your project and there are other components if you have a mono Reaper which has like a thousand backends or micro Services running um but this is the start at least understand how you can add CI CD to your project also this was a very easy way to do it usually uh talking about complicated maybe you don't want to use version for any reason you want to use something like S3 when you want to host your website so you might have to write actual code that describes what happens uh anytime you're pushing to your master Branch try deploying a back-end app using the same format it will most probably have to start a server somewhere your CI CD pipeline will have to SSH to it pull your changes redeployed so I'll leave that as an exercise shouldn't be too difficult try to do it and like the reversal also the website that I just showed also has like a way to run backend serverless functions so you can start there let's move to the next Point contributing to open source now you're already set to show the world what you're working on the next step now is to contribute to other people's projects how can you do that GitHub is a big repository of all the projects out there so again foreign if you basically go back to my profile 2014 2015 all the work that I did people can look at it even I can look at it once in a while this was a GitHub organization this was my own project this was a project of a lab that I was a part of in college so you can always see what you worked on and so can other people so you can showcase your work really well keep your contribution graph high and contribute projects this was my g-soc project back in college this was a random open Source Clubhouse clone that another YouTuber made was about interesting but I started contributing to it or just for fun you can start contributing to it tomorrow just for fun start contributing to projects and there is there isn't a better time to start contributing to projects back in the days project used to be closed Source the opportunity is endless so go out there and find that project next up we have being part of the right Community I'm sure that you want to get into this field there are a lot of very good blog posts out there or websites for example there's news.wi combinator.com so if you want to binge or spend your time on something randomity you should look at this website so as you can see here there are a few interesting projects or like links that people have posted um so I will not go through each one of these but I quickly the acronym today a few minutes later this way you probably shouldn't go on this website what tomorrow [Music] for example Apple won't let you use an Apple TV without having another Apple device question mark so it's easy to it's easy to get lost and waste a lot of time on the website so whether be a little cautious but this is a very interesting website so you can spend like a decent amount of time here the next one this is a very important point this is something I used to do back at Goldman I had a internal reading list of blog posts or things that I wanted to learn music I would push them all into like an internal to-do list I would pop them off from there and go through them and by the end of it was almost saw blog posts the reason I used to do it was a big random time like I used to spend like eight nine hours in the office I want to replicate it again now and whenever I do it I'll probably keep it open source and put it on my GitHub I'll create an empty reading list right now so that I also inculcate some of these habits and I'll open source it and link it in the description you guys can follow along if you want I would suggest you create your own list and start pushing it on your own GitHub and open source it this is extremely underrated advice and this is super helpful because there is so much knowledge out there it is if you find something interesting it's very easy to lose it so just maintain a list push it onto the list and keep it there eventually whenever you have time you can get to it the last advice is start to get a little bit out of your comfort zone coding is something that never really gets easy so initially um and then you're spending time to understand why that thing was built and why that thing is so useful get into the habit of getting out of your comfort zone because there will always be a new technology out there or a new way to implement whatever you want to do and it's always good to take that head-on versus just be like the PHP I ever essentially talking about okay as long as you know what you want to achieve you can use any Tech stack or any technology be it the fancier one that's come you have a legacy one that was out there to achieve that is start pushing some code to it and if you've never done that and you do that to link your GitHub profiles in the comments I will follow each and one of you on that note let's end the video and I'll see you in the next one
Info
Channel: Harkirat Singh
Views: 429,842
Rating: undefined out of 5
Keywords:
Id: Nro6oFD3oHw
Channel Id: undefined
Length: 20min 0sec (1200 seconds)
Published: Sun Jan 22 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.