Fancy-looking fully-connected graph, with Innovation Co-Lab roots/ text next to it

The Front Door to the Innovation Co-Lab.

Our Roots Program is our series of workshops and lectures on technology topics, open to anyone in the Duke Community. Through these events and online platforms, students, faculty or staff of any skill and confidence level can comfortably start to gain an understanding of how to make use of a variety of tools and technologies. The goal here is not to make you an expert — we know that takes time — but to help you get to the point where you’re excited and confident about starting your own project or continuing your education. We offer workshops in topics like HTML, CSS, JavaScript, Python, research computing, 3D modeling and fabrication, and many more.

If you’ve got an idea for a topic we’re not covering, or if you’re an expert in a topic you’d like to teach, let us know.

All classes are free — just enroll below.

Upcoming classes

Drones: A Hands-On Technology Exploration

Dates:

  • Thu, Mar 21, 12:00 – 2:00 pm
  • Thu, Mar 28, 12:00 – 2:00 pm

Location:

TEC - Classroom

Facilitators:

  • Estlin Haiss
  • Dana Bobbert II

Note: This is a multi-day course.  By registering, you’re committing to attending all session dates above.

Course Description:

Learn about drone use cases, the technology, practice and policy, Duke’s emerging drone program, and get hands-on flight time.

Drones are one of the most important new technologies to come along in a generation. Low cost systems with advanced flight controls have made it possible for someone with little experience to successfully operate these aircrafts. Innovating in the skies was once territory reserved for deep-pocketed corporations but access to this technology is changing all of that. Scientists, entrepreneurs, photographers, filmmakers, surveyors, and public safety officers all have an amazing new toolset to change their industry and open new opportunities. But first, they need to understand how this technology can work for them and how to navigate various drone regulatory bodies.

In this class we will discuss the various possibilities drones offer and showcase examples of how these systems might help you, including an exploration in video use cases from a seasoned veteran. We will discuss policies surrounding drone flight both nationally, locally and at Duke as well as how to begin the path toward your commercial operators license (Part 107). The class will end with a hands-on flight lab where students will have an opportunity to not just look at a drone, but to fly one!

Please note: the first session will take place at the Innovation Co-Lab; the second session will take on the Cohan Field and involves a hands-on flight lab. We will meet at the Cohan Field for the second session. You must attend the first session to be eligible to participate in the flight lab.

Enrollment:

5 / 20 Enrolled

Register for this class

Build Your Second iPhone or iPad App

Dates:

  • Mon, Mar 25, 3:00 – 5:00 pm

Location:

TEC - Classroom

Facilitators:

  • James Daniel

Course Description:

Learn the UIViewController, UITableViewController, UITableViewCell, UIImageView, UserDefaults, UINavigationController and more.

This class will show you how to create a more complicated application and how to navigate through the stumbling blocks of creating a more complex app.

This class is for students with some iOS experience and will not cover basic concepts of programming.
We will also cover third party framework use and dependency management with CocoaPods.
You will also touch on data persistence using Firebase and Realm. While we will not go in depth with those frameworks their use and value will be discussed.

Before you show up to class, download and install Xcode 10 from the AppStore on your Mac. Install CocoaPods and have it working.

You must have a mac to participate in this class. Some content will be provided since we will be walking through exercises during the class.

Knowledge of iOS development and swift are required or you might be lost.

This class is part of our Advanced Track

Our Advanced Track probes deeper into technology topics, specific languages, and frameworks.  These topics assume that you have experience with programming and in some cases, in specific languages.

Enrollment:

2 / 30 Enrolled

Register for this class

Create a Website with Bootstrap

Dates:

  • Tue, Mar 26, 1:00 – 3:00 pm

Location:

TEC - Classroom

Facilitators:

  • Joel Crawford-Smith

Course Description:

Learn how to incorporate Bootstrap 4 into any project. Bootstrap is a comprehensive yet modular framework to style and add interactivity to a website. Prerequisites are familiarity with HTML, CSS, and very basic jQuery. Participants will learn how to set up, as well as, retro-fit Bootstrap to any project so they can sit at the cool table of developers who choose Bootstrap as their framework of choice.

Enrollment:

6 / 30 Enrolled

Register for this class

Introduction to Javascript

Dates:

  • Wed, Mar 27, 5:00 – 7:00 pm

Location:

TEC - Classroom

Facilitators:

  • Jeffrey Gula

