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?
Part II Introduction to Programming Paradigms
-
1Welcome
-
2The Self-Taught Programmer Community
-
3Exercise Solutions
-
4Inspiration I
-
5Installing Python
-
6Getting Started
-
7Your first program
-
8Win One!
-
9Syntax Errors
-
10Intro to Programming
-
11Feedback
-
12Printing a Different String
-
13Math
-
14Calculate
-
15Data Types
-
16Arithmetic Operators
-
17Arithmetic Operators Exercise 1
-
18Arithmetic Operators Exercise 2
-
19Arithmetic Operators Exercise 3
-
20Comparison Operators
-
21Comparison Operators Exercise
-
22Logical Operators
-
23Logical Operators Exercise 1
-
24Logical Operators Exercise 2
-
25Statements
-
26Statements Exercise
-
27Functions
-
28Functions Exercise 1
-
29Functions Exercise 2
-
30Functions Exercise 3
-
31Built-In Functions
-
32Built-In Functions Exercise
-
33Win Two!
-
34Exceptions
-
35Exception Handling
-
36Type a Number
-
37Scope
-
38Lists
-
39Lists Exercise 1
-
40Lists Exercise 2
-
41Lists Exercise 3
-
42Tuples
-
43Tuples Exercise
-
44Dictionaries
-
45Dictionaries Exercise
-
46Containers in Containers
-
47Containers in Containers Exercise
-
48Strings Part I
-
49Strings Exercise 1
-
50Strings Exercise 2
-
51Strings Exercise 3
-
52Strings Exercise 4
-
53Strings Exercise 5
-
54Strings Part II
-
55Strings II Exercise 1
-
56Strings II Exercise 2
-
57Strings II Exercise 3
-
58Strings II Exercise 4
-
59For-Loops
-
60For-Loops Exercise 1
-
61For-Loops Exercise 2
-
62For-Loops Exercise 3
-
63While-Loops
-
64Guess a Number
-
65While-Loops Exercise
-
66Modules
-
67Modules Exercise
-
68Create a Module
-
69Files
-
70CSV Files
-
71CSV Movies
-
72Hangman
-
73Modify Hangman
-
74Win Three!
Part III Introduction to Programming Tools
-
75Inspiration II
-
76Procedural Programming
-
77Functional Programming
-
78Object-Oriented Programming
-
79The Four Pillars of OOP
-
80Four Pillars Exercise 1
-
81Four Pillars Exercise 2
-
82Try Inheritance
-
83More OOP
-
84More OOP Exercise 1
-
85More OOP Exercise 2
-
86More OOP Exercise 3
-
87Live Coding: E-commerce
-
88War
-
89Win Four!