This gist is part of a blog post. Check it out at:
http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer
This gist is part of a blog post. Check it out at:
http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer
// A RequireJS module that wraps the jQuery UI Dialog in a jQuery.Deferred | |
// Advantages: | |
// Reuses a single DOM element for all the dialogs | |
// Keeps the dialog out of the DOM when it is not in use | |
// A much more elegant interface for using custom modals and working with the user's resolution | |
define("bocoup.confirm",["jquery.ui.widget"],function(factory,position,dialog) { | |
var d = $("<div>"), | |
defaults = { | |
title:"Confirmation" |
var http = require('http'); | |
http.createServer(function(request, response) { | |
var proxy = http.createClient(80, request.headers['host']) | |
var proxy_request = proxy.request(request.method, request.url, request.headers); | |
proxy_request.addListener('response', function (proxy_response) { | |
proxy_response.addListener('data', function(chunk) { | |
response.write(chunk, 'binary'); | |
}); | |
proxy_response.addListener('end', function() { |
#!/usr/bin/env sh | |
## | |
# This is script with usefull tips taken from: | |
# https://github.com/mathiasbynens/dotfiles/blob/master/.osx | |
# | |
# install it: | |
# curl -sL https://raw.github.com/gist/2108403/hack.sh | sh | |
# |
// Is the passed CSS property supported? | |
// eg. detectCSS('transition') | |
function detectCSS(prop){ | |
var | |
prop = prop.replace(/-(\w)/g,function(s,g){return g.toUpperCase()}), | |
pre = ',Icab,Khtml,Moz,Ms,O,Webkit'.split(','); | |
for (var i = 0; i < pre.length; ++i){ | |
if(i==1) | |
prop = prop.slice(0,1).toUpperCase() + prop.slice(1); |
Attention: the list was moved to
https://github.com/dypsilon/frontend-dev-bookmarks
This page is not maintained anymore, please update your bookmarks.
function sequence_(lst) | |
{ | |
function do_it(i) { | |
if (i === lst.length) | |
return; | |
lst[i](function() { | |
do_it(i+1); | |
}); | |
} | |
do_it(0); |
object FizzBuzz extends App { | |
val nones = Stream.continually(None) | |
val fizzes: Stream[Option[String]] = nones.take(2) ++ Some("Fizz") #:: fizzes | |
val buzzes: Stream[Option[String]] = nones.take(4) ++ Some("Buzz") #:: buzzes | |
for (((fizz, buzz), n) <- fizzes zip buzzes zip (1 to 100)) { | |
println(fizz.map(_ + buzz.getOrElse("")).orElse(buzz).getOrElse(n)) | |
} |