Book Review: Test Driven iOS Development with Swift by Dr. Dominik Hauser

When people first start to learn how to program it is always the flashy, forward facing aspects of development that most people gravitate too. It might be creating some sort of beautiful, dynamic interface, or writing complex algorithms that set your program apart from everyone else. But the reality is that a lot of the time spent programming is doing debugging, and making sure error handling is managed correctlyand writing unit tests. Those tasks are certainly less exciting, but also critical to making apps work well. The latter of those tasks, unit tests, is particularly important, and often ignored, which is where test driven development (TDD) comes into play. The shortest explanation of what TDD is would be that it is a paradigm for developing in which you write unit tests first, and then the necessary code to make those tests pass. With this development workflow you cannot ignore unit tests because without them your code cannot exist.

Test Driven iOS Development with Swift by Dr. Dominik Hauser (USD 31.99) is not for the faint of heart. You need to have a strong understanding of Swift and iOS development going into it. This definitely falls into the category of advanced level topics. It is also going to require a real investment of time. Three quarters of the book is a single tutorial that takes you through the process of TDD by creating a ToDo list app. If you are not going to commit to working through the whole book then I would suggest you simply skip getting the book. But, if you have a specific need to learn TDD, or have a strong suspicion this is going to be something you want to learn and implement in your own workflow, then by all means keep reading to see what this book is about. Read More

Book Review: Preview Edition of App Development with Swift by Apple

cover225x225

One of the themes of WWDC 2016 was about making computer programming more accessible to newcomers, whether in the classroom, or for someone taking it up on their own. Swift Playgrounds for the iPad was perhaps Apple’s biggest contribution to this effort but rather quietly there was a book, App Development with Swift, that was also released and is currently available in preview form, with lessons still be adding. This is part of a larger Everyone Can Code campaign which attempts to bring together all the resources newcomers need in order to learn programming in Swift. You can check out the Apple website for Every Can Code, or go to this iTunes link which takes you to its curated collection of resources from the App Store, iTunes U, and iBooks.

Apple has released books on Swift before and you can still find its seminal The Swift Programming Language over on the developer site. But it was never very accessible for someone brand new to programming (an experience I can attest to). App Development with Swift solves that initial accessibility problem, and does so in a brilliant way. Read More

Book Review: Pro Swift by Paul Hudson

29890513

Paul Hudson, the author of Pro Swift which is priced at USD 30, is an incredibly active indie developer/publisher in the Swift and iOS community. His website, hackingwithswift.com, has become a popular resource for Swift developers, especially those just starting out. Along with Pro Swift he has also published a number of other books including Hacking with Swift (an introduction to Swift based on tutorials from the website), and Objective-C for Swift Developers, which is exactly what it sounds like and is a book I reviewed not too long ago. In just the past year Paul has produced a staggering amount of resources and with each new release his books continue to improve and become better than the previous.

Pro Swift really targets anyone who is comfortable with all the topics you might find at the beginner level and is ready to move onto more complex, and powerful, aspects of the Swift language. It is a very practical book, and focuses on the how, though it does go into the why when it is applicable. If you are someone who is looking for lots of theory, or hoping to have concepts explained by using other programming languages as examples this is probably not the book you are looking (though it can’t hurt to check it out). But if you are new to programming and learning Swift as your first language then this book is going to be right up your alley. It is incredibly accessible as it builds on existing Swift knowledge, as opposed to bringing in broader object oriented programming concepts and paradigms.

About the book

To start with Pro Swift is also packaged with 70 videos that cover a lot (but not all) of what the book does. Although I have called this a book review I will also cover the videos as they are an important part of the overall Pro Swift package. There are 7 chapters to the book, each of which is a logical, self contained section: Syntax, Types, References and Values, Functions, Errors, Functional Programming, and Patterns. Each chapter is largely independent so if you really need to just skip ahead to Functions you could do that and probably be just fine. That said, the flow and progression of the book really does lend itself to working through it from start to finish, which is how I would approach this book on first read.

