Hawaii iOS Developer Meetup – Session 27

During this meet up I showed the developers how to integrate Firebase Auth to authenticate a user of an app. O’Neill asked for a tutorial on integrating AdMob ads last week so we covered that topic as well.

As I was doing the presentation I was thinking to myself, this so damn easy. It used to be so difficult before.

Some questions came up during the meetup regarding: Authenticating users who sign up via email (so no one else camps on someone else’s email address) and a question from Tyler on the need for a password. Both questions are discussed in the video.

Next week Adam Smith is going to give a talk on “Fun with Enums” at the meetup. Please RSVP if you are interested in attending!


Hawaii iOS Developer Meetup – Session 26

Fantastic meetup this week. We covered Firebase Analytics and a host of questions came up. There were questions about Admob integration, the true costs of Google Services, and if Apple keeps a percentage of your advertising revenues.

All the questions that came up are addressed in the meetup video.

For the past 2 meetups the conversation after the presentation has taken longer than the time we have. As a result we have not be able to mob program. I’m eager to get this going again.

Next week we’ll be doubling down on Firebase integration by focusing on User Logins and Admob integration. Please RSVP if you’re interested in attending.

Hawaii iOS Developer Meetup – Session 25

With all the announcements from WWDC 2017, I was eager to get everyone’s opinions on iOS 11, Xcode 9, wireless capability to build to your devices over the air, and my personal passion: ARKit.

I sped through the prepared talk on Bluetooth Game Controllers. Then we had a chance to discuss the new hotness from Apple.

I was surprised that Machine Learning with MLKit and the new Foundation class Coder that allows for easier serialization of data were big items that developers were interested in discussing.

I learned a lot from Jonathan, with his Functional Programming background, Ryan, with his experiences creating and reading JSON in his own projects, and Chae’s deep knowledge of data formatting.

So happy to have this group of developers to discuss, learn from, and guide through our mutual learning of Swift.

We’re covering Firebase Analytics at the next meetup. RSVP if you’re interested in attending!

Hawaii iOS Developer Meetup – Session 24

Core Data is a subject that has always been spoken about amongst the iOS developers I know, in hushed tones. That’s why it was so great that Adam Smith, one of the developers at the meetup, suggested that he was willing to do a talk at the meetup on Core Data.

Adam’s presentation was well thought out. He prepared a talk that took us through all 4 types of data persistence available to iOS developers:

  • UserDefaults
  • KeyChain
  • NSKeyedArchiver
  • Core Data

And once he’d taken us through the pros and cons of each solution, he did some live coding that showed us how he sets up a project to use Core Data.

I especially like how he brought some humor into the live coding by naming his project CuteDogs. Hilarious. It reminded me of Joel Spolsky’s blog post on Painless Functional Specifications.

This week we’ll be covering MFi Bluetooth Game Controllers in Swift. RSVP if you’re interested in attending.

Hawaii iOS Developer Meetup – Session 23

Gotta love the mob programming challenges. I feel that that’s what the developers (even the ones who don’t end up participating) enjoy the most. There’s something magical about watching other people code.

This week’s topic was Foundation. I was at a loss for how to prepare for the subject this week. In order to learn more about the subject I first started by posting questions to the developers on the meetup page:

What are you most interested in discussing with Foundation?

I got a request from O’Neill to compare and contrast Foundation and UIKit. I got a request from Ryan to go over localization. With those 2 requests in mind, I got to work researching Foundation, Localization, and UIKit.

In my research I learned that UIKit is written on top of Foundation. So there are no real tradeoffs or benefits – by using UIKit, you need to bring in the Foundation framework.

I looked into Localization to attend to Ryan’s request to find out more about how he could localize menu items in his app TouchOven. When I researched further into Localization, I found that there is a full Localization library that can be utilized. With the idea of focusing on Foundation from the extending and open source scope, I pivoted and started researching more about the open source aspects of Foundation.

Turns out that Foundation is a rewrite of Foundation from Objective C. The Foundation class is being re-written in Swift to leverage the Swift compiler. Not all of the functions that are in the Objective C implementation of Foundation. In the meantime they are suggesting the developers create bridging headers to access the additional capabilities of Swift’s Foundation while the ports are still being made.

Fantastic meetup and lots of gaps in my knowledge regarding Swift have been cleared up. Next week, Adam Smith, will be delivering a talk on Core Data. I can’t wait! RSVP if you’re interested in attending!

Hawaii iOS Developer Meetup – Session 22

This week I prepared something different for the meetup. Usually I create a playground with a bunch of code to execute with the group. This time I did some research online and prepared it as a talk for the group.

I also liked talking about anything that was unclear from the previous meetup. I started out the session, after introductions, with a request for any questions or feedback from the last meetup.

Joanne had asked about the code we covered last week regarding reduce. It wasn’t clear that the accumulator was the first parameter and the closure was the second parameter. Ryan and Chae helped to explain.

Then we got into the discussion about Classes vs. Structs vs Enumerations. I love the preparation that I can do before these meetups. I learn so much. We had a nice discussion about the strengths and weaknesses of each data type.

I was happy, through my research, to find the best practices regarding the use of Classes vs. Structs vs. Enumerations.

I am glad to report back that we reached concensus that the way to create data models for your iOS projects is to always start with an Enum, then if undefined cases come up in the program creation, we should switch to using structs. Then and only then, if we need the actor to talk to other objects and control them, we should start using classes.

This week we’ll be covering Foundation. I asked for feedback from the group to prepare for the talk. So far I have gotten requests to compare UIKit and Foundation and another request to cover localization (support languages such as japanese, korean, and spanish).

If you’re interested in attending the next Hawaii iOS Developer Meetup, please RSVP.

Hawaii iOS Developer Meetup – Session 21

I managed to get the streaming computer to work correctly this week. We had a few technical difficulties. I find that narrating my way through them tends to put everyone at ease through the process.

Last time we met we discussed closures and I had loaded too much content into the talk. This time we covered Results, Errors, and Optionals. I am glad that I prepared just a light talk on the material. We ended up discussing guard let and if let for a good 20 minutes.

I shared with Joanne that I had read something about group sessions and how it’s wise to leave room at the beginning of the meetup to review anything that was unclear from the last meetup.

This time through I asked at the beginning of the meetup, after the introductions, if anyone had questions about the last meetup on closures. Joanne brought up the fact that the mapping functions Chae wrote at the last meetup was unclear. So we took about 15 minutes to discuss that section.

Going forward I am planning to loop back around at the beginning of the meetup to leave room for discussions of questions that lingered from the previous meetup.

I’m glad to have discovered this method of looping back around, seeing how effective it is in promoting continuity in the meetup, and to make sure that the time we have set aside for meeting is rife with learning opportunities, psychological safety, and powerful swift programming.

If you’re interested in attending the next meetup, we’re covering Classes vs. structs vs. enums. Please RSVP if you’re interested in attending!