Showing posts from July, 2017

HTTP headers, logging, audits

Common Headers access log potentially PII requiring sensitive handling x-forwarded-for - client/firewall/proxy host/IP (potentially PII) x-request-id - correlation id x-user-id - the user id optionally from JWT (potentially PII) x-org-id - the org optionally from JWT  timestamp - UTC endpoint path app log ideally no PII, some will contain PII and requires sensitive handling x-request-id - correlation id timestamp - utc endpoint path audit log potentially PII, some audits will contain PII and requires sensitive handling org Id user Id timestamp UTC action (CRUD) data


4 Ways to Install Node.js installing node NVM downloads, installs, upgrades, and switches between multiple version of Node.js/NPM nvm Completely remove node, npm, nodemon Ubuntu 14.04 sudo apt-get remove nodejs npm node nodemon sudo rm -rf ~/.npm Best Practices Async / Await patterns Debugging debugging options - Rising Stack chrome inspector docs chrome debugger  - profiler, memory node inspector  - Medium Complete breakpoint debugging, stepping w/ blackboxing Source maps for transpiled code LiveEdit: JavaScript hot-swap evaluation w/ V8 Console evaluation with ES6 feature/object support and   custom object formatting Sampling JavaScript profiler w/ flamechart Heap snapshot inspection, heap allocation timeline, allocation profiling Asynchronous stacks for native promises

UI tester

SmashTest Chrome plugin UI Tester

NewRelic UI

Angular and more recently React Dashboard layout uses Gridster Built their own charting library


Interesting read: Why I don't use MVC Frameworks SAM pattern

Retrospective - Google Docs Drawing

Facilitating Retrospectives with Remote Attendees