JSON API

{ “links”: { “posts.author”: { “href”: “http://example.com/people/{posts.author}”, “type”: “people” }, “posts.comments”: { “href”: “http://example.com/comments/{posts.comments}”, “type”: “comments” } } “posts”: [{ “id”: “1”, “title”: “Rails is Omakase”, “links”: { “author”: “9”, “comments”: [ “1”, “2”, “3” ] }, { “id”: “2”, “title”: “The Parley Letter”, “links”: { “author”: “9”, “comments”: [ “4”, “5” ] }, { …

A Proposal: Renaming Backend/Frontend to Application/UI Developers

The evolution of web technologies in the last several years has blurred the line between what we usually call backend vs. frontend development. On the other hand, expectations put in front of developers highly reflect that rather rigid distinction based on technology, instead the one that would be based on processes in software production. Is …

Two.js

Two.js is a two-dimensional drawing api geared towards modern web browsers. It is renderer agnostic enabling the same api to draw in multiple contexts: svg, canvas, and webgl. Two.js is deeply inspired by flat motion graphics. As a result, two.js aims to make the creation and animation of flat shapes easier and more concise. At …

Spark Inspector – Runtime Inspection for iOS Apps

Spark Inspector will offer you an entirely new debugging perspective. With a three-dimensional view of your app’s interface and the ability to change view properties at runtime, Spark can help you craft the best apps on earth. Wiring your app together with notifications? Spark’s notification monitor shows you each NSNotification as it’s sent, complete with …

The ‘Trend of Convenience’

The ‘Trend of Convenience’ doesn’t make things more convenient. Instead it mostly eliminates limitations that prevent change from happening in the first place. Take the horse carriage versus the car. Many people think of the car as a more convenient horse carriage, but why is that? Is it because it’s faster? Is it because it’s …

lessphp

LESS Compiler written in PHP. Usage is simple: <?php require “lessc.inc.php”; $less = new lessc; echo $less->compile(“.block { padding: 3 + 4px }”); Of course one can take files as input too (define a 2nd argument to cache on disk): <?php echo $less->compileFile(“input.less”); Also ships with an extra shell executable script plessc $ plessc input.less …