In this lesson we will truly understand what "programming" exactly is. There are a lot of misconceptions out there so the first we would do is get a good understanding of what programming is and how it fits into building software. Programming is but a small piece of building great software but it is the foundation that has to be strong.
Variables are a key part of programming. It is what allows us to store and manipulate data. In this lesson, we will learn about variables and how we can leverage them to write our programs.
Technically, machines only read 0's and 1's. However, we can represent different data types using these 0's and 1's. In this lesson, we will talk about some main data types that we will be working with and how to differentiate between them. We will mainly talk about Numbers, Strings, and Booleans and how to manipulate them in our programs.
Functions are a key component of any program. It allows us to write modular and organized code. Functions organize a program into distinct units, making interchanging and editing them easier. This makes your entire program organized and modular.
Control flow is how you can control your program depending on the inputs you get. This allows your code to do different things for different situations.
Another kind of control flow is the loop. This allows you to do the same thing multiple times until a condition is met.
A List is a collection of elements. If you need a variable amount of elements, then a list can hold them. They go hand in hand with loops and you will see why in this lesson.
Now that you know how to create a list, how do you access every element in it? How do we go through the whole list? I’ll show you different ways you can manipulate a list and how they’re useful.
There are instances where you want to change the list. That allows you to store data but also modify it depending on external conditions. Lists are powerful not only because they can store it, but because they are mutable.
Loops are extremely important in programming, but sometimes writing them is cumbersome. There is a different way of writing them using the “for” keyword, which can save you some time.
Sometimes, you want to break out of the loop depending on a certain condition. This lesson will teach you how to that.
Did you know you can put a loop inside a loop? Why is that useful? In this lesson we'll cover that.
We are going to get creative with lists by nesting lists inside a list. We can actaully use nested lists to represent matrices.
Since we want to build a sudoku solver at the end of the course, we have to know how to manipulate matrices since a sudoku board is essentially a 9x9 matrix.
Most people are afraid of recursion, but once you get the hang of it, it is very elegant and it's very useful for things like trees, backtracking and graphs.
Here is an example that solves a problem using recursion. You'll learn how to write recursive functions.
Writing recursive functions tends to create lots of bugs. But I'll teach you a framework to use when creating them to prevent common mistakes.
I teach you what backtracking is and how we actually use it pretty often in our daily lives to solve constraint problems.
I go through an example problem we can solve with backtracking. The problem is about a robot trying to go to a charging port but there are obstacles in the way.
Now you know conceptually how to solve it. We'll code it together step by step. This will prepare you to writing your sudoku solver.
In this class and future classes, I teach you exactly the way I learned it. I guide you throughout your whole programming journey, and depending on if you want to do Data Science, Software Engineering, or even Web Development, I will make sure to teach it the right way.
JomaClass is $8/month (billed annually)
Enter your email and we’ll send you Programming Fundamentals videos and some samples of our favorite courses.
Data Science is a combination of computer science and statistics. Python is one of the most popular programming languages due to packages like NumPy, PyTorch, Pandas, and Tensorflow. All essential from analytics to machine learning.
If you're planning on becoming a CS student in university, you'll have to get a firm grasp of programming fundamentals. Don't let it drag you down, but rather be your strength, so you can focus on learning the theory. Going through this course will make your Data Structure and Algorithms class a lot easier.
Popular web frameworks like Django and Flask are in Python, and knowing the fundamentals will help you develop faster and more efficiently.
The assignments will allow you to apply what you've learned throughout the course. They are problems meant to challenge you, allowing you to develop resilience for solving difficult problems.
Think of it like a Patreon subscription where you get access to all my educational videos on programming, computer science, and data science. I make sure to teach the right things in the right order since a lot of students tend to give up or they don't build the right foundations.
I post multiple videos weekly and I'm constantly working on a new course. In addition, you have full access to a private group where you can interact with me and other students in the community.
$8/month paid yearly.
A typical course will have around 20 video lessons.