Flatiron Day 25: Networking

Kicking-off week 5 we started the morning with pair coding on our class App LocationQuiz.  We implemented the design we crafted on Friday – getting location venues from FourSquare and filling a new Nearest Locations Table View controller. This was a good exercise in practicing our Inter View Controller Communication as the Nearest Location needs to send its chosen venue object back to the presenting View Controller that spawned it.  Instead of implementing a delegate in the presenting controller we did this by having a property on both sides and setting that object before we popping the Nearest Location View Controller. Continue reading

Flatiron Day 24: Review Session 4

Today we held our fourth Weekly Review Session and as usual this was extremely worth going through this code kata.

We started an empty review session App and set out with a goal to build an RSS Reader from scratch.  We first cranked out a Podfile in order to use the first CocoaPod we found when we searched for the term RSS: BlockRSSParser. Continue reading

Flatiron Day 20: CocoaPods

Paul Hegarty on the Big Screen

Paul Hegarty on the Big Screen

Today we started by watching Paul Hegarty of the Stanford CS193P Course give the Core Data Lectures from the Winter 2013 iTunes U Coding Together sessions.  Watching the lectures again now after these three weeks at Flatiron I noticed many things I did not see the first time around.  An example is that he teaches about UIManagedDocument which is a container for the NSManagedObject and is a cross between a high-level document abstraction and the Core Data stack.  I’ll need to come back to this and experimet with its usage.  This UIDocument subclass is on the road to iCloud so it seems promising. Continue reading

Flatiron Day 19: Debugger Day

Today, we had a Core Data Morning Assessment. Specifically, a project where we had to add NSFetchedResultsController and its delegate in order to fill a TableView with data.  We also practiced how to access our AppDelegate from other parts of the App. After reviewing the code kata we went into Morning Lecture which focused on the Xcode Debugger.  We ended the lecture with a quick CocoaPods install to kick-off our second of three units of the course: 3rd party APIs and SDKs.  Tomorrow, we’ll dive into Unit Two: Building Real World Apps with CocoaPods after having installed it today.   Continue reading

Flatiron Day 18: Review Session 3

Today we held our third Review Session and again this was extremely worth going through this code kata.

We started an empty review session app from scratch and cranked out a Local Notification App.  We then continued our Couch Potato Activity Tracker App.  I refined my algorithm in order to tighten my code.  I then went back home and repeated all the steps again. Practice makes perfect.

Tomorrow, we start the second part of the course: third-party APIs and have our weekly meetup.

Flatiron Day 15: Refactor This

Today’s Morning Assessment was to implement a Custom TableView Cell from the screenshot of some Podcast App.  This seemed easy at first but took us into lunch.

Today for lunch we really struck out by going to Stone Street and picking a random Mexican Grill place.  I predict a return to Sophie’s tomorrow. Continue reading

Flatiron Day 14: ARC and UI Tricks

Another geofencing Morning Assessment.  This time I put in a button to switch between jumping in and out of the region I set-up so I wouldn’t have to type it in the coordinates in the Emulator.

Morning Lecture today covered ARC which is the marketing name for what the Apple Xcode development team called ARR: Automatic Retain & Release – a way more descriptive name for what Automatic Reference Counting is.  I think this makes it cleared that ARR is not a form of Garbage Collection.  Why did Apple Marketing change it?  The story I heard from now-retired Apple Director Don Melton leader of the WebKit and Safari teams tell is that the development team would act like pirates whenever they talked about ARR – so marketing changed it.

Specifically, we discussed the retain cycle, why children should not strongly retain to parents, and the UNIX philosophy of doing one thing well.  This reminded me of Windows Phone 6 which had a menu bar and you had to use a stylus.  No menu bar on the iPhone in UIKit is a good thing.

After another Sophie Lunch of Beef Stew we plowed into Afternoon Lecture with UI Tricks of the Trade.  We took a look at a random palette generator at 80×15.com. These are great designed palette color schemes which color hex codes. What do you do with the hex code you ask – why put it through a UIColor Code Generator. Next we enhanced Navigation Bars by setting tints, translucency, and title text attributes. We then went back to the Visit Charlotte App from Day 11 which we changed to the Visit New York App. Today, we went in to enhance the UI of the App.

Guest Lecture by Jeff Holliday of brainscape

Guest Lecture by Jeff Holliday CTO of brainscape

We had Jeff Holliday CTO of  brainscape come in for a guest lecture entitled “Reducing Dependencies in Objective-C.”  This reinforced the Morning Lecture and Jeff showed some sample code he had brought along.   Continue reading

Flatiron Day 13: Local Notifications

Mondays seem like Tuesdays when you come in on Sundays.  We started Week 3 with a Morning Assessment with another MapKit App that takes what I call the driving Phil (since he is driving around Cupertino on the Freeway at 70+ MPHs) and drop pins behind him on the 280 with a special callout that shows his speed.

After this we went straight into a Quiz with five topics: Nav Controllers, TableViews, Objects, MapKit, and finally no quiz would be complete without Git.

Broadway Columbus Day Street Fair

Columbus Day Street Fair in the Financial District

After the quiz we stepped outside to see a huge Columbus Day Fair going up Broadway.  We grabbed some German Smoked Rostbratwurst on a bun served with sauerkraut.  We also got some free bags from YP but you had to install the app on your iPhone which Jay did hence taking one for the team. Continue reading