Skip to content

Instantly share code, notes, and snippets.

Avatar

Zachary Friedman kulte

View GitHub Profile
View up_yours_capybara.rb
source = page.all('.item').last
target = page.all('.item').first
while source.nil?
source = page.all('.item').last
end
while target.nil?
target = page.all('.item').first
end
@kulte
kulte / harmful_callbacks.rb
Created Mar 27, 2014
Using ActiveRecord::Callback and wrapping your create with a transaction will execute your after_create before the transaction finishes.
View harmful_callbacks.rb
class User < ActiveRecord::Base
after_create :send_welcome_email
private
def send_welcome_email
UserMailer.welcome_email(self).deliver
end
end
@kulte
kulte / types.swift
Created Oct 14, 2014
Swift is very strict about types
View types.swift
let jsonObject : AnyObject! = NSJSONSerialization.JSONObjectWithData(dataFromTwitter, options: NSJSONReadingOptions.MutableContainers, error: nil)
if let statusesArray = jsonObject as? NSArray{
if let aStatus = statusesArray[0] as? NSDictionary{
if let user = aStatus["user"] as? NSDictionary{
if let userName = user["name"] as? NSDictionary{
//Finally We Got The Name
}
}
}
@kulte
kulte / create_project.rb
Last active Aug 29, 2015
interactor-demo
View create_project.rb
class CreateProject
include Interactor
def call
context.project = context.controller.current_user.projects.build(context.project_params)
if context.project.save
context.notice = 'Your project was created successfully.'
send_emails_for(context.project)
else
@kulte
kulte / uninstall_homebrew.sh
Created May 3, 2015
uninstall_homebrew.sh
View uninstall_homebrew.sh
#!/bin/sh
# Just copy and paste the lines below (all at once, it won't work line by line!)
# MAKE SURE YOU ARE HAPPY WITH WHAT IT DOES FIRST! THERE IS NO WARRANTY!
function abort {
echo "$1"
exit 1
}
set -e
View akon.html.haml
- Akon.perform
- content_for :javascript do
:javascript
window.sing(jQuery(jQuery("bill y'all")));
View ams_endpoint.rb
class FoosController < ApplicationController
def index
@collection = Foo.all
render json: @collection, fields: params[:fields]
end
end
class FooSerializer < ActiveModel::Serializer
cache key: 'foo'
View spotifyapigist.js
// Loading a Track
var track = Track.fromURI(uri, function(track) {
console.log(track.name + " loaded!");
if (track.playable)
// handle case in which some tracks are not playable
[...]
});
// Loading an Album
View gitgoggles.js
var GitGoggles = {
getRepos: function(callback) {
this._get('repositories', callback);
},
getRepo: function(repo, callback) {
this._get('repository/' + repo, callback);
},
View iOSRecipes15-1.m
static NSString *CellID = @"CustomCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellID];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellID];
UIImage *rainbow = [UIImage imageNamed:@"rainbow"];
UIImageView *mainImageView = [[UIImageView alloc] initWithImage:rainbow];
UIImageView *otherImageView = [[UIImageView alloc] initWithImage:rainbow];
CGRect iconFrame = (CGRect) { { 12.0, 4.0 }, rainbow.size };
You can’t perform that action at this time.