The language and tone of the book is very relaxed and fun. Code examples make reference to Taylor Swift, Star Wars, Bill and Ted’s Excellent Adventure, and many other pop culture references that I probably didn’t clue into. Descriptions and explanations are done in plain language as much as possible. The proper terminology is always used, but it doesn’t get cluttered with jargon. There is a good balance between not over or under explaining each of the concepts so you don’t get slowed down or left behind by the pace of the book.

The layout of Pro Swift (which is available in e-book form only), is fairly basic. There is no colour (except for any hyperlinks, which are in the standard blue). The text is not a personal favourite of mine and I am not sure how nice it would look on a non-retina screen. But, since I was viewing it on a retina screen I had no real issues with it. Code blocks are in a black, courier style font. I have commented in the past how digital programming books really should utilize colour code blocks since there are none of the additional costs that print editions incur. As I have learned from feedback on other reviews I have done, self publishing tools are often times limited in what they will allow, so colour code blocks might not be possible without substantial work.

And with Swift still evolving and changing on a regular basis, focusing on keeping the resources updated versus the books layout is probably a better use of time. This book is updated for Swift 2.2 and Paul has a great track record of updating very quickly when new version are released. The purchase of this book will include an update for Swift 3.0 which is really important as it leans heavily towards the practical side where syntax will matter a lot.

About the videos

There are 70 videos which cover, so far as I can tell, a majority of what is covered in the book. The format of the videos is a screencast of live coding in a Playground. Each video has a consistent size and position for the Playground window. This might seem like a small thing but it really is so much more enjoyable to watch when there is that consistency between each video. The actual code is in large enough text that I could watch on an iPad Air and read along with the code without any problems. One of the biggest pet peeves I have about screencasts is when the presenter is constantly making mistakes and correcting their code. The actual typing/pasting of the code in the Pro Swift videos is very smooth and accurate and really makes it a pleasant experience to watch.

The narration is done by Paul himself and is really well done. Even though he likely has a script in front of him it doesnt feel like he is simply reading off a piece of paper, or a notes app, or simply winging it at the other end of the spectrum. It feels very natural and polished. And Paul’s British accent really helps in making it easy to listen to and follow along with. There are a few moments where Paul coughs, or has to back track on his words, or you see the mouse move to click the stop record button. These are a bit distracting, but, again, if the tradeoff being made is a few edits get missed in the name of getting updates out quickly then this is something that I can overlook. And those instances occur in no more then a handful of videos so it is not as though it is happening every video. These videos really do add a lot to Pro Swift and could easily be marketed as their own, separate product, or as extended content. The fact that they are standard content is a huge bonus.

How effective is this book/videos?

This is hands down one of the best resources for learning Swift I’ve used. Being self taught, and with Swift being such a new language, it has often times been a struggle to even find “okay” resources. So it is genuinely exciting when I find something that is so effective and captivating that when I have finished I feel energized by all that I have just learned. So why is Pro Swift effective?

The best analogy for what this book will bring to you is to think of a big bucket of random Lego pieces. No instructions either; just the pieces. Now ultimately all those pieces can make something great. But before you can start building you need to know what pieces you have. So you empty the bucket, you look through all the pieces, understand what they can do, and what pieces they can interconnect with. And before you know it you can start to visualize how they could go together to create a house or spaceship or race car. Pro Swift is an organized way to go through that bucket. It explains what specific pieces of Swift can do, so that you can take your bucket of Swift pieces, and put them together into something great.

TL;DR

If you are teaching yourself Swift and looking for the next step after you’ve mastered the beginner level topics Pro Swift is where you should start next. This is going to give you a great foundation to build from as you work on mastering intermediate and even advanced level tasks in Swift. At USD 30 this is a great value! Even if your on a budget this is something that should be accessible to most people. This is a fantastic resource and one that I highly recommend.

