Skip to content

Instantly share code, notes, and snippets.

SpacyRicochet / lavarules.mermaid
Last active August 26, 2022 13:25
Fire and Brimstone: a comprehensive guide to lava, magma and superheated rock
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
SpacyRicochet / Money.swift
Last active February 9, 2019 12:13
Extension of protocol cannot have inheritance clause
protocol Money {
var value: Double { get }
var inGold: Double { get }
var symbol: String { get }
// Sadly, gives a compiler error.
// "Extension of protocol 'Money' cannot have an inheritance clause"
extension Money: CustomStringConvertible {
var description: String {
SpacyRicochet /
Created July 19, 2018 15:10
Creating an app – Things to keep in mind
  • How does your app access its data?
    • How do you make sure your components have access to the data they need?
    • What manages the data?
  • How does your screen show that it's loading something? (e.g. from the internet)
    • How does your screen show that the loading failed?
  • How does your screen show a modal explanation of something? (e.g. tutorial, alert dialog)
  • How does a user fill in information?
    • How do you validate that information?
    • How is the user shown that certain input is wrong/didn't pass validation?
  • How does the onboarding show?
SpacyRicochet / drtc_wishlist
Last active April 9, 2017 19:21
Death Road to Canada wishlist
* Some setting to allow always randomizing your starting leader and buddy.
* Being able to share custom characters somehow. Would be great download some that other people made.
* Some extra exploration; would love some random, non-useful gags to discover in certain locations.
SpacyRicochet / Playgrounds.swift
Created January 29, 2017 19:17
Snippet of the Week; Prototyping views in Playgrounds
import UIKit
import PlaygroundSupport
//: NSLayoutConstraint convenience methods
public extension NSLayoutConstraint {
public static func pinning(attribute: NSLayoutAttribute, ofView firstView: UIView, toView secondView: UIView, multiplier: CGFloat = 1, offset: CGFloat = 0) -> NSLayoutConstraint {
return NSLayoutConstraint(item: firstView, attribute: attribute, relatedBy: .equal, toItem: secondView, attribute: attribute, multiplier: multiplier, constant: offset)
SpacyRicochet / Playgrounds.swift
Created February 5, 2017 20:22
Snippet of the Week: Lighter and Darker Colors
import UIKit
import PlaygroundSupport
public extension UIColor {
public func hsba() -> (hue: CGFloat, saturation: CGFloat, brightness: CGFloat, alpha: CGFloat)? {
var hue: CGFloat = .nan, saturation: CGFloat = .nan, brightness: CGFloat = .nan, alpha: CGFloat = .nan
guard self.getHue(&hue, saturation: &saturation, brightness: &brightness, alpha: &alpha) else {
return nil
return (hue: hue, saturation: saturation, brightness: brightness, alpha: alpha)
SpacyRicochet / feedme_pp_en.markdown
Created February 6, 2017 13:33
Feed Me Privacy Policy

Feed me

Feed Me is a simple application that allows you to keep track of your child's nutrition, sleep, diapers and medicine-use.

Below we outline our Privacy Policy.

Privacy Policy

Feed Me keeps all of your personal data in your own hands. We have no way of accessing your data.

SpacyRicochet / Pages2PDF.script
Created January 20, 2017 18:21
Apple Script that _should_ export all selected .pages documents to PDF. Doesn't work due to Sandboxing.
on run {input, parameters}
repeat with _document in input
tell application "Finder"
set _directory to get container of file _document
set _documentName to name of _document
if _documentName ends with ".pages" then ¬
set _documentName to text 1 thru -7 of _documentName
SpacyRicochet / gist:addeae7601de1ba54e19de440cc2db0b
Created October 10, 2016 08:42
Using lanes to update POEditor strings
desc "Downloads the latest apple_strings and updates the project with them."
lane :"update_strings" do
puts "Updating English."
update_language(lang: 'en', base: true)
puts "Updating French."
update_language(lang: 'fr')
puts "Updating German."
update_language(lang: 'de')
SpacyRicochet / instructions.markdown
Created September 21, 2016 06:06
How to make a bootable macOS Sierra installer drive
  1. Follow the instructions on this iMore tutorial
  2. EXCEPT when you have to enter the terminal command, use the following command instead;

sudo /Applications/Install\ macOS\ --volume /Volumes/elcap --applicationpath /Applications/Install\ macOS\ --nointeraction