Speaker

Austin Gil

Austin Gil

Developer (& Pinball Aficionado)

Portland, Oregon, United States

Actions

Hi, my name is Austin Gil.
Since 2013, I’ve helped award-winning digital agencies, cutting-edge start-ups, government-run programs, and international organizations build better software.

Today, I create fun, educational content in the form of writing, open-source, videos, presentations, and workshops.

Area of Expertise

  • Information & Communications Technology

Topics

  • HTML
  • CSS
  • JavaScript
  • Vue
  • Node
  • Accessibility
  • A11y
  • ExpressJS
  • Web
  • Web Development
  • Frontend
  • Backend
  • Full Stack
  • Remix
  • React
  • Vue Js
  • Programming
  • Software
  • Coding

Full Spectrum File Uploads

If you had to build a website that supported user-uploaded files, how would you do that? Would you feel confident that you did it right?

In this talk, we'll walk through all the implementation details and considerations around supporting file uploads in your application. It covers networking, frontend, backend, and architecture, broken into seven sections:

- Understand underlying HTTP
- Enable file uploads in HTML
- Improve user experience with JavaScript
- Receive uploads in Node.js
- Reduce storage costs with Object Storage
- Optimize delivery performance with a CDN
- Securing uploads & malware protection

We'll look at examples using specific tools and implementation, as well lower level and fundamental concepts that you can apply to any application stack.

JSDocs: It's like TypeScript for the rest of us (workshop)

If you’re a JavaScript developer, chances are, you’ve heard about TypeScript. In this talk, I want to share an alternative approach to incrementally enable type-checking without all the tooling.

JSDocs allows you to can introduce type-checking into your project bit-by-bit as it makes sense. You can stick to working within JavaScript projects, or adopt TypeScript syntax when and were it makes sense for you and your team.

I break it into four stages:
- Enabling type-checking in a JavaScript file
- Enabling type-checking in a whole JavaScript project
- Integrating type-checking into CI/CD Pipeline
- Generating type definitions for Open-Source Libraries

To get even more out of this talk, bring your own JavaScript project. Everything we cover can be applied to an existing project :)

Mankind's Impact on the Lifecycle of a Div

Since its humble origins, the Div has had to learn to coexist with mankind. At times, for benefit of one, at times the other, sometimes both, sometimes neither. The internet has come a long way, and with each new framework, build tool, and deployment services, the distance between developers and users grows.

In this talk, we'll fill some knowledge gaps with a time travelling journey from the early days to present day web development. We'll follow a humble Div on its journey from conception in the editor, through its adolescent development phase, and finally out of a production deployment pipeline to the real world of public internet where it will face its ultimate destination, being used to render cute animals doing silly things in a user's browser.

It will cover what happens after you hit save, what build pipelines do, how do deployments work, getting things delivered to the user, and the steps the browser takes to actually render the page. By the end of this talk, you should have a better understanding of the following:
- Dev servers
- Bundlers
- Transpilers
- CI/CD
- DNS
- TCP/IP
- SSL/TLS
- HTTP
- Critical Render Path

JSDocs: It's like TypeScript for the rest of us

If you’re a JavaScript developer, chances are, you’ve heard about TypeScript. In this talk, I want to share an alternative approach to incrementally enable type-checking without all the tooling.

JSDocs allows you to introduce type-checking into your project bit-by-bit as it makes sense. You can stick to working within JavaScript projects, or adopt TypeScript syntax when and where it makes sense for you and your team.

I break it into four stages:
Enabling type-checking in a JavaScript file
Enabling type-checking in a whole JavaScript project
Integrating type-checking into CI/CD Pipeline
Generating type definitions for Open-Source Libraries

Make Accessibility Easier to Get Right and Harder to Get Wrong (workshop)

Want to learn about accessibility through hands-on experience? Then check out this workshop where we'll go over these highlights:

- Gain practical knowledge around disabilities and accessibility without getting overwhelmed.
- Discover tools and methods to improve how you audit your own projects for accessibility.
- Practice hand-on empathy exercises.
- Learn how to navigate applications with a keyboard and screen-reader.
- Build reusable components that enforce accessible practices.
- Recognize common pitfalls in component design.
- Incorporate tooling to catch errors in your editor, UI, Git workflow, repository, and CI/CD pipeline.

Building Super-Powered Forms For the Web (workshop)

Forms are foundational for almost every website you interact with today. So shouldn’t we invest in building the best forms we can?

I spent several years studying everything about forms that I could. Now, I want to show you how to use modern techniques to build forms with super powers.

Things you'll learn:
- The perfect markup for semantic, accessible inputs
- CSS-only UX improvements that no longer need JS
- Custom input validation without a library
- Using JavaScript to improve accessibility
- Submitting forms without a full page reload
- Adding retry logic on failed submissions
- Preventing data-loss from reloads or navigation
- Avoiding race-conditions on multiple requests
- Building forms that work even when JavaScript fails
- Ways we can improve server-side APIs

We'll be doing everything from scratch and cover several examples and look at both the frontend and backend considerations, all while focusing on:
- Semantics
- Accessibility
- Design
- User experience
- Progressive Enhancement

Make Accessibility Easier to Get Right and Harder to Get Wrong

Want to build accessible websites, but worried you're not an accessibility expert? Let's make things easier for everyone by building accessibility supports into the entire development lifecycle.

We'll look at integrating tools in:
- Design tools
- Code editor
- Components
- Browser
- Tests
- Git repos
- CI/CD pipelines

This will help you and your team avoid some of the most common accessibility issues, and free up more time for the a11y folks to work on bigger issues.

Building Superpowered Forms For the Web

Forms are foundational for almost every website you interact with today. So shouldn’t we invest in building the best forms we can?

I spent several years studying everything about forms that I could. Now, I want to show you how to use modern techniques to build forms with superpowers.

Things you'll learn:
- The perfect markup for semantic, accessible inputs
- CSS-only UX improvements that no longer need JS
- Custom input validation without a library
- How JavaScript can improve accessibility
- Submitting forms without a full page reload
- Adding retry logic on failed submissions
- Preventing data-loss from reloads or navigation
- Avoiding race-conditions on multiple requests
- Building forms that work even when JavaScript fails
- Ways we can improve server-side APIs

Life Lessons from a Lifetime of Internet

The internet and I were born in the same era. We spent a lot of time growing up together. I love it for what it's been to me (friend, teacher, provider, connector), and in spite of what it has done to me (distraction, addiction, disappointment, isolation). It's where I share my thoughts, hang out with friends, and nerd out on technology that I find useful. I love the internet for its games, knowledge, humor, culture, potential, and all things in between. I also hate it sometimes, but let's not talk about that right now. As a person that has used and built websites for a while now, I'd like to share some life lessons I've taken away from life on the internet.

10 CSS Rules For Restarting A CSS Starter

After a series of un/fortunate events, I found myself with time and motivation to rebuild the CSS starter I use for nearly all projects. It's been mostly the same file for around a decade, and it was time to add modern features, remove outdated blocks, and practice good code and knowledge upkeep.
It started as a cleanup and modernizing chore that brought me back to the joy of learning and playing with code for fun and ultimately brought me to some nice discoveries, lessons, and new principles for writing CSS today.

- Stop thinking light vs dark
- Crayons > Paints
- Relative > Discreet
- Descriptive vs Definitive
- Easy good & Hard bad
- User is always right
- Stylish vs Classy
- Be Memorable, not Clever
- RTFM
- Humans > Robots

Austin Gil

Developer (& Pinball Aficionado)

Portland, Oregon, United States

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top