© Mapbox, © OpenStreetMap

Speaker

Keith Kurak

Keith Kurak

Developer Success Engineer at Expo

Cleveland, Ohio, United States

Actions

Keith is a Developer Success Engineer at Expo, helping fellow mobile developers build amazing React Native apps in record time. From the time he made a Dragon Quest knockoff on his TI-83 during study hall in high school, he can't remember not being interested in building for the small screen. When he's not slinging JavaScript, you might find Keith zipping through busy Cleveland streets on his bicycle, building a computer case out of Lego, or in the kitchen breaking new ground in the field of alternative omelette fillings.

Area of Expertise

  • Information & Communications Technology

Topics

  • React Native
  • Expo
  • mobile app development
  • Mobile Apps
  • Frontend Development

Soar Above The Cloud: How Local-First Software Can Help Users and Developers

Many of even the most impressive apps today have one glaring bug: they become almost useless if the network goes out. This signifies more than just an occasional inconvenience in a world saturated with connectivity. Users lose ownership over data that only exists in the cloud, and they may lose access to it entirely if a service shuts down. Meanwhile, even very simple app ideas require provisioning cloud infrastructure, and front-end developers must be constantly mindful of loading states. Local-first architecture is a paradigm for keeping the primary working copy of app data on the user's device rather than the Cloud, syncing those changes with other systems via conflict-free replicated data types (CRDT's). Let's learn about the benefits of building for local first, and how to build a "LoFi" app using Expo and CR-SQLite.

Intro to Modern Retro Game Programming with the PICO-8

Alternate Universe 1982 is calling! The PICO-8 fantasy console beckons you back to the future with cutting-edge 16-color 128x128 graphics, huge 32k game carts, and 4-channel chip blerp sound. Let's approach making a video game from a completely different angle, stepping far away from 3D rendering engines to the bare essentials of a few loops moving sprites around- but with nice modern stuff like a friendly point-and-click IDE. Let's explore how to dive into PICO-8 even if you've never made a game before, and perhaps even discover how taking a break to do a little game development can stretch our brains in ways that help us in our day jobs.

Super Pixel (Art) Friends!

Let's turn the walls of the KidzMash room into a video game! We will draw our own sprites using the pixel art styles common in classic video games, using a limited number of colors and squares on a grid to represent our characters. Everyone will make a hero and give them frames of animation, such as walking or flying or using a magic wand. If you'd like, you can even make a bad guy or obstacle for your hero to duel with. Then, we'll put all of our sprites into a single giant scene on the wall and and move them about, taking pictures along the way to make a real animated game scene!

Universal by Default: Build Apps That Go Everywhere with Expo Router

Universal React apps for iOS, Android, and Web help developers quickly reach everywhere their users are, but getting navigation just right on all platforms has historically been a challenge without splitting your codebase. Web routing is powerful, expressive, and easy to set up, while mobile routing takes a fair amount of manual tuning. Enter Expo Router, the first file system-based router for universal React apps. Your folder structure now represents your app navigation tree and each file becomes a page simply by exporting a React component. Next.js-style dynamic routes let you pattern match multiple routes to a single page, creating expressive nested URL’s that also automatically work as deep links on mobile. Let's walk through how to get started with Expo Router and build apps that work great on mobile and web, without compromises.

React Native and Expo: Native Apps without the Native Pain

Native iOS development requires cool languages, like Swift... that you’ll never use anywhere else. The development environment is painful: build tools straight out of the 80's, certificate hell, TestFlight weirdness. And Android development may be even worse! React Native uses tools and languages you already know—JavaScript and React—to build native apps that use real native components. Meanwhile, Expo is a cloud-based app building service that eliminates just about all the native pain points not addressed by React Native itself. Just upload your code and out comes a signed native binary that even supports OTA updates without the App Store. There’s no need to ever touch an Xcode or Android Studio project. You’ll learn the core concepts behind React Native and Expo, peek under the hood of a live example wired up to data and navigation, and see how to build a store-ready app in just a few simple commands.

Life in the Fastlane: App Store Deployments That Won't Make You Lose Your Mind

