Categories
code

iOS Design Patterns: Delegation

Knowing what design pattern to implement in your code is one of the most important skills to have as a competent iOS developer.

No, design patterns have nothing to do with user interface or visual design-who would ever think that? -scratch head- Rather, they are reusable solutions that solve common problems, particularly with communication between objects in code.

There are many powerful design patterns found in iOS development. For this blog post, I wanted to expand on the delegate pattern in iOS.

Categories
code

Week 11 & 12 Summary

Week 11

Crunched for time.

There is barely any time to blog during project mode. It’s a long 2 week sprint and our team still has a lot to get done. It’s frustrating because everyone on our team is new to this, but we are learning so much. There is no better way to learn about effective design pattern and features in iOS than devoting 3 weeks time to develop and app that you care about. Time is limited so learning new concepts quickly is not an option. I love the experience, but I can’t wait for this project to be over so that I can reflect on my personal growth here.

Categories
code

Week 9 & 10 at Flatiron School.

Week 9

Traveler App

Week 9 is the start of project mode at the Flatiron School, and that entails developing an app of choice for 3 straight weeks with 3 other classmates. We sort of had a choice with what we are going to make; the deal is each team submits three ideas to our instructors so that they get the final word on what project to pursue. They, of course, have a better handle as to what work is viable and challenging enough for our 3 weeks time.

Categories
code

How to utilize Nibs/ Xibs for reusable views in Objective-C

For my group’s final project here at The Flatiron School, we’re making an app that connects travelers with locals who offer personalized, authentic tours of their city. You can think of it like an AirBnB app in that our app serves as a marketplace for users to present and book tours.

Categories
code

Week 7 & 8 at Flatiron

Week 7

Presenting Muse at Flatiron Presents

Finally finished my part in Flatiron Presents. Every Tuesday here at Flatiron School, 3-4 pairs (2 web, 2 mobile) of students present an app/ feature that they have collaborated on. My partner unfortunately dropped from the program around Week 4, but I tried making the most out of the last 2 weeks and made a working app that I feel proud about.

I made a journaling app that allows users to fully capture a moment by pinning their currently playing song to a journal entry for future playback. The frameworks I used to make this app work include MPMediaQuery, MPMusicPlayerController, and Parse as a backend solution for saving entries and music playlists.

Categories
code

Incorporating Youtube’s Data API in your Xcode project.

If you ever wanted to integrate youtube search and play capabilities into your iPhone app, you will eventually need to play around with Youtube’s Data API. Depending on the level of interaction you would like to have with a user, you may need to authorize requests with OAuth 2.0. But if you are just interested in searching and playing videos based on a particular query like this post, all you need to do is sign up for an API key on Google’s dev console. With just the free rate limit, you are allowed 5,000,00 requests per day, but as you will soon realize, those API calls can accrue pretty fast with even the most basic requests.


Go to Youtube’s Developer Console and request an API Key. 

Categories
code

Weeks 5 & 6 at The Flatiron School.

Week 5

Auto Layout

Wrapping Up Core Data

We wrapped up our last lecture on core data this morning, and even though the everything dealing with core data seemed convoluted, it eventually became pretty straightforward. According to our main instructor Tim, we primarily use APIs and cloud services to manage our services. There is also Parse, a backend database solution for mobile app developers who don’t can’t/don’t want to deal with the backend side of things. On top of that, they recently came out with a new local database feature for iOS, meaning you can save data locally until you have a network connection, which then syncs your files with Parse’s server. Makes you think when we’d ever have the need for Core Data.

Categories
code

Week 3 & Week 4 Summary

Week 3

Table Views and Datastores.


Day 12
Before the day ended yesterday, Tim introduced us to table view controllers, the visual interface that powers a majority of the apps we play with. Just think about any app that scrolls through endless rows. By the time lecture wrapped up, my brain was already heading into power-save mode after spending most of the afternoon tackling navigation controllers, which allow subsequent windows to appear after a button press to more detailed information.
I don’t feel very comfortable with the material, and I’ll probably have to re-watch some of the lectures. Oh yeah— all our lectures and code samples are recorded and posted on GitHub so that we don’t have to stress with getting all the notes and code lab walkthroughs at that very instance. +1 for Flatiron Team.

Categories
code

Moving table view cells across sections in a to-do list app.

Over the past week, I’ve been working on a small to-do list app that categorizes your personal tasks based on type and category.

One of the bigger challenges I had while building my to-do list app was moving tasks around across different sections. And while Apple has its own proprietary method for managing and reordering its cells via an optional button, I wanted my cells to move based on button presses instead, specifically with the popular SWTableViewCell cocoapod.

Categories
code

Weeks 1 & 2 at The Flatiron School.

Week 1

Deploy on Day 1.

It is the almost the end of week 1 here at the Flatiron School, a coding school that cultivates professional, entry-level computer programmers in a matter of 3 months. On the first day, one of the instructors told me to enjoy every moment because things move so fast here, and he couldn’t be more accurate. As of this post, it’s already the end of week 1, and for me, all 5 days have felt like a long string of days. All the lectures, introductions and exhilaration feels like is one continuous day, kind of like they’re all concatenated to one another. …wait a second. We also went right into action on our very first day by tackling our first coding lab with the classmates next to us. No prior lecture— it was just us and what we knew coming into the program after the 150 hours of assigned pre-work.