Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
amazon
The Self-taught Programmer
____________________________
Cory Althoff
Part I Introduction to Programming
Chapter 1. Introduction
How This Book Is Structured
Endgame First
The Self-taught Advantage
Why You Should Program
Sticking With It
How This Book is Formatted
Technologies Used In This Book
Vocabulary
Challenge
Chapter 2. Getting Started
What is Programming
What is Python
Installing Python
Troubleshooting
The Interactive Shell
Saving Programs
Running Example Programs
Vocabulary
Challenge
Examples
Comments
Printing
Lines
Keywords
Spacing
Data Types
Constants and Variables
Syntax
Errors and Exceptions
Arithmetic Operators
Comparison Operators
Logical Operators
Conditional Statements
Statements
Vocabulary
Challenge
Chapter 4. Functions
Representing Concepts
Defining Functions
Parameters
Passing Parameters
pass
Nested Functions
Scope
Built-in Functions
Exception Handling
Docstrings
Challenge
Chapter 5. Containers
Lists
Tuples
Dictionaries
Challenge
Chapter 6. String Manipulation
Triple Strings
Indexes
Strings are Immutable
Methods
Change Case
format
split
join
replace
index
in
Escaping Strings
Newline
Concatenation
String Multiplication
Chapter 7. Loops
For Loops
While Loops
Break
Continue
Nested Loops
Challenge
Chapter 8. Modules
Importing Built-in Modules
Importing Modules
Challenge
Chapter 9. Files
Working With Files
Using with
Reading Files
CSV Files
Challenge
Chapter 10. Bringing It All Together
Hangman
Challenge
Chapter 11. Practice
Exercises
Read
Getting Help
Other Resources
Part II Introduction to Object-oriented Programming
Chapter 12. Programming Paradigms
State
Imperative Programming
Functional Programming
Object-oriented Programming
Challenge
Chapter 13. The Four Pillars of Object-oriented Programming
Inheritance
Polymorphism
Abstraction
Encapsulation
Composition
Challenge
Chapter 14. More Object-oriented Programming
How Variables Work
is
None
Classes Are Objects
Class Variables vs. Instance Variables
Private variables
Overriding Methods
Super
Overriding Built-in Methods
Challenge
Chapter 15. Bringing It All Together
Cards
Deck
Player
Game
War
Chapter 16. Practice
Exercises
Read
Part III Introduction to Programming Tools
Chapter 17. Bash
Finding Bash
Relative vs Absolute Paths
Navigating
Flags
vim
Touch
View A File With less
Users
Permissions
Bash Programs
Processes
Hidden Files
Environmental Variables
$PATH
pipes
cat
Recent Commands
Jump Around
Tab Complete
Wildcard
Other Tools
The One Week Challenge
Chapter 18. Regular Expressions
Setup
Simple Match
Ignore Case
Only Return Matched
Match Beginning and End
Match Multiple Characters
Repetition
Range
Escaping
Regular Expressions in Python
Zen Challenge
Chapter 19. Package Managers
Packages
Apt-get
Homebrew
OneGet
pip
Challenge
Chapter 20. Version Control
Repositories
Getting Started
Pushing and Pulling
Pushing Example
Pulling Example
Reverting Versions
diff
The Other Pull Request
Learning More
Challenge
Chapter 21. SQLite
NoSQL vs. SQL
Getting Started
Data Types
Create a Table
Constraints
Query Data
or Query
and Query
Count
Communicating with Databases
Challenge
Chapter 22. Bringing It All Together
HTML
Scrape Google News
Challenge
Chapter 23. Practice
Exercises
Read
Part IV Introduction to Computer Science
Data Structures & Algorithms
What Are Algorithms & Data Structures?
Big O Notation
Modulo
Bubble Sort
Sequential Search
Binary Search
Recursion
Abstract Data Types
Nodes
Stacks
Linked Lists
Arrays
Binary Trees
Breadth First & Depth First Search
Hash Tables
Challenge
Chapter X. Relational Database Design
Normalization
Referential Integrity
Indexing
Challenge
Chapter X. Computer Architecture
How Your Computer Works
I/O
How Programming Languages Work
How Your Operating System Works
Challenge
Chapter X. Network Programming
Client-Server Model
TCP/IP
Challenge
Chapter #TK. Bringing It All Together
Create a Server
Create a Client
Challenge
Chapter #TK. Practice
Exercises
Read
Part V Programming for Production
Chapter #TK. Testing
The Waterfall Software Development Process
Other Software Development Processes
Testing
Assertions
Types of Tests
TDD
Writing Good Tests
Code Coverage
Testing Saves Time
Challenge
Chapter #TK. Best Programming Practices
Write Code As A Last Resort
DRY
Orthogonality
Every Piece Of Data Should Have One Representation
Functions Should Do One Thing
Use Dummy Data
If It’s Taking Too Long You Are Probably Making a Mistake
Logging
Do Things The Best Way The First Time
Follow Conventions
Code Reviews
Security
Challenge
Chapter #TK. Bringing It All Together
Word Cloud Lyrics
Practice
Exercises
Read
Part VI Land a Job
Chapter X. Your First Programming Job
Choose a Path
Getting Initial Experience
Getting an Interview
The Interview
Hacking The Interview
Chapter X. Working on a Team
Master the Basics
Don’t Ask What You Can Google
Changing Code
Imposter Syndrome
Further Learning
The Classics
Online Classes
Hacker News
Other
Next Steps
Find a Mentor
Strive to Go Deep
Other Advice
Acknowledgements
Glossary
Biography
← Prev
Back
Next →
← Prev
Back
Next →