The modern python 3 bootcamp by colt steele Page

The Modern Python 3 Bootcamp by Colt Steele



Return to Python Coursesm, Python or Courses

The Modern Python 3 Bootcamp

A Unique Interactive Python Experience With Nearly 200 Python Exercises and Python Quizzes

As of June 2020:
* Ratings 4.6 out of 5 (18,481 ratings)
* 70,121 students enrolled
* Created by Colt Steele
* Last updated 5/2020

This course includes:
* 29.5 hours on-demand video
* 123 articles
* 8 downloadable resources
* 135 coding exercises
* Full lifetime access
* Access on mobile and TV
* Certificate of Completion

What you'll learn


* Learn all the coding fundamentals in Python!
* Work through nearly 200 exercises and quizzes!
* Learn about all of the latest features in Python 3.6
* Use Python to create an automated Python web crawler and Python scraper
* Make complex Python HTTP requests to APIs using Python
* Master the quirks of Python style and Python conventions
* Really Really Understand Object Oriented programming in Python
* Learn Python testing and Python TDD (Test Driven Development) with Python
* Write your own Python Decorators and Python higher order functions
* Write your own Python Generators and other Python Iterators
* Confidently work with Python Lambdas
* Master tricky topics like Python Multiple Inheritance and Python Polymorphism
* Build Python games with Python
* Build Python larger projects that span across multiple Python files
* Work with all the Python data structures: Python lists, Python dictionaries, Python sets, Python tuples, and more!
* Become an Python expert at Python list comprehensions and Python dictionary comprehensions
* Master built-in python functions like Python zip and Python filter
* Handle Python errors and debug Python code
* Write your own custom Python modules
* Work with files, including Python CSV

Course content



376 lectures

30:17:31


=Course Introduction

=
27:21 - Course Introduction - 05:52
* Python3 vs. Python2 - 06:55
* How The Exercises Work - 04:46
* Where Should You Start? - 03:24
* How The Course is Structured - 6:24


----


=MAC/LINUX Command Line Fundamentals

=
52:28

* Why Use The Command Line? - 05:08
* Command Line Installation: MAC - 02:10
* Absolute Paths and PWD - 05:44
* Using CD - 05:06
* Using LS - 06:28

Command Line Fundamentals
4 questions
Making Directories with MKDIR
02:59
Creating Files with TOUCH
04:48
Quick Activity: Salamanders and Frogs
04:07
Moving and Renaming with MV
05:29
Deleting Files with RM
02:03
Deleting Directories (Plus Tangents on Permissions and MAN Pages)
08:26
Command Line Fundamentals II
3 questions





=WINDOWS Command Line Fundamentals