Course Description:

Javascript is integral to everything from modern websites to desktop applications. Javascript is a scripting language that enables websites and applications to update and modify content, control multimedia, run complex animations and much more. This class will teach you how to take basic html and dynamically interact with it with the mouse and keyboard! We’ll learn about events, the DOM, variables, functions and more!

This class is part of our WebDev Basics Track

Our WebDev Basics Track is designed for beginners with no experience in web development.  These courses will provide all of the skills necessary to build and maintain an interactive website from scratch.

Enrollment:

6 / 30 Enrolled

Register for this class

Docker

Dates:

  • Thu, Mar 28, 3:00 – 4:00 pm

Location:

TEC - Classroom

Facilitators:

  • Danai Adkisson

Course Description:

This course is designed to provide an introduction to using Docker. Docker provides clean, consistent, and scalable environments for applications. During this class we will learn about what Docker is, how we can implement Docker, and finally we will put together a "Dockerized" application.

Prerequisites
There are no prerequisites to taking this class, but basic exposure to using the command line is recommended.

Linux/Mac users
https://kinbiko.com/shell/basic-bash-commands/

Windows users
https://programminghistorian.org/en/lessons/intro-to-powershell
Windows Folks just read through the "Getting Started" components. No need to go on
to the "doing more" section.

Before the Course

Install Docker
- Windows https://docs.docker.com/docker-for-windows/install/
- Mac https://docs.docker.com/docker-for-mac/install/
- Linux https://docs.docker.com/install/#supported-platforms select your distro on the page

Install Docker-Compose
Assuming you do not have an older version of Docker, the Windows and Mac folks "should" already have docker-compose installed. You can test this by typing `docker-compose` in a terminal window.

Linux users go here https://docs.docker.com/compose/install/ and follow the linux instructions

Questions?
If you have questions about the class or having trouble with the installs prior to the class please email da129@duke.edu with subject line "Docker Roots Class"

This class is part of our Intermediate Track

Our Intermediate Track includes extensions and continuations of topics from the Basics Track.  It assumes that you have some basic programming experience or have taken the Basics Track.

Enrollment:

10 / 30 Enrolled

Register for this class

Bring your iOS app for some master jedi help

Dates:

  • Fri, Mar 29, 12:00 – 2:00 pm

Location:

TEC - Classroom

Facilitators:

  • James Daniel

Course Description:

If you have an app - class project or a personal project - and want some expert help with your iOS app - bring it to the class and get personal help with moving your idea forward.

Enrollment:

0 / 30 Enrolled

Register for this class

Adobe Illustrator for Laser Cutting

Dates:

  • Mon, Apr 1, 6:00 – 8:00 pm

Location:

TEC - Classroom

Facilitators:

  • Kristianna Elbert

Course Description:

This is a class for beginners in Illustrator: all that you need to bring is a laptop with Adobe Illustrator downloaded on it!

By the end of this class, you will know the basics of creating custom shapes, vectorizing images, and laser cutting and engraving your work.
We'll be creating business cards that you can send to a laser cutter. You'll learn tips on how to get the best engraving on the Co-Lab's Zing and Fusion laser engravers and, time permitting, engrave and cut out your card on plywood.

Enrollment:

26 / 30 Enrolled

Register for this class

Adobe InDesign for Print Ad Design, A Co-Lab Roots + DukeCreate Workshop

Dates:

  • Tue, Apr 2, 3:00 – 5:00 pm

Location:

TEC - Classroom

Facilitators:

  • Sandra Bermond

Course Description:

This class is the final of the Design series, where students will learn how to use an array of Adobe Cloud products via designing multiple elements for a fictional business. In this last class, we will talk about advertisement and magazines before looking at Adobe InDesign. We will look at the different tools offered by Adobe InDesign while re-creating an advertisement for a product of our fictional business decided on during the first class of the series.

Although this class is part of a series, you may attend it without attending the others. No experience necessary.

Please bring a laptop and make sure to have downloaded and installed Adobe InDesign before class. Students can get access to all Adobe software for free via https://software.duke.edu/

Enrollment:

6 / 30 Enrolled

Register for this class

Making and Printing Your First 3D Model Using Fusion 360, A Co-Lab Roots + DukeCreate Workshop

Dates:

  • Wed, Apr 3, 12:00 – 2:00 pm

Location:

TEC - Classroom

Facilitators:

  • Mitchell Greene

