Learning Swift Higher Order Functions (Online Course)

Master and harness the full power of Swift with Higher Order Functions. Take your iOS development to Black Belt level with this online course. Learning Swift Higher Order Functions @Lynda      @Linkedin Learning By taking the time to truly grasp higher-order functions, you’ll go from merely understanding the Swift language to mastering it. In this Read more about Learning Swift Higher Order Functions (Online Course)[…]

Migrating your iOS App to the AWS Cloud (online course)

Migrating your iOS App to the AWS Cloud More apps are requiring server-side storage and functionality, but custom web resources can be expensive to develop and maintain. Using Amazon Web Services (AWS) for migration can make the process easier without being expensive. In this course, explore the resources available and learn about each step involved Read more about Migrating your iOS App to the AWS Cloud (online course)[…]

Learning Amazon Web Services (AWS) for Developers (Online Course)

I recently developed this course for Linkedin Learning/Lynda.com to help people getting started with AWS. The idea is that there are many courses and certifications but many of them just cover a slice of AWS. This is meant to cover the topics in the AWS Associate-Developer certification. Not that you can pass the test after Read more about Learning Amazon Web Services (AWS) for Developers (Online Course)[…]

Building iOS Apps with AWS Mobile (Online Course)

Building iOS Apps with AWS Mobile Amazon Web Services (AWS) provides many services and features for developing server side functionality and resources. This can be particularly helpful and surprisingly easy for adding server side aspects to a mobile app. Using the Mobile Hub, AWS can be used to add user authentication (including Google, Facebook and Read more about Building iOS Apps with AWS Mobile (Online Course)[…]

AWS API Gateway with HTTP, Lambda, DynamoDB, and iOS (Online Course)

AWS API Gateway with HTTP, Lambda, DynamoDB, and iOS   AWS can be used to create a variety of features on the server side. Many of those can work together and create an entire online set of storage and functionality with little-to-no code. Check out this course and see how Lambda (serverless functions) can be Read more about AWS API Gateway with HTTP, Lambda, DynamoDB, and iOS (Online Course)[…]

AWS Tutorial: Adding User Authentication to a Mobile App

Adding user authentication with Amazon Web Services (AWS) can be pretty easy. You’ll need an AWS account and not much more.   The AWS Mobile Hub steps you through the process of creating a Project. Projects have Apps (e.g., iOS, Android, etc.).   AWS Tutorial at Accelebrate.com   For each app, you can add Backend Read more about AWS Tutorial: Adding User Authentication to a Mobile App[…]

Linkedin Learning: Business Tips featuring Bear Cahill

This is an excerpt from an interview I did at Linkedin Learning while there recording my online courses.   I enjoyed the process and it’s great to see the outcome in these various complications.   My part starts at 3:42 but I encourage you to watch all four of us and our thoughts on running Read more about Linkedin Learning: Business Tips featuring Bear Cahill[…]

iOS Development with Firebase (Online Course)

Firebase is popular software suite that enable mobile developers to quickly and easily add server-side functionality to apps: authentication, data storage, and more. This course explores some of the most useful services in the Firebase SDK for iOS app development. Instructor Bear Cahill starts by showing how to set up a project in the Firebase Read more about iOS Development with Firebase (Online Course)[…]

iOS Unit Testing with Xcode (Online Course)

Unit Testing for iOS Developers   Unit testing is a useful method for verifying functionality—both before and after development—and can help you catch and fix bugs. Xcode can automatically add unit test support to your projects. In this course, explore the fundamentals of unit tests in Xcode and discover how to add unit tests to Read more about iOS Unit Testing with Xcode (Online Course)[…]

Wargames, Maths and Bears

When I went to record my first course with Lynda.com and Linkedin Learning, we did a “live action” interview. They asked a variety of different questions including how I got started, challenges along the way and how I overcame them. Sometimes I forget the early parts of the story: my first computer, inspirations and obstacles and Read more about Wargames, Maths and Bears[…]

iOS CoreBluetooth BLE Online Course

Adding Bluetooth LE functionality to your app can be intimidating. Dealing with hardware connections is always a bit of a mystery. CoreBluetooth really helps simplify the details and the heavy lifting. It boils down the connection and communication to something more familiar to most developers. The course:  @Linkedin Learning However, there are still a lot Read more about iOS CoreBluetooth BLE Online Course[…]

iOS RESTful JSON API Development Online Course

My latest online course is released: iOS RESTful JSON API development including the Codable Protocol @Linkedin Learning   Thanks to my producer Audrey Tsaima!   One of my favorite things in Swift: Codable protocol – here’s a sample video:   Decodable protocol: JSON to object from iOS App Development: RESTful Web Services by Bear Cahill

Linkedin Career Clinic

Featured on LinkedIn Career Clinic: Developer Insights

Bear is featured on the latest Linkedin Career Clinic: Developer Insights video. The video features a handful of content authors for Linkedin Learning on the topic of clean code practices. Being passionate about your work is always plus and hopefully a goal. Even though development is often as much math and science as anything else, Read more about Featured on LinkedIn Career Clinic: Developer Insights[…]

iOS Network Development Using URLSession and Alamofire Online Course Release

  iOS Network Development Using URLSession and Alamofire with: Bear Cahill …is now available on LinkedIn Learning A sample video introducing Alamofire: Introduction to Alamofire from iOS Network Development Using URLSession and Alamofire by Bear Cahill   Course Description: Networking is a common component of modern mobile apps, necessary for authenticating user accounts, fetching data, Read more about iOS Network Development Using URLSession and Alamofire Online Course Release[…]

iOS slide in menu

Slide in Menu as an UIViewController Extension

  We often need to add a slide in menu to a UIViewController. It’s no easy task in Interface Builder. Here’s how to make one in code… Slide in Menu as an UIViewController Extension   First create a new file called MenuMgr.swift in your project. Declare the class… (link to the code at the bottom) Read more about Slide in Menu as an UIViewController Extension[…]

Using SharedPreferences Anywhere in Android app

Android/Java – SharedPreferences from anywhere in your App

Coming from iOS, I’m used to having access to UserDefaults anywhere in my code for storing user settings and such. Android requires a context to access SharedPreferences – pain.   SharedPreferences from anywhere in your App   So I created a Constants class that takes a context, creates a singleton and then allows for various Read more about Android/Java – SharedPreferences from anywhere in your App[…]

Validation for Email and Password

iOS/Swift Validate Email and Password Format

Here’s a couple of quick functions I use in a few forms in different projects. They’re pretty common and can be found other places. I based these on various things I’ve found online. So, like most things, I can’t take 100% credit but we all learned things from somewhere. The first is an email validator. Read more about iOS/Swift Validate Email and Password Format[…]

UITextField Form with Previous/Next Keyboard Accessory Input View as Extension (iOS/Swift)

UPDATED: Now use a scrollview instead of moving the view around. See the bottom of this post. Here’s how to easily, quickly create a manager for a form of UITextFields including Previous/Next buttons on a toolbar above the keyboard. It uses an extension on the UIViewController so it’s non-intrusive. All you have to do is Read more about UITextField Form with Previous/Next Keyboard Accessory Input View as Extension (iOS/Swift)[…]

Displaying an alert from an Extension

Display Alert Controller Popup from any UIViewController (iOS/Swift) Extension

Many apps use the UIAlertController to display information the user for them to acknowledge with an “OK” button. A UIViewController needs to present the alert controller to the user so I wrote an extension on UIViewController to handle this. This is just a simple alert to the user with an “OK” button that dismisses the Read more about Display Alert Controller Popup from any UIViewController (iOS/Swift) Extension[…]

Loading screen for iOS in Swift

Display a Loading/Waiting Activity Indicator (iOS/Swift)

Oftentimes, you need to display an activity indicator to the user when fetching or loading data.   It’s best to keep this in one place for ease of use. Also, it’s best to make sure this is done on the main/UI thread.   Loading Screen in Swift     Here’s a way to do it Read more about Display a Loading/Waiting Activity Indicator (iOS/Swift)[…]

Stack Overflow Developer Survey Results 2017

The stack overflow Developer Survey results for 2017 proved fairly interesting, somewhat confirming, slight surprising and a semi-overwhelming. You can read the results yourself to decide what’s interesting. There’s a few things I felt noteworthy to me…   FREEDOM! When I went solo I had a few intentions: no physical product, no physical location, no Read more about Stack Overflow Developer Survey Results 2017[…]

What to Expect From Apple’s September 7 Event – Video

Source: What to Expect From Apple’s September 7 Event We’re just a few days away from Apple’s annual fall event, where we expect to see the launch of the new iPhone 7 and iPhone 7 Plus, a second-generation Apple Watch with new bands, and refreshed Beats products. We may also see the debut of Apple’s rumored wireless “AirPods” earbuds, Read more about What to Expect From Apple’s September 7 Event – Video[…]

map view uiviewcontroller extension

Swift: Handle Location and MapView Updates with Extension on UIViewController

As I mentioned in another extension post, I dig them…when they make sense. I tend to do simple map stuff a good bit and wanted to write an extension for it. Swift: Handle Location and MapView Updates with Extension on UIViewController What it does: Requests authorization for user location Centers the map on the user Read more about Swift: Handle Location and MapView Updates with Extension on UIViewController[…]

wwdc keynote summary video

Watch Apple’s Two-Hour 2016 WWDC Keynote in 7 Minutes – Mac Rumors

It’s even less time if you watch it at 1.5 speed… Apple today unveiled new versions of iOS, watchOS, tvOS, and macOS, all of which are jam-packed with new features. iOS in particular was referred to as Apple’s biggest iOS update ever, with major improvements to Messages, Apple Music, Siri, and tons of other minor Read more about Watch Apple’s Two-Hour 2016 WWDC Keynote in 7 Minutes – Mac Rumors[…]

extension to compose email swift

Swift: Compose Email (MFMailComposeViewController) as an Extension to UIViewController

UPDATED for Swift 4… I’m a fan of extensions – but hopefully only when it makes sense. I wanted to write an extension on UIViewController to allow me to send email from any subclass…         Swift: Compose Email (MFMailComposeViewController) as an Extension to UIViewController Steps… Add a new file (⌘-N) and select Read more about Swift: Compose Email (MFMailComposeViewController) as an Extension to UIViewController[…]

app development cost

App Development: Hire, Outsource or Freelance

There’s a not of pros and cons to the different approaches to getting an app developed. But first there’s apps and then there’s apps. App Development: Hire, Outsource or Freelance Does your “app” calculate tips? That’s pretty basic. But if you’re building “the next Facebook” it’s really more of a company you’re building. If you’re Read more about App Development: Hire, Outsource or Freelance[…]

Apple’s App Review Process Now Takes as Little as Two Days – Mac Rumors

Good news… Apple’s app review process has become significantly faster during the first five months of 2016, according to AppReviewTimes.com, a website that tracks average App Store review times for both the iOS and Mac App Store using data crowdsourced from developers on both platforms. Source: Apple’s App Review Process Now Takes as Little as Read more about Apple’s App Review Process Now Takes as Little as Two Days – Mac Rumors[…]

podcast ios interview

HelloTechPros.com Podcast Interview Posted

I did an interview recently with hellotechpros.com podcast. Their “Saturday” topic is on Entrepreneurship. From the site… If you’re painting a picture of a sunset and someone tells you to add a dolphin, does that person’s idea represent your vision? If not, Bear Cahill recommends that you thank them for the input and move on. Entrepreneurs have Read more about HelloTechPros.com Podcast Interview Posted[…]

app development costs

App Development Cost – What Does it Cost?

The all important question everyone has to ask is: how much will it cost? App development cost varies based on several factors and can range widely. App Development Cost Of course the requirements of the app drive the app development cost. However, that’s not very clear since some requirements are easy/cheap and some are very Read more about App Development Cost – What Does it Cost?[…]

app cost

How Much Time and Money It Takes to Develop a Mobile App

Many mobile apps are so simple you might be tricked into thinking they took almost no time or effort to create. This infographic, outlining the mobile app development process, however, tells us that there’s a lot more to it.The graphic comes from app development company NineHertz. It says that it takes almost 18 weeks to Read more about How Much Time and Money It Takes to Develop a Mobile App[…]

xcode 7 - invalid bundle

Xcode 7 Invalid Bundle – iPad Multitasking Required Orientations

I started getting the Xcode 7 Invalid Bundle error: ERROR ITMS-90474: “Bundle Invalid. iPad Multitasking support requires there orientations:’UIInterfaceOrientationPortrait,UIIinterfaceOrientationPortraitUpsideDown,UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight’. Found ‘UIInterfaceOrientationPortrait’ in bundle. Xcode 7 Invalid Bundle Fortunately the fix is easy: Select your project Select the General Tab Select your Target Check the box titled “Requires full screen” Done. More: xcode submit invalid bundle ipad Read more about Xcode 7 Invalid Bundle – iPad Multitasking Required Orientations[…]

iOS 9 Hidden Features: Settings Search, Selfie Folder, Home Sharing for Music, Go Back to App, and More – Mac Rumors

From MacRumors.com… There are quite a few major changes in iOS 9, like split-screen multitasking for the iPad, improvements to search and Siri, under-the-hood performance boosts, and revamped apps, but there are also dozens if not hundreds of lesser-known tweaks and refinements that make the iOS 9 experience better than ever before. Weve had a Read more about iOS 9 Hidden Features: Settings Search, Selfie Folder, Home Sharing for Music, Go Back to App, and More – Mac Rumors[…]

iOS 9.0 – Use HTTPS Exclusively for App Transport Security

Apple is “strongly” suggesting you use HTTPS only going forward with iOS 9 for App Transport Security. When Apple tends to make something a default (even if they allow exceptions) it usually means it will be required later. Hint: Change. App Transport Security App Transport Security (ATS) enforces best practices in the secure connections between an Read more about iOS 9.0 – Use HTTPS Exclusively for App Transport Security[…]

CloudKit – NSHipster

Perhaps you’ve heard of iCloud Drive before—iCloud Drive is where we can store our user’s data and files for easy access from other devices. CloudKit is the framework that helps us do this easily in the apps we create. CloudKit – NSHipster Source: CloudKit – NSHipster

Mac Rumors: ‘Hey Siri’ Event Roundup: iPhone 6s, iPad Pro, New Apple TV and More

  There were several new big announcements at the apple ‘hey siri’ events. iPhone 6s with 3D touch, tvOS for the new Apple TV and the large iPad Pro were the highlights… Hey Siri Source: Mac Rumors: Apple Mac iOS Rumors and News You Care About Apple was on stage at the Bill Graham Civic Read more about Mac Rumors: ‘Hey Siri’ Event Roundup: iPhone 6s, iPad Pro, New Apple TV and More[…]

Mac Rumors: ‘iPhone 7’ Thickness Likely to Approach iPod Touch

KGI Securities analyst Ming-Chi Kuo has issued a new report that suggests next year’s “iPhone 7” could be Apple’s thinnest smartphone yet, with a thickness of somewhere between 6.0mm and 6.5mm, which Kuo mentions is a near similar measurement of the current iPod touch’s 6.1mm. As a comparison, the current model of the iPhone 6 Read more about Mac Rumors: ‘iPhone 7’ Thickness Likely to Approach iPod Touch[…]

iOS icon resolutions

iOS Icon Resolutions Creator Script

I saw a script online somewhere (stackoverflow?) a while back that created some iOS icon resolutions. I updated it and found it very useful. iOS Icon Resolutions Create icon.sh in a directory and post the code below (don’t forget to chmod 777 the file). Then put the icon (1024×1024 png) in the same directory and run Read more about iOS Icon Resolutions Creator Script[…]

app development market - sdk api usage

App Development Market Study Infographics

Here’s a couple of interesting infographics on the App Development Market from ContractIQ – see the full article  Techcrunch and various other industry magazines App Development Market Study Infographics Download the whole report here – https://contractiq.com/mobile-app-development-report-2015 Hourly rate info…     SDK/API usage…

libGPUSupportMercury.dylib iOS Crash

libGPUSupportMercury.dylib iOS Crash

I’ve been seeing the libGPUSupportMercury.dylib iOS Crash and having a tough time nailing it down. I still can’t reproduce it predictably. However, I believe I have enough to avoid it. libGPUSupportMercury.dylib iOS Crash For me it’s happening in the initWithFrame: call for MKMapView in the background. The app monitors for significant location changes. When it’s Read more about libGPUSupportMercury.dylib iOS Crash[…]

significant location change

Test Significant Location Change – iOS Simulator

Testing location functionality can be tough. Significant location change updates especially so. Here’s how to test SLC in the simulator… Test Significant Location Change You may need to reset the simulator  (iOS Simulator>Reset Contents and Settings…) to test Significant Location Change. These steps assume you have setup your app to use the Location Manager to monitor Read more about Test Significant Location Change – iOS Simulator[…]

enable itunes testflight testing

iTunes TestFlight – TestFlightApp.com Shutting Down Services on 2/26

You may have noticed that TestFlight will shut down on 2/26/15 moving iOS app testing to iTunes TestFlight Beta Testing via iTunesConnect. While this is going to be work, it won’t be much different ultimately. Testflight has a useful FAQ on it. And Apple has a good site with a helpful video. iTunes Testflight Testers Read more about iTunes TestFlight – TestFlightApp.com Shutting Down Services on 2/26[…]

gripper calculator

Invanko Super Gripper App – Resistance Calculator

Drew Baye had a great idea for an app to be able to calculate the resistance on an Ivanko Super Gripper. He had the data and I created a simple app: Invanko Super Gripper App Invanko Super Gripper App       The calculator allows you to quickly and easily determine the spring configuration required for Read more about Invanko Super Gripper App – Resistance Calculator[…]

adhoc push notifications

Adhoc Push Notifications Not Working – Parse.com

Like many posts about parse.com adhoc push notifications not working, I was having problems receiving adhoc push notifications. I tried it all including recreating all the provisioning multiple times. Adhoc Push Notifications The solution, in this case, was simple: delete the app from my iPhone and try again. I believe it was mainly caused by the Read more about Adhoc Push Notifications Not Working – Parse.com[…]

create new account

Messages Not Syncing in Yosemite OSX MacBookPro – FIX!

So when Mavericks came out, Messages synced across my iOS devices and OS X/MacBook. Then it stopped. I long waited for the day when Yosemite and iOS 8 would come out and fix it all. No dice. I couldn’t even send to other Messages users. With iOS 8 and Yosemite I could now send texts to Read more about Messages Not Syncing in Yosemite OSX MacBookPro – FIX![…]

Xcode 6 Auto-Increment Build Number Script

Xcode 6 Auto-Increment Build Number Script

I recently started using Parse.com’ crash reporting and wanted to pay better attention to my build numbers in Xcode.   I found this post on stackoverflow about it and used the solution. It works great and I certainly want to give credit where it’s due.     Xcode 6 Auto-Increment Build Number     Steps: Read more about Xcode 6 Auto-Increment Build Number Script[…]