Programming for Beginners: Thinking & Writing Great Programs
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
9 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Programming for Beginners: Thinking & Writing Great Programs to your Wishlist.

Add to Wishlist

Programming for Beginners: Thinking & Writing Great Programs

Learn How to Think and Write a Computer Program
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
9 students enrolled
Created by Bogdan Doicin
Last updated 3/2017
English
Current price: $10 Original price: $20 Discount: 50% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 3 hours on-demand video
  • 51 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand the basic notions regarding algorithms
  • Correctly use the basic structures of the algorithms
  • Know what are subalgorithms, when and how are they used
  • Correctly use logical schemes to represent any algorithm you choose
  • Correctly write simple programs using Pascal and/or C++
View Curriculum
Requirements
  • Basic PC knowledge
  • A pen and a paper
  • A programming language. In this course, two programming languages will be offered for download, to offer the student the best head start
  • An open mind
  • Patience and perseverence
Description

Welcome to Programming for Beginners course. This is a course that is designed to teach the basics of computer programming, offering a solid foundation that can be used to learn almost any programming language. If you're brand new to computer programming and/or you are lost in countless books and tutorials, then you had come to the right place. This course is best suited for you!

If you know the basics and you want to consolidate them and/or just to have easy access to them, for whatever reason, I suggest to enroll as well. A good knowledge of the foundations can easily correct many problems that may occur in your computer programs, so a little rehearsal does not hurt.

