Two Reasons We Needed Swift

Swift needed to happen. Objective-C had no future. I know this is a harsh statement, but this is the conclusion I came to this week after writing purely in Swift for a few months now. It is hard to admit, especially after spending most of my software development career writing in Objective-C. There is a chance that a lot of you will disagree with this statement, but let me mention two things I find lacking in Objective-C that are extremely important when it comes to writing good code.

Objective-C by its nature is a much forgiving language (and I am using this term loosely). It allows developers to get away with bad code. It does not impose requirements for handling errors. It allows for nil return type where a specific type is expected. It does not guarantee immutability. It requires extra work to declare true constants. Block syntax (should I say more)?.

Continue reading “Two Reasons We Needed Swift”

Two Reasons We Needed Swift

in.notes 3.0

Monday is a great day to release new app updates. That’s exactly what we did today. Say hello to in.notes 3.0 – the app that my friend Monty and I both work on in our spare time; the app we have cool plans for.

in.notes is a full featured yet simple note-taking app that strips away complexity and allows you, the user, to concentrate on what’s truly important – content.

It is easy-to-use and free. It helps you to stay organized, save your ideas, and improve your productivity. You can take notes, capture photos, and create to-do lists with this amazing app.

Continue reading “in.notes 3.0”

in.notes 3.0

Reusability With Swift Protocols

Aaaaaand I am back from the holidays… Christmas was great. I got a chance to spend time with my beautiful wife and two sons visiting “The German City” – Leavenworth. It was great to just chill for a bit… slay ride with kids was amazing. Seeing horses brought all my childhood memories back.

Anyway, I would like to kick off this year by spending a bit more time talking about Swift protocols. We’ve already covered it briefly here. Take a look if you are interested in what i cleverly titled as “Practical Protocol-Oriented Programming”. Even if you think you already know what protocols are, take a few minutes to read this article. There are some cool things I bet you didn’t know about.

Continue reading “Reusability With Swift Protocols”

Reusability With Swift Protocols

UICollectionView – Interactive Transition

Instead of writing another article, I’ve decided to simply publish a sample project demonstrating interactive transition between collection view layouts. It’s quite nice. See it in action here.

You can find sample code on my Github.

Feel free to submit pull requests when improving on this code base.

Happy holidays.

UICollectionView – Interactive Transition

Core Data – Renaming Attributes

Weekends are awesome. I don’t get up super early and most of the time get an opportunity to work on personal projects, read up on new advances in Swift, catch up on news, etc.

Today I needed to migrate my Core Data model to a new version. Fortunately for me, light weight migration was enough and I didn’t have to perform the migration using a Mapping Model. Renaming attributes however is a bit more involved than simply adding attributes. This, of course, meant I would have something to write about… although, admittedly, I had another topic in mind for this week’s article.

Light weight migrations are pretty straight forward; Core Data takes care of everything by inferring mapping model from differences between the source and destination models.

Continue reading “Core Data – Renaming Attributes”

Core Data – Renaming Attributes

RMParallax

The way to impress users on the first app launch.

Created by Raphael Miller and Michael Babiy.

See RMParallax in action here.

If you are looking for a nice way to introduce the features of your app, this control is for you. In addition to paging through images with a nice parallax effect, RMParallax also creates a nice transition for your “description” text. As an added bonus, you can also add motion effect to your pages by simply setting motion:true.

Continue reading “RMParallax”

RMParallax

Unwind Segues Effect

As in Mass Effect… anyone? OK, so yesterday on my way home from CodeFellows HQ I was going through the list of things I wanted to read and came across an article I saved a while back called “Unwinding”. The title sounded interesting and since I had nothing better to do on my 40 min bus ride, I decided to give it a read.

Typically when you present a view controller (modally), presenting view controller is set to be the delegate and is responsible for dismissing it when the user is done performing his / her task. While it is possible to dismiss presented view controller from within itself, that’s not the pattern to pursue.

Continue reading “Unwind Segues Effect”

Unwind Segues Effect