Course Description:

This is a class for beginners in 3D modeling. You will need no prior 3D modeling knowledge and no 3D printing knowledge. By the end of this class you will be able to make basic parametric shapes and 3D print the models you produce.

We will be using Fusion 360, a free software application that we'll download and get set up in the class. We will then be making a little box with a sliding lid using an image we will find online or from a provided list. The box will be parametric and fully 3D. Finally, we'll learn how to prepare our model for 3D printing and send them to the printers.

Please bring a computer and if possible, a mouse.

Enrollment:

18 / 30 Enrolled

Register for this class

iPhone Health Technology Development

Dates:

  • Fri, Apr 5, 12:00 – 2:00 pm

Location:

TEC - Classroom

Facilitators:

  • James Daniel

Course Description:

Healthcare is only starting to leverage the power of mobile devices. There are tools that have been developed to help with deployment of care plans, surveys and storing collected health information (pulse, glucose, weight). We will talk about each of the Apple health frameworks and what they are used for, how to access them and looking through their sample apps.

Creating a sample survey app using research kit will be the simple project that we will be walking through.

Before you show up to class, download and install Xcode 10 from the AppStore on your Mac. Install CocoaPods and have it working.
You must have a mac to participate in this class. Some content will be provided since we will be walking through exercises during the class.
Knowledge of iOS development and swift are required or you might be lost.

Enrollment:

4 / 30 Enrolled

Register for this class

Introduction to React.js

Dates:

  • Fri, Apr 5, 2:30 – 4:30 pm

Location:

TEC - Classroom

Facilitators:

  • John McCreery

Course Description:

React is a "javascript library for building user interfaces", and is by far the most widely used interface tool. If you are curious as to what React is, what it isn't, how to use it and how to learn more about it, then join us as we walk through an introduction to React.

In this class, we will walk through some fundamental React concepts, and we will build a simple React component together. Then you will learn how you can import open source React components in your project. Finally, we'll take a look at a simple calculator app written in React.

If you have some basic understanding of HTML, Javascript and programming, then you are a perfect fit for this course. No previous React experience required, as we will primarily be focusing on the basics. You don't even need to bring a computer!

All of the course materials will be provided to you via the Roots site after the class. This includes slides, and the small React calculator application files should you want to take a look at it first hand.

Course Objectives:
Gain an understanding of what React is, and what it isn't
Learn the fundamental concepts of React Components
Build a simple react component
Import existing React component library (Material UI)
Walk through a simple calculator, built in React
How to learn more about React

Course prerequisites:
Some basic understanding of javascript is expected (ES6 is a plus, but not required)
Some basic understanding of programming is expected (javascript arrays, functions, loops)
HTML fundamentals

Enrollment:

7 / 30 Enrolled

Register for this class

Web App Series 4 - Deploy Projects with Heroku

Dates:

  • Mon, Apr 8, 1:00 – 3:00 pm

Location:

TEC - Classroom

Facilitators:

  • Aman Ibrahim

Course Description:

Join us for this web app series where you will get to build a web app using Ruby on Rails and React.js. The series will take you from setting up your environment to deployment!

In this course, we will learning how to deploy your application using a service called Heroku. We will be deploying a Ruby on rails application, but this course will be useful for anyone building any application in any language/framework supported by Heroku. Once deployed, we will also learn how to set up DNS for a custom domain name for you web application.

Enrollment:

4 / 30 Enrolled

Register for this class

Soap Making. Let’s clean up Duke!

Dates:

  • Tue, Apr 9, 4:00 – 6:00 pm
  • Tue, Apr 16, 4:00 – 6:00 pm

Location:

Rubenstein Arts Center Co-Lab Studio

Facilitators:

  • Dana Bobbert II

Note: This is a multi-day course.  By registering, you’re committing to attending all session dates above.

Course Description:

Soap... We all use it.
Soap is the most important invention in human history but do you know where it comes from or how it’s made? Join us in this fun arts and crafts class where we learn how to make sudsy bars of usefulness. We’ll also learn how modern tools like 3D printing and online chemistry calculators can improve on this age-old process. This is a get-your-hands-dirty...err clean...class! Participants will have their very own bars at the end of the two sessions workshop.

In this class you will:
- Pair up with another student
- Learn safe materials handling
- Learn about soap making (the time it takes to set, etc…)
- Generate a soap making recipe using an online calculator
- Handle soap making materials
- Create your very own bars of soap

