Skip to content

Instantly share code, notes, and snippets.

View radex's full-sized avatar
🚀
Full reusability

Radek Pietruszewski radex

🚀
Full reusability
View GitHub Profile
require 'csv'
tweets = CSV.read('tweets.csv')
tweets.shift
stats = tweets
.reject { |t| t[5] =~ /^RT/ }
.group_by { |t|
date = Date.parse t[3]
"#{date.year}-#{date.month}"
@radex
radex / NSStoryboard.md
Last active August 29, 2015 14:05
Swift extensions: NSStoryboard

I enjoy making and playing with little DSL-ish extensions for Cocoa types in Swift. For instance, the code below allows me to write cool

storyboard.VC["foo_bar"]
storyboard.VC.initial

instead of:

@radex
radex / nonoptionals.swift
Created August 28, 2014 09:40
Swift allows you to declare a (non-optional) variable in a local scope without setting its value if the compiler can deduce that the value _will_ be set before it's used.
// This will work:
var url: String
if condition {
url = "http://example.com"
} else {
url = "http://example.org"
}
{
"name": "MASShortcut",
"version": "1.2.3",
"summary": "Modern framework for managing global keyboard shortcuts compatible with Mac App Store.",
"description": " Some time ago Cocoa developers used a brilliant framework ShortcutRecorder for managing keyboard shortcuts in application preferences. However, it became incompatible with a new plugin architecture of Xcode 4. \n\n The project MASShortcut introduces modern API and user interface for recording, storing and using global keyboard shortcuts. All code is compatible with Xcode 4.3, Mac OS X 10.7 and the sandboxed environment.\n",
"homepage": "http://blog.shpakovski.com/2012/07/global-keyboard-shortcuts-in-cocoa.html",
"license": "BSD",
"authors": {
"Vadim Shpakovski": "vadim@shpakovski.com"
},

Keybase proof

I hereby claim:

  • I am radex on github.
  • I am radex (https://keybase.io/radex) on keybase.
  • I have a public key whose fingerprint is A9FD C246 0304 B06B 0824 B38C 245D 336F 4800 EDC3

To claim this, I am signing this object:

@radex
radex / keys.swift
Created October 28, 2014 16:10
Nested struct with static constants inside of a class is a neat way of managing magic string constants, like identifiers, user defaults or other dictionary keys, etc…
class Foo {
struct Keys {
static let keychainGroup = "com.foo.keychain-group"
static let enabled = "foo.enabled"
}
// now you can just write `Keys.enabled`, `Keys.keychainGroup` inside of the Foo class.
}
@radex
radex / Podfile
Created December 12, 2014 14:57
This is how you make a Podfile for a project with multiple platforms _and_ multiple targets. Easy, right?
source 'https://github.com/CocoaPods/Specs.git'
target :iOS do
platform :ios, '7.1'
link_with 'YourAppTarget', 'WidgetExtension', 'ShareExtension'
# pods...
end
target :Mac do
import Foundation
func foo() -> AnyObject? {
return NSDictionary()
}
func cast<A>(type: A.Type)(object: Any) -> A? {
return object as? A
}
import Foundation
func foo() -> AnyObject? {
return NSDictionary()
}
func cast<A>(type: A.Type)(object: Any) -> A? {
return object as? A
}
struct R {
struct Images {
static var doge: NSImage {
return NSImage(contentsOfFile: "...")!
}
}
}
R.Images.doge