Yes, it really is.

There’s that itch again. You know the one. It’s the itch that pops up after you’ve been sitting at your desk for twenty minutes or so. It’s the one that nudges you away from focus and towards the delicious dopamine only found in your favorite distraction.

The scratch for your itch is a quick peek at your phone. Just a quick scroll to see what’s happening on Instagram. Or maybe Facebook, if you still don’t care about them letting companies read your private messages. Maybe your scratch of choice is Snapchat, Reddit, or Tinder. …


One of the first iOS apps I ever created.

We hear it all the time from people, “I have this idea.” Then they go on to describe it in impressive detail with a glow in their eyes. Unfortunately, these discussions usually conclude with, “But I haven’t started it yet because INSERT REASON HERE.” Or, “I’m not done yet because INSERT TIME CONSTRAINT OR CURRENT OBSTACLE OR OTHER PRIORITY HERE.” Or even worst of all, “Even though I’ve been working so hard on it for the past year, I DON’T THINK IT’S READY YET so I’m going to keep trying to make it perfect before I let anyone see it.”


“I’ve got a question”

It’s a common question that weaves its way into all the popular programming threads found on Reddit and other online communities. Self-doubt is so prevalent in the beginner’s mind and they often think that at some point, this doubt will completely vanish.

So, how do you know if you’ve got “the right stuff?”

Maybe you could order a book online that one of your friend’s told you about. “Clean Code” by Robert C. Martin (Uncle Bob) would be a good one! But as you dive in with all the ambition and inspiration in the world, the words seems foreign and…


UPDATE #2: If you want some extra help preparing and learning more about Swift, let me teach you: http://strawberryswift.com/

UPDATE: I’ve been hired at Intrepid as an iOS dev! The following info certainly helped.

It’s time to start the job search. It‘s fueling a variety of emotions, ranging from anxiety and dread to excitement and confidence. But I believe diligent preparation will calm my nerves and provide a sense of stability.

Last night I had a wonderful mock tech interview and learned a lot of valuable information. So allow me to share:

Build Your Story

You’ll be asked to talk about yourself and…


Logging into apps with your Facebook credentials instead of an email is commonplace these days. So how do you add this functionality to your app? It’s fairly simple.

Before you start, register your app with Facebook. To do this, you need to log in to Facebook, go to the developer’s section, and add your app. Follow all the setup instructions here before continuing: https://developers.facebook.com/docs/ios/getting-started

1] You’re going to need to install a couple Facebook SDKs. I recommend using cocoapods. Accomplish this by adding the following to your Podfile:

pod “FBSDKCoreKit”pod “FBSDKLoginKit”pod “FBSDKShareKit”

2] Now you’re ready to add…


Action Extensions are a cool, little beast that can take your app to the next level. You’ve seen them before — they are the small bits of functionality that pop up when you hit the “Share” button in Safari.

Or they can be dropped into the share sheet that appears when you drag your finger from the top to the bottom of the phone.


I recently started a little side project app, and I wanted it to save articles I come across on the web and then read them to me. To accomplish the “read to me” part, I had to dive into Apple’s AVSpeechSynthesizer. Fortunately, it was surprisingly simple!

So let’s get started!

1] Import AVFoundation

#import <AVFoundation/AVFoundation.h>

2] Ok, are you ready for this? To get Siri speaking to you, this is all you need:

AVSpeechSynthesizer *speechSynthesizer = [[AVSpeechSynthesizer alloc] init];AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:@"Hello, I'm a talking phone."];utterance.rate = 0.085;utterance.pitchMultiplier = 0.85;utterance.volume = 0.8;[speechSynthesizer speakUtterance:utterance];

Let’s…


Recently at Flatiron, we learned about this mystical object called a UITableViewController. It’s power, flexibility, and ubiquity is impressive to say the least. Here are a couple of apps that are using UITableViewControllers (and if they’re not, they easily could be).


If you are unfamiliar with Git (not the same thing as GitHub), then read my 5 minute tutorial on Git here: https://medium.com/@alanscarpa/what-is-git-the-5-minute-tutorial-daa0df0cc98c

Git is pretty awesome right? Yea, it is! But at this point, you’ve only been using Git all by your lonesome.

What would you do if you wanted to work on your project with someone else? How could you and your coding partner(s) in crime manage this without stepping all over, editing, changing, deleting each other’s code?

Enter GitHub.

This is Github’s mascot — Octocat

GitHub allows multiple people to work on the same code in an efficient and smart way. It does this by working…


It’s been about one week since I started the iOS immersive class at The Flatiron School in NYC. To say I’ve learned a lot in 7 days is an understatement. The content, instructors, and classmates are all top-notch and I’m so grateful that I have this opportunity. One of the first topics we tackled was Git and GitHub.

Any programming knowledge I had prior to Flatiron was self-taught and there were plenty of holes in the shaky house of knowledge that I had built. This became apparent whenever my Google results presented StackOverflow answers referring to ideas and concepts that…

Alan Scarpa

Contact me on Twitter: @alanscarpa

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store