C# and .NET (Part-Time)
(Pre-Work)
Getting Started at Epicodus
Weekend
Learn How to Program
Weekend
Growth Mindset
Weekend
Making Epicodus an Inclusive Place
Weekend
Community Agreements
Weekend
Making the Most of Code School
Weekend
Pair Programming
Weekend
The Value of Pair Programming
Weekend
How to Ask for Help
Weekend
Curriculum Details: Intro to Programming
Weekend
Independent Projects and Code Reviews
Weekend
Academic Honesty
Weekend
Attendance Policy
Weekend
Career Services Schedule
Weekend
Internship Coursework and Career Reviews
Weekend
Final Capstone Project
Weekend
DEI Reflective Assignments
Weekend
A Glossary of Epicodus Terminology
Weekend
Student Handbook
(Pre-Work)
Getting Started with C#
Weekend
Welcome to C#
Weekend
Installing C# and .NET
Weekend
Installing dotnet-script
Weekend
Installing and Configuring MySQL
Weekend
Documentation and Resources
(Pre-Work)
Data Types and Variables
Weekend
Using a C# REPL
Weekend
Strings and Concatenation
Weekend
Integers and Arithmetic
Weekend
Variables and Data Types
Weekend
Methods
(Pre-Work)
Basic Console Apps
Weekend
Compiling and Executing Programs
Weekend
AOT Versus JIT Compiling
Weekend
Interactive Applications
Weekend
Dotnet Watcher
Weekend
Debugging Tools
(Pre-Work)
Branching and Looping
Weekend
Branching with Booleans
Weekend
Branching with Conditionals
Weekend
Or and Bang Operators
Weekend
Arrays
Weekend
Lists
Weekend
Dictionaries
Weekend
Dictionary Applications and Scope
Weekend
For Each Loops
Weekend
For Loops
(Pre-Work)
Objects and Methods
Weekend
Creating Classes
Weekend
Objects and Methods
Weekend
Instantiating Objects With Constructors
Weekend
Namespaces and File Structure
Weekend
Access Modifiers
Weekend
Getters and Setters
Weekend
Encapsulation and Visibility
Weekend
Static Methods
Weekend
Using Methods and Variables in a Class
Weekend
Properties
(Week 1)
Test-Driven Development with C#
Weekend
Test-Driven Development with C# Objectives
Weekend
Journal #8
Sunday
Journal #8 Discussion
Sunday
Dealership, Ping Pong, Sphinx, Queen Attack
Sunday
MSTest Configuration and Setup
Sunday
MSTest Writing and Running Tests
Sunday
Our First Tests with MSTest
Sunday
MSTest Configuration Quick Reference
Sunday
Debugging in MSTest
Monday
Triangle Tracker, Palindromes, Allergies
Tuesday
Triangle Tracker, Palindromes, Allergies
Wednesday
Triangle Tracker, Palindromes, Allergies
Wednesday
To Do List Project Setup
Wednesday
Arrange, Act, Assert
Wednesday
Arrange, Act, Assert - Part 2
Wednesday
Static Variables
Wednesday
Adding a Disposable Method to Tests
Wednesday
To Do List Static Variables and Methods
Wednesday
Recognizing Privilege
Wednesday
Workplace Accommodations
(Week 2)
Test-Driven Development with C# Part 2
Sunday
To Do List, Prime Sifting, Rock Paper Scissors, Weekday Finder
Sunday
Abstraction
Sunday
Interfaces
Sunday
Inheritance and Abstract Classes
Sunday
Overloaded Constructors
Sunday
Try/Catch Blocks
Sunday
Type Casting
Sunday
C# Coding Style Convention Review
Monday
Scrabble Scorer, Numbers to Words, Find and Replace
Tuesday
Scrabble Scorer, Numbers to Words, Find and Replace
Wednesday
Scrabble Scorer, Numbers to Words, Find and Replace
Wednesday
Weekly Technical Interview Prep: Testing
Thursday
Test-Driven Development with C# Independent Project
(Week 3)
C# Web Applications
Weekend
Basic Web Applications Objectives
Weekend
How the Web Works: Clients and Servers
Weekend
How the Web Works: Uniform Resource Locator
Weekend
How the Web Works: Developer Tools
Weekend
Introduction to ASP.NET Core
Weekend
How the Web Works: Server-Side Rendering
Weekend
How the Web Works: MVC Pattern
Weekend
Constructing and Configuring an ASP.NET Core MVC Web App
Weekend
Building and Running an ASP.NET Core MVC Web App
Weekend
Introduction to Controllers, Routes and URLs
Weekend
Custom URL Paths
Weekend
Creating and Using Views
Weekend
Creating a Basic Model
Weekend
Dynamic Views with Razor Markup Syntax
Weekend
Using Forms with MVC
Weekend
Debugging Views and Configuring a Development Environment with launchSettings.json
Weekend
Redirecting to HTTPS and Issuing a Security Certificate
Weekend
Configuration Quick Reference
Weekend
Journal #9
Sunday
Journal #9 Discussion
Sunday
ASP.NET Core MVC Practice
Sunday
To Do List MVC Setup
Sunday
To Do List with MVC Forms
Sunday
Request Response Loop and HTTP Methods with ASP.NET Core MVC
Sunday
Lists and Redirects in a Controller
Sunday
Loops and Conditionals with Razor
Sunday
Multiple Controllers
Monday
To Do List, Car Dealership, Parcels, Job Board - Part 1
Monday
HTTP CRUD Methods
Monday
Deleting Items
Monday
Finding Objects with Unique IDs
Tuesday
To Do List, Car Dealership, Parcels, Job Board - Part 2
Tuesday
Introduction to RESTful Routing
Tuesday
Applying RESTful Routing
Wednesday
To Do List, Car Dealership, Parcels, Job Board - Part 3
Wednesday
Career Prep Day
Wednesday
Internship Overview
Wednesday
Writing Cover Letters and Resumes
Wednesday
Write Your Cover Letter
Wednesday
Write Your Resume
(Week 4)
C# Web Applications Part 2
Sunday
Career Prep Day: Resumes and Cover Letters
Sunday
Weekly Technical Interview Prep
Sunday
Objects Within Objects Setup
Sunday
Saving Objects Within Other Objects
Sunday
Objects Within Objects Interface Part 1
Sunday
Objects Within Objects Interface Part 2
Sunday
Using Static Content
Sunday
Layouts and Partials
Monday
To Do List, CD Organizer, Go Fish, Word Puzzle - Part 1
Monday
Optional Features of C# Versions 9 and 10
Tuesday
To Do List, CD Organizer, Go Fish, Word Puzzle - Part 2
Tuesday
The Previous Hosting Model versus the New Minimal Hosting Model
Wednesday
To Do List, CD Organizer, Go Fish, Word Puzzle - Part 3
Thursday
Basic Web Applications Independent Project
(Week 5)
Database Basics
Weekend
Database Basics Objectives
Weekend
Introduction to Databases
Weekend
SQL Basics: Managing MySQL Databases from the Command Line
Weekend
Introduction to MySQL Workbench: Creating a Database
Weekend
Connecting a Database to an ASP.NET Core App with MySqlConnector
Weekend
Retrieving Objects From the Database
Weekend
Testing Database Backed Applications
Weekend
Creating a Test Database: Exporting and Importing Databases with MySQL Workbench
Weekend
Using the Test Database
Weekend
Deleting Objects in the Database
Weekend
Testing for an Empty Database
Weekend
Overriding Equals and GetHashCode
Weekend
Saving Objects in the Database
Weekend
Finding Objects in the Database
Weekend
More SQL Queries
Weekend
Journal #10
Sunday
Journal #10 Discussion
Sunday
To Do List and Project Rebuild
Sunday
Database Schema and Relationship Types
Sunday
Using SQL Designer
Sunday
Introducing Entity Framework Core
Sunday
Configuration for Entity Framework Core
Sunday
Read with EF Core
Sunday
Create with EF Core
Sunday
HTML Helper Methods, Lambda Expressions, and String Interpolation
Sunday
Showing Item Details with EF Core
Sunday
Further Exploration with Testing
Monday
To Do List, Animal Shelter, and Inventory - Part 1
Tuesday
To Do List, Animal Shelter, and Inventory - Part 2
Wednesday
To Do List, Animal Shelter, and Inventory - Part 3
Wednesday
Update with EF Core
Wednesday
Delete with EF Core
Wednesday
Establishing a One-To-Many Relationship with Navigation Properties
Wednesday
Using ViewBag
Wednesday
Create and Update with a One-To-Many Relationship
Wednesday
Inclusive Terminology: Using a Main Branch
(Week 6)
Database Basics Part 2
Sunday
Best Restaurants in Town - Part 1
Sunday
ACID Databases
Monday
Best Restaurants in Town - Part 2
Tuesday
Best Restaurants in Town - Part 3
Tuesday
Technical Interview Practice
Wednesday
Best Restaurants in Town - Part 4
Wednesday
Whiteboard Practice
Wednesday
Pull Requests and Submitting Great Work
Thursday
Database Basics Independent Project
(Week 7)
Many-to-Many Relationships
Weekend
Many-To-Many Objectives
Weekend
Many-to-Many Relationship Review
Weekend
Code First Development and Migrations
Weekend
Many-to-Many Relationships: Join Entities
Weekend
Many-to-Many Read Functionality
Weekend
Many-to-Many Create Functionality
Weekend
Many-to-Many Update Functionality
Weekend
Many-to-Many Delete Functionality
Weekend
Journal #11
Tuesday
Journal #11 Discussion
Tuesday
University Registrar, Doctor's Office (3-Day Project) - Part 1
Wednesday
University Registrar, Doctor's Office (3-Day Project) - Part 2
(Week 8)
Many-to-Many Relationships Part 2
Sunday
University Registrar, Doctor's Office (3-Day Project) - Part 3
Sunday
Model Validation with Validation Attributes
Sunday
Customizing Entity Properties with Data Annotations
Sunday
Creating a Splash Page with Data from Multiple Database Tables
Monday
Refactoring with Many-To-Many (3-Day Project) - Part 1
Tuesday
Refactoring with Many-To-Many (3-Day Project) - Part 2
Wednesday
Refactoring with Many-To-Many (3-Day Project) - Part 3
Wednesday
Whiteboard Practice
Wednesday
Technical Interview Prep
Thursday
Many-To-Many Independent Project
(Week 9)
Authentication with Identity
Weekend
Authentication with Identity Objectives
Weekend
Async and Await
Weekend
Introduction to Authentication, Authorization, and Identity
Weekend
Identity Setup and Configuration
Weekend
The Identity Model
Weekend
Authentication with Identity: User Registration Controller
Weekend
Authentication with Identity: User Registration ViewModel, Validation, and Views
Weekend
Authentication with Identity: User Login and Logout
Weekend
Adding Authorization and Associating Users with Items
Weekend
Journal #12
Sunday
Journal #12 Discussion
Sunday
Library Catalog, Recipe Box - Part 1
Sunday
Further Exploration Opportunities with Identity
Tuesday
Library Catalog, Recipe Box - Part 2
Wednesday
Library Catalog, Recipe Box - Part 3
Wednesday
Jokes and Appropriate Humor
Wednesday
Open Source Projects
(Week 10)
Authentication with Identity Part 2
Sunday
Library Catalog, Recipe Box - Part 5
Sunday
Making an API Call with RestSharp
Sunday
Deserializing API Responses with Newtonsoft.Json
Sunday
API Calls in an ASP.NET Core MVC App
Monday
Library Catalog, Recipe Box - Part 6
Tuesday
Library Catalog, Recipe Box - Part 7
Wednesday
Internship Overview
Wednesday
Applying for Internships Pt. 1
Wednesday
Technical Interview Practice
Wednesday
Whiteboard Practice
Thursday
Authentication with Identity Independent Project
(Week 11)
Building an API
Weekend
Building an API Objectives
Weekend
Scaffolding a .NET Application with dotnet new
Weekend
Exploring the dotnet new Web API Template
Weekend
Adding a Model and Database
Weekend
Seeding the Database
Weekend
API: Create and Read
Weekend
API: Update and Delete
Weekend
API: Adding Parameters to a Get Request to Support Query Strings
Weekend
Adding API Model Validation
Weekend
Scaffolding API Controllers
Weekend
Further Exploration with APIs
Weekend
Team Week: Project Pitch
Weekend
Journal #13
Sunday
Journal #13 Discussion
Sunday
Building an API - Part 1
Sunday
Configuring Application URLs to Run Two ASP.NET Core Applications
Monday
Building an API - Part 2
Monday
MVC Client: GetAll()
Tuesday
Building an API - Part 3
Tuesday
MVC Client: GetDetails()
Wednesday
Building an API - Part 4
Wednesday
MVC Client: POST, PUT, and DELETE
Wednesday
Informational Interviews
(Week 12)
Building an API Part 2
Sunday
Communicating With An API - Part 1
Monday
Communicating With An API - Part 2
Tuesday
Communicating With An API - Part 3
Wednesday
Review: Internship Overview
Wednesday
Applying for Internships Pt. 2
Wednesday
Weekly Technical Interview Prep
Thursday
Basic Web Applications Independent Project
(Week 13)
Team Week
Weekend
Team Week Objectives
Weekend
Git with Collaborators: Setup
Weekend
Git with Collaborators: Workflow
Weekend
Rewriting History with Git
Weekend
Learning More About Git
Weekend
Practicing the Git Workflow
Weekend
Pull Requests with Branches
Weekend
Pull Requests with Forks
Weekend
Hosting a MySQL database and ASP.NET Core API or Web APP on Azure
(Week 14)
Team Week Part 2
Weekend
Team Week Objectives
Wednesday
Team Week Presentations and Code Review
Search
Tracks
Handbook