We will provide:
- 1 soap making kit per pair of students
- All the gear to get you started
- A few varieties of fragrances and dyes

Tools requirements:
Nothing is required but if you would like a specific scent for your soap, feel free to bring your own essential oils.

Enrollment:

4 / 12 Enrolled

Register for this class

Intro to Android Development

Dates:

  • Wed, Apr 10, 12:30 – 2:30 pm

Location:

TEC - Classroom

Facilitators:

  • Philabian Lindo

Course Description:

This course serves to offer a brief introduction into the Android mobile operating system and what it takes to create and distribute a native Android mobile application using Android Studio. Through this course you will become more familiar with Android Studio, learn to create a simple layout and the necessary activity code to enable user interaction. You will also lean how to produce a distributable application file and upload it to the Google Play store.

This class is part of our Intermediate Track

Our Intermediate Track includes extensions and continuations of topics from the Basics Track.  It assumes that you have some basic programming experience or have taken the Basics Track.

Enrollment:

4 / 30 Enrolled

Register for this class

360 Degree VR & Animation Techniques, A Co-Lab Roots + DukeCreate Workshop

Dates:

  • Thu, Apr 11, 1:00 – 3:00 pm

Location:

TEC - Classroom

Facilitators:

  • Joseph Johnson
  • Mich Donovan

Course Description:

360° video, 3D VR video and animation has the power to communicate your ideas in powerful ways. This course will review the very accessible tools and products available now that can be used by anyone – no video experience needed. We will cover some specific products including cameras from Insta360, inexpensive and easy to use viewers from Oculus and animation techniques using Keynote and online services such as Vyyond.com.

Enrollment:

8 / 30 Enrolled

Register for this class

iOS Game Development

Dates:

  • Wed, Apr 17, 12:00 – 2:00 pm

Location:

TEC - Classroom

Facilitators:

  • James Daniel

Course Description:

Everyone wants to write a game, but what do you really know about game development?
In this class we will wade into the concepts of game development with a simple dice game. Touching on gamification, rewards, leaderboards and more.
We will start discussions of using Apple's SpriteKit game framework to create 2D games.
Bring your questions and your ideas.

Before you show up to class, download and install Xcode 10 from the AppStore on your Mac.
You must have a mac to participate in this class. Some content will be provided as we will be creating some artifacts as we go through the class.
Knowledge of iOS development and swift are required or you might be lost.

This class is part of our Intermediate Track

Our Intermediate Track includes extensions and continuations of topics from the Basics Track.  It assumes that you have some basic programming experience or have taken the Basics Track.

Enrollment:

2 / 30 Enrolled

Register for this class

Unity + Oculus GO

Dates:

  • Thu, Apr 18, 2:00 – 4:00 pm

Location:

TEC - Classroom

Facilitators:

  • Mike Harris

Course Description:

In this class we will talk about various research projects we've done at CrossComm using AR And VR and provide an introduction to the XR hardware landscape and XR design fundamentals from the perspective of how XR can be leveraged in academic research. We'll also talk about some lessons we've learned regarding practical considerations, potential regulatory hurdles, etc.

Requirements:
Windows Laptop
Oculus Go Headset (if there are fewer headsets than participants, participants can share headsets within their group)

Topic To Be Covered:
Setting up the Oculus GO in developer mode
Installing/Setting Up Required Java/Andriod SDKs
Installing Unity
Basic overview of Unity functionality
Fundamentals of VR design in Unity
Deploying VR application from Unity to the Oculus GO

Enrollment:

6 / 30 Enrolled

Register for this class

Archived Classes

Intro to Git

Gitlab-CI and Singularity

Introduction to HTML and CSS

Introduction to JavaScript

Introduction to Linux

Introduction to Connected Hardware

Fusion360: 3D Modeling for 3D Printing

Programming Fundamentals

MySQL

Creative Coding with P5.js

Selling Your Idea With Video

SPLUNK

Introduction to iOS

Text Analysis with Gensim

Ethical Hacking Workshop

Apache Spark for Beginners

Design Thinking

Conductive Thread

Good Karma Through Web Accessibility

Intro to Swift

The Art of the Pitch Video

Project Management: User Stories

SQL

Introduction to Programming in Python

Intro to APIs

A Little More Linux

3D Scanning

Researching With Social Media

Information Visualization UX

Advanced CSS

Paper Circuits