The Holy Grail Of Swift Animation

My notes on user interruptible animation in swift

Hierarchical Spatial Algorithm

An algorithm that positions tree structured data items as an inverted tree. Originally written in swift

Dispatch Group

My notes on DispatchGroup

Associated Types

Notes on associatedtype

Mosby Swift

Notes on mosby in swift

Gesture Hud

Notes on GestureHUD

Pop Vs Oop

I always felt OOP was far superior to POP. On the premise that JavaScript used POP because they never got far enough to implement true OOP. Ref Dart which is JS w/ OOP but hasn’t caught on. value types doesn’t have OOP inheritance. So they have to use POP. Functional programming uses POP. Multithreaded apps favour value types because they are easier to work with when designing multiprocessor apps. CPU’s are not getting faster anytime soon, so we have to use many processors to achieve speed gains. Enter POP. Swift makes POP easier to do with it’s extension system, which can be thought of as a sort of light version of code injection.

Protocol Inheritance

My notes on Protocol Inheritance

Protocol Ambiguity

How to differentiate protocol ambiguity

Swift 3 Threading

Launching multiple tasks in the background and returning the result as they arrive in an orderly fashion:

The Ultimate Xcode Workflow

Spend zero time managing dependencies

Faster Xcode With Spm

How you can speed up compile times in XCode with Swift Package Manager

Spm And Ci Travis

My notes on Swift PM + CI Travis

Spm And Nested Frameworks

My notes on Swift package manager + XCode + Nested frameworks

Xcode And Spm

Here is how you use Swift package manager in your XCode app projects

Carthage And Nested Frameworks

A few workflows concerning Carthage and nested framework

Two Finger Swipe

Notes on implementing two finger swipe for macOS


Notes about the Switch component

Bar Graph

Notes on creating a Bar graph

Playground And Framework

Notes on adding external .framework files to playground.

Swift Package Manager

Notes on Swift package manager


How to Use CocoaPods with Swift

Semantic Versioning

My notes on Semantic Versioning


My notes on Carthage


Some notes on swift .framework

Swift 3 Migration

After manually migrating 35.000 lines of swift 2.2 into swift 3.0 code.

Background Thread

UI on the Main-thread everything else on a background thread

Dictionary Reflection

Reflection and UnWrapping now has Dictionary support

Binary Search

Binary search implementation in swift


NSTask lets you run command-line calls in your app

Git Log

Notes on different log outputs that Git provides

Git Workflows

Overview of basic Git workflows

Git Resources

A collection of Git learning material

Git Concepts

Overview of basic git concepts

Git Commands

Overview of basic git commands

Creating An App Icon

Creating an app icon that can be use for macOS apps

Optimizing The Style Manager

parsing all the macOS Sierra GUI styles takes between 5-10secs on a 4-core 2013 MacBook Pro Retina. To make it faster

Circle Tangent To 3 Lines

Fitting a circle Given 4 points. p1,p2,p3,p4

Dynamic Method Call

Reducing for-loops is a great way to maintain readability and maintain code modularity. “Data science” methods like map, flatMap, filter and reduce are awesome building blocks for functional programing in swift, but you can also build your own custom methods that do similar things.

Basic Xml Parsing

Basic XML parsing in swift (Mac):

Enumerating Cg Path

Notes on Parsing CGPath


Sorting things in swift

Live Edit

In its simplest form you click a button and it loads a css and recursively calls setSkin on the UI.

Encode Decode

Encoding and decoding of text

Shell Testing

Some shell research


CVDisplayLink is a timer object that allows your application to synchronize its drawing to the refresh rate of the display. ==It’s highly useful when you want to combine animation with user interactions==, something that is not easily handled by transitions or stock animations.

Core Animation

My Research-notes on core animation

The Event System

A simple event system that propagates events through hierarchical classes

Gesture Research

Notes on gestures

Hit Testing Sub Views

Researching hit-testing of sub views