Skip to content

Instantly share code, notes, and snippets.

View shanbhardwaj's full-sized avatar

Shantanu Bhardwaj shanbhardwaj

  • http://www.addvalsolutions.com
  • Santa Monica, CA
View GitHub Profile
@shanbhardwaj
shanbhardwaj / memorySizeOfObject.js
Created September 17, 2018 09:44
calculate memory size of javascript object, it is not a accurate value!
function memorySizeOf(obj) {
var bytes = 0;
function sizeOf(obj) {
if(obj !== null && obj !== undefined) {
switch(typeof obj) {
case 'number':
bytes += 8;
break;
case 'string':
@shanbhardwaj
shanbhardwaj / install.md
Created September 14, 2017 00:50 — forked from basnijholt/install-fresh-macOS.md
install fresh macOS

Manual install

  • Docker
  • homebrew
  • Anaconda
  • BitPay
  • Adobe Photoshop and Lightroom

Install manually because they give conflicts:

  • Chrome # manual install because doesn't work with 1Password
  • Dropbox # manual install because doesn't work with dropbox-encore
# See https://github.com/burke/zeus/issues/466#issuecomment-60242431
if defined?(::Rails) && Rails.env
if Rails::VERSION::MAJOR == 3
verbose, $VERBOSE = $VERBOSE, nil
if defined?(Rails::Console)
Rails::Console::IRB = ::Pry unless Rails::Console::IRB == ::Pry
end
$VERBOSE = verbose
unless defined? ::Pry::ExtendCommandBundle
@shanbhardwaj
shanbhardwaj / css_resources.md
Created January 22, 2014 22:39 — forked from jookyboi/css_resources.md
CSS libraries and guides to bring some order to the chaos.

Libraries

  • 960 Grid System - An effort to streamline web development workflow by providing commonly used dimensions, based on a width of 960 pixels. There are two variants: 12 and 16 columns, which can be used separately or in tandem.
  • Compass - Open source CSS Authoring Framework.
  • Bootstrap - Sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.
  • Font Awesome - The iconic font designed for Bootstrap.
  • Zurb Foundation - Framework for writing responsive web sites.
  • SASS - CSS extension language which allows variables, mixins and rules nesting.
  • Skeleton - Boilerplate for responsive, mobile-friendly development.

Guides

@shanbhardwaj
shanbhardwaj / javascript_resources.md
Created January 22, 2014 22:39 — forked from jookyboi/javascript_resources.md
Here are a set of libraries, plugins and guides which may be useful to your Javascript coding.

Libraries

  • jQuery - The de-facto library for the modern age. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers.
  • Backbone - Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
  • AngularJS - Conventions based MVC framework for HTML5 apps.
  • Underscore - Underscore is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects.
  • lawnchair - Key/value store adapter for indexdb, localStorage
@shanbhardwaj
shanbhardwaj / rails_resources.md
Created January 22, 2014 22:39 — forked from jookyboi/rails_resources.md
Rails-related Gems and guides to accelerate your web project.

Gems

  • Bundler - Bundler maintains a consistent environment for ruby applications. It tracks an application's code and the rubygems it needs to run, so that an application will always have the exact gems (and versions) that it needs to run.
  • rabl - General ruby templating with json, bson, xml, plist and msgpack support
  • Thin - Very fast and lightweight Ruby web server
  • Unicorn - Unicorn is an HTTP server for Rack applications designed to only serve fast clients on low-latency, high-bandwidth connections and take advantage of features in Unix/Unix-like kernels.
  • SimpleCov - SimpleCov is a code coverage analysis tool for Ruby 1.9.
  • Zeus - Zeus preloads your Rails app so that your normal development tasks such as console, server, generate, and specs/tests take less than one second.
  • [factory_girl](h
(defun save-framegeometry ()
"Gets the current frame's geometry and saves to ~/.emacs.d/framegeometry."
(let (
(framegeometry-left (frame-parameter (selected-frame) 'left))
(framegeometry-top (frame-parameter (selected-frame) 'top))
(framegeometry-width (frame-parameter (selected-frame) 'width))
(framegeometry-height (frame-parameter (selected-frame) 'height))
(framegeometry-file (expand-file-name "~/.emacs.d/framegeometry"))
)
@shanbhardwaj
shanbhardwaj / latency.txt
Created June 1, 2012 17:18 — forked from jboner/latency.txt
Latency numbers every programmer should know
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns
Send 1K bytes over 1 Gbps network 10,000 ns 0.01 ms
SSD random read 150,000 ns
Read 1 MB sequentially from memory 250,000 ns 0.25 ms
Round trip within same datacenter 500,000 ns 0.5 ms
@shanbhardwaj
shanbhardwaj / getemacs.sh
Created November 27, 2011 07:26
full screen emacs 24 on osx snow leopard/lion
# Git Emacs 24 from the main Savannah (savannah.gnu.org) repository and apply typester's fullscreen patch
rm -fr emacs
git clone git://git.savannah.gnu.org/emacs.git
cd emacs
wget http://cloud.github.com/downloads/typester/emacs/feature-fullscreen.patch
patch -p1 -i feature-fullscreen.patch
cd ..
curl -O http://ftp.gnu.org/gnu/m4/m4-1.4.13.tar.gz
tar -xzvf m4-1.4.13.tar.gz
cd m4-1.4.13
can't activate rack (~> 1.2.1, runtime) for ["faraday-0.5.1", "gowalla-0.5.2"], already activated rack-1.1.0 for ["actionpack-2.3.10", "rails-2.3.10"]