
Craig Dennis
Treehouse Teacher
Portland, OR
I am a developer / mentor seeking to make this world better than it was yesterday. I am a proud father. You can find me around Internettown as craigsdennis.
Topics & Specialties
Courses & Workshops I've Taught
-
- 1
- 3
Python for Kids
Learn the building blocks of the wonderful general purpose programming language Python.
-
8 minPractice
Practice Input and Output in Python
You've got the ability to get information from the user, input, and show them some results: output. Let's put your skills to work!
Viewed -
- 1
Practice Creating and Using Functions in Python
Practice your function skills
-
- 1
- 2
Introduction to pandas
Pandas provides fast, flexible, and expressive data structures that have been designed to make working with relational or “labeled” data not only easy, but also intuitive. It’s the fundamental high-level building block for doing practical and real-world data analysis in Python.
-
- 1
- 2
- 3
Introduction to NumPy
NumPy is short for Numerical Python. It is the fundamental package for scientific computing. You will see it at play in just about everywhere Python needs to deal with data. This course gives a gentle introduction to the powerful library.
-
- 1
- 2
- 3
Introducing Lists
Lists are a powerful data type that allows you to store multiple ordered values in a single container. You are gonna love them.
-
- 1
- 2
- 3
- 4
Python Basics
Learn the building blocks of the wonderful general purpose programming language Python.
-
- 1
- 2
- 3
Java Arrays
Arrays are a container object that allow you store many values of the same type in a single variable
-
- 1
- 2
- 3
Introduction to Selenium
As web applications grow in size it becomes difficult to reliably and thoroughly verify that the application behaves as intended. Manually stepping through the system gets tedious and time consuming. That's where automated testing tools become invaluable. In this course we will learn to use Selenium WebDriver, one of the most popular utilities for automating interactions with web browsers, to build automated tests for the purpose of verifying and maintaining a quality application.
-
- 1
- 2
- 3
Introduction to Big Data
Big data represents an entire ecosystem of data sets, tools, and applications. This course is intended to get you familiar with the concepts, problem spaces, and overall ecosystem of Big Data.
-
4 minPractice
Practice Input and Output in Java
In this Practice Session we will work with I/O in Java.
Viewed -
- 1
- 2
- 3
- 4
Introduction to Functional Programming
Functional Programming is an old paradigm, but one that is relatively new to the Java world. In this course we will explore how to take advantage of the power that comes with thinking declaratively.
-
- 1
- 2
- 3
- 4
Java Objects
Java is an Object Oriented Programming language. Literally everything you interact with is an object, so understanding them is critical to your Java foundational base. In this course, we will learn how to create, use and express ideas using objects.
-
58 minWorkshop
Observer Design Pattern using Java
In this workshop we will take a look at the popular software design pattern Observer.
Viewed -
37 minWorkshop
Introduction to Design Patterns
Design patterns are a collection of language agnostic solutions to common programming problems. This Workshop is a quick overview that will get you familiar with their origin and how to find and use them.
Viewed -
115 minWorkshop
Build a REST API in Spark
Together we'll explore how to build a REST API in the wonderful Spark micro-framework.
Viewed -
- 1
- 2
Intro to Java Web Development with Spark
Spark is a Micro-framework that allows you to spin up a web server fairly easily.
-
- 1
- 2
- 3
Unit Testing in Java
Unit testing is a Java best practice that ensures your code is working how it was intended. It is a critical habit that you should develop early on in your coding adventures.
-
30 minWorkshop
Dependency Management with Gradle
This workshop will walk through what dependencies are, why you want them, how to use them, and finally how to manage them.
Viewed -
38 minWorkshop
Feeling Loopy with Java
Let's take a deeper dive together in this live workshop about the different types of loops in Java.
Viewed -
- 1
- 2
- 3
- 4
Build a JavaFX Application
JavaFX is the de facto way to make Graphical User Interfaces (or GUIs) in Java. It is robust and customizable, and getting familiar with its APIs will expose many application design best practices.
-
16 minWorkshop
Java Lambdas
Lambdas are anonymous functions. They were added to the language in Java 8, and can be used any place a Single Abstract Method was used before.
Viewed -
- 1
- 2
- 3
Local Development Environments
This course will introduce you how to set up your development environment on your local machine. We will take a deeper look at the Java technology and learn tips, tricks and best practices that will make you more productive.
-
30 minWorkshop
HTTP: Do you GET it?
Let's explore and demystify the language of the Internet, HTTP.
Viewed -
- 1
- 2
- 3
Java Basics
In this course you will gain all the knowledge you will need to build an interactive command line program in Java. No prior programming experience is required. You will create an interactive game that prompts users for different parts of a sentence and then generates a story using those words.