Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
The Self-Taught Programmer
Rating: 4.4 out of 5(4,387 ratings)
172,802 students

The Self-Taught Programmer

The Definitive Guide to Programming Professionally
Created byCory Althoff
Last updated 3/2021
English

What you'll learn

  • Start to program in Python 3 and build your first program.
  • Learn Object-oriented programming and create a powerful Python program to get you hooked.
  • Learn to use tools like Git, Bash, and regular expressions. Then use your new coding skills to build a web scraper.
  • Study Computer Science fundamentals like data structures and algorithms.
  • Finish with best coding practices, tips for working with a team, and advice on landing your first programming job.

Coding Exercises

This course includes our updated coding exercises so you can practice your skills as you learn.

See a demo
Image of coding exercise example

Course content

5 sections79 lectures5h 56m total length
  • Welcome3:58

    Begin your journey into programming with a practical roadmap to core concepts and tools. Discover five course parts, Python and object-oriented programming, and strategies for landing your first software job.

  • The Self-Taught Programmer Community0:25
  • Exercise Solutions0:08
  • Inspiration I1:51

    Discover how self-taught programmer Kevin Systrom co-founded Instagram with Mike Krieger in 2010 while working in marketing, built the prototype, and grew it into a $1 billion sale to Facebook.

  • Installing Python2:19
  • Getting Started2:55

    Print 'Hello world' in Idle's interactive shell, then save the file and run your program with the Run module.

  • Your first program
  • Win One!0:27
  • Syntax Errors1:41
  • Intro to Programming3:02
  • Feedback0:32

    Corey Althoff thanks you for taking the Self-Taught Programmer course and invites feedback or a review to support your programming journey and his course.

  • Printing a Different String
  • Math2:56
  • Calculate
  • Data Types2:45
  • Arithmetic Operators4:18
  • Arithmetic Operators Exercise 1
  • Arithmetic Operators Exercise 2
  • Arithmetic Operators Exercise 3
  • Comparison Operators3:12

    Explore how Python comparison operators evaluate expressions to true or false, using greater than, less than, greater than or equal to, less than or equal to, equal, and not equal.

  • Comparison Operators Exercise
  • Logical Operators2:45

    Explore Python logical operators—and, or, and not—and how they evaluate expressions to true or false, with and requiring all true and not inverting the result.

  • Logical Operators Exercise 1
  • Logical Operators Exercise 2
  • Statements4:21

    Explore Python statements and conditional logic, including if, elif, and else blocks, and nesting concepts. Learn how simple and compound statements use expressions to decide actions.

  • Statements Exercise
  • Functions5:40

    Learn how to define and call functions in Python, use required and optional parameters, return values, and document with docstrings to specify parameter data types and enable reusable code.

  • Functions Exercise 1
  • Functions Exercise 2
  • Functions Exercise 3
  • Built-In Functions2:00
  • Built-In Functions Exercise
  • Win Two!0:22
  • Exceptions1:26
  • Exception Handling2:05

    Learn exception handling in Python by using try and except to handle errors from user input, such as avoiding division by zero with a message 'B cannot be zero'.

  • Type a Number
  • Scope2:56
  • Lists5:43

    Discover how to store objects in containers by using lists, tuples, and dictionaries in Python, and learn list creation, indexing, mutability, and append and pop operations.

  • Lists Exercise 1
  • Lists Exercise 2
  • Lists Exercise 3
  • Tuples3:00
  • Tuples Exercise
  • Dictionaries4:23
  • Dictionaries Exercise
  • Containers in Containers2:26
  • Containers in Containers Exercise
  • Strings Part I5:44

    Learn to manipulate Python strings through indexing, including negative indexing, slicing, case changes, concatenation, and formatting, while understanding immutability, splitting, joining, and trimming whitespace.

  • Strings Exercise 1
  • Strings Exercise 2
  • Strings Exercise 3
  • Strings Exercise 4
  • Strings Exercise 5
  • Strings Part II5:02
  • Strings II Exercise 1
  • Strings II Exercise 2
  • Strings II Exercise 3
  • Strings II Exercise 4
  • For-Loops5:23
  • For-Loops Exercise 1
  • For-Loops Exercise 2
  • For-Loops Exercise 3
  • While-Loops7:03

    Learn how while loops differ from for loops, understand control flow with break and continue, and explore nested loops in Python, including avoiding infinite loops.

  • Guess a Number
  • While-Loops Exercise
  • Modules4:41

    Explore how to organize Python projects with modules, import built-ins, and reuse code across files, including creating and importing your own modules and using math, random, statistics, and keyword utilities.

  • Modules Exercise
  • Create a Module
  • Files5:40

    Learn to read and write files in Python, create files, and manage data using the os path function to build cross-platform paths and open files in read or write modes.

  • CSV Files3:04
  • CSV Movies
  • Hangman5:28
  • Modify Hangman
  • Win Three!0:18

Requirements

  • This course assumes you have no prior programming knowledge. It is for beginners!
  • All you need to get started is a computer. Any computer will do!

Description

I am a self-taught programmer. After a year of self-study, I learned to program well enough to land a job as a software engineer II at eBay. Once I got there, I realized I was severely under-prepared. I was overwhelmed by the amount of things I needed to know but hadn't learned yet. My journey learning to program, and my experience at my first job as a software engineer were the inspiration for this course. 


This course is not just about learning to program; although you will learn to code. If you want to program professionally, it is not enough to learn to code; that is why, in addition to helping you learn to program, I also cover the rest of the things you need to know to program professionally that classes and books don't teach you. The Self-taught Programmer is a roadmap, a guide to take you from writing your first Python program, to passing your first technical interview. I divided the course into five sections: 


1. Learn to program in Python 3 and build your first program. 

2. Learn Object-oriented programming and create a powerful Python program to get you hooked. 

3. Learn to use tools like Git, Bash, regular expressions and databases. Then use your new coding skills to build a web scraper. 

4. Study Computer Science fundamentals like data structures and algorithms.

5. Finish with tips for working with a team and landing a programming job. 


You CAN learn to program professionally. The path is there. Will you take it?

Who this course is for:

  • New programmers.
  • Anyone that wants to learn how to go from a complete beginner to a software engineer.
  • Anyone that wants to learn to program to improve their career!