Mocking responses using turtle-run, service-turtle and ng-wedge.
Summary of the AngularJS performance lessons learnt.
A common feature implemented in object-oriented and functional styles.
Find bottlenecks in live web application using Chrome DevTools code snippets.
Thunkifying is currying, argument reordering and middleware stacks.
User acceptance testing with code coverage information using was-tested.
You should use iterator methods for clarity and fewer side effects.
Proposal for The O'Reilly Software Architecture Conference 2015
Test live application by mocking responses without modifying code or installing plugins.
Which keys are expensive in a collection of objects?
Feeding fake variables to a function taken out of its lexical scope.
Plus easy promise chaining using Ramda.
Make a presentation about your life a couple of weeks after joining the company.
Measuring how close a library follows semver semantics when publishing new releases.
Implementing Todo list with Undo using immutable data structure.
Eliminate variables and functions via flexible selective application.
Functor + Applicative = Applier
Plot data right inside Chrome DevTools while debugging.
Semi-private data common to link and controller without adding to the scope.
Functor Promise together with Maybe applicative.
Test function for purity using lexical scope and runtime context.
Prepare for future async data flow by wrapping primitives in promises.
Limit dirty checking to the given scope when reacting to user events.
Check if your current module breaks other modules before publishing.
An experiment in offloading AngularJs dirty checking and model updates to a separate browser thread.
Profiling and speeding up AngularJs application step by step using Chrome DevTools code snippets
Run useful code fragments on-demand to analyze website performance.
$q.all(Array) and $q.all(Object) example
Changing filter function after async initialization.
See what each loaded Angular module provides and how it links to its dependencies.
Examples of unit testing Angular code from Node.
Prevent silent module overrides, misspelled directives, undefined expressions.
Loading and running simple Angular app under Node.
A function can configure itself via options argument to keep API clean and simple.
Selective argument binding using lodash, ramda and heroin
Methods one needs to call to make the unit tests work.
Reflecting on the first year of blogging about software development.
Avoid using `this` keyword in the API object revealed from a module.
Debugging unit tests run by Karma using Chrome DevTools.
Testing lazy async assertion by spying on objects.
Tag places in your private source code as good examples for others
If I had to design static source code analysis service
Iterating over objects using lodash functions.
Clear and easy to read defensive programming with check-types.js and check-more-types.js
Grunt plugins for tightening a project - linting, complexity, todos, etc.
Writing a functional adaptor makes a nice interview question.
Everyday Calculus, Discovering the hidden math all around us by Oscar E. Fernandez.
Run unit tests in production environment using lazy-test
An argument for trying Ramda if you love _
Exploring the marvelous materials that shape our man-made world
Easily test code in private closures using test-mole.
How to open source pieces of your software
A delicious feast of mathematical, geometrical and historical dishes.
Promise chain looks like a railroad with two tracks.
Asynchronous processing using ES6 generators.
Example refactoring a block of code containing OR condition
A small team can produce high quality software without exhaustive and long testing cycles.
Pick QUnit/gt if you need TDD, use Mocha if you want BDD, and Ava if preparing for the future.
We use assertions in our unit tests instead of built-in matchers.
Single method working as both getter and setter
Promise throttling and flatMapLatest equivalent
The power of mathematical thinking
Same simple problem solved in different programming styles.
Keeping the same load order of files and tests can lead to hidden bugs.
Keep dependecies up to date to get bug and performance fixes, not features.
Use lazy and helpful assertions instead of Jasmine matchers in the unit tests.
Current level of ES6 in various tools.
Another set of examples using generators.
Explanation of closures via lexical scope
One can easily apply too much or wrong type of curry.
You can quickly verify complex logic if you use structured JSON logging.
An example adding a flexible timeout method to promises
Extend promises returned by $q with timeout method
We can extend objects built from JSON strings by pointing to a different prototype object.
Make constructor functions work without "new" keyword in callbacks.
Combining functions into custom iterator callbacks and using _ will be easier if you put callback function first and data second.
Playing with ES6 generators in Node.
Flexible assertions without performance penalty.
Using Jade instead of HTML for AngularJS directives.
Access angular model and update DOM from the browser console.
Using providers to inject runtime values into modules.
Experiments with thread-local storage in Node.
How to avoid having to bind functions to contexts.
Finding the size of the memory allocated for the stack.
If a directive is recursive, you must use template url to avoid infinite loop.
A few useful applications of AngularJS parsing service.
Comparing 3rd party assertion libraries expect.js, should.js, etc.
Simplify on deman resource loading with promises.
How to bind any argument by name
Event-driven input/output makes for an efficient system for distributed computing.
Use .done() at the end of your Q promise chains to throw any unhandled exception.
Tiny library functional-pipeline composes functions in left to right order.
Great book, solid advice, focused on D3-specifics.
How to test promise-returning code.
Number of input data checks depends on the distance from the caller.
How to connect multiple promise-returning methods into single chain.
Angular library can be loaded under Node synthetic browser environment.
Stop hunting phantom problems due to name collisions.
Grunt tasks that accept default options or can be configured.
Search text files using grep and skip Node 3rd party folders.
How to spy on methods using sinon.js
Test D3 drawing code without running a browser for speed.
Making my own clone of the popular browser game.
Examples of using lodash, angular, check-types, ramda assertions
How to prevent hard to debug AngularJS injection errors due to minified code.
AngularJS relies on closures rather than modules, removing need to bind a context.
My HTML framework for simple drag and drop presentations from Markdown files.
Remove unit testing coverage from the collected data.
Create and use objects without any prototype.
Example Angular application fetching more data on scroll.
Catch all possible errors using both global and angular error hooks.
How to pass configuration into AngularJS during server-side template rendering.
How to connect promises into single sequence.
You can easily perform CLI end to end testing by checking the exit codes.
Effectively reading technical books by using agile epics.
Example refactoring a block of code containing AND condition
EcmaScript6 generator that does nothing
How to set and see git branch descriptions.
How to develop AngularJS applications in offline mode.
Handling the errors in the promise chain.
How to test Connect or Express middleware functions.
Great book for front end engineers and designers.
How to set Git and Grunt to always use same line ending character.
Send basic information with markup to generate low res page preview.
Log loaded files, add code coverage and extra features on the fly.
Developer is more valuable if his / her code does not have to be rewritten for a long time.
Extend simple feature with little functional decorators.