Conferences What I’m Up To

I’ll be at the Oktane conference in San Francisco (Oct 3 – 5)!

Moscone Center, San Francisco.
Moscone Center, San Francisco.
Photo by Miguel Gonzalez.
Yup, I work at Okta, where I hold the title of Senior Developer Advocate.

If you’re thinking “Hey! I thought you worked at Auth0!”, that’s because Okta acquired Auth0 in May 2021. I work in the part of Okta that makes the Auth0 product.

My third anniversary at this job is coming soon — October 19th. For those interested in the story of how I landed this gig, see my article from October 2020: How I landed my job at Auth0.

I’ll be in San Francisco’s Moscone Center West at Oktane, which runs from Tuesday, October 3 through Thursday, October 5, and I’ll help run a developer booth on Developer Day, which happens on the Thursday. It’ll be in San Francisco at Moscone Center (Moscone West, to be precise). If you’re planning on attending, let me know — I’d love to catch up!

What is Oktane?

Oktane is Okta’s big annual conference, where the subject matter is all things related to digital identity.

If you’re a reader of this blog, there’s a good chance that you use at least one of Okta’s two major systems:

  • The workforce identity solution, which most people refer to as just “Okta,” to log into the various systems you use for work.
  • The customer identity solution, which goes under the brand name “Auth0 by Okta” (or “Auth0” for short), to log into applications as a customer user.

I’ll be there to help demonstrate multifactor authentication with a YubiKey, which you can keep if you try out the process…

A Yubikey.

…and I’ll also be helping out with the demo where you can try out the Auth0 CLI, which lets you do just about everything you can do on the Auth0 administrative dashboard, but on the command line:

Terminal window displaying the command “auth0 test login”.

And of course, I’ll have you-know-what with me…

Joey deVilla playing his blue accordion with an “Auth0” sticker on it.

Can you attend Oktane?

The Developer Hub at Oktane.

Yes, you can, and there are a couple of ways to attend…

If you’re a developer, you’ll probably get the most bang for your buck with the Developer Pass, which sells for a mere US$199. The Developer Pass gives you access to:

  • Keynote and luminary speakers presentations
  • Expo hall
  • The Developer Day event (see below)
  • Oktane online sessions

If you want the full in-person experience, you’ll want the Full Conference Pass, which sells for US$699 and gives you access to:

  • Keynote and luminary speakers presentations
  • Expo hall
  • In-person breakout sessions
  • Hands-on workshops
  • The Wednesday night party
  • The Developer Day event (see below)
  • Oktane online sessions

And finally, there’s the FREE option — the Oktane Online Pass, which gives you online access to:

  • Keynote and luminary speakers presentations
  • Oktane online sessions

To get any of these passes, visit the registration page.

Artificial Intelligence What I’m Up To

Could ChatGPT do my job?

It’s been just over five weeks since the launch of ChatGPT (it happened on November 30, 2022). Since then, from casual conversations over the holidays to New York Times think pieces, people have been asking if ChatGPT could do their jobs.

Auth0 logo
Want to know how I landed my job at Auth0? I wrote about it back in 2020.

In case you’re wondering, I’m a Senior Developer Advocate at Okta for the Auth0 product. If that sounds confusing, it’s because Okta acquired Auth0 in May 2021, and while we’re one company, that company has two products named “Okta” and “Auth0”. It’s my job to show mobile developers how they can use the Auth0 product to authenticate and authorize users.

In the video above, I “had a conversation” with ChatGPT where I asked it some basic questions about OAuth2, OIDC, and Auth0, and it answered them correctly. However, when it got to questions about writing iOS and Android apps that used Auth0 for login, it got some details wrong — and in programming, it’s the details that get you. Watch the video to find out what happened!

What I’m Up To

Chaos Muppet! (or: It’s my 2nd Oktaversary / Auth0versary!)

Yours Truly, at the Okta office in London, June 2022.
Tap to view at full size.

So this arrived in my work email earlier today:

Screenshot from email: “It’s time to celebrate...Happy Oktaversary! Happy Oktaversary, Joey! Congratulations on your 2-year anniversary at Okta! Thank you for your commitment and contributions to the success of the company.”

I’m enjoying my work on the Developer Engagement (DevN) team at what we’re currently calling “Auth0 by Okta” — that’s the developer-centric customer-facing authentication/authorization system by Okta, or what I often shorten to the layperson-friendly catchphrase “login as a service.”

I greatly enjoy working with the DevN team, who are that wonderful combination of smart and nice:

Photo of a long table with many of the  Auth0 Developer Engagement team having dinner at Mulberry Bush, London.
First team dinner of our London summit, June 2022.
Tap to view at full size.

I’m also honored to be the team’s Chaos Muppet — as evidenced by this Facet5 personality profile report of the various team members and how we rate on “control:”

Facet5 personality profile report showing Joey deVilla as being the member of the Auth0 Developer Engagement team with the least control.

Thanks to Okta, Auth0, and the DevN team for two wonderful years! Let’s see what Year Three looks like.

Joey deVilla’s blue accordion with Auth0 stickers.
The “Authccordion.”
Tap to view at full size.

Worth reading

Annotated photo of Joey deVilla getting ready for his job interview for Auth0.

How I landed my job at Auth0, from way back in October 2020.

Chaos Theory: A Unified Theory of Muppet Types, quite possibly Slate’s best article ever.

Mobile Programming Video What I’m Up To

How to add Auth0 authentication to a SwiftUI app

Joey deVilla in his home office, holding an “Einstein” rubber duck up to the camera.
C’mon, how many programming tutorial videos have a scene like this?