Imagine deploying your shiny new app to the Apple App Store- creating certs, uploading your app to Testflight, adding testers, taking screenshots on four different devices, filling in dozens of fields on the store description, clicking through EULA’s, and resubmitting five times because the reviewer didn’t like the drop shadow on your home screen icon. Now imagine doing that 70 times for each update because you’ve just inherited 70 white label apps. With examples from the real-life tribulations of a developer faced with this “automate-or-die” scenario, learn how to use Fastlane to build scripts that do all that annoying App Store Connect and Google Play Console stuff for you. Highly-recommended for mobile developers suffering from app store fatigue who have never used Fastlane, or who want to go beyond the one or two Fastlane scripts they copied from Stack Overflow- whether they support one app or a thousand.

Freaky-Fast Full Stack with the FERNI Stack

Need to code, build, and deploy a full-stack web and mobile app, but short on time? Meet the fastest stack you've never heard of: Firebase, Expo, React Native, and Ignite- the FERNI Stack. This fast-paced session will walk you through writing a messaging app front-end in React Native that uses Firebase for authentication, data storage, and API. Then we'll learn how to build and deploy the app to web, iOS, and Android in a flash with the help of Expo. Throughout our journey, we'll be taking advantage of the smarts and scalability built into the Ignite boilerplate generator. This is a great session for anyone looking for shortcuts for their next hackathon project, as well as those interested in learning about any of the aforementioned technologies through realistic hands-on examples.

Choose Your Own React Native Adventure

React Native lets you build real native iOS and Android apps with a single JavaScript codebase while leveraging your experience building React web apps. That sounds great, but it's easy to get tripped up on early design decisions that seemingly portend a high switching cost later. Do you go with a "managed" app that handles native code for you (at the cost of flexibility), or do you buckle up for a "bare" experience that involves lots of debugging in Xcode? In other words, will it scale? We're happy to report that, YES, it will! Let's talk about what React Native is, how to get started with it in a new or existing app, and how what used to be major forks in the road are now incremental decisions that build on each other and can be added or removed easily as your app matures.

Building Beautiful CLI's is for Everyone

Writing command-line interfaces, whether it's to string together a few oft-forgotten terminal commands or batch automate repetitive tasks, are one of those things most developers eventually do, but often only do just "good enough." Let's shift the focus from clean and beautiful application code to CLI's! What makes a reliable, user-friendly CLI? When should we use flags vs config files vs interactive wizards? Speaking of wizards, how do we put pretty spinners and menus in a CLI? How do we test it? Let's spend some time obsessing over these oft-neglected scripts!

A Way-Too-Deep Dive Into The Humble Loading Spinner

Loading spinners- every front-end that connects to the internet has them. At one level, they're very simple and easy to not think too much about. When something's loading, show a spinner, and then hide it when the loading's done. But there's so much beyond the loading/ not-loading binary: first load, subsequent loads, load-on-manual-refresh, load-on-scroll, refresh everything vs. check for new items, acknowledging that the load is taking too long, and more. It can be a bit overwhelming once you (over)think the loading spinner, but sweating these details can make a big difference for your users (who will see your spinners a lot!). Let's talk about the great variety of loading states, real life good and not-so-good examples of addressing them, and recipes to make a nuanced approach to spinners manageable. We'll walk through examples in React/ React Native, but in service of concepts that can be applied anywhere.

5 Essential Animations to Set Your App in Motion

Setting your UI components in motion adds a lot more than just pizzazz. Animation can convey interactivity, progress, and accomplishment, giving your users confidence that the system is working and they're in control. Let's add to our tool belts some fades, slides, expands, pops, and pauses that can feel at home in even the most buttoned-up business app, even when you have little time to spare. We'll explore real examples and common uses of each type of animation, how to build them, and how to build your UI components so it's easy to add them later. Examples will use JavaScript and React Native Reanimated for mobile and web, but to describe practices that can quickly enhance any front-end.

[KidzMash] Get Creative with Duct Tape!

Duct tape is super-sticky, flexible, and waterproof, and can be used as a quick fix for just about anything that’s broken. It’s even been used to repair spaceships! But, it also can be used to make art. You’ll learn briefly about the science and history of duct tape before we turn you loose to build your very own duct tape creation. Create a hat, shoes, flower, bird, or wallet, or just about anything else you can imagine with duct tape. We will supply ideas, how-to’s for several common projects, scissors, and tons of duct tape. You just bring your creativity! All ages welcome, though younger children should have a parent or older sibling to help them with scissors... and keep them from getting stuck to anything.

Keith Kurak

Developer Success Engineer at Expo

Cleveland, Ohio, 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