Skip to content

Instantly share code, notes, and snippets.

@ProLoser
ProLoser / $scope.$apply().js
Created July 19, 2013 17:19
AngularJS: When to use $scope.$apply()?
/*** BAD: ***
* Never put $scope.$apply() deep down a call stack
* You may end up calling the same method inside a
* $digest, and find yourself using $scope.$$phase
* or $timeout to hack around it.
*/
setTimeout(function(){
a();
})
elm.bind('click', function(){
@p1nox
p1nox / best_before.rb
Last active May 12, 2016 23:29
Groupon LatAm interview problem: Best before (Ruby)
require 'date'
def is_valid_date? year, month, day
return false if year < 2000 || year > 2999
Date::valid_date?(year, month, day)
end
class Date
def is_valid_date_for_millenium? millenium
@vparihar01
vparihar01 / nokogiri_libxml_homebrew_lion_installation.sh
Created June 25, 2013 07:01
How to fix: Nokogiri Incompatible library version: nokogiri.bundle requires version 11.0.0 or later, but libxml2.2.dylib provides version 10.0.0. dlopen bundle.open. Using homebrew on lion to install nokogiri and lixml
FIXME:
WARNING: Nokogiri was built against LibXML version 2.7.3, but has dynamically loaded 2.7.8
or
ERROR -: Incompatible library version: nokogiri.bundle requires version 11.0.0 or later, but libxml2.2.dylib provides version 10.0.0
gem uninstall nokogiri libxml-ruby
brew update
brew uninstall libxml2
@dypsilon
dypsilon / frontendDevlopmentBookmarks.md
Last active January 10, 2026 01:41
A badass list of frontend development resources I collected over time.

Recursion

What is recursion?

A recursive function is a function that makes a call to itself.

To prevent infinite recursion, you need at least one branch (i.e. of an if/else statement) that does not make a recursive call. Branches without recursive calls are called base cases; branches with recursive calls are called recursive cases.

def factorial_recursive(n)
 if n == 0
@ofca
ofca / $.3.js
Last active March 2, 2025 15:05
// based on https://gist.github.com/Potfur/5576225 & https://github.com/james2doyle/saltjs
// more info: https://plus.google.com/109231487156400680487/posts/63eZzzrBSb6
window.$ = function(s) {
var c = {
'#': 'ById',
'.': 'sByClassName',
'@': 'sByName',
'=': 'sByTagName'}[s[0]];
return document[c?'getElement'+c:'querySelectorAll'](s.slice(1))
};
@potfur
potfur / $.js
Last active February 15, 2023 14:49
window.S = function(s) {
return document[{
'#': 'getElementById',
'.': 'getElementsByClassName',
'@': 'getElementsByName',
'=': 'getElementsByTagName'}[s[0]]
|| 'querySelectorAll'](s.slice(1))
};
// [S('#header'), S('.container'), S('?div')]
@ryansobol
ryansobol / gist:5252653
Last active November 4, 2025 18:51
15 Questions to Ask During a Ruby Interview

Originally published in June 2008

When hiring Ruby on Rails programmers, knowing the right questions to ask during an interview was a real challenge for me at first. In 30 minutes or less, it's difficult to get a solid read on a candidate's skill set without looking at code they've previously written. And in the corporate/enterprise world, I often don't have access to their previous work.

To ensure we hired competent ruby developers at my last job, I created a list of 15 ruby questions -- a ruby measuring stick if you will -- to select the cream of the crop that walked through our doors.

What to expect

Candidates will typically give you a range of responses based on their experience and personality. So it's up to you to decide the correctness of their answer.

class User < ActiveRecord::Base
has_many :tasks
def self.with_flagged_comments
includes(:task).merge(Task.with_flagged_comments)
end
end
class Task < ActiveRecord::Base
belongs_to :user
@patbenatar
patbenatar / polymorphic_query_helper.rb
Created January 30, 2013 00:20
Simple utility for working with polymorphic associations in ActiveRecord where queries.
module PolymorphicQueryHelper
class << self
def expand_polymorphic_hash(hash)
{}.tap do |expanded_hash|
for name, object in hash
expanded_hash.merge!({
"#{name}_id".to_sym => object.id,
"#{name}_type".to_sym => object.class.name
})