Skip to content

Instantly share code, notes, and snippets.

View piecioshka's full-sized avatar
🎺
A classic trumpet is best music for coding

Piotr Kowalski piecioshka

🎺
A classic trumpet is best music for coding
View GitHub Profile
@ricardozea
ricardozea / long-shadow-mixin.scss
Last active March 26, 2018 10:39
Long shadow generator Sass mixin
//Long Shadow
//http://codepen.io/awesomephant/pen/mAxHz
//Usage: @include long-shadow(box/text, #000, 200, false, false, left);
@mixin long-shadow($type, $color, $length, $fadeout: true, $skew: false, $direction: right){
$shadow: '';
@if $skew == false or $type == text{
@if $direction == right {
@for $i from 0 to $length - 1 {
$shadow: $shadow + $i + 'px ' + $i + 'px 0 ' + $color + ',';
@willurd
willurd / web-servers.md
Last active July 30, 2025 13:38
Big list of http static server one-liners

Each of these commands will run an ad hoc http static server in your current (or specified) directory, available at http://localhost:8000. Use this power wisely.

Discussion on reddit.

Python 2.x

$ python -m SimpleHTTPServer 8000
@bloodyowl
bloodyowl / gist:5695070
Last active December 18, 2015 00:09
singleton pattern
var mySingleton = (function(){
var instance = null
function K(){
if(!instance || this !== instance) throw "Constructor is a singleton"
return this
}
K.prototype.foo = function(){}
@louisstow
louisstow / pool.js
Last active January 7, 2025 08:28
Generic object pool in JavaScript
var objectPool = [];
var marker = 0;
var poolSize = 0;
//any old JavaScript object
function commonObject () { }
commonObject.create = function () {
if (marker >= poolSize) {
commonObject.expandPool(poolSize * 2);
@bgrins
bgrins / Log-.md
Last active July 11, 2024 13:40
Prevent errors on console methods when no console present and expose a global 'log' function.

Javascript log Function

Every time I start a new project, I want to pull in a log function that allows the same functionality as the console.log, including the full functionality of the Console API.

There are a lot of ways to do this, but many are lacking. A common problem with wrapper functions is that the line number that shows up next to the log is the line number of the log function itself, not where log was invoked. There are also times where the arguments get logged in a way that isn't quite the same as the native function.

This is an attempt to once and for all document the function that I pull in to new projects. There are two different options:

  • The full version: Inspired by the plugin in HTML5 Boilerplate. Use this if you are writing an application and want to create a window.log function. Additionally,
@dergachev
dergachev / GIF-Screencast-OSX.md
Last active July 31, 2025 21:28
OS X Screencast to animated GIF

OS X Screencast to animated GIF

This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.

Screencapture GIF

Instructions

To capture the video (filesize: 19MB), using the free "QuickTime Player" application:

@sym3tri
sym3tri / monad.js
Last active February 24, 2020 02:31
Simple Monad example in JavaScript
// as discussed by Crockford here: http://www.youtube.com/watch?v=dkZFtimgAcM
// more detailed example here: https://github.com/douglascrockford/monad/blob/master/monad.js
function MONAD() {
return function unit(value) {
var monad = Object.create(null);
monad.bind = function (func) {
return func(value);
};
return monad;
@awidegreen
awidegreen / vim_cheatsheet.md
Last active July 10, 2025 04:42
Vim shortcuts

Introduction

  • C-a == Ctrl-a
  • M-a == Alt-a

General

:q        close
:w        write/saves
:wa[!]    write/save all windows [force]
:wq       write/save and close
@lstebner
lstebner / _.remove.js
Created August 31, 2012 23:44
Underscore mixin to delete an object property
// remove key from object
_.mixin({
remove: function(obj, key){
delete obj[key];
return obj;
}
});
@piscisaureus
piscisaureus / pr.md
Created August 13, 2012 16:12
Checkout github pull requests locally

Locate the section for your github remote in the .git/config file. It looks like this:

[remote "origin"]
	fetch = +refs/heads/*:refs/remotes/origin/*
	url = [email protected]:joyent/node.git

Now add the line fetch = +refs/pull/*/head:refs/remotes/origin/pr/* to this section. Obviously, change the github url to match your project's URL. It ends up looking like this: