Computer Science: The Foundation You Didn't Know You Needed (Udemy.com)
The course that will save you time and frustration if persuing a degree or starting a new job in computer science.
Created by: James Ballow
Last updated December 2023
What you will learn
- Prevent yourself from falling behind in collegiate lectures and work tasks by developing a solid foundation of computer science topics.
- Learn to speak the language of computer science by learning new terms/jargon by definition, and in video examples.
- Learn the things your professors do not teach, like how to use a terminal, a brief history of compute languages, and how your machine operates.
- Learn how to socialize correctly when working on/with a development team so as to ensure team success.
- Learn the fundamental things that would otherwise lead you to waste your time peforming hours of online searches.
How it compares
Against the other 58 rated Udemy courses in Introduction to Computer Science on CourseDuck:
- Rating4.4 out of 5higher than 32% of them
- Reviews70#49 of 59 by number of reviews
- Length6.2 hourslonger than 65% of them
- Last updatedDecember 2023earlier than 51% of them
Course Description
Welcome to my course on Computer Science! Let's consider two scenarios:
Scenario 1:
You started a new job in computer science (you thought you knew enough to handle it), and in that job you are required to know how to use some aspects of your computer you never knew even existed (e.g., a terminal, a webhook, a particular code editor, etc). You have to learn quickly because the project you were put on needs to be done in 1 month. *PANIC*.
Scenario 2:
You have never programmed anything before, but you decide to start a master's degree in computer science (but your bachelor's degree was in an entirely different field), and the first day the teacher asks you to write a program in C and it's due in 2 weeks. *PANIC*.
Hi, I'm James Michael Ballow, and both of these scenarios happened to me, at nearly the same time. I was nervous, and I felt anxiety and panic. The biggest problem I had was that every time I looked for a book, article, or video that would explain to me the very basics of computing, programming, or languages, nearly all of them began speaking 15 steps ahead of where I needed to start. I was always infuriated that no amount of searching could give me what I wanted. In order to get over this, I had to ask a million questions (sometimes admittedly stupid and embarrassing questions) to colleagues and professors in order to really understand things on a fundamental level.
As I went along in my academic and professional careers, I noticed something: the other students seemed to be struggling with the same thing I was, but because they did not admit their lack of fundamental understanding, their grades were often quite low. That's when it hit me: every single person is struggling with understanding this computer science stuff. This phenomena is best described by me as a "barrier" between the human and computer. This course breaks that barrier.
In this course I tell you about myself and my journey from knowing absolutely nothing about computer science, to getting a 4.0 in my Master's in Computer Science and becoming a practicing software engineer and machine learnist. I will tell you quite plainly how to think about certain concepts so that the concepts that you will learn beyond this course will be much simpler. After taking this course, you will no longer feel like there are a million things you need to learn on your own before you can start your programming, or managing/working on a programming team.
Let's do it!
Instructor Details
- 4.4 Rating
70 Reviews
James Ballow
Hello! I'm James, an engineer-became-programmer. I live in the United States and I absolutely love programming. I currently work in software development; I design and implement code, providing engineered solutions to unique problems. I joined Udemy so that I could share my knowledge about computing so that no one else would have to encounter the many barriers that I did when trying to become a programmer.
I love to teach. In addition to my software duties, I make videos and write documents to share in the knowledge attained through trial-and-error and from reading lengthy papers. I have also taught many students in mechanical/electrical/chemical/radioactive operations for 2 years and taught students how to program (and how to think about programming).
Academics:
- B.S. in Chemical Engineering (Florida State University)
- M.S. in Computer Science (Clarkson University - Potsdam, NY)
- Nuclear Operations Certification (Naval Nuclear Power Training Command)
Qualifications:
- Certified AWS Solutions Architect Associate
- Certified Associate-Level Python Programmer
- Certified Entry-Level Programmer in C/C++/JavaScript
- 6 years in programming using MATLAB, C, C++, Python, JavaScript/CSS/HTML, shell/bash/csh, PowerShell, Java
- 4 years of machine learning experience
- 2 years programming in AWS Cloud
More Introduction to Computer Science courses
The Horse Course: Introduction to Basic Care and Management
4.9 (156 Reviews)
Provider: Coursera
Time: 22h
Free
Operating Systems from scratch - Part 2 (2022)
4.8 (1,662 Reviews)
Provider: Udemy
Time: 12.3h
$10.99
Object Oriented Programming (OOP) with Python for beginners (2026)
4.8 (531 Reviews)
Provider: Udemy
Time: 2.3h
$64.99
Introduction to Programming Crash Course + Python Primer (2025)
4.7 (3,814 Reviews)
Provider: Udemy
Time: 4.7h
$59.99
Object-Oriented Software Engineering with Java (2023)
4.7 (210 Reviews)
Provider: Udemy
Time: 6.5h
$84.99
Reviews
By Archangel1976 on 5/14/2025
I love people who are ready to teach you without any shame.
By Smart Done BV BE0795772855 on 1/31/2025
It is not made for beginner in IT as i experienced it. Better to ad more visualization But generally, thank you. It was usefull.
By Greg Petrov on 10/18/2024
For me it was very brief refresher for some topics. Don't expect learn much in terms of Computer Science but this is soft intro of what you will need to learn in depth in the future to become an IT specialist. But educator is very positive and engaging. So I want to support his effort.
By Tim Wiedner on 6/24/2024
The course delivers exactly what it was promising: A foundation and basic knowledge across the topics that it covers, which encourages you to continue to deepen the knowledge in further study. I'm happy to have taken this course
By Katerina Nikolaou on 2/27/2024
I am a beginner in the field, trying to change a carrer. I believe i have the basic understanding of how computers work, now i just need get to know more in depth information and understanding, everything was very helpfull. Although i was expecting a more visual based course, it contains a lot written information which i could read on the internet. Overall, everything else was very helpfull. Thank you.
By Russell Garania on 2/20/2024
Thank you, I am a transitioned engineer (electrical) to a solutions architect as well and this course is a treasure for us.
By Simone Pisano on 2/17/2024
This is not your usual course, some parts of it are quite interesting some others are more like the teacher chatting about stuff. It's not bad overall, but I'm not sure if it was worth paying for it.
By Erica Wollmering on 2/11/2024
This course is more approachable and less intimidating than some other intro to computer science classes. This course helps with the, "I don't know what I don't knows...."
By Murilo Lopes on 1/11/2024
I'm overall satisfied with the course, since it brought me some concepts I was lacking and hearing James talk can be a very soothing experience. As a constructive criticism, I would say that some sections could really use a little more illustration and examples but, everything considered, this course is really great.
By Stephanie Schultz on 10/10/2023
Everyone who's thinking about getting into some form of computer science/programming field who has no prior knowledge of these topics (aside from using a smartphone, tv, or computer for day to day) NEEDS to take this course. I tried learning and jumping into "basics" of programming and I was LOST because, like he said, no one teaches you how to even open a terminal or what that is or why. And it's not just that one specific task, it's all of the foundations that are needed to even get into the "basics" of any computer related field. So far, I'm loving the way he explains each concept and gives a real example or a metaphor to help explain it in a way that a normal person with no tech background can grasp. I studied psychology and social sciences in college, nothing even close computer or tech. But this is the path I want to pursue going forward and I'm immensely grateful that there's someone breaking down these concepts to the regular knowledge level. It's going to save so much time, energy, and help avoid headaches and breakdowns! THANK YOU!!! I'm so excited to dive deeper after watching some of the programming lessons here too. Very helpful for me to determine whether this is the right path for me.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 88 / 100