If there was one downside to the book it would be that it wasn’t long enough. Whether it is a longer version of this book, or a third one in the series that focuses on even more advanced topics, I do hope Pro Swift gets followed up in the future. And it isn’t just my own self interest that drives that request. The single aspect that is most important about Pro Swift is that it is accessible to anyone who wants to learn, and is motivated to learn Swift, even if you have never programmed before. It is surprising how few resources out there really target this group of people well and it is to Paul’s credit that he has not only managed to write a book that a relative newcomer can understand, but at such a cheap price, has also made it a financial accessible resource too.

If you want to get in touch with Paul Hudson you can do so on Twitter @twostraws (he is a very friendly guy and always willing to answer any questions you might have). To get in touch with myself you can find me @third_beach (who is equally friendly, minus the cool British accent, and always willing to chat if you have questions about getting started learning Swift and iOS Development).

Book review: Algorithms & Data Structures with Swift by Wayne Bishop

swift_book_small

Up until this point any Swift book I have read has always come as a result of an immediate need to learn something, whether it is to address a specific problem or task I am working on in an app, or the continued improvement of my Swift knowledge. With this book, Algorithms & Data Structures with Swift, by Wayne Bishop, USD 14.95 – 24.95 depending on which edition you purchase, I read it purely because it seemed interesting, and without any real application for what I was learning. To my surprise it was actually relevant to a few projects and problems I was tackling and also illustrated just how pervasive algorithms have become in our world today.

The book is actually accessible to a larger audience of people than I first suspected. If you are experienced with algorithms but new to Swift you will probably be fine. Likewise if you have an intermediate level knowledge of Swift but are new to algorithms your probably going to be alright. But, even if you are still a newcomer in both respects, but are motivated and know that algorithms are going to play heavily in your development endeavours than this could serve as an accessible, lightweight introduction to the topic. The book is more on the theoretical side so if what you are looking for is a collection of tutorials and a DIY, build it yourself style book then this might not be the right choice for you.

What the book is about

Algorithms & Data Structures has a total of 17 different sections. I won’t list them all out but some of the topics include Recursion, Closures, Sorting, Linked Lists, Depth-First Search, and Tries. Perhaps in part because the book is based on a collection of essays Wayne has posted over time to his site waynebishop.com each section is basically independent of the other so if you find yourself needing to jump right ahead to learn about Stacks & Queues you can do so. That said there is also value in reading from start to finish, as many of the sections do call back to what was taught in previous ones.

Not only does the book discuss code, which is the primary focus, but also gets into the math and logic of algorithms. These are not topics that lend themselves to wildly colourful prose. As such the book does have a very methodical, and clinical writing style to it. For the most part this is fine as concepts as explained clearly. However, if there was one thing I would say was missing it would have been putting some of these algorithms into a real world, programming context. The theory is interesting, but seeing direct applications of the concepts would be really beneficial to those people who need to see the concepts in action to really get the full understanding of them.

There is a print copy of the book available, as well as E-Pub and PDF versions. I have only seen the E-Pub version but I would imagine the layout would be much the same between the three versions. Overall it is a good looking book. The fonts used are quite readable, the code blocks are in colour, and there are lots of colour diagrams and pictures that help explain the concepts being discussed. The spacing feels a bit to big at times and compressing it a bit more would create a better presentation and improve readability. But those are small points and not anything that is negative impact on the book.

Algorithms & Data Structures is updated for Swift 2.2 so it is current as of today (June 9th to be exact). I did not see any indication as to whether the book will be updated for Swift 3.0. Because it is teaching concepts versus being a practical, DIY style book this will still be a relevant resource for a little while even if it doesn’t get updated right away after the 3.0 release, or if it doesn’t get updated at all.

How effective was the book

