Free Udemy Courses

Programming 101

Programming 101
Programming 101

Programming 101

Comprehend basic foundational knowledge of hardware, networking, programming, and licensing.

What you’ll learn

Programming 101

  • Count bits
  • Understand binary data
  • Understand bit processing
  • Understand basic network structure
  • Understand routers, ISPs, packets, and HTTP
  • Full working knowledge of programming languages
  • Understand the concepts behind a programming language
  • Understand variables and constants
  • Understand functions, arguments, and parameters
  • Know about software licensing
  • Comprehend DRM, patents and morality of the industry

Requirements

  • Anybody, a complete novice can take this course if they choose to

Description

Most people do not know how their devices process binary and work with data, from their washing machine to their smartphone. I found even some programmers don’t know of such; I’m guilty of this sin!

I missed out by learning a programming language first rather than trying to understand the computer on the hardware level. As programmers, we are controlling the hardware, and eventually, even if you’re programming in Javascript you need to know about memory and how the language works. So understanding binary data, persistent and temporary memory, CPU, SPU, GPU, networking and more is crucial even if you’re a web developer this still applies to you.

This course will be a broad foundation of knowledge giving an understanding of certain topics that need to be covered; giving you a solid foundation to grow from. I don’t believe in understanding a programming language first is the correct way to go about things. Programming languages have evolved as a tool for us. NOT the computer! So if we understand the computer’s hardware we’ll understand clearly how our programs are controlling our devices.

Programming 101

Computers are tools that we created to benefit mankind, however, like all tools, we need to improve them more and more. However, the core principle of computers from the very first computer ever invented hasn’t changed. Over time the tool or computer has been refined. However, the very core process and simplicity in underlying principles have been the same from the foundation of computing which is, processing ones and noughts. Computers have gone from processing 8 to 64 bits at any one time. This is just the computer being able to process more bits and thus more powerful operations can be done at a single time.

Don’t get me wrong computers are far more advanced, but the concept is all I’m saying is simple enough that even a beginner can learn what most people consider advanced and above their pay grade.

Likewise, understanding networking is of vital importance, especially for the web developers of today. More apps are going online so understanding network infrastructure, which has been around for over a decade, is still important today.

What about programming languages? We invented them as tools to communicate with these raw processing machines. We must understand why we have programming languages and how they work. For example, what’re compilers or transpilers? How have we taken our form of communication, human languages, and turned it into effective communication to manipulate the computer, and programming languages? What about variables, constants, functions, objects, and arrays that are in all major programming languages today? Also, all languages have operators and if you didn’t have them in a programming language you wouldn’t have a programming language at all.

In this course, we’ll cover, even more, about programming paradigms. Paradigm just means a model on how to do something. So in this case we can write our programs in a certain way or a certain paradigm. Very few beginners consider the style with which they program. When creating small-scale apps it isn’t that difficult, however when creating large-scale apps, paradigms become imperative.

Most programming languages give you the flexibility to mix and match programming paradigms or styles for writing your apps. You have a few major styles to choose from such as assembly, procedural, and object-oriented. Do note in a single app you can mix these paradigms usually procedural and object-oriented to best suit that part of your large-scale app. I’ll show you the styles of these paradigms and then apply procedural and OOP (object-oriented paradigm/programming) to demonstrate how the human mind works with differing paradigms; proving that multiple paradigms are the way forward.

Finally at the end of learning such a broad range of topics in a clear and concise course; you’ll also be learning about the licensing which should be covered especially for newcomers. Then learn about software morality such as DRM, software patents, and many other aspects of how the government is dealing with your data.

After all, this, if you’re still not satisfied you can have your 100% money-back guarantee if the course costs anything. So this last bit is the bit that sells it, what have you got to lose?

Who this course is for:

  • Anybody from beginner or a seasoned professional who really wants to know the lower level stuff
Get Course Now



Categories



Categories






Categories