Quantcast
Channel: [Thinking inside a large box];
Browsing all 69 articles
Browse latest View live

Switching iOS devices and the Keychain

Unfortunately some of my MovieLoggr users ran into the following issue: After switching to a new phone and restoring it from a Backup MovieLoggr would behave unexpectetly (and in some cases crash)...

View Article


Image may be NSFW.
Clik here to view.

"I didn't know that" is the best way to learn

This is no original thought. Nevertheless I’ve been thinking about it often enough to make it worth spending a few minutes framing it in my own words.I’m currently working as a Software Engineer....

View Article


Image may be NSFW.
Clik here to view.

Breaking Swift with NSObject and Generics

Today, while trying to implement a generic data source in Swift, I ran into my first Swift compiler segmentation fault, yay (looking at Open Radar there seem to be many out there)!Here’s what I was...

View Article

Talk: Introduction to FRP on iOS

Back in April I gave a talk at NSMeetup in San Francisco on Functional Reactive Programming on iOS.The talk discusses the idea & motivation behind FRP and dives into some practical examples using...

View Article

Image may be NSFW.
Clik here to view.

iOS 9 Detects Cycles in Layout Trees

A couple of months ago I was faced with an issue that was fairly hard to debug:Hackathons are a great place to see noteworthy issues. Yesterday's highlight: endless recursion in Storyboard @LAHacks—...

View Article


Image may be NSFW.
Clik here to view.

Swift Error Handling and Objective-C Interop in Depth

For the impatient reader:TL;DRThe ErrorType protocol has hidden requirements that are automatically fullfilled if you use an enum to implement the protocolObjective-C methods can only be translated to...

View Article

A Flux Inspired Architecture for iOS

This year I spoke at 360iDev about “Safer Swift Code with Value Types”. The goal of the talk was to explore an architecture that uses immutable value types for the model layer.After reviewing an...

View Article

Convenient Error Handling in Swift

Swift 2 introduced an error handling mechanism that includes backwards compatibility with Objective-C.This is great news, the new mechanism is a lot stricter. Long gone are the days in which one could...

View Article


Introducing ReSwift

For the last two months I have been actively working on Swift Flow with the goal of bringing the ideas of the Flux and Redux libraries to Swift developers.At about the same @ARendtslev started...

View Article


How I Write Swift Specs With Quick

I’ve recently tweaked the way I write Quick specs. I came to realize that I was placing a majority of my testing code inside of it blocks. This seems to be common among many code bases that use...

View Article

Validated: A Swift μ-Library for Somewhat Dependent Types

Today I built & published a μ-library that makes it easier to leverage Swift’s type checking system for program verification: Validated.Why?All Swift developers already use the type system to avoid...

View Article

Image may be NSFW.
Clik here to view.

Squashing Commits With Git Rebase: A Very Quick Guide

Git’s interactive rebase is extremely useful for keeping a somewhat clear commit history. Here’s a very brief guide on how to squash multiple commits into a single one.Git rebase allows you to rewrite...

View Article

Compile Time vs. Run Time Type Checking in Swift

At some point, when learning how to use Swift’s type system, it is important to understand that Swift (like many other languages) has two different forms of type checking: static and dynamic. Today I...

View Article


Decoding Heterogeneous Collections in Swift

The problem of decoding Swift types from an outside data source, such as JSON, has been mostly solved. Since Swift’s release we’ve seen more than a dozen popular JSON mapping libraries pop up.However,...

View Article

Image may be NSFW.
Clik here to view.

Beware the UIKit Visitors!

Investigating the Cause of Quadratic Time Complexity When Adding Subviews in UIKitYesterday Two weeks ago we identified a performance regression in the PlanGrid app, when entering a view that...

View Article


Image may be NSFW.
Clik here to view.

GCD's Main Queue vs. Main Thread

The correct way to ensure that code runs on the main thread / main queue is a recurring issue that causes some confusion among Cocoa developers. The topic came up again this week as part of an issue...

View Article

Writing

I’ve spend a fair amount of my time on different writing projects.

View Article


Speaking

I enjoy sharing things I’ve learned and spreading ideas. Here are the talks I’ve given in the past & the upcoming ones I’ve got scheduled.UpcomingTurning UIKit Inside Out @ AltConf, June...

View Article

Projects

I’ve worked on quite a few things in the last couple of years…

View Article

About

Hey there! My name is Benjamin Encz and I currently live in San Francisco. I moved here from Germany in 2013.Currently I spend most of my time writing software, with a strong focus on iOS development....

View Article
Browsing all 69 articles
Browse latest View live


Latest Images