Open in app

Sign In

Write

Sign In

Ian Keen
Ian Keen

361 Followers

Home

About

Published in

Better Programming

·May 23, 2019

Surviving RxSwift

Best practices and how to get your head around reactive programming in Swift — Before I start I need to mention that these are a set of best practices that I personally use to get the most out of RxSwift (Rx) and avoid many of the common pitfalls. …

Swift

6 min read

Surviving RxSwift
Surviving RxSwift
Swift

6 min read


Published in

Better Programming

·May 1, 2019

Better Swift Codable Models Through Composition

Imagine we want to build an app to track books. The API we are building against provides JSON for authors and books, which looks like this: Swift’s Codable features enable us to quickly create matching models: Thanks to Codable this is all we have to do to get…

Swift

4 min read

Better Swift Codable Models Through Composition
Better Swift Codable Models Through Composition
Swift

4 min read


Nov 15, 2016

Meaningful Composite Errors

I really like Swifts error handling system for synchronous code. It allows us to produce errors that have all the information we need attached. We are able to choose to handle errors as they occur or throw them further up the chain, delegating that to another part of our code. …

Swift

3 min read

Swift

3 min read


Jul 22, 2016

Running a public Vapor Server from your MacBook

I’m doing a lot of server side Swift lately — primarily working on my Slackbot Chameleon. I am working on a new feature that requires a HTTP server and I’ve decided to use Vapor. …

Swift

1 min read

Running a public Vapor Server from your MacBook
Running a public Vapor Server from your MacBook
Swift

1 min read


Jun 23, 2016

Chameleon: the Swift Slack bot — Persistence with Redis

Giving Chameleon a Redis brain! Note: This article/series is deprecated, There has been a lot of changes in the Chameleon framework. I will produce a new set of articles soon.. sorry for not completing this series. Recap Last time we went through setting up your first Swift Slack bot and deploying…

Slack

3 min read

Chameleon: the Swift Slack bot — Persistence with Redis
Chameleon: the Swift Slack bot — Persistence with Redis
Slack

3 min read


Jun 21, 2016

Getting started with Chameleon: the Swift Slack bot!

Setting up a Swift Slack bot on Heroku! Note: This article/series is deprecated, There has been a lot of changes in the Chameleon framework. I will produce a new set of articles soon.. sorry for not completing this series. What is Chameleon? Chameleon is an open-source, extensible Slack bot built in Swift. It…

Swift

4 min read

Getting started with Chameleon: the Swift Slack bot!
Getting started with Chameleon: the Swift Slack bot!
Swift

4 min read


May 27, 2016

MVVM: A non-reactive introduction

Note: Sample project can be found here. I love MVVM. Ever since adopting it many moons ago the ways in which I architect my apps have vastly improved. I personally credit it to the freedom MVVM allows. …

IOS

8 min read

MVVM: A non-reactive introduction
MVVM: A non-reactive introduction
IOS

8 min read


Apr 14, 2016

Swift + iOS8 IBOutlet Issue

Complete credit to Logan Wright (Twitter) for the solution to this problem that had me chasing my tail for a few hours today. Problem I had a view controller with a custom init that looked something like this: Nothing fancy here… however this will crash under iOS8 on line 12: …

IOS

1 min read

IOS

1 min read


Apr 11, 2016

Separation of concerns: UI Edition

Note: Sample project at the end. I can be a little OCD when it comes to separation of concerns. Thankfully, for service level objects such as networking or persistence, this is easily achievable. …

Swift

5 min read

Separation of concerns: UI Edition
Separation of concerns: UI Edition
Swift

5 min read


Apr 4, 2016

Reading plists into a typed Dictionary

A question was asked over on iOS Developers about a ‘swifty’ way of reading a plist into a Dictionary so I decided to do a little research. Currently there are two ways to read in plist data. Lets have a look at each method and how they are used. NSPropertyListSerialization This…

Swift

3 min read

Swift

3 min read

Ian Keen

Ian Keen

361 Followers

Developer, Snowboarder (not at the same time unfortunately) — All posts here are my own

Following
  • Andrew Wilkinson

    Andrew Wilkinson

  • Donny Wals

    Donny Wals

  • Alex Persian

    Alex Persian

  • Tony Wang

    Tony Wang

  • Jonathan @ Strictly Swift

    Jonathan @ Strictly Swift

See all (30)

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Text to speech

Teams