In this guide we will cover two main cases:
- Ember specific library
- vendor library
The Ember library will assume that Ember has already ben loaded (higher in the loading order) and thus will assume it has access to the Ember API.
# A guide to prevent pain and suffering while upgrading to OS X Mavericks | |
# This will vary greatly depending on system set up, so read the instructions carefully | |
# Back up Virtulenvs | |
#################### | |
# Very important! | |
# For each virtualenv you have, run "pip freeze > requirements.txt" while in the activated virtualenv | |
# in order to prevent loss of dependencies during the upgrade. |
# detailed stats for an individual | |
git log --shortstat --author=AUTHOR --since=9-1-2013 --until=9-30-2013 | grep "files changed" | awk '{files+=$1; inserted+=$4; deleted+=$6} END {print "files changed: ", files, "\nlines inserted: ", inserted, "\nlines deleted: ", deleted}' | |
# commit numbers by author for the repo | |
git log --pretty=format:%an --since=10-1-2011 | awk '{ ++c[$0]; } END { for(cc in c) printf "%5d %s\n",c[cc],cc; }' | sort -r | |
# detailed stats per author, including contribution to the total change | |
git log --numstat --since=8-1-2014 --until=8-31-2014 | awk ' | |
function printStats(author) { | |
printf "%s:\n", author |
// 1. go to your twitter feed with tweets and replies | |
// for example, mine was twitter.com/6a68/with_replies | |
// 2. scroll all the way down to the bottom of the page. | |
// I suppose you could automate this with JS, but I didn't. | |
// this function will delete tweets you can delete, i.e. not retweets: | |
function deleteTweets() { | |
// find the next delete button in the DOM (next deletable tweet) | |
// and click the delete button. I wanted to keep the first tweet, | |
// which is why the index here is 1. | |
if (!$('.js-actionDelete').length) { |
<html> | |
<head> | |
<script src="clmtrackr.js"></script> | |
<script src="model_pca_20_svm.js"></script> | |
<script src="p5.js"></script> | |
<script src="p5.dom.js"></script> | |
<script> | |
var ctracker; |
Note: these are pretty rough notes I made for my team on the fly as I was reading through some pages. Some could be mildly inaccurate but hopefully not terribly so. I might resort to convenient fiction & simplification sometimes.
My top contenders, mostly based on popularity / community etc:
Mostly about MVC (or derivatives, MVP / MVVM).
// Examples | |
// Yes, "router.router" twice - this assumes that the router is being injected | |
// into the component. Otherwise lookup 'router:main' | |
// One of these will be of interest, figure out which one you want: | |
this.get('router.router.state'); | |
this.get('router.router.state.params'); | |
this.get('container').lookup('controller:application').currentPath; |
Reference: Sequelize docs on association
Let’s say we have two models: Films
and Festivals
We know that a film can be shown at many film festivals and that, conversely, a festival can show many films. This is what is known as a many-to-many relationship.
Knowing this, we can set up our associations:
const { createLogger, format, transports } = require("winston"); | |
// https://github.com/winstonjs/winston#logging | |
// { error: 0, warn: 1, info: 2, verbose: 3, debug: 4, silly: 5 } | |
const level = process.env.LOG_LEVEL || "debug"; | |
function formatParams(info) { | |
const { timestamp, level, message, ...args } = info; | |
const ts = timestamp.slice(0, 19).replace("T", " "); |