This course is valuable not only because it teaches you the basics of two programming languages but, more importantly, because it teaches you how to think correctly about the way you will write a program, way called algorithm. The actual programming is only the tip of the iceberg and a lot of work behind a good program will never be seen. Many programmers know how to write software, but they learned this only by practice, through trial-and error. They have little to no theory to back up their practical knowledge. This leads to a few major disadvantages:

  1. They waste a lot of time discovering by themselves what others had discovered before them;
  2. They have difficulties in finding out why a piece of program works or does not work (it is also important to know why a program works, not only why it doesn't work);
  3. They have trouble explaining in detail what they had done;
  4. They cannot adapt to new circumstances. For them, small changes into what a computer program must do can translate to major, mostly unnecessary modifications in the program;

Although I don't know you personally, I know that you are better than this!

At the end of this course you will be able to do the following things:

  1. You will be able to think correctly about how to conceive an algorithm. An algorithm is the base for the future program;
  2. You will be able represent an algorithm using logical schemes, these are intuitive and make any algorithm simple to understand;
  3. You will be able to write simple programs, using one (or both) of two very used languages: Pascal and C++. Of course, you can use other programming languages if you want.

The lectures that will be presented here are logically structured, beginning with the simplest concepts and notions and ending with the most advanced ones. Each concept is built on the previous, making everything much easier to understand.

Because theory is worthless without practice, I shall present and explain in detail many examples of simple exercises. You can also solve them on your own, then you can compare them with my version. Who knows? Maybe you will find another (correct) way to solve that particular exercise.

If you have questions, please feel free to contact me. I shall answer every question as soon as possible.

Feel free to take a free preview of this course to see if it's a good fit for you. Remember, you have a 30 money back guarantee with this course so if for any reason you don't like it, you can get your money back. There's no reason not to sign up!

Thank you!

Who is the target audience?
  • People that do not know programming and want to learn the basics
  • People that have a grasp of the basics and want to consolidate what they learned
  • People that need a quick and valuable reference of the programming foundations
Students Who Viewed This Course Also Viewed
Curriculum For This Course
22 Lectures
02:54:43
+
Introduction
1 Lecture 05:18

This lecture will be a short introduction of myself and a short description of the course. You will find everything there is to know about what will this course be about, what are the prerequisites, what you will be able to do after graduation and other things.

Preview 05:18
+
Algorithms
3 Lectures 28:22

Here, the students will find out the basics about the algorithms. Among them, you will learn what is an algorithm, why do we use it in programming and what are its main characteristics.

Preview 14:10

Every algorithm has a few fundamental ways (structures) in which its instructions can be combined. These structures will be briefly presented in this lecture.

Fundamental Structures of Algorithms
07:41

An algorithm is of little use if the only person that knows about it is the one who conceived it. This lecture will discuss a few ways in which an algorithm can be represented so as other people as well can understand and use it. One of these ways, the logical scheme, will be used throughout this course.

Representation Methods of Algorithms
06:31

It's time to see how well you understood the contents from this section.

Algorithms
15 questions
+
Logical Schemes
2 Lectures 17:24

A logical scheme has a few component parts. What are those, what do they mean and how are they used are presented here.

Component Parts of a Logical Scheme
09:55

The components discussed previously are useless if they are not combined correctly, so as they represent an algorithm. The correct method to combine these blocks are presented in this lecture.

How to Build a Logical Scheme
07:29

It's time to see how well you understood the contents from this section.

Logical Schemes
15 questions
+
Variables
2 Lectures 17:45

Variables are extremely important and used in more then 95% of the algorithms of today. In this lecture, a few short notions about variables will be presented.

Basic Notions about Variables
09:29

A data type is a concept which is more related to programming, rather than basic algorithm theory. However, it is presented here, because it's linked to the concept of variables and it will be useful for the bonus sections.

Data Types
08:16

It's time to see how well you understood the contents from this section.

Variables
15 questions
+
Sequencing Things
1 Lecture 01:20

The Sequential Structure is one of the fundamental structures presented briefly in Section 2. It is the most used structure and it's presented more detailed in this lecture.

The Sequential Structure. Implementation
01:20
+
Decisions, Decisions...
3 Lectures 25:54

The Decision Structure is a variation of the Selection Structure, presented in the previous lecture. It is also very used structure and it's presented more detailed in this lecture.

The Decision Structure. Implementation
11:55

The Selection Structure is a fundamental structure presented briefly in Section 2. It is a very used structure and it's presented more detailed in this lecture.

The Selection Structure. Implementation
07:38

When to use and when not to use the two structures? What are the differences between them? This lecture will help you choose correctly between them.

Selection vs Decision Structures
06:21

It's time to see how well you understood the contents from this section.

Decisions, Decisions...
14 questions
+
The Art of Repetition
4 Lectures 26:34

The Iterative Structures are widely used, because very frequently the need to execute one of more commands for a number of times appears during the execution of an algorithm. This lecture presents basic notions about these structures, like the parts of an Iterative Structure, the types of Iterative Structures or when they are used.

Basic Notions About the Iterative Structure
08:17

The Iterative Structure using the Initial Test is a kind of Iterative Structure. It is explained in detail in this lecture.

The Iterative Structure Using the Initial Test
08:55

The Iterative Structure using the Final Test is a kind of Iterative Structure. It is explained in detail in this lecture.

The Iterative Structure Using the Final Test
04:56

The Iterative Structure using the Counter is, perhaps, the easiest to use Iterative Structure. However, it has its pitfalls, if it is not used correctly. Everything there is to know about this Iterative Structure is explained in detail in this lecture.

The Iterative Structure Using the Counter
04:26

It's time to see how well you understood the contents from this section.

The Art of Repetition
15 questions
+
Subalgorithms
2 Lectures 17:52

If you need to use frequently the same group of instructions, then using a Subalgorithm is appropriate. The basic notions about Subalgorithms (also known as Subroutines) are presented here.

Basic Notions about Subalgorithms
12:39

There are two types of Subalgorithms: procedures and functions. What are they, when do we use them, what do they have in common and what are the differences between them are presented here.

Types and Correct Usage of Subalgorithms
05:13

It's time to see how well you understood the contents from this section.

Subalgorithms
7 questions
+
Putting All in Practice
1 Lecture 10:43

This lecture is geared more on the practical side. Its main purpose is to give you examples of simple problems which are then solved. The students main focus is on how to think then write the algorithm to solve the problem.

Solved and Commented Examples
10:43
+
Bonuses
3 Lectures 23:31

This lecture will show, by analogy with the logical schemes, the basic elements of the Pascal language. By learning Pascal, the student is able to program by himself and see much better how the programmed algorithms actually work on a computer.

Basic Elements of Pascal
07:44

This lecture will show, by analogy with the logical schemes, the basic elements of the Pascal language. By learning C++, the student is able to program by himself and see much better how the programmed algorithms actually work on a computer.

Basic Elements of C++
05:42

This lecture's purpose is to give the student a few tips and tricks for further studying of programming.

What's Next?
10:05
About the Instructor
Bogdan Doicin
0.0 Average rating
0 Reviews
9 Students
1 Course
University Lecturer

I am 33 years old from Ploiesti, Romania. I am a lecturer at Petroleum-Gas University of Ploiesti. My main expertise is Computer Programming, but I also specialize in Numerical Methods and Optimization Techniques.


My style of teaching is focused on two main things: quality and clear explanation of the facts. This is one of the reasons I like to use examples from the real world to explain my point. I like to use my own words in explaining what I teach. 


I also believe in a firm and sincere communication between teacher and student, because I am aware that and holding back from the student can have negative consequences for him in the long run.