Description

Forgot someone's name? No problem! This iPhone app, "Face to Name" will fill you in on the names of people you’ve forgotten.

Inspiration

I wanted to learn iOS development and AWS (Amazon Web Services) skills so I decided to make an iPhone app that incorporates Swift programming and AWS's APIs. It gets its awesome facial recognition from the AWS Rekognition API.

How I Built it

  • Swift - For everything.
  • AWS
    • S3 - To store the images
    • DynamoDB - To store the acquaintances.
    • Rekognition - To index faces and search for matches.
    • Cognito - For user sign in.

Challenges I ran into

Learning iOS Development. It was daunting at first and I was constantly making mistakes that I didn’t know how to fix, but I kept with it and kept going back and forth between working on the project and studying Swift’s online documentation. Gradually I pieced together the elegant and powerful architecture that makes up Swift for iOS. Then my speed increased drastically from there. However, the learning curve still took a large portion of my time. I’d say that if I divided up all the hours I worked on this in half, the first half of the time would only make up for about 20% of the final project because of all the time I spent learning and making mistakes.

Accomplishments that I'm proud of

I'm proud that I was about to produce a fully functional, end-to-end iOS app. The app is designed from 100% scratch and took about 2 full weeks of hard work.

What I Learned

I learned that, by really putting my mind to it, I can go from no experience to extremely comfortable in a new area of development like iOS dev in a matter of weeks. It’s amazing looking back at the beginning of the project and having little idea of why the problems I ran into were happening (I had a lot of mistakes at first!), but now I understand what’s going on and what to do. Now I know how to utilize powerful tools such as closures and extensions.

What's next for Face-To-Name

  • A common bank of known names for faces.
  • Fancier user interface.
  • More convenient ways of adding acquaintances.
  • Android version.

Installing

Everything you need to run the project in Xcode should be provided, including all AWS (Amazon Web Services) frameworks necessary.

+ 1 more
Share this project:

Updates