Welcome!

Machine Learning Authors: Pat Romanski, Yeshim Deniz, Liz McMillan, Elizabeth White, Zakia Bouachraoui

Related Topics: Wearables, Mobile IoT, Microsoft Cloud

Wearables: Book Review

Book Review | iOS Programming: The Big Nerd Ranch Guide (4th Edition)

Big Nerd Ranch Guides

This book is the perfect place for an experienced developer to start with iOS programming. I say experienced developer because this book does a great job of showing you the basics of developing with iOS, but if you don't understand C and Objective-C, you are probably going to get lost. Maybe not, but I found myself saying, "I am glad I already know what that is" about quite a few topics that were used to explain the subject matter. If you don't know Objective-C, I would recommend starting with Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition).

This book does a great job of showing you what you need to know to get started with iOS. When you are done with it you should be able to easily move into programming iOS applications and learning more advanced topics along the way.

To give you an idea of the high level topics the book cover, I have listed the chapters below.

1. A Simple iOS Application
2. Objective-C
3. Managing Memory with ARC
4. Views and the View Hierarchy
5. Views: Redrawing and UIScrollView
6. View Controllers
7. Delegation and Text Input
8. UITableView and UITableViewController
9. Editing UITableView
10. UINavigationController
11. Camera
12. Touch Events and UIResponder
13. UIGestureRecognizer and UIMenuController
14. Debugging Tools
15. Introduction to Auto Layout
16. Auto Layout: Programmatic Constraints
17. Autorotation, Popover Controllers, and Modal View Controllers
18. Saving, Loading, and Application States
19. Subclassing UITableViewCell
20. Dynamic Type
21. Web Services and UIWebView
22. UISplitViewController
23. Core Data
24. State Restoration
25. Localization
26. NSUserDefaults
27. Controlling Animations
28. UIStoryboard
29. Afterword

With Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition) the authors provided no code samples. Although they still push you very hard to type everything, they do provide code samples with this book. They are very well organized and usable.

One thing I learned from Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition) is that the authors are right, if you type the code instead of read the code, you will learn and retain a lot more of the topics covered.

The reason for this is the way the authors use the samples throughout the book. It goes like this- add this ABC code, and then in the next example delete ABC code and add XYZ code, and then leave XY, but delete Z and add DEF code. You get the final result in the code samples, but going through what it took to get there is just as important.

I have this fourth edition and the third edition. I never got around to reviewing the third edition, but wanted to make sure I reviewed this one because I feel it is an awesome asset to the experienced programmer looking to get into iOS programming.

One thing I think most readers will notice right away is that the book does not use Storyboards until the last chapter of the book, and then the book puts the kibosh on them. I have used Storyboards in almost all my quick and dirty proof of concepts where I wanted simple navigation. In one of those I had to abandon them because of some complex navigation one sections of the application required.

I wouldn't completely discount Storyboards and would use them if the applications functionality allowed for them. It is just like everything else, you need to understand the architecture and the functional needs of the app enough to make an informed decision.

The diagrams in the book are awesome. They are UML-ish and really help by giving a visual representation of the topic at hand. The authors also use the right amount of screenshots. They do a good job of including them when they are needed, and they do not use them as filler.

The book also makes a good reference. Topics are short and to the point. There isn't any filler in this book, so when you need to look something up you have a nice concise explanation at your fingertips.

All in all, if you are looking to get into iOS, this is a great place to start. If you are an experienced iOS developer, it makes a nice reference for the features only used once in a blue moon.


iOS Programming: The Big Nerd Ranch Guide (4th Edition)

iOS Programming: The Big Nerd Ranch Guide (4th Edition)

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.

CloudEXPO Stories
With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale or of automatically managing the elasticity of the underlying infrastructure that these solutions need to be truly scalable. Far from it. There are at least six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments. In this presentation, the speaker will detail these pain points and explain how cloud can address them.
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-centric compute for the most data-intensive applications. Hyperconverged systems already in place can be revitalized with vendor-agnostic, PCIe-deployed, disaggregated approach to composable, maximizing the value of previous investments.
When building large, cloud-based applications that operate at a high scale, it's important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. "Fly two mistakes high" is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, discussed how this same philosophy can be applied to highly scaled applications, and can dramatically increase your resilience to failure.
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by sharing information within the building and with outside city infrastructure via real time shared cloud capabilities.
As Cybric's Chief Technology Officer, Mike D. Kail is responsible for the strategic vision and technical direction of the platform. Prior to founding Cybric, Mike was Yahoo's CIO and SVP of Infrastructure, where he led the IT and Data Center functions for the company. He has more than 24 years of IT Operations experience with a focus on highly-scalable architectures.