This is not a mind-bending university text book on algorithms and data structures. It is an accessible, approachable, introduction to the subject. I was able to read through this book on first sitting and have at least a partial understanding of each of the topics being discussed, and in some cases completely understand what was being taught. Everything was easy to follow along with and the illustrations were certainly helpful in conveying many of the concepts.

With all the source code being available on Github it also made it easy to take a look at full examples and play around with them to get a better understanding of how it all worked. That said this seems like a topic that would excel in the Playgrounds environment, especially at this introductory level and having that level of interactivity would really allow for some great learning opportunities. Algorithms & Data Structures is not long, so it is something you can tackle on a weekend.

The end result was that I know have a much better understanding of what role algorithms and data structures play in programming, some basics about them, and have a solid starting point for when I want to start exploring the subject more. The book also had the consequence of actually starting to get me to think how I could use algorithms in my own work. This is a deep, very complex subject, so it is not something I will jump into right away, but that consideration and thought is there now as I work on various applications and projects.

TL;DR

For the price of the book, and the time investment required, Algorithms & Data Structures is a good choice if you just want a basic understanding of the topic to round out your own knowledge, or if you want an accessible introduction before doing a deep dive into the subject. It is relatively easy to read and follow along with, and the break down of the topics into their own, largely, independent sections is nice if you need to use it as a reference.

But this also feels like a book that could be much more than it is. If some of the topics applied the concepts to real world use cases via tutorials or case studies, that one element alone would give it a lot more value. An expanded edition of this book that went to the next level with some of the existing concepts, or introduced a few new ones, could make this is a really valuable resource for Swift developers. Even so, as a quick and simple introductions to algorithms and data structures with Swift it serves its purpose well.

You can find Wayne Bishop on Twitter @waynebishop who also has a weekly mailing list you can sign up for. As always you can find myself on Twitter @third_beach and if you just want to follow updates for Manitoba.ninja you can follow @manitobaninja for just that.

Book Review: The Swift Developer’s Cookbook by Erica Sadun

41y+DqweMeL._SX388_BO1,204,203,200_

If you have been around the Apple development community for any amount of time you have almost certainly heard of Erica Sadun. She has already published dozens of books, taken a highly active role in the discussions and proposals on the evolution of Swift since it became open sourced, and has a Ph.D in computer science for good measure. Right away you know that this book is coming from a real authority on the subject of Swift.

As I do, lets start with who The Swift Developer’s Cookbook, is for so you can decide if you want to keep reading, or move along to finding what you are looking for. The book retails at USD 39.99 (for the print edition), but the price does tend to be a bit less than that. So for a book that clocks in at just over 200 pages this is a fairly reasonable price. The preface of the book says that it has been written “for programmers both experienced and new who are looking to push existing aptitudes into a new arena”. Now, if by “new” the author means an intermediate understanding of Swift then that is a totally accurate statement. The book will push you, no question about that, but this is not what you pick up in your first few months of learning Swift and you need a solid grasp of the fundamentals at the very least.

Another important point is that this book is all about Swift. There is no coverage of Xcode, or API usage, or Autolayout, or anything like that. This is purely about the language and that is important to keep in mind if you are perhaps looking for something more broad based in terms of Swift and Apple development. But if you want to dive deep into Swift and are serious about growing you skills in this realm, then this is going to be for you.

About the book

There are 8 chapters to the book: Introduction, Printing and Mirroring, Optionals, Closures and Functions, Generics and Protocols, Errors, Types, and Miscellany. Each of these chapters has been written to be fully independent of each other so if you only need the Generics and Protocols chapter you can head straight to it without needing to have read the others.

As the title implies this book has been structured in a way that each topic is about giving you templates, or guidelines, for dealing with specific problems or aspects of the Swift language. But you are not just being taught a series of steps that can be simply translated directly as is to your own code. It is much more about the fundamental concept of what each topic is. You can get an answer to “How do I make an optional?” but the book is also trying to teach you to simultaneously think “Does this variable really make more sense and create better code an optional?” which is a much more abstract, but equally important question to ask. In this sense the approach of the book is a mix of DIY manual and computer science text book.

