WEBVTT

00:01.960 --> 00:07.120
Before we get any deeper into vibe coding, I wanted to briefly talk about the tech stack we could use

00:07.120 --> 00:08.320
for our project.

00:08.800 --> 00:09.600
But wait a minute.

00:09.600 --> 00:10.520
What is a tech stack?

00:10.560 --> 00:16.640
Well, a tech stack is a combination of technologies we can use to build a software product.

00:16.760 --> 00:22.960
It typically includes the front end, which is what the user sees, the backend which contains all the

00:22.960 --> 00:29.720
processing and logic of the application, a database for storing data, and quite often the various

00:29.720 --> 00:33.240
tools that are needed for deployment and services for hosting.

00:34.160 --> 00:37.640
Now, how do we choose the right tech stack for our project?

00:37.760 --> 00:40.080
Well, in this lecture we're going to break it down a bit.

00:40.840 --> 00:45.240
Now, probably the most important thing is to choose a popular stack.

00:45.760 --> 00:50.640
And there are many reasons why it makes sense to go with something popular, but here at least three

00:50.640 --> 00:51.240
reasons.

00:51.520 --> 00:57.680
First of all, if it is a popular technology, the I had enough data to be trained on, so the quality

00:57.680 --> 01:02.540
of the code generated or troubleshooting problems is much more efficient.

01:02.980 --> 01:07.780
It's also easier to find tutorials and help online if the I cannot help you.

01:08.180 --> 01:14.700
And also a technology that's very popular, it is likely to be maintained and updated, which is good

01:14.700 --> 01:15.660
in the long run.

01:17.060 --> 01:19.420
So it's a good idea to research your options.

01:19.420 --> 01:25.380
For example, you can check developer surveys to see which technologies are popular, just in case you

01:25.380 --> 01:26.100
don't know.

01:26.780 --> 01:31.780
For example, I have here on the screen the 2024 Developer survey from Stack Overflow.

01:32.060 --> 01:38.780
And if you go here a bit further down into the list, you're gonna find under technology the most popular

01:38.780 --> 01:39.740
technologies.

01:39.740 --> 01:45.660
And you can find here, for example, in terms of programming, scripting and markup languages, databases,

01:45.660 --> 01:47.620
cloud platforms, and so on.

01:48.460 --> 01:52.140
Apart from this, you can also use AI tools to help with that research.

01:52.140 --> 01:59.860
So think of ChatGPT or any other tool where you could look for suggestions, or simply continue a conversation

01:59.860 --> 02:05.200
with ChatGPT and see what kind of technology would make sense for your specific project.

02:05.720 --> 02:11.760
But you also need to think about the app architecture, because the type of app we're building affects

02:11.760 --> 02:12.880
the tech choices.

02:13.120 --> 02:16.320
So you need to think, what kind of an app do you want to build?

02:16.320 --> 02:17.320
Is it a website?

02:17.320 --> 02:20.400
Is it a mobile app or is it something else altogether?

02:21.120 --> 02:27.040
Will you need to handle a lot of users willing to be hosted somewhere and shared with others, or will

02:27.040 --> 02:29.320
it just run locally on your machine?

02:29.560 --> 02:34.440
And if it needs to be deployed, just keep in mind that a tech stack and architecture will also play

02:34.440 --> 02:35.320
a key part.

02:36.880 --> 02:43.040
So architectural decisions can affect things like the cost of infrastructure, the scalability or the

02:43.040 --> 02:44.320
performance of the app.

02:44.520 --> 02:50.200
So it's not just about choosing a specific programming language, it's about the whole system.

02:50.720 --> 02:54.680
Now let's explore a few great choices for beginners.

02:55.280 --> 03:00.360
First of all, we're going to start with JavaScript, which is both used for front end and back end

03:00.400 --> 03:01.080
in combination.

03:01.120 --> 03:07.980
Of course for the front end with HTML and CSS, and for the back end with node js, but one programming

03:07.980 --> 03:14.140
language can handle both words, and this is excellent, especially for web applications.

03:14.140 --> 03:17.740
And there are many free resources and a huge community behind this.

03:18.060 --> 03:24.540
And JavaScript is great because you can build an entire app just using one language, and that is efficient.

03:24.540 --> 03:27.100
And also, to be honest, very beginner friendly.

03:28.100 --> 03:33.620
The second option I would recommend you look into is Python as an alternative to JavaScript.

03:33.660 --> 03:40.940
Now Python is mostly used for backend stuff, rarely for front ends, and Python is relatively easy

03:40.940 --> 03:43.860
to read, write, and overall learn.

03:44.380 --> 03:50.140
It is popular for web development in terms of the backend, but it's also popular in the AI and data

03:50.140 --> 03:54.060
science world, and quite often also used for automation.

03:54.060 --> 03:56.100
So again, why is Python great?

03:56.140 --> 04:02.180
It is very flexible, has a clean, beginner friendly syntax and it is very popular.

04:02.880 --> 04:04.960
Now before we wrap up this lecture.

04:05.120 --> 04:06.360
Final tips for you.

04:06.680 --> 04:08.000
First of all, start simple.

04:08.000 --> 04:09.280
Don't overthinking.

04:09.760 --> 04:12.280
Choose something you can learn and build with.

04:12.320 --> 04:15.120
Choose something that you think works best for you.

04:15.440 --> 04:20.720
And one approach, of course, is to try, in the beginning different technologies and to see which

04:20.720 --> 04:22.560
one you resonate better.

04:22.920 --> 04:26.240
You don't want to choose something that is really difficult for you.

04:26.240 --> 04:28.240
Choose something that you really enjoy doing.

04:28.680 --> 04:31.640
Now, apart from this, you also want to think long term.

04:32.160 --> 04:38.560
A popular and well supported tools will save you headaches later, and choosing a tech stack is one

04:38.560 --> 04:43.720
of the most important early decisions in your project, especially if you want to build something bigger.

04:44.040 --> 04:49.400
You don't have to get it perfect from the start, but just make sure that what you're choosing is popular,

04:49.600 --> 04:52.320
scalable, and also beginner friendly.

04:53.440 --> 04:59.960
So take your time, do your research, and most importantly, start building something so that you can

04:59.960 --> 05:01.320
gather that experience.
