- Pastebot
- GIF Brewery
- Slack
- Keynote/Pages/Numbers
- 1Password
- OmniFocus 3
- Airmail 3
- iA Writer
// | |
// SpinlockTestTests.swift | |
// SpinlockTestTests | |
// | |
// Created by Peter Steinberger on 04/10/2016. | |
// Copyright © 2016 PSPDFKit GmbH. All rights reserved. | |
// | |
import XCTest |
#!/bin/bash | |
f=$(pwd) | |
sips --resampleWidth 512 "${f}/${1}" --out "${f}/iTunesArtwork" | |
sips --resampleWidth 1024 "${f}/${1}" --out "${f}/iTunesArtwork@2x" | |
sips --resampleWidth 20 "${f}/${1}" --out "${f}/Icon-20.png" | |
sips --resampleWidth 40 "${f}/${1}" --out "${f}/Icon-20@2x.png" | |
sips --resampleWidth 60 "${f}/${1}" --out "${f}/Icon-20@3x.png" |
// | |
// UIResponder+FTAdditions.h | |
// Streets | |
// | |
// Created by Ortwin Gentz on 09.05.16. | |
// Copyright © 2016 FutureTap. All rights reserved. | |
// | |
#import <UIKit/UIKit.h> |
I am not a fan of Xcode. Here are ~160~ 200 problems, the first hundred or so issues were filed mostly in | |
July and August 2016 in a fit of rage. Mostly on weekends working (slowly) on side-projects. I have also | |
taken days of my employer's time filing others of these - so the company was not getting value for my time. | |
I believe a paid intern could have found many of these - just start a screen recorder, and when you see something, | |
stop and cut a quick movie. Many have been around for several major versions. | |
I'm volunteering chunks of my life (15-30 minutes per) to one of the most valuable companies in the world, which seems | |
kind of messed up. Things get worse the more complex the project and the longer Xcode been's running. | |
Apple folks - check out rdar://22524679 |
State machines are everywhere in interactive systems, but they're rarely defined clearly and explicitly. Given some big blob of code including implicit state machines, which transitions are possible and under what conditions? What effects take place on what transitions?
There are existing design patterns for state machines, but all the patterns I've seen complect side effects with the structure of the state machine itself. Instances of these patterns are difficult to test without mocking, and they end up with more dependencies. Worse, the classic patterns compose poorly: hierarchical state machines are typically not straightforward extensions. The functional programming world has solutions, but they don't transpose neatly enough to be broadly usable in mainstream languages.
Here I present a composable pattern for pure state machiness with effects,
# The trick is to link the DeviceSupport folder from the beta to the stable version. | |
# sudo needed if you run the Mac App Store version. Always download the dmg instead... you'll thank me later :) | |
# Support iOS 15 devices (Xcode 13.0) with Xcode 12.5: | |
sudo ln -s /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/15.0 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport | |
# Then restart Xcode and reconnect your devices. You will need to do that for every beta of future iOS versions | |
# (A similar approach works for older versions too, just change the version number after DeviceSupport) |
#!/bin/bash | |
# | |
# Faster toolchain build: skips as much as possible. | |
# | |
# To use this toolchain from the command line:" | |
# export TOOLCHAINS=$(whoami) | |
# | |
# we build to the same prefix every time (instead of building | |
# to a versioned prefix) because every time the prefix changes | |
# *everything* rebuilds. |
In a vibrant packaging ecosystem, dependencies update continuously with bug-fixes and feature improvements. When working against a collection of dependencies, especially in a team, it is vital to lock the graph and update it so that all team members receive the exact same graph at the same time.
The typical flow for this in dependency management is to create and use a dependency “Lockfile”.
private var AssociatedKey: UInt = 0 | |
private final class AssociatedObjectBox<T> { | |
let value: T | |
init(_ x: T) { | |
value = x | |
} | |
} |