Whether you're new to programming or wanting to sharpen your skills, Dev Day is your day. Attend these workshops for lessons on today's most used languages and programs.
- Select 1 focused workshop track. You’ll spend the afternoon with 5-10 of your peers digging deep into your selected topic.
- Enjoy breaks, lunch, and happy hour as a group, with opportunities to network with other workshop attendees!
- Hear "Big Ideas" presented by local companies solving complex problems
Workshop Tracks
Select one:
- Intro to Database Theory & SQL
- Intro to JavaScript
- A "Rails Prime†Primer
- Intro to Node.js
Schedule-at-a-glance
11:00AM: Doors Open with Coffee and Networking
11:30AM: Workshops Begin
1PM: Group Lunch
2PM: Workshops Resume
4PM: Snack break and Big Idea Presentations from
- Chris Wink, Technically
- Kyle Fritz, Order Up
- Flip Sasser, Backforty
- Chris McFadden, Message Systems
- Sam Stump, AOL
- Cliff Casey, Agora
- Erik Hummel, PayPal
4:45PM: Closing Remarks, Thanks for Coming
- 5-7:00PM: Dev Day After Party and Super Meetup with drinks and networking
BYO Laptop (no tablets)!
Workshop Descriptions
Intro to Database Theory & SQL
Taught by: Doug Lay
Databases are a critical component of most Web and mobile software applications. This workshop begins with a short explanation of the relational database model; the theoretical underpinning of many of the most widely used database management systems. We'll then dive right into hands on work, covering the following:
- Data modeling with the entity relationship model.
- Logical and physical database schemas.
- Manipulating data: SQL and the CRUD model.
- Achieving performance gains: Indexing, caching and denormalization.
- Accessing the database from your applications: database abstraction layers and object-relational mapping.
We'll close the workshop by taking a step back and discussing some alternatives to the relational data model that have emerged in recent years, including document oriented databases and key value stores. We'll discuss when it might be appropriate to consider these alternatives instead of the relational model (or in addition to the relational model) for certain applications.
Who Will Benefit:
Junior developers and aspiring developers would benefit from this course, along with technically minded product managers, designers, and content specialists. No previous experience with programming or database development is assumed. Some sort of basic experience using spreadsheets or tools like contact management software would be helpful.
Intro to JavaScript
Taught by: Jonathan Julian
So you know HTML and CSS, but want your web pages to be more interactive? Maybe you've done a little JavaScript but don't really understand how it works? This workshop will help give you the groundwork to really understand how JavaScript fits into your application, and how to use it right away. With a mix of discussion and hands-on-learning, we'll explore the world of JavaScript in the browser. Topics will include:
- JavaScript in the page
- Chrome Developer Tools
- Functions, Variables and Loops
- Logic: truthy and falsy
- Data structures: objects and arrays
- Loading external scripts
- The DOM - modifying the page
- Browser compatibility issues
- jQuery
- Modifying HTML on the fly
- Modifying CSS on the fly
- Handling events
- Ajax: sending and receiving data
Prerequisites:
Knowledge of HTML and CSS; comfort with editing code; Chrome browser installed on your laptop. Experience with another programming language would be super-helpful for you, but not required.
A "Rails Prime†Primer
Taught by: Flip Sasser
Description: We all know Rails is about convention over configuration, but most of the “approved†documentation on Rails doesn’t scratch the surface of how pros manage large projects. This workshop will serve as a demystification of the advanced strategies we use to prevent bloated Rails apps. We’ll cover the “Rails Prime†stack that the veterans in the community have cobbled together, including:
- Rspec, Capybara, and Poltergeist
- PostgreSQL and full text search
- Slim and HAML templates
- Decorators and presenters
- Correctly separated services and concerns
Prerequisites:
Basic familiarity with Rails and its conventions. Also, a desire to dig deeper into best practices used by the pros.
Intro to Node.js Workshop
Taught by: Jason Rhodes
Course description: In this Intro to Node.js workshop, we'll be working together to complete the open-source nodeschool lesson called "Learn You the Node.js For Much Win!". After a short introductory overview, we'll break into pairs to work through the hands-on command line workshop, starting with a basic "HELLO WORLD" and moving on to more advanced exercises covering synchronous & asynchronous I/O, filesystem operations, TCP and HTTP networking, events and streams.
Prerequisites:
Attendees should have a good grasp of JavaScript basics (knowing what a for loop is, how to write functions) or some other programming language and at least a very basic understanding of how to use their command line/prompt. Before arriving, attendees should make sure they have the following installed:
- node, version 0.10.*
- npm (usually packaged with node but not always), version 1.4+
- the "learnyounode" workshop GitHub link, installable via "npm install -g learnyounode"
- be sure you can run
$ learnyounode
on your command line (check permissions, etc) and get the welcome screen similar to this screenshot.