Game Server and Client Design with Node.JS

Constructing a multiplayer game allows a developer to expand on a large array of technologies, algorithms, and server architectures. Here we will examine a game server client design, its implementation, pitfalls, user experience, and scalability.

Speaker
Ben Anderson
Room
Casper 103A
Time
9:00 AM

From Idea to Executable: Finishing That Thing You've Been Working On

Developers love to start projects they will never finish. There are so many great ideas, but not enough time or motivation to complete them.

We are going to figure out which projects are worth finishing, and how to get them done!"

How many half-finished projects do you have sitting by the wayside? How many excuses do we make for ourselves about why they haven't been finished yet? Maybe you have a great idea, but aren't even sure where to start. Whether your idea is an new industry-disrupting startup company, a small desktop app just for personal use, or a home-improvement project; we will figure out a way to get it done.

Consider this your *support group*. We will be sharing and examining various tools & techniques to help you determine viability, plan, organize, and maybe even finish that thing you've been working on! We will even discuss things like lack of motivation and other psychological or social barriers.

Participation and discussion are *highly encouraged*!

Speaker
Daniel Kraft
Room
Casper 103B
Time
9:00 AM

RubyMotion

Ever wanted to learn how to create an iOS app with some help from Ruby? Now’s your chance to dip your toes in!

RubyMotion is used to develop Mac, iOS, and Android applications with help from the Ruby language. We’ll go through creating a simple application for iOS to show off some of the basics of RubyMotion.

Speaker
Alex Henry
Room
Casper 103A
Time
10:15 AM

How to Make Your Website Not Ugly: 10 Simple UX Tenets for Non-Designers

To craft well-designed websites, you have to know 50 names for ""blue"" and the difference between a font and a typeface. Right?

Nope! In fact, there are numerous simple, practical ways to improve the look and usability of a website. Let's explore 10 of these together.

Speaker
Hilary Stohs-Krause
Room
Casper 103B
Time
10:15 AM

Database Automation with Ansible

Ansible is a powerful configuration management tool that makes setting up complex environments trivial. In this talk, you'll learn how to use Ansible to configure a production PostgreSQL database on Ubuntu and some tips and tricks that will help you on the road to production.

Ansible playbooks can make setting up and automating your production environment simpler. Their documentation is thorough and easy to read and the implementation is even easier with the right knowledge. There are also many roles already written with customizable configurations and they can be downloaded directly from the terminal.

Configuring a database can be a daunting task and PostgreSQL databases are no exception. While its usage is intuitive, its setup is another story. There are quirky configuration settings, which can leave you hunting through StackOverflow for hours trying to troubleshoot the problem. We'll go over how to get started deploying PostgreSQL with Ansible, and some tips and tricks that will help you on the road to production.

Speaker
Jessica Stodola
Room
Casper 103A
Time
12:45 PM

Taming the JavaScript Dragon with TypeScript

From humble beginnings, JavaScript has gone from a hastily thrown together language for web pages to a hastily thrown together language that runs everywhere. If you can do it with code, you can probably do it in JavaScript. It's the Swiss Army Knife of programming languages.

Unfortunately, JavaScript wasn't designed for the large scale programs we use it in today. We've had to rely on design patterns, willpower, and luck to mitigate JavaScript's failings. However, there is a better way. TypeScript adds features to JavaScript that make it usable on large scale projects. In this talk, we'll explore TypeScript and how it can be used to tame large scale JavaScript projects. We'll cover some of the important features of TypeScript and how to get started using it in your own projects.

Speaker
Dustin Ewers
Room
Casper 103B
Time
12:45 PM

Client Performance, Availability and Usage Monitoring with Microsoft Application Insights

Microsoft Application Insights is an extensible analytics service that monitors your web application. Application Insights JavaScript SDK is an open source library that enables you to automatically collect page views, track page performance, AJAX requests and usage of your application.

Speaker
Alex Bulankou
Room
Casper 103A
Time
2:00 PM

Learning Rust

Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety." But what is it like to program in a modern, low-level language? And what if you've never programmed in a language before and you have to get up to speed on it? Being a newcomer to Rust, I want to share my experiences with it. In this session, I'll talk about what it takes to learn a new language and the features and capabilities of Rust.

Speaker
Jason Bock
Room
Casper 103B
Time
2:00 PM

Elm and Phoenix - The Future of Web Development?

Elm and Phoenix bring functional programming, simplicity, speed, and maintainability to web development. In this talk you'll learn to use Elm to create a reactive UI and Phoenix to build a real-time backend to power that app, and you'll see why forgetting everything you know can be good for you.

Building a robust modern web application involves server side and client side code with many dependencies you'll have to manage. But what if you could start over and avoid JavaScript? Elm is a powerful front-end language designed for making web applications. And Phoenix is a powerful web development framework that makes building scalable back-end services easy. Together, these technologies let you build a modern web app quickly that you'll be able to maintain over time.

In this talk, we'll explore how these languages work, how we use them together, and how we architect a real-time application. We'll discuss the pros and cons, and you'll see how to get started on your own projects.

Speaker
Brian Hogan
Room
Casper 103B
Time
3:15 PM