The writing is very well done. Concepts and ideas are expressed clearly and the language used is appropriate, but also kept simple so that each sentence does not require a glossary to understand what is being said. Yes, there are going to be many times where you have to stop, and go back a few pages, or even to the start of the chapter, to reread sections because you are not quite getting your head around it. But this is usually due to the nature of the subject and the complexity of what is being taught. Some sections, in particular Errors, are really hard to get through. But I have yet to see any writing, anywhere, on error handling that I would describe as “electric” or “exciting”, or anything remotely close to that, so that is par for the course.

This book is published by Addison Wesley and when it comes to design and layout their expertise shows. The book I read was a print edition and the text was clear, easy to read, and was formatted with just the right spacing between letters and lines. The print edition had no colour, so code blocks were simply black text. Developers work in colour and when I am reading code that is what I like to see too. But most of the code samples were small enough that it wasn’t a big deal, and considering the cost of colour printing for print books, it is easy to see why the decision was made to go black and white and keep the cost of the book down.

There is also a e-book version that you can purchase separately, or is included with the price of the print edition. When the book was first released it was published using Swift 2.0 and the print edition has not been updated since then. The publisher does list this book as being part of the Content Update Program, however, Pearson Education, the distributor of the book, recently layed off several thousand employees, so this has had an impact on updates. Erica did however mention to me on Twitter that the updates are written, so whether the delay is much longer remains to be seen. But the will and interest of Erica to keep this book updated is definitely there. Because it is a very theoretical book it could still be relevant for another year in its current form, but with Swift evolving as it is, a lack of updates could be a deal breaker to many who need the most up to date syntax to really feel comfortable with the book.

How effective is the book?

The first time I read through the book I really struggled. A lot of it didn’t sink in and I felt a bit dumb for not being able to grasp more of the concepts. That doesn’t sound like a ringing endorsement but, actually it is, and there are good reasons for that experience the first time I read through it. To start with I was still not quite at a level in my own Swift knowledge that I was able to really understand a lot of what was being taught. And this is probably going to be a book that many people will end up reading twice, maybe even three times before everything really sinks in.

And for what the book is trying to teach that is perfectly okay. If you think to courses you may have taken in university, or college, or elsewhere, there were probably many textbooks or lectures that you needed to go through a couple times to really be able to absorb the information. A lot of that probably had to do with the nature of them being theoretical, or abstract, and trying to teach you how think and problem solve, as opposed to facts or prescriptive answers. The Swift Developer’s Cookbook is a book that requires an investment of your time and patience. If you are willing to do that then you are going to end up with a far better grasp of not only how to program in Swift, but also understanding what fundamentally makes Swift the language unique and delightful.

TL;DR

The Swift Developer’s Cookbook is really targeting those people who want to get serious about becoming great Swift programmers. It is not going to teach you everything, but it covers some of the most important concepts to the Swift language, such as Optionals, and Generics and Protocols. It is probably going to take time, and a few read throughs, before you become really comfortable with everything the book is teaching.

The only caveat I have is the uncertainty about whether this book will be updated to Swift 3.0. You could still read it and the concepts being taught will still be relevant even if it is Swift 2.0 syntax. But for some this could be a deal breaker, which is reasonable to understand. But if you are serious about advancing your Swift skills, and you are okay with it currently being in Swift 2.0 syntax, then it is definitely worth the investment.

If you don’t already, you can follow Erica Sadun on Twitter @ericasadun to find out all the latest Swift 3.0 news, and what she is up to, along with the occasional mom joke and cute animal picture tossed in for good measure. As always you can find me on Twitter @third_beach, or if you just want to follow updates to this site you can follow @manitobaninja.

Book review: iOS Apps with Rest APIs: Building Web-Driven Apps in Swift by Christina Moulton

