Tuesday

1:00 PM

Button masher to code master – Unity3D Workshop

Presented by: Mason Beale, Brendan Barth
Time: Tuesday 1:00 PM - 5:00 PM

Considered learning how to make video games, but never made the jump? Now is your time to press “space”! No matter your current career (or input device), explore your creative side in Unity and learn the essentials by improving, expanding and customizing a 3D Rollerball game. You’ll start with...

Room: Salon ATrack: Programming PrinciplesTags: C#, Programming PrinciplesFormat: PreCompilerLevel: Introductory and overview

Wednesday

No Sessions

Thursday

8:00 AM

Java Anti-Patterns

Presented by: Vitaliy Matiyash
Time: Thursday 8:00 AM - 9:00 AM

God object, spaghetti code, magic numbers? Anti-patterns are traps that developers encounter frequently due to lack of time, carelessness, inexperience, or pressure from project managers. Rushing can lead to big problems for applications in future, so you need to know how to avoid potential...

Room: Salon GTrack: Programming PrinciplesTags: Java, Backend, Programming PrinciplesFormat: General SessionLevel: Introductory and overview
9:15 AM

Not Your Mother's or Father's C#

Presented by: Brendan Enrick
Time: Thursday 9:15 AM - 10:15 AM

Gone are the days of verbose C# code and having only one way to solve a problem. In recent updates, C# has been adapting ideas from other programming paradigms, including functional programming. Some of the most recent ones have significantly changed the appearance of C# code. We'll see what you...

Room: CypressTrack: Programming PrinciplesTags: .NET, C#Format: General SessionLevel: Introductory and overview
11:45 AM

You’re Doing Exceptions Wrong

Presented by: Matt Burke
Time: Thursday 11:45 AM - 12:45 PM

Exceptions are powerful and valuable, but we frequently misuse them and destabilize our applications. We fear users seeing an error message, so we swallow the exception, creating troubleshooting nightmares down the road. We fail to check inputs and throw them at all, letting garbage into our...

Room: Indigo BayTrack: Programming PrinciplesTags: Backend, Object Oriented Programming, Code QualityFormat: General SessionLevel: Introductory and overview
1:00 PM

Prime (re)Factoring

Presented by: Steve Smith
Time: Thursday 1:00 PM - 2:00 PM

You've probably heard of refactoring, but did you know the term originates from the process of factoring programming code? In mathematics, factoring is used to pull out factors of numbers through division, and importantly prime numbers have factors of only themselves and the identity constant,...

Room: OrangeTrack: Programming PrinciplesTags: .NET, C#, Object Oriented Programming, Programming Principles, Code QualityFormat: General SessionLevel: Introductory and overview
3:30 PM

Does Your API Need a REST? Check Out GraphQL

Presented by: Dan Vega
Time: Thursday 3:30 PM - 4:30 PM

GraphQL is a declarative query language that simplifies retrieving data from an application's back end. It provides a clear and comprehensive description of the data in your API, giving you the ability to request only what you need. This makes it easy to evolve APIs over time and enables powerful...

Room: Salon ATrack: Programming PrinciplesTags: Java, GraphQLFormat: General SessionLevel: Introductory and overview

Aerospace Engineering for Computer Scientists

Presented by: Ilyana Smith
Time: Thursday 3:30 PM - 4:30 PM

It IS rocket science! What does the International Space station have to do with basic programming principles? What considerations need to be taken into account when computers go to space? How does putting people in space make systems more complicated? In this session, you’ll get the answers to...

Room: Salon BTrack: Programming PrinciplesTags: Programming Principles, Project ManagementFormat: General SessionLevel: Introductory and overview

Friday

2:45 PM

Protocol Design

Presented by: Stephen Cleary
Time: Friday 2:45 PM - 3:45 PM

This language-agnostic talk will examine the design of application protocols, with a focus on TCP/IP. This talk is part history and part practical implementation. If you have a need to design a TCP/IP protocol, then this talk will cover everything you need. Most bugs in TCP/IP applications are...

Room: Salon HTrack: Programming PrinciplesTags: System DesignFormat: General SessionLevel: Introductory and overview
4:00 PM

You Are the Pilot: Getting Better with Code Gen AI Tools

Presented by: Sean Wedig
Time: Friday 4:00 PM - 5:00 PM

You might have asked yourself - "Self, what's all this hubub about AI tools for programmers? Am I going to lose my job?" and you might have answered, "I don't know, self. I haven't even really played with any AI code generation tools. There are so many tools, I wouldn't even know where to...

Room: NileTrack: Programming PrinciplesTags: Velocity, Machine Learning, Code QualityFormat: General SessionLevel: Introductory and overview