If you’re making an iOS app, the odds are pretty good that sooner or later, you’re going to have to integrate authentication — login and logout — into it. I show you how to do that with Auth0 in both a video

…as well as a matching two-part article series that walks you through the process:

Both the video and article present how the final app will look and work:

Tap to view at full size.

And then they’ll get you started with a starter project:

Joey deVilla appears in the corner of the screen showing the starter project of Auth0’s iOS/SwiftUI authentication video.
Tap to view at full size.

I’ll walk you through the processes of getting Auth0 set up to recognize your app and creating a user with which to log in:

Joey deVilla appears in the corner of the screen showing the Auth0 dashboard in Auth0’s iOS/SwiftUI authentication video.
Tap to view at full size.

And then, I’ll show you how to add login and logout to the project’s app:

Joey deVilla appears in the corner of the screen, while adding login and logout to the starter project of Auth0’s iOS/SwiftUI authentication video.
Tap to view at full size.

And along the way, I’ll provide a brief intro to ID tokens, JWTs, and

Joey deVilla appears in the corner of the screen showing the site in  Auth0’s iOS/SwiftUI authentication video.
Tap to view at full size.

Of course the video ends with an accordion number!

Joey deVilla plays accordion at the end of an Auth0 tutorial video.
Again, I ask: how many programming tutorial videos have a scene like this?

Once again, the here’s the video, How to Integrate Auth0 in a SwiftUI App, and here are the articles:

Whether you prefer to learn by watching video, reading, or a little bit of both, I hope you find these useful!

Conferences Programming What I’m Up To

I’ll be in the Auth0 booth at PyCon US 2022 this week!

PyCon US 2022, the U.S. edition of the Python conference, happens this week in Salt Lake City, Utah at the Salt Palace Convention Center — and I’m going to be at the Auth0 booth!

Come drop by the booth — we should be pretty easy to find. Just listen for the accordion.

My history with Python

Toronto programmer D’Arcy Cain was looking for a programmer to help him develop an ecommerce site for a client. At the time, the stack that web developers needed to know was LAMP — Linux, Apache, MySQL, and Perl (later expanded to include other languages whose names start with “P”). D’Arcy’s preferred stack was BSD, Apache, Postgres, and Python, which at the time was considered to be a contrarian choice.

He asked if I was willing to learn Python, and I said “Sure! I can pick it up after I get back from Burning Man, on the first day after Labor Day…”

He said “No — I need you to hit the ground running on the first day after Labor Day.”

The edition of Learning Python I used — the first edition!

And I said, “All right. I’ll make it happen.” So I packed my laptop and a copy of O’Reilly’s Learning Python and took it with me to Black Rock Desert.

Those were wild times and even wilder hair, man.

Since Burning Man is more of party-all-night place, it can be quite peaceful in the morning. The rental RV that I shared with San Francisco-based artist David Newman and our friend Nancy was an oasis of calm with a good generator, and I was able to spend a couple of hours a day going through Python exercises, catch a nap, and then strike out onto the playa in the afternoon for the next evening’s mayhem.

By the time I got back to Toronto, I was ready to start coding in Python, and a descendant of that original site and its business still exists today. I figured that any programming language you can learn at Burning Man has to be good, so I’ve been using it to get things done since then, including putting together the Tampa Bay tech events list that appears on this blog weekly.

In spite of my long-time use of Python, even during that period when Ruby was ascendant thanks to Rails, I’ve never gone to PyCon — until now. I’m looking forward to it!

Programming Reading Material

My tutorial on iOS authentication using SwiftUI and Auth0

Banner: Get Started with iOS Authentication using SwiftUI

Hey, iOS developers! My latest tutorial article on the Auth0 blog shows you how to easily add authentication (that is, login and logout) to SwiftUI apps and display information from their user profile.

The article demonstrates the most basic use of the Auth0.swift SDK, the Auth0 SDK for all Apple platforms — not just iOS, but macOS, iPadOS, watchOS, and tvOS. It’s Auth0’s third most-used SDKs, accounting for more than one in ten API requests to Auth0 systems!

It’s a two-part tutorial. Part 1 of the tutorial starts with File → New Project…, adds some basic interactivity, adds the Auth0.swift package, walks you through setup on the Auth0 side, and finally enables login and logout:

iOS Simulator screen shot: Screen with title “SwiftUI Login Demo” and “Log in” button.
The app’s “logged out” screen.
iOS Simulator screen shot: Auth0 Universal Login screen.
Auth0’s Universal Login.
iOS Simulator screen shot: Screen with title “Logged in” and “Log out” button.
The app’s “logged in” screen.

Part 2 of the tutorial takes your basic login/logout app and gives it the ability to read user information from the user profile and display it onscreen:

iOS Simulator screen shot: Screen with title “Logged in”, photo of user, user]s name and email address, and “Log out” button.
The revised “logged in” screen.

Why use a CAPTCHA when you can use a CRAPTCHA?

CRAPTCHAS: Screenshots of Auth0’s “CRAPTCHAs” — like CAPTCHAs, but more annoying.

Here comes Auth0’s newest feature, CRAPTCHAs — and just in time for the first day of April!

While CAPTCHA is short for “ “Completely Automated Public Turing test to tell Computers and Humans Apart”, CRAPTCHA is short for ““Complex Redundant Auth0 Problem To Confound Human Access”.

Don’t make it easy for bots — or users — to gain access to your site! Use a CRAPTCHA and force them to clear new, even more annoying hurdles! Go to the Auth0 blog and check out CRAPTCHAs today!