hero

Just a little over a year ago I was exploring whether to use some geo-based REST APIs in a prototype application I was working on. Right away I encountered two problems. One, I was still new to Swift and iOS development in general so I had no idea how to work with REST APIs. And two, there was a limited amount of Swift related information on the topic at the time as the knowledge base for the language was still in the very early stages at that point. Then I came across the book, iOS Apps with Rest APIs: Building Web-Driven Apps in Swift by Christina Moulton, priced at US$29.00 and available in digital format only. Right away I realized that this was exactly the resource I was looking for!

However, a few days after I started reading the book I came to the conclusion that the APIs I was researching were not going to provide me with what I was looking for. So I put the book aside and moved on to other things. Fast forward a year later, armed with a much deeper and richer knowledge of Swift and a new found need to use a REST API in an app I am working on called Cnvrt I picked up the book again and was able to fully dive right into all the RESTful goodness it was going to attempt to teach me.

What the Book is About

iOS Apps with REST APIs is very much a practical book, so if your interested in something very theoretical that will help you create “clever” code than this isn’t likely the book your looking for. The book does also assume at least an intermediate level of knowledge of Swift or object-oriented programming principles. If you are not at that level you can still work your way through it, but it will be something of a struggle.

The author, Christina Moulton, has written it in such a way that each chapter is essentially a tutorial for the topic she is covering. You can follow along and copy what is being done, or you can read through it and apply the same principles into your own project and code as you go along. This structure is really what lends the book to being a modern day Time-Life DIY Guide to REST APIs.

While there are officially 19 chapters in the book it can better be broken down into these 5 sections: Introduction, JSON Parsing and Network Calls, Tableviews and how to make it all work with your API Data, OAuth..the UI…and you, and Leveling Up your coding skills with advanced JSON and REST API topics. While each section or chapter is not completely independent as you will need some prerequisite knowledge to follow along if you skip ahead, you also do not need to read the book from start to finish in order for it to be effective. If what matters to you most when you first pick up the book is that section on OAuth then you can skip ahead and start there without too much worry.

The writing style is not formal in the way academic writing can be, but not casual either. JSON and networking is not an easy topic to make lively and exciting to read so the author has probably done as much as she can to make the reading “fun” while still conveying all the necessary details and instructions.

The pace through each section felt just about right for me. There is just enough detail to keep the topic moving, and the number of times I had to flip back to reread a few of the previous pages because the content was not clear was minimal. Of course everyone is different in terms of experience and learning styles so this might not be the case for all readers.

The layout of the book will not win any design awards, but it does the job. Code blocks are in colour so this makes it easy to read through them. As you would expect in a digital book any links are hyperlinked directly in the body of the text. The font does sometimes seem to be a bit compressed and could use some breathing room, but when you are reading on a retina screen this is really not a big deal.

The code and examples have all been updated to Swift 2.2 and will presumably be updated to Swift 3.0 when that is released. Of course one of the benefits of digital books, especially for books covering Swift which is still evolving a lot, is that you can get updates of the book as the language changes, keeping it relevant to the reader (if the author choices to do so of course). One element that I really appreciate is that the code is very Swifty with guard and switch statements being used extensively, making for very readable code. This is a trend I hope to see all books covering adopt.

How effective is the book?

The key measure of any book like this is how effective is it at teaching the subject. After sitting down for a few days and going through the book I had no problem working with a REST API and creating my own code to parse the data. I was able to handle errors properly and deal with the consequences of a network connection or a server not being available. And of course I got the data to be displayed in a tableview and any values that needed to passed around between view controllers were able to move around as required.

For experienced developers this might seem pretty simple. But for someone just tackling REST APIs and working with network calls for the first time this can be incredibly challenging to get right as the details are critical! That said what made it effective for me was having one of my own projects to directly apply what I was learning to. You can follow along with the tutorials and do them yourself, but it is usually when you apply what you learned into real world code that it really sinks in.

