I hereby claim:
- I am chris-jamieson on github.
- I am jamiesoncj (https://keybase.io/jamiesoncj) on keybase.
- I have a public key whose fingerprint is 1B2F 5829 5041 AD17 5949 C867 A499 CCD4 E147 3F2F
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
# Logs | |
logs | |
*.log | |
npm-debug.log* | |
# Runtime data | |
pids | |
*.pid | |
*.seed |
const crypto = require('crypto'); | |
/** | |
* Express middleware to validate incoming webhook request from Gocardless | |
* @param {*} req Express request | |
* @param {*} res Express response | |
* @param {*} next Next middleware function if succeeds | |
*/ | |
function verifyGocardlessWebhook(req, res, next) { | |
if (!req.headers['webhook-signature']) { |
// snippet to help feed sort parameters into Sequelize query | |
// following Vinay Sahni's best practices (http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api) | |
// e.g. https://my-url.com/api/v1/sausages?sort=-createdAt,name | |
function list (req, res, next) { | |
const findOptions = { | |
order: [], | |
}; | |
// handle sorting / ordering | |
if (req.query.sort) { |
I hereby claim:
To claim this, I am signing this object:
// Node SOAP client event watcher for https://github.com/vpulim/node-soap | |
client.on('response', (responseBody, incomingMessage) => { | |
console.log('response! responseBody: ', responseBody); | |
}); |
Once you are ready to hire a developer, what should you do to mitigate execution / build risk?
Writing a good functional specification is key to getting the build phase of this project right. It's not easy to do but it's mostly just about thinking hard and writing out all the boring details of your desired outcome. The best guide for this is Joel Spolsky (recently sold Trello for $425M). He wrote a 4 part series on this, starting here, and also has an example (real) spec on his website here (the PDF link is broken, this is the real one)
Before you start on a spec, trim down your functionality to the absolute bare minimum - and be brutal with it! Imagine you had to complete it in one day, or imagine it was only a single feature... take away everything that isn't fundamental
A useful walkthrough is also available on docs.aws.amazon.com.
mydomain.com
Handy packages for quickstart Meteor projects:
meteor add alanning:roles accounts-password aldeed:autoform aldeed:collection2 arillo:flow-router-helpers raix:handlebar-helpers fortawesome:fontawesome kadira:blaze-layout kadira:flow-router kevohagan:sweetalert matb33:collection-hooks momentjs:moment natestrauser:animate-css peppelg:bootstrap-3-modal reactive-var twbs:bootstrap useraccounts:flow-routing useraccounts:bootstrap utilities:avatar yogiben:autoform-modals yogiben:spinkit percolatestudio:segment.io@=2.0.0_1
Eslint setup:
meteor npm install --save-dev babel-eslint eslint-config-airbnb eslint-plugin-import eslint-plugin-meteor eslint-plugin-react eslint-plugin-jsx-a11y eslint-import-resolver-meteor eslint
sudo tar -xf Franz-linux-x64-0.9.10.tgz -C /opt/franz
wget "https://cdn-images-1.medium.com/max/360/1*v86tTomtFZIdqzMNpvwIZw.png" -O franz-icon.png
then sudo cp franz-icon.png /opt/franz
sudo touch /usr/share/applications/franz.desktop
then sudo vim /usr/share/applications/franz.desktop
paste the following lines into the file, then save the file:
[Desktop Entry]
Name=Franz
Comment=