1 00:00:02,270 --> 00:00:07,430 So for this course, we will primally work in this shell, to see all the commands and the different ways 2 00:00:07,430 --> 00:00:12,640 of using these commands because the shell is a great neutral ground for working with mongodb 3 00:00:12,650 --> 00:00:18,500 because I don't know if you're building a php, a node, a C++, a python or whatever application 4 00:00:18,620 --> 00:00:22,880 and I want to teach you something which you can apply to all use cases and that is the case with the 5 00:00:22,880 --> 00:00:28,100 shell but of course in the end, you will build an application with a programming language where this 6 00:00:28,190 --> 00:00:32,930 app should then issue these commands against the mongodb server. And for that, you can click 7 00:00:32,930 --> 00:00:39,830 on docs on the official page and then on the doc page, click on mongodb drivers because these 8 00:00:39,830 --> 00:00:45,540 drivers are packages you installed for the different programming languages your app might be written in, 9 00:00:45,860 --> 00:00:51,800 as you see you got drivers for all kinds of languages and these drivers are then your bridges between 10 00:00:51,890 --> 00:00:54,770 your programming language and the mongodb server 11 00:00:54,770 --> 00:01:01,010 and as it turns out, in these drivers, you use the same commands as I use in the shell, just adjusted to the 12 00:01:01,010 --> 00:01:03,590 syntax of the language you are working with of course. 13 00:01:03,830 --> 00:01:10,040 So for example, if we have a look at the nodejs driver and the python driver, let's see how we would 14 00:01:10,040 --> 00:01:15,550 work with those. On the nodejs driver documentation, if we click on latest documentation, 15 00:01:16,010 --> 00:01:21,390 we can quickly have a look at the quick start guide to see how our code would look like, if we use that, you 16 00:01:21,470 --> 00:01:24,700 see how to start your mongodb database and so on 17 00:01:24,840 --> 00:01:31,940 and what you will see there is that here, you also in the end just reach out to a database, 18 00:01:32,060 --> 00:01:37,070 then instead of typing the collection name, you have a collection method to get access but you would 19 00:01:37,130 --> 00:01:38,460 look into the official docs 20 00:01:38,470 --> 00:01:42,900 of course when using the driver, so these are tiny differences which you quickly find out there 21 00:01:43,040 --> 00:01:47,330 but then on the collection, you again run insertMany, we haven't seen that yet, 22 00:01:47,330 --> 00:01:52,220 we'll see it in the course, this exists in the shell in exactly the same way and you insert data in exactly 23 00:01:52,220 --> 00:01:53,020 the same way. 24 00:01:53,180 --> 00:01:56,790 So these, the core features are exactly equal, 25 00:01:56,810 --> 00:02:01,810 let's also have a look at python to prove that. Here I'm on the python driver page, 26 00:02:01,810 --> 00:02:03,900 now let me quickly dive into the tutorial, 27 00:02:03,920 --> 00:02:06,370 so that we see some code for that. 28 00:02:06,470 --> 00:02:11,330 So here, you see for python, you would install a package called py mongo which is the official driver 29 00:02:11,330 --> 00:02:12,360 for python, 30 00:02:12,560 --> 00:02:14,310 you then connect and so on 31 00:02:14,510 --> 00:02:22,590 and again, you in the end just get access to a database, then to a collection, here again by just using 32 00:02:22,590 --> 00:02:24,180 that collection name 33 00:02:24,180 --> 00:02:31,020 and then you simply insert one now using python syntax where you happen to write methods like this with 34 00:02:31,020 --> 00:02:37,660 an underscore and this snake case but then you insert one post which is just such an object, 35 00:02:37,810 --> 00:02:39,600 python map in the end. 36 00:02:39,750 --> 00:02:44,920 So you see, the syntax of the languages obviously differs because well, they are different languages 37 00:02:45,090 --> 00:02:49,970 but the general way of working with your data does not change at all, 38 00:02:49,980 --> 00:02:53,290 you work in exactly the same way as in the shell 39 00:02:53,640 --> 00:02:58,800 and actually, this is something we'll build later in the course. This is a complete node application using 40 00:02:58,800 --> 00:03:00,160 mongodb and here, 41 00:03:00,270 --> 00:03:03,440 you also see some code in action where I insert a new product 42 00:03:03,450 --> 00:03:07,590 and this is something we'll build in the course so that I can teach you how to move from the shell 43 00:03:07,590 --> 00:03:08,610 to the drivers 44 00:03:08,640 --> 00:03:11,110 but I hope this makes clear why we work with the shell, 45 00:03:11,120 --> 00:03:16,530 it's the neutral ground on which we all can agree so that you can take that knowledge on how to insert, 46 00:03:16,710 --> 00:03:21,840 how to configure your inserts, how to query data, how to filter data, how to sort data, so that you can 47 00:03:21,840 --> 00:03:26,880 use that knowledge with any driver you want and you are really flexible regarding what you built.