Placeholder Image

Subtitles section Play video

  • copy.

  • Copy, copy.

  • Golf is the first tool that you need to be successful.

  • Software developed.

  • However, coffee's not software.

  • And in this video, we're gonna be talking about software tools.

  • Five, to be exact that you probably should be using now going over all of the salt for tools within these five categories.

  • And I'm gonna be talking about because I could be sitting here for hours and hours and still not even scratched the surface.

  • I'm gonna be talking about essentially those that I use because the 1st 1 spoiled there is text editors and I D.

  • S.

  • And if you're in Iowa's developer than you're probably gonna be using X code.

  • But if you're a Web developer, you're gonna be using something like Adam visual studio code sublime text.

  • So it is a little bit of nuances.

  • So what I use at work in terms of the tools, unless I specify otherwise, is what's gonna be discussing this video.

  • Just the specific tools aren't as important as what the tools to do.

  • And if you watch my day in the life of a software engineer video or my Lennox a boon to video are a lot of other videos on my channel.

  • To be honest with you, it may get a bit repetitive, and a lot of these may be fairly obvious to you, But you got to start somewhere, right?

  • There are people who are just getting into the industry.

  • They want to know what to expect.

  • So I hope this can help you.

  • Now, this list isn't any particular order, but we're gonna be starting off with the text editor or i d E e i t e stands for integrated development environment.

  • And the difference between those two is at a text editor or code editor.

  • That's where you're going to be editing code.

  • A lot of, um, like visual studio code, which is what I use at work for front and development has a lot of built 10 stuff that's kind of pushing on the verge of being closer to an I.

  • D.

  • So, for example, visual studio code, you're able to install a lot of extensions that'll help you out with debugging.

  • You're able to open up a terminal within there, and there's a lot more that you will be finding out if you do use visual studio code or Adam and when it comes to the I.

  • D.

  • E.

  • That is essentially the code editor as well as build automation tools as well as do bugger.

  • So you're gonna have those three main things that will make up a nightie.

  • And if you're missing one of those three things, then I would just consider it a code editor.

  • What you call it really isn't that important?

  • This is just where you're going to be riding your coat.

  • You're gonna be writing your code.

  • You're gonna be debugging your code and you're able to decipher what is what within a code editor, depending on what theme you choose because of the color difference as mentioned for the front end, I use visual studio code that is the client side.

  • So with that, I write html a little bit of CSS.

  • I'm also used bootstrap for styling or whatnot and angular as a framework in typescript.

  • And for the back end or the server side.

  • I use eclipse I am writing in Java.

  • Another option would be intel.

  • Ajay.

  • I feel like it's a little bit more of a modern version.

  • I don't know which one's better or worse.

  • I don't really care and all, honestly, too much.

  • But that's just what I use.

  • So Eclipse would be technically an I d e.

  • And in a great development environment and visual studio, Goad would technically be a code editor.

  • Those two are the tools that I use that the more you learn how to use those, the easier your job quit.

  • We'll get and I can go on and on talking about all of the different intricacies of each, like maybe some save actions or formatting.

  • So all of your code is consistent in terms of how it looks.

  • I could talk about extensions like sonar lent to make sure that you are writing good, clean code things that our interest industry standard.

  • But this video isn't to dive into the tools.

  • It's just to kind of put them on your radar, because in a day to day software developer environment, you're probably going to see all of these.

  • Toll number two is continuous integration and deployment or C.

  • I C.

  • D.

  • For short, and this is really where my sponsor, Circle C.

  • I is gonna come in handy because if I tried to explain to you the type of process that we use at my work for the client, it's gonna get a little dicey because it's not as efficient or as clear cut as it could be in the reason being is that we have a few rules and a few tools that we have to use set by the client and with describing what Circle C I is, and what they do is me describing what continues integration and continues deployment is.

  • So the way C I C works is that after you're developing your work and your making sure that it works in your local machine, you commit it to your remote repositories.

  • Whether that be get hub, get of enterprise bit bucket, What have you a tool like Circle C.

  • I will first build your code, make sure that it is actually building proper, Then in a run your build and test it within a clean container or virtual machine.

  • That way, every single codecommit to your depository gets tested.

  • And if the build fails, your whole entire team is able to get notified, and that's not to get you in trouble.

  • That is to make sure that you can fix whatever issues you need as quickly as possible.

  • But if your bill passes, then it goes and deploys to various environments.

  • That way, your code is able to go to production faster or, in short, a C I C.

  • Tool like circle C I.

  • Whenever you commit your code will build it.

  • It'll automatically test it by running it in a clean container virtual machine.

  • If the bill fails, it automatically notify you or, if the bill passes it automatically deploy.

  • All you have to do is build the pipeline, and everything is automated from there.

  • So whenever you commit code, you make sure passes all of your tests and boom onto deployment.

  • Now this deployment could be to a Q A server to a test server or restraint to production.

  • The reason why I thought circle see I would be a great sponsor for this channel for y'all is because, in my opinion, it does a great job at breaking barriers to entry for using a tool like this.

  • Because this in itself is a tool that you should learn.

  • You know you should learn how to build the pipelines, and with them it's it makes it a lot easier because you're able to integrate it with different remote repositories, a lot of different tools that you'll be using, which some of them we will discuss more in this video.

  • If you go work at any type of tech company, they're gonna have a C I.

  • C D Pipeline built that.

  • Maybe you don't have to build it yourself, but you really should know the inner workings of it and a few examples that you circle c.

  • I have twilio.

  • You have into it like QuickBooks and whatnot you have.

  • We work like the co working space, and you also have tender.

  • I know a lot of you be so I've been left or right or whether I don't know.

  • I've been in a relationship for the past seven years, ever since tender was born, so I never used it.

  • But that's just a few examples for companies who use Circle C.

  • I for their C I c.

  • D.

  • And like I said, that is an order to streamline their process from committing their code, testing their code straight into deployment and circle C.

  • I.

  • Anyone can sign up right now and start building for free.

  • You put together your pipeline, you have 1000 free build minutes per month, and I don't even think I hit that at work, fairly certain that I don't even hit that at work.

  • So if you're working at home regardless of how many private or public repositories you have on get hub orbit bucket or whoever else circle C, I can integrate your most likely not gonna hit that threshold of 1000 build minutes per month.

  • Told number three is some type of verse, a neutral system.

  • Get code management, whatever you wanna call this.

  • So that would be your get hubs of the world your big buckets.

  • That is where you have your remote repositories of your projects in which, if we're going to refer to previous tools that you will commit using your code editor or I d.

  • E.

  • And from there you're able to build ville your pipeline, automate that with your C I c.

  • D.

  • Now thinking about it, I probably put these steps a little bit out of order.

  • I'll make sure I try to clear all that up and give you a better lay out of all of these tools and how they work together towards the end of this video.

  • But do you remember in my Daniel live video when I was talking about our get flow?

  • Well, this this is kind of that.

  • So with first control, that is, when you are committing your code, whether it's to local or remote repositories, So you have a record of what you build two put into layman's terms.

  • Have you ever been working on some type of typed up essay and you end up with All right, this is my essay version one essay Version two s a version three Each of those that's essentially version control because if you completely mess up one of those versions, you're always able to revert back to your previous version.

  • So when you are committing your code that would essentially be saving your new versions of your essay.

  • You're able to revert back to your previous commit, and that is a version control system.

  • And not only that, but you're also able to have different branches.

  • I like to get into this part of it because it's very important.

  • For example, at my work, we use bit bucket, and we have different branches for our test server for our cue Air Quality Assurance server and for our production server.

  • So essentially we have a development branch that whenever you commit to that branch, that will automatically billed to test.

  • And that is where US developers will test our code outside of our little local repositories on our own machine.

  • Because we have all of these other developers committing to the development branch, we need to make sure we don't have any emerge conflicts.

  • In other words, we need make sure that my code works with his code, works with her code all within that particular branch.

  • So that is where we test.

  • And then we have a release branch.

  • And that is for a release candidate that we want to go into production.

  • And that is hooked up to our cue.

  • A server in the Q A servers where the user's the end users will test out our code to make sure that they can't break it.

  • If they do break it, we need to make sure that we fix those brakes.

  • Then we have a master branch, and that is what is hooked up to production, self explanatory and even more than just being able to revert your code or actually have a branch For each particular server, you have a hand.

  • This also helps a lot when you're working on a particular feature because you're able to make a another branch off of development.

  • So wild development and release and master are essentially separate parents branches.

  • You have a development, and within that you're able to have separate branches.

  • And within these separate branches, maybe you have feature 13 92.

  • That is the one that you're working on.

  • And that is where you're committing your code for that particular feature or task that you're working on.

  • And then, once you were done with that, you're able to submit poor requests, meaning the rest of your team should look at your code.

  • Make sure it looks good.

  • It's it's, it's efficient and things of that nature.

  • And if everyone gives a okay, then you're able to merge that over into development.

  • Then that's when it'll build and run over and test told.

  • Number four is terminal now has so much that goes into terminal that you could you could do anything in terms you can code in terminal.

  • You could do all of your version control, get commands in terminal, you can navigate essentially anywhere on your computer.

  • In terminal, you could navigate into remote servers using terminal.

  • You're able to pull files from those remote servers or virtual machines using terminal.

  • This is where a lot of times you'll be executing, you'll be compiling and executing your code so on and so forth terminal is just you're going to use terminal a sulfur developer.

  • Look up basic units, units, commands.

  • And that's a good start.

  • If you're unfamiliar told Number five is issued tracking or some type of project management software for us at work, we use era.

  • I've actually made a whole entire video on how I complete assault for engineering task.

  • And if you search that in my channel, you're able to find that and really get down into the details.

  • But I work how I use era in instead of going in depth like I did in previous video give you recap so you can understand why we use something like this is at work.

  • We do agile sprints basically work in three weeks prints, we say All right.

  • The next three weeks, what do we need to get done?

  • We have a backlog of issues recorded injera, where it's feature request bug requests, Whatever needs to get done, whether it's writing new code or fixing old code, it's all within this backlog.

  • We figure out what is priority, and we throw it into our three x sprint.

  • We make the Sprint Live, and then that leaves us with three columns with in our sprint.

  • That is a to do column.

  • Everything starts out here.

  • There's an in progress column and there's a done column.

  • This is fairly straightforward.

  • Basically, what you do is all right.

  • This is a task I want to work on.

  • When you create your sprint, you determine how long you estimate how long you think this task will be.

  • So you dragged out on over into your in progress section.

  • This allows your team to know this is what you're working on.

  • Once you complete it, you dragging on over into your done section.

  • You type in any comments that you think are applicable to that particular task.

  • If any, you record how long, how many hours it did take you to complete that task, and then you do it all over again and tell everything and you're to do.

  • Column is over and you're done.

  • And so those are the five tools that I find to be the most important for any developer, if you there any other tools.

  • And I know there are that you think I should have listed in this video.

  • Leave this down on the common below.

  • I know there are quite a few that it didn't go over, but I think I hit the nail on the head when it comes to the main five.

  • I mean, I guess a programming language could be considered a tool as well, but I just leave that to you on the comments.

  • Have you guys enjoyed this video?

  • Remember, Lincoln, the top of description.

  • Signed up to circle C I for free.

  • I really appreciate it, considering they're supporting the channel the next time guys have to go in peace.

copy.

Subtitles and vocabulary

Click the word to look it up Click the word to find further inforamtion about it