C++ in 2019 - Let's talk about it

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey did everyone say Scheer and welcome to another video in this video I would like to talk and share my experience with C++ now C++ is definitely one of the most versatile and powerful and of course very fast programming language but over the internet it's usually being undersell now I would like to discuss my journey of C++ as well as talk about the experience which about one of my class I had just finished up a class about back-end development using C++ so I would like to share my experience this video is going to help you to understand what you can expect with C++ what you can build with C++ and what kind of job you can expect with C++ so let's get started [Music] [Applause] [Music] first and foremost this video can be a little bit longer because I would like to share the entire experience of my class as well as personal experience of working with C++ and usually these videos sometimes are a little bit longer in the time because if I'll put a time constraint on that like five minutes or six minutes it can be a little bit longer so these kinds of precise videos where we have to cover some of the special topic or something that goes on on the screen screencast or something so let's forget about the time zone and let's explore the c++ world first let's accept the fact that C++ is not one of the most popular programming language usually the popular chart is being taken up by languages like JavaScript or Python or Java or usually these famous languages but don't get me wrong here C++ is definitely not the popular language but still is one of the most powerful and underlying language for most of the frameworks that you work around they are somehow being interacted or being touched by the C++ for example flutter is one of the most famous and getting popularity kind of a framework underlying under the hood they are interacted quite a lot by C++ programming and usually when I talk with the students about C++ all they come up with it's an academic language and if somebody who is much more interested in that always says I want to do game development with C++ yes it's a truth that C++ can be used for game development but that would be really an under selling of C++ C++ is very powerful and can do a lot of things but usually what happens people don't know how to get started with C++ and building up those projects as well usually the best they can come up with is the game development no it's not like that C++ is completely capable even of interacting with the modern web applications that uses MongoDB here okuu or darker and all these things of course in the popularity chart this language C you will not see much most of the youtubers are other people who are social media influenced are talking about this language the reason is pretty simple because this language usually comes up from the academic sign and assigned and people who are doing their engineering or masters or PhD usually get in touch with these languages and on the internet most of the people are those who are influencers and who are pretty good in the solid in the technology but they don't have that kind of educational background I'm not saying it's strong it's totally fine but usually this language definitely has an heavier side on academic world okay so let me talk about my experience with C++ now I haven't talked about this on camera before this but let me walk you through so I was initially a Python guy and still I am mostly and in the earlier days of the college I wrote a ton of scripts in Python usually for pen testing and a follower company which we want to automate some of the stuff stuff like that now in my Master's I had to do a project on ns3 which is a network simulator in which you can simulate like you need a hundred computer simulation or how your Wi-Fi is going to perform while you have a concrete block or you have a water body base inside the signal's stuff like that so in that ns3 world i had to work on some of the project I chose Python naively because I wanted to do everything with just one language which is which was my favorite happened to be Python and usually that's okay usually bigness do that a lot that they learn just one language and do want to do everything in just one language I did the same mistake I accept that now it was a naive move so I tried a Python because I saw that ns3 is compatible with Python and we did wrote down our initial scripts of the project in that and realized that Python is not suitable for it it's terribly slowing us our performance off of program compilation and all these stuff so python was not at all a good suit or good need for that particular project and realized hey we need to jump now into C++ to be honest I didn't liked it I didn't like that C++ we are using C++ because the syntax is very verbose and coming up from a world of Python where you don't have that much of both syntax everything is abstracted into layer you don't declare datatypes and stuff the loops are pretty easier there are no brackets so it is very like abstraction layer is there on the other hand C++ it's very verbose there is no abstraction layer you even declare your headers your datatypes everything is just in front of you too much of the code is there so realize that but of course we also realized after a few lines of codes and stuff we did on the project that yes this language is ridiculously fast and and we have to use it so that was my very first interaction of the C++ where n is three now let's talk about my recent class on C++ so if you shouldn't approach me that hey we want to learn about C++ and web development with that and they were ready to pay my fees as well so I thought hey it would be good exposure that I haven't touched C++ in a while so I would like to explore that again I say that I give me a week I would like to first do all these stats in your project work on my own once I am done with it I have prepared everything then I would like to teach you because obviously that's a good thing to teach first prepare it on yourself and then do it don't do it just like on the live world first prepare because you are teaching something it's not experimentation there so the project goal was really simple it was just a minor project we wanted to use C++ in the backend and with the C++ the biggest issue when you use it on something like web application the goal was really simple we want to have a C++ back-end and it should throw a JSON response so that we can have our own customized API and these API can be used for iOS Android and web application pretty simple not a big deal can be done with the node.js can be done with the PHP but for this project we students actually wanted to do it with the C++ now the biggest challenge in front of us was C++ obviously this was not a course or a project about learning loops or function with that we want to implement that now the biggest issue is first and foremost is the development as well as deployment because there are some libraries in C++ which you install at the development side if they are not exactly those versions are not present on the deployment side everything is going to be going into crash and you won't be able to see much of the errors you won't be able to resolve that so that's one of the biggest issues that the same chain that the toolset chain that you are using here it should be there as well so we decided that we are going to be using docker for that because DevOps technology actually helps in resolving the exact same kind of error so we thought we will be using darker for that now in case you want to use exactly same darker that I have used in this technology it's simply available by a command docker space full space hit a chaudhary slash hello underscore Chrome so that was done that me now are gonna be using C++ now the library that we chose that will be doing majority of our work is going to be Lib boost if you have work anytime in the c++ you know that the standard template libraries are pretty powerful apart from that one third-party libraries which everybody likes to use is Lib boost a link down Lib boost in the description section so that you can explode mode in case you have more interest in that now further the next thing is to find out a lightweight framework that can help us in doing majority of work obviously we don't want to write everything from the scratch so that's why we were looking to choose up a simple framework like that now in case you have been into the touch of C++ for a while you know that there is a framework known as CRO now CRO is like if I had to tell you exactly what it is it would be like a flask of the Python or Django in the Python exact same kind of concept is there in the C++ that is known as grow so Crowe is pretty useful not well documented I will be honest here but definitely this was our choice that we wanted to go with that so we solved our few problems like we will be using docker and we will be using hero KU to push all these things we will be using CRO as our main framework for dealing up rest of the things there is one big issue that we faced in building of this class in this entire project was having the driver issues now we wanted to have MongoDB in our application shortly we could have MySQL that would again be a great choice but student wanted to have a MongoDB I said no issues we can deal up with that as well now the biggest issue is when you are using frameworks which are so just code level like C++ chrome it's not like you can just import any middleware just like you do in the node.js and you can work on the debt that's not possible so what we had to do is we went onto the github of MongoDB and we needed to download the drivers of that into the core language and then have to build it up so getting into the driver level is something which is nightmare and all the programmers might want to skip that and that's okay that's totally obvious I even wanted to skip that part but we had no choice so go we went on to the development side the github side of the MongoDB we downloaded that driver and again these drivers were in C so they need to be compiled up again into C++ as well so this is what we did after that and after that the things were super easy there was nothing which was groundbreaking we were able to interact with the MongoDB pretty easily and after that you can just add on things into your MongoDB it was just like a crud operation for MongoDB nothing of a big deal but yes the knowledge of these things like CRO is definitely not a popular one so you need somebody who is a little bit friendly with the CRO or even friendly in there reading the documentation that was the tough part and again these compilation of the drivers from C to C++ using manga deviant stuff that was also another nightmare so yes of course I would say that this could have been done easily with other tech specs but sometimes it is important that you go with the hard way and of course performance wise of course this application is going to perform ridiculously fast it's interacting directly with C++ so yes that was my brief exploration of C++ and I think the video is getting pretty much longer and pretty much nerdy here definitely do let me know in the comment section below and I would definitely like to make another video about CRO so that more people can get a knowledge about that yes these kinds of framework do exist in other languages and I will talk about that in the upcoming video so yeah this was little bit nerdy little bit boring as well I would give you on that but definitely I wanted to share this experience so that if this can be out on the Internet and everybody gets that C++ is not just about game development it can do a lot more than that I would like to talk about this experience continued in the part 2 of this video if you need that let me know in the comment section below and of course one more thing I am getting super crazy about these stories right nowadays I'm posting ton of them on my Instagram started to post them on this YouTube as well so in case you don't like it you can ignore it but in case you want to follow up all these things join me up on Instagram and I would definitely love to join you back as well so that's it for this video and in case you enjoyed it do share it with your friends who says that C++ is just a boding language no it's not it's very powerful it can do a ton of thing so share it with those friends and of course don't forget to share it with your college or university teachers as well so that they can also learn how to make C++ interesting that's it for this video make sure you hit that subscribe button and I will surely catch you up in the next video I'm cold my thirst automated like that I've run it through my days got you distracted cicadas overloaded careful don't pull the cord [Music] restroom [Music]
Info
Channel: Hitesh Choudhary
Views: 105,871
Rating: undefined out of 5
Keywords: Programming, LearnCodeOnline, C++, C++ programming, C++ language, Crow framework, NS3, C plus plus
Id: F-hBIm2fZkA
Channel Id: undefined
Length: 13min 2sec (782 seconds)
Published: Thu Nov 29 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.