/Presentations

Various presentations I've given

Primary LanguageHTML

Presentations

Mobile Development in 2021

Mobile apps are nothing new; we've been locked into our phones for years now. However, the development landscape has certainly changed. Both major mobile platforms have new primary programming languages, there are now non-awful cross-platform frameworks, and you can always use the ultimate cross-platform app: a web browser.

We'll cover what's out there, what's good (and what's not), and let you know the best way to get your mobile app out to users.

Google + Alexa: Cross-Assistant Apps

tl;dr - We'll discuss bots, compare Alexa and Google, and dig into how we can build one API for both platforms.

Remember when the Echo was made available back in late 2014? It was invite only, then Prime only, then finally available for everyone the next summer. Only, most people didn't really seem to care. What does it even do? Why should I bother? Can't I just use my phone?

Quite a lot has changed with voice assistants in the past four-plus years; there now are approximately 7,000 Echo devices, the trio of Google Homes are quickly taking more and more market share, and many third-party manufacturers are creating their own voice-enabled devices. We can interact with these devices just by talking, and now some can even respond with visuals (though not quite in the same way as a phone or tablet.)

We're going to talk a bit about where we were, a bit more about where we are now, plus discuss how people's day-to-day is being made easier thanks to their AI assistants. We'll look at both platforms to compare and contrast. We'll even dig into some code to learn how we can build our own fulfillment API.

Kotlin - Less Code, More Fun

tl;dr - Write less (but safer!) code in your Android apps or any JVM-based projects

Ever work on an Android app and tire of all the boilerplate code? Or spend hours chasing down NullPointerExceptions in your Java app? Enter Kotlin, JetBrains' new(ish) free, open-source programming language that targets the JVM. This means you can use it everywhere you use Java, but with a modern, succinct syntax.

For native Android developers, Kotlin is not only available, but it's now considered a first-class language. You're able to write an app completely with Kotlin, or switch over entire components, or even just change your models to Kotlin's data classes (which removes a TON of boilerplate code.)

Oh, and for anyone using Java elsewhere, you can add in Kotlin code to your existing application. Kotlin is 100% interoperable with Java, meaning all your existing code/libraries/tests will work with any Kotlin code you write.

Doing JavaScript development? Kotlin can be transpiled into ES5, and there are even libraries available to use React or Angular with Kotlin.

C# dev working on any kind of Java project? You'll feel much more at home with Kotlin, given features like nullable types, properties (rather than getters/setters), and extension methods.

We'll walk through Kotlin's features, check out the syntax, and look at all the reasons Kotlin is a great choice for Android and elsewhere.

Android Jetpack - Make Better Apps

tl;dr: Make better apps faster with Android Jetpack.

I could explain Android Jetpack at a high level, but I'll let the Google marketing team take care of it:

"Jetpack is a collection of Android software components to make it easier for you to develop great Android apps. These components help you follow best practices, free you from writing boilerplate code, and simplify complex tasks, so you can focus on the code you care about."

Sounds great, right? But what exactly are these components? They're collections of libraries, separate from the platform APIs, which we can bring into our apps as we wish. Each component can be added separately as needed without worry about which version of Android our users are on.

We'll cover all four types of components (Foundation, Architecture, Behavior, and UI) and focus on key pieces like ViewModels and Room.

Android 6 Marshmallow - What You Need to Know

Android 6.0, codenamed Marshmallow, was officially announced on September 29th and rolled out to devices in the next few months. What do you need to know? Why should you care? While Marshmallow seems at first glance to be a minor update, a number of features are being introduced that will improve users' experiences with the phone. Come hear how permissions have changed, how "Doze" will improve your battery life, and how SD cards have become useful once again.