Workshop Topics

Workshop Descriptions

Check out what you'll be learning with these in-depth workshop class descriptions.

Intro to JavaScript

Introduction to JavaScriptInstructed by Froilan Miranda, Technical Instructor at Zip Code WilmingtonSOLD OUT

In this JavaScript crash course we will explain some of the basic features of the JavaScript language. To give some understanding of how it all works we will use these fundamentals to create a simple app and review how these features are common to all programming languages.

Equipment required:
A general understanding of the Internet and the World Wide Web (WWW).
Good working knowledge of HyperText Markup Language (HTML).
A modern browser (chrome, firefox)
A plain text editor (sublime text, notepad++, brackets)

Intro to Ruby

Introduction to RubyInstructed by Zach Feldman, Co-Founder and Chief Academic Officer of the New York Code + Design Academy

Have you heard of Ruby or Ruby on Rails but still think of them as a precious gemstone or a precious gemstone riding a train? Join Zach Feldman, Chief Academic Officer/Co-Founder of the New York Code + Design Academy, for your very first Ruby lesson! We'll start with an overview of the programming landscape to see where Ruby fits in, then we'll move on to writing your first lines of code and learning about problem saving and basic data structures with Ruby. By the end of the class, you'll have your first functioning Ruby script!

Equipment required:Please bring your own computers with SublimeText installed. If you are using a Mac, Ruby should already be installed. If you are on a Windows machine, please follow the directions here.

Intro to Node.js

In this tutorial, we will provide a brief overview of NodeJS,
including its strengths and weaknesses, best practices, and package
management. After the introduction, attendees will have the remainder
of the tutorial to learn NodeJS through hands-on NodeSchool.io
exercises with assistance from a team of mentors.

NodeSchool.io is a series of choose-your-own-adventure style workshops
that teach people how to use NodeJS, NPM, and other related tools by
writing code to solve realistic problems. NodeSchool is entirely
community driven and is 100% open source, which means you can take the
exercises home and continue to learn!

We will have mentors available for the 'Learn You Node' workshop.
This workshop is great for people who have never used NodeJS before or are just getting started. It begins with
a basic "HELLO WORLD" exercise and then moves on to more advanced
exercises dealing with synchronous & asynchronous I/O, filesystem
operations, TCP and HTTP networking, events and streams.

Equipment required:
Attendees should bring a laptop (Linux, Windows, or Mac) pre-installed with NodeJS (version 4 or 5) from [here}(http://nodejs.org/) as well as a text-editor of choice.

Intro to Python

Python is an essential part of the developer’s toolkit – it’s a simple, effective, and accessible language that can be used for anything from scripting to analyzing data. It’s also a great starter language for those just getting into the world of programming.

This newbie-friendly course is designed to help students with basic programming concepts, including how to apply structures, variables, objects, methods, iterators, conditionals, and more. You’ll leave with a solid grasp on the basics of Python and how to spot (and build) good, clean code. We’ll do a small coding exercise to familiarize everyone to the language and how to use it.

Equipment required:
All you’ll need for this course is a laptop (with Python* installed) and a power cord – you’ll use this to code along with the lecture. To assist with installing Python, registrants will be given an email with complete installation instructions a few days before the class. If you’re having difficulty installing or running Python, you can follow along reasonably well using an in-browser interactive tool like the one found here.

*Ideally, you’ll have some version of Python 2.7, but Python 2 will be required at a minimum.

Intro to Scala

You’ve likely heard about Scala already. Maybe some even tried it out and decided it wasn’t for them. Others may have stumbled upon blogs discussing highly abstract topics and ran screaming the other way. It doesn’t have to be that way. This workshop will be a gentle introduction to Scala where we'll progress through a series of exploratory exercises.

The exercises will explore the basics of the language, the most common programming constructs / idioms, and how to run and debug Scala programs via an IDE (Intellij Community Edition). This workshop will also cover immutability, case classes, pattern matching, collections, closures and higher order functions, Options, classes, and traits. Students will leave knowing what Scala is, how to write small programs, object-oriented vs functional programming, and enough knowledge to continue further study.

Equipment required:

Requirements:
Java 8, IntelliJ CE / Scala: Go to this link and follow the setup instructions.
If there are any questions, please don't hesitate to email me at skapadia@chariotsolutions.com, with #PTW16 Scala in the subject line

If you haven't already, I highly recommend joining the Philly Dev Slack group.
Click here and sign up to join.
If you join, you can join the #ptw-scala-workshop channel and ask questions there as well. I will try to respond as soon as possible.