=
38:14
Why Do You Need The Command Line?
04:58
Using Powershell
04:45
Paths, LS, and PWD
04:35
Using The CD Command
08:05
Command Line Fundamentals (Windows)
4 questions
OPTIONAL: Making Directories with MKDIR
03:29
OPTIONAL: Making Files (it's...complicated)
06:41
Creating a Touch Function
00:54
OPTIONAL: Removing Files and Folders with RM
04:47
Command Line Fundamentals II (Windows)
2 questions

MAC Python Setup
19:45
Installing Python: MAC
03:16
Optional: Installing Sublime Text
07:57
Our First Python Program!
05:07
Say Your Name
1 question
SOLUTION
00:05
Important Note on Print and the Python Interpreter
03:20

WINDOWS Python Setup
19:11
Installing Python On a PC
05:31
Introducing Sublime Text
04:15
Your First Python Program
06:00
Print Your Name
1 question
SOLUTION
00:05
Important Note on Print and the Python Interpreter
03:20

Numbers, Operators, and Comments
21:59
Section Introduction/Objectives
02:32
Numbers: Ints and Floats
05:02
Quick Ints and Floats Quiz
2 questions
Numbers: Basic Math
02:57
Basic Math Refresher
3 questions
Quick Note: Comments
04:30
One Question Quiz
1 question
Numbers: Weirder Operators
05:00
Numbers Quiz
3 questions
Introduction to the Python Documentation
01:58

Variables and Strings
01:11:10
Variables and Data Types
02:27
Introduction to Variables
07:16
Bank Robbery Money
1 question
SOLUTION
00:03
Variable Naming Restrictions and Conventions
06:18
Data Types Overview
Preview
07:53
What The Heck is Dynamic Typing
Preview
02:32
Super Quick One Question Quiz!
1 question
The Special Value NONE
03:25
Double Vs. Single Quotes
03:45
Make Some Variables!
1 question
SOLUTION
00:15
String Escape Sequences
05:01
Escape Sequence Practice
1 question
SOLUTION
00:15
String Concatenation
05:33
String Concatenation Exercise
1 question
SOLUTION
00:10
String Formatting
03:53
IMPORTANT: Interpolation w/ Udemy Exercises
02:47
Formatting Strings
1 question
SOLUTION
00:09
Strings and Indexes (Indicies?)
03:00
Converting Data Types
05:48
Building a Mileage Convertor With User Input
10:39
Variables and Data Types
8 questions

Boolean and Conditional Logic
01:02:30
Section Introduction and Objectives
03:01
Getting User Input
03:33
Intro to Conditionals
08:06
Lucky Number 7
1 question
SOLUTION
00:05
Number is Odd
1 question
SOLUTION
00:06
Multiple Elifs
02:05
A Word on Truthiness + A Quick Example
06:25
The Joy of Comparison Operators
05:53
Logical AND & OR
06:52
Food Classifying Exercise
1 question
SOLUTION
00:09
LOGICAL NOT
07:27
Boolean Logic Principles
6 questions
A Note on Is Vs. ==
05:17
Bouncer Code-Along and Nested Conditionals
12:50
Boolean & Conditional Logic in Python
3 questions
Positive or Negative Checking
1 question
SOLUTION
00:22
Calling in Sick
1 question
SOLUTION
00:18

Rock, Paper, Scissors
34:20
Rock, Paper, Scissor Mini Project: BASIC Version
03:04
RPS Mini Project: BASIC Version Solution
07:40
RPS Mini Project: Refactoring Time
08:37
Another Cleaner RPS Solution
00:33
RPS Mini Project: Playing Against The Computer
03:13
RPS Mini Project: Computer AI Solution
11:13

Looping in Python
58:07
Section Introduction
04:53
IMPORTANT ANNOUNCEMENT ON LOOPS EXERCISES
00:23
The Basics of For Loops
06:30
Exploring Ranges In Depth
06:02
Quick Ranges Quiz
4 questions
For Loop and Range Exercise
1 question
SOLUTION
00:31
EXERCISE: Screaming Repeating
04:01
EXERCISE: Unlucky Numbers
08:33
Introducing While Loops
09:01
EXERCISE: Emoji Art
08:48
EXERCISE: Stop Copying Me
04:36
The Break Keyword
04:34
Stuck in a Loop
3 questions
While Loop Exercise
1 question
SOLUTION
00:15
Loops
4 questions
+
Guessing Game
4 lectures
29:21
Guessing Game Mini Project
03:21
Guessing Game Solution
10:20
Improving Rock Paper Scissors
11:29
SIDE NOTE: Python Style and PEP8
04:11
+
Lists
14 lectures
01:06:39
Intro to Lists and Objectives
07:04
Creating Lists
04:31
Creating Lists Exercise
1 question
SOLUTION
00:05
Accessing Data in Lists
05:12
Accessing List Data
1 question
SOLUTION
00:10
Iterating Over Lists
07:39
List Iteration Exercise
1 question
SOLUTION
00:18
List Methods: Append, Insert, and Extend
08:42
Lists Basics Exercise
1 question
SOLUTION
00:14
List Methods: Clear, Pop, and Remove,
07:09
Lists Quiz
4 questions
List Methods: Index, Count, Sort, Reverse, and Join
09:04
Lists Methods Exercise
1 question
SOLUTION
00:12
Slices
14:46
Slices Quiz
3 questions
Swapping Values in Lists
01:31
+
Lists Comprehensions
11 lectures
30:51
Note About The List Comprehension Slides
00:57
List Comprehension
08:38
List Comprehension With Conditional Logic
05:23
List Comprehension Exercises
1 question
SOLUTION
00:11
More List Comprehension Exercises
1 question
SOLUTION
00:15
Another List Comp Exercise
1 question
SOLUTION
00:04
List Exercises 4
1 question
SOLUTION
00:08
Nested Lists
11:52
List Exercises 5
1 question
SOLUTION
00:02
One More Nested List Comp Challenge
1 question
SOLUTION
00:31
Lists Recap
02:49
+
Dictionaries
14 lectures
54:09
Intro To Dictionaries: Creating Dictionaries
08:23
Dictionary Creation Exercise
1 question
SOLUTION
00:12
Accessing Data in Dictionaries
03:28
Access Data in a Dictionary Exercise
1 question
SOLUTION
00:20
Iterating Dictionaries
05:45
Totaling Donations Exercise
1 question
SOLUTION
00:21
Using In With Dictionaries
03:42
Dictionary Methods: Clear, Copy, Fromkeys, and Get
08:46
Dictionary Access
1 question
SOLUTION
00:38
Fromkeys Exercise
1 question
SOLUTION
00:04
Dictionary Methods: Pop, Popitems, and Update
05:49
Dictionary Methods Exercise
1 question
SOLUTION
00:11
Spotify Playlist Example
08:53
Dictionary Comprehension
07:36
Dictionaries Quiz
3 questions
+
Dictionary Exercises
4 lectures
00:39
State Abbreviations Exercise
1 question
SOLUTION
00:10
List to Dictionary Exercise
1 question
SOLUTION
00:20
Vowels Dict Exercise
1 question
SOLUTION
00:03
ASCII Codes Dictionary
1 question
SOLUTION
00:04
+
Tuples and Sets
6 lectures
34:46
Section Introduction
10:04
Tuple Looping and Methods
04:29
Introduction to Sets
06:49
Set Methods and Set Math
06:40
Tuples and Sets Quiz
3 questions
Tuples and Sets Exercise
1 question
SOLUTION
00:23
Set Comprehension and Recap
06:21
+
Functions Part I
16 lectures
01:03:35
Introduction to Defining Functions
06:44
Defining Functions
03:47
Your First Function
1 question
SOLUTION
00:02
The Magical Return Keyword
06:04
Writing a coin_flip Function Using Random
05:02
Super Quick Return Exercise
1 question
SOLUTION
00:01
Generating Evens Exercise
1 question
SOLUTION
00:09
Parameters
09:11
Yell Function Exercise
1 question
SOLUTION
00:10
Common Mistakes When Returning
04:26
Fix This Function!
1 question
SOLUTION
00:20
Default parameters
08:21
Default Parameter Exercise - Talking Animals
1 question
SOLUTION
00:38
Keyword Arguments
04:28
Scope
09:19
Docstrings and Functions Recap - WE DID IT!
04:52
+
Functions Exercises
14 lectures
04:07
Product
1 question
SOLUTION
00:03
return_day
1 question
SOLUTION
00:33
last_element
1 question
SOLUTION
00:08
number_compare
1 question
SOLUTION
00:05
single_letter_count
1 question
SOLUTION
00:09
multiple_letter_count
1 question
SOLUTION
00:11
list_manipulation
1 question
SOLUTION
00:10
is_palindrome
1 question
SOLUTION
00:26
frequency
1 question
SOLUTION
00:04
multiply_even_numbers
1 question
SOLUTION
00:17
capitalize
1 question
SOLUTION
00:07
compact
1 question
SOLUTION
00:21
intersection
1 question
SOLUTION
00:47
partition
1 question
SOLUTION
00:41
+
Functions Part II
9 lectures
31:42
Introduction and *args
08:14
*args Exercise: The Purple Test
1 question
SOLUTION
00:14
**kwargs
07:20
**kwargs Exercise
1 question
SOLUTION
00:16
Ordering Parameters
04:51
Tuple unpacking
04:43
Unpacking Exercise
1 question
SOLUTION
00:16
Dictionary unpacking
04:46
calculate
1 question
SOLUTION
01:00
Args and Kwargs
4 questions
+
Lambdas and Built-In Functions
23 lectures
01:33:31
Lambdas
09:55
Writing Your Own Lambda!
1 question
SOLUTION
00:07
Map
06:16
Map Time Exercise
1 question
SOLUTION
00:17
Filter
13:47
Filter Exercise!
1 question
SOLUTION
00:17
Any and All
05:18
Generator Expressions and Using sys.getsizeof
04:49
Any/All Exercise
1 question
SOLUTION
00:24
Sorted
07:53
Min and Max
08:02
Extremes Exercise - Using Min and Max
1 question
SOLUTION
00:07
Reversed
04:08
Len() and a Special Sneak Peak of OOP!
07:31
Abs(), Sum(), and Round()
07:12
Greatest Magnitude Exercise
1 question
SOLUTION
00:09
sum_even_values
1 question
SOLUTION
00:23
sum_floats
1 question
SOLUTION
00:23
Zip Basics
04:38
More Complex Zip Examples
11:07
Interleaving Strings (kind of tough!)
1 question
SOLUTION
00:31
triple_and_filter
1 question
SOLUTION
00:07
extract_full_name
1 question
SOLUTION
00:06
+
Debugging and Error Handling
7 lectures
47:45
Section Introduction
01:36
Common Types of Errors in Python
08:49
Raising Our Own Errors
08:56
Try and Except Blocks
06:44
Try, Except, Else, and Finally!
11:18
Debugging With PDB
10:13
Errors Quiz
4 questions
Debugging and Error Handling Exercises
1 question
SOLUTION
00:09
+
Modules
11 lectures
52:35
Section Introduction
01:45
Working With Built-In Modules
09:46
Built In Modules Exercise
1 question
SOLUTION
00:05
Built-In Modules: Slightly Tougher Challenge
1 question
SOLUTION
00:21
Custom modules
05:11
Custom Module Exercise
1 question
SOLUTION
00:22
Built-in and Custom Imports Quiz
4 questions
Note about using the termcolor module on Windows
00:35
Installing External Modules And TermColor
10:10
ASCII Art Exercise
11:20
Using The autopep8 Package to Clean Up Code
06:16
The Mysterious __name__ variable
06:43
External Modules and Module Patterns Quiz
5 questions
+
OPTIONAL SECTION: Making HTTP Requests with Python
8 lectures
01:12:13
HTTP: START HERE
01:50
HTTP Introduction and Crash Course
13:51
HTTP Verbs and APIs
10:27
Writing Your First Python Request
07:28
Requesting JSON with Python
11:18
Sending Requests with Params
10:28
API Project
02:04
API Project Solution
14:47
+
Object Oriented Programming
16 lectures
01:31:07
Section Introduction and Objectives
02:59
Defining Classes and Objects
06:35
Abstraction and Encapsulation
14:14
Creating Classes and Instances
04:22
World's Simplest Class Exercise
1 question
SOLUTION
00:13
The __init__ method
07:28
Your First Class - Social Media Comments
1 question
SOLUTION
00:09
Underscores: Dunder Methods, Name Mangling, and More!
07:41
Adding Instance Methods
12:33
Bank Account OOP Exercise
1 question
SOLUTION
00:08
Introducing Class Attributes
04:44
Class Attributes Continued
12:42
Chicken Coop Exercise
1 question
SOLUTION
00:09
Class Methods
06:43
A More Advanced Class Method Example
07:24
The __repr__ method
03:02
OOP Part 1
5 questions
+
Deck Of Cards Exercise
5 lectures
31:02
Deck Of Cards Intro Video
06:23
Deck of Cards Exercise Introduction Text
01:12
Deck of Cards Tests
1 question
SOLUTION
00:04
Deck of Cards Solution: Card Class
04:11
Deck of Cards Solution: Deck Class
19:12
+
OOP Part 2
12 lectures
01:23:26
Inheritance and Objectives
07:01
All About Properties
10:50
Introduction to Super()
07:19
Inheritance Example: User and Moderator
09:21
Roleplaying Game Classes
1 question
SOLUTION
00:15
The Crazy World of Multiple Inheritance
09:42
WTF is Method Resolution Order(MRO)
09:04
MRO Genetics
1 question
SOLUTION
00:09
Polymorphism Introduction
06:41
Special __magic__ methods
14:19
Making a Grumpy Dictionary - Overriding Dict
08:39
Special Methods Train
1 question
SOLUTION
00:05
OOP Part 2
6 questions
+
Iterators & Generators
14 lectures
53:49
Section Introduction and Objectives
01:25
Iterators vs. Iterables?!?!?
05:34
Writing Our Own Version of for loops
06:54
Writing a Custom Iterator
07:43
Iterators Quiz
3 questions
Making our Deck class Iterable
02:21
Introduction to Generators
08:55
Week Generator Exercise
1 question
SOLUTION
00:12
yes_or_no
1 question
SOLUTION
00:09
Writing a Beat Making Generator
06:54
Generators Quiz
3 questions
make_song
1 question
SOLUTION
00:09
Testing Memory Usage With Generators
05:59
get_multiples
1 question
SOLUTION
00:04
get_unlimited_multiples
1 question
SOLUTION
00:09
Generator Expressions AND Speed Testing!
07:19
+
Decorators
14 lectures
48:41
Higher Order Functions
09:29
Introduction to Decorators
06:20
Decorators With Different Signatures
04:27
Using Wraps To Preserve Metadata
04:44
Decorators Quiz
4 questions
Building A Speed-Test Decorator
07:32
show_args
1 question
SOLUTION
00:16
Another Example: Ensuring Args With A Decorator
03:26
double_return
1 question
SOLUTION
00:14
ensure_fewer_than_three_args
1 question
SOLUTION
00:07
only_ints
1 question
SOLUTION
00:08
ensure_authorized
1 question
SOLUTION
00:06
Writing an ensure_first_arg_is Decorator
05:43
Enforcing Argument Types With A Decorator
05:59
delay
1 question
SOLUTION
00:08
+
Testing With Python
11 lectures
01:17:43
Section Introduction
04:17
Why Test?
08:28
Assertions
08:56
Assertions Quiz
4 questions
Doctests
11:30
Doctests Exercise
00:10
Introduction to Unittest
13:07
Other Types of Assertions
09:21
Before and after hooks
08:15
Testing Card/Deck Exercise
00:29
Testing Card/Deck Exercise Intro
03:08
Testing Card/Deck Solution
10:02
+
File IO
10 lectures
31:49
Section Introduction
02:33
Reading Text Files: Open and Read
06:03
Reading Files: Seek and Cursors
07:39
The With Statement
03:43
Writing to Text Files
03:55
File Modes
07:21
Text Reading Quiz
3 questions
copy
1 question
SOLUTION
00:12
copy_and_reverse
1 question
SOLUTION
00:11
statistics
1 question
SOLUTION
00:06
find_and_replace
1 question
SOLUTION
00:05
+
Working With CSV and Pickling!
10 lectures
49:47
Reading CSV Files
13:08
Writing to CSV Files: Writer
09:07
Writing to CSV Files: DictWriter
11:55
CSV Quiz
5 questions
add_user
1 question
SOLUTION
00:04
print_users
1 question
SOLUTION
00:05
find_user
1 question
SOLUTION
00:09
Pickling Time!
07:14
Extra Fancy JSON Pickling
07:41
update_users
1 question
SOLUTION
00:11
delete_users
1 question
SOLUTION
00:11
+
Web Scraping with BeautifulSoup
8 lectures
01:21:01
Introduction to Web Scraping
06:50
Is Scraping...OK?
07:50
Optional HTML/CSS Crash Course
15:35
Selecting with BeautifulSoup: find()
09:46
Selecting With BeautifulSoup: CSS Style Selectors
04:04
Accessing Data with Beautiful Soup
06:45
Navigating With BeautifulSoup
13:14
Our First Scraping Program
16:57
+
Web Scraping Project
7 lectures
01:18:00
Quote Scraping Project: Intro
09:22
Scraping Project
01:11
Quote Scraping Project: Part 1
14:52
Quote Scraping Project: The Game Logic
16:02
Quote Scraping Project: Refactoring
09:39
Quote Scraping Project: Adding CSV
09:58
Creating A Web Crawler with Scrapy
16:56
+
Regular Expressions
17 lectures
01:53:09
Intro To Regular Expressions
13:28
Writing Basic Regex
10:09
Regex Quiz
3 questions
Regex Basics: Quantifiers
08:07
Quick Quantifiers Quiz
3 questions
Regex Basics: Character Classes and Sets
04:22
Character Class Quiz
3 questions
Regex Basics: Anchors and Boundaries
03:42
Quick Anchors and Boundaries Quiz
2 questions
Regex Basics: Logical Or and Capture Groups
10:28
Final Regex Quiz
2 questions
Introduction to the RE Module
10:29
Validating Phone Numbers With Python
10:17
Time Validating
1 question
SOLUTION
00:17
Parsing URLs with Python
09:31
Parsing Bytes Exercise
1 question
SOLUTION
00:16
Symbolic Group Names
04:21
Date Parsing Exercise
1 question
SOLUTION
00:20
Regex Compilation Flags
08:45
Regex Substitution Basics
09:18
Regex Profanity Filter
1 question
SOLUTION
00:17
Swapping File Names
09:02
+
Python + SQL
12 lectures
01:27:29
Intro to Section
03:39
Installing SQLite3
03:18
SQL Basic:s: Creating Tables
07:01
SQL Basics: Inserting
05:01
SQL Basics: Selecting
06:59
Connecting to a DB With Python
07:19
Inserting With Python
08:44
Bulk Inserts With Python
04:55
Selecting With Python
04:36
SQL INJECTION!
08:58
Scraping to a Database Pt. 1
20:01
Scraping to a Database Pt. 2
06:58
+
Massive Section of Challenges!
7 lectures
03:19
reverse_string
1 question
list_check
1 question
remove_every_other
1 question
sum_pairs
1 question
vowel_count
1 question
SOLUTIONS Part 1
00:17
Titleize
1 question
find_factors
1 question
includes
1 question
repeat
1 question
truncate
1 question
SOLUTIONS Part 2
00:22
two_list_dictionary
1 question
range_in_list
1 question
same_frequency
1 question
nth
1 question
find_the_duplicate
1 question
SOLUTIONS Part 3
00:23
sum_up_diagonals
1 question
min_max_key_in_dictionary
1 question
find_greater_numbers
1 question
two_oldest
1 question
is_odd_string
1 question
SOLUTIONS Part 4
00:15
valid_parentheses
1 question
reverse_vowels
1 question
three_odd_numbers
1 question
mode
1 question
SOLUTION: mode
01:05
running_average
1 question
SOLUTIONS Part 5
00:40
letter_counter
1 question
once
1 question
Next Prime Generator
1 question
SOLUTIONS Part 6
00:14
Requirements
A computer! We've got you covered whether you have a Mac or a PC.
Prepare to write thousands of lines of python exercises!
No previous experience with Python or coding is required.
Description
Updated in November 2018 to include SQL + Python!

Welcome to the Modern Python 3 Bootcamp! I've launched my fair share of Udemy courses, but I've never done anything quite this crazy.

This course is a unique experience on Udemy. There are dozens of existing Python courses you can choose from, but this course is the only one that has nearly 200 interactive challenges you can complete right here in your browser. I didn't just tack on a couple of exercises at the end; this course is fully built around the coding exercises. This course is all about getting you writing code ASAP, rather than sitting back watching a bunch of videos.

In development, I referred to this course as a hybrid between a typical Udemy course and an interactive Codecademy-style course. You get over 25 hours of in-depth videos and my dumb jokes along with meticulously created exercises and quizzes to test your knowledge as you go.

Many of the older Python courses still focus on Python 2. This course is all about writing the most modern, up-to-date Python code, so Python 3 was the obvious choice. The course covers all the latest additions and changes to the Python language. The course also places a large emphasis on thinking like a Python developer, and writing code the "Pythonic" way.

As for the curriculum, This course teaches all the key topics covered by other Python courses, but also covers more advanced topics like web scraping, crawling, and testing, just to name a few. Please feel free to explore the curriculum and watch some of the free preview videos!

Python is consistently ranked in either first or second place as the most in-demand programming languages across the job market. It has applications in data science, machine learning, web development, self-driving cars, automation, and many many other disciplines. There has never been a better time to learn it!

I'm spent years teaching people to program at in-person bootcamps in the San Francisco Bay Area. In recent years, I've started bringing my methods from the classroom to the online world. In my first year teaching online, I was selected as the Best Newcomer Instructor in the Udemy Instructor Awards 2015. I'm passionate about making the best possible online learning experiences that mirror my in-person courses.

If you want to take ONE COURSE to master Python take this course.

Who this course is for:
Anyone who wants to learn Python.
Anyone who is curious about data science, machine learning, or web development
Anyone who wants to get tons of practice with the interactive exercises.


Featured review


Ian Khoo
Ian Khoo ( 5 courses, 3 reviews )
a year ago
Awesome course !! Really really loved it !! Colt teaches with passion and patience, course structure is easy to learn and interesting. I used to have no prior knowledge of coding, but this Python course has really sparked my interest in Computer Science and Data Learning, allowing me to explore different possibilities and career choices. Thanks Colt ! :))