TL;DR

If you are working on a Swift project that uses REST APIs, but it is something new to you and you need a resource that is going to teach you how to use and implement them in a real world project this is likely going to be just the resource you are looking for. It is straight forward, and to the point, in what it is trying to teach so there is no wasted time on irrelevant topics. It does mean that you have to be very confident in your Swift or object oriented programming knowledge to get the most out of the book. When I read the book the first time it was a challenge (though not impossible either) to understand what was being taught, but going back to it with another year of Swift experience made it many fold more effective and useful, and ultimately a great value at the price being charged for it.

One final note. There are a few other packages available beyond the standard book. One includes an expanded edition along with a TL;DR version that is even more concise and to the point than the standard edition. It also includes a Adding More API Calls Guide. I have not reviewed this package but for those who need to go into even more detail than the book covers this could be an excellent investment. There is also a team license for settings where many developers would get use from the book.

Christina is currently sailing around the Caribean but she still shows up on Twitter from time to time and you can find her @Christinamltn. As always you can find me @third_beach and if you want to simply know when I add a new post on manitoba.ninja you can follow @manitobaninja.

Book review: Objective-C for Swift Developers by Paul Hudson

A few months ago I was on Twitter talking about the frustrations I was having with trying to get an Objective-C based API, that had no Swift documentation or source code examples, to work properly in my all Swift project. Having only learned Swift trying to figure out Objective-C and all it’s quirks was proving to be a long, tedious exercise. During the chat that ensued I made a comment to the author of Objective-C for Swift Developers, Paul Hudson, that he should write a book that would help those people who only knew Swift and wanted a guide on how to work with Objective-C at a basic level. I also requested that if he could find a way to make Objective-C simply disappear altogether that would be even better.

Fast forward to the present. Objective-C still lives on, but Paul did write Objective-C for Swift Developers, available in digital form for US$20, which has just been released into the wild a few days ago (as of May 13 to be exact). While I have no immediate need for the book I picked it up straight away because I still want to know some of the fundamentals of Objective-C and I was really curious to see if this would serve as a the crash course book I wanted a few months ago. Read More

Swift books for your reading enjoyment

Despite all the great videos and tutorials you have easy access too thanks to the magic of the internet,  books are still hard to beat when it comes to learning. In the early days Swift books were tough to find, mostly because it took time for people to learn the language well enough too then write a book on it! Now this is changing quickly and each week it seems like there is a new book, be it beginner or advanced, being released on Swift.

The ones I have picked below are either based on my experience using them, overwhelming regard for it by the Swift community, the authors reputation and previous experience, or a combination of all three. So without further ado here they are.

Swift Programming: The Big Nerd Ranch Guide by Matthew Mathias and John Gallagher

Big Nerd Ranch is a bit of a juggernaut when it comes to books on helping you learn iOS, Swift, Cocoa for OSX and probably much more that I haven’t even seen yet. While I did not read this book, it consistently gets great reviews and feedback from those who have, and is a constant top recommendation by people of all experience levels. So if you liked any other Big Nerd Ranch books, or just want to pick something that is a safe bet and a good price then you probably won’t go wrong with this book. Read More

Resources for learning Swift

One of the challenges someone wanting to learn Swift faces right out of the gate is knowing where to start in terms of learning resources. Because Swift is still a young, new, and evolving language it has not yet built up the knowledge base you would find with other languages and because it continues to evolve it is key that the information you are getting is up to date as well!

This is the launch page for the collection of Swift learning resources I have put together. It will not remain static. New resources will be added as they are released, and ones that are no longer relevant will be removed. I am not listing every resource I have ever come across either. The only things I am listing are material that I have used, or taken a really good look at, and found to be genuinely helpful. If you have something that you think is worth adding to any of the lists then let me know. You can leave a comment below or send me a message on Twitter @ManitobaNinja or @Third_beach Read More