Playing Quake on an oscilloscope

The XY-mode of an oscilloscope is pretty straightforward. Two voltages specify the horizontal and vertical position of the ray, so by varying these as a function of time you can draw shapes. Basically you output a set of 2D points with coordinates in range [-1, 1], view it in XY-mode on the oscilloscope and Bob’s …

U.S. Midterm Elections 2014 Maps

Why are we so confident these are the most detailed maps you’ll ever see from the 2014 Senate elections? Precincts are the smallest level of geography for publicly-reported election results. There were more than 175,000 precincts in the United States in 2012, fifty times the number of counties. The maps here show precinct-level results, where …

Syncing Data With Firebase Using Ionic Framework

$scope.list = function() { fbAuth = fb.getAuth(); if(fbAuth) { var sync = $firebase(fb.child(“users/” + fbAuth.uid)); var syncObject = sync.$asObject(); syncObject.$bindTo($scope, “data”); } } Once syncObject is bound to $scope.data, which is provided by AngularFire, data will be synchronized consistently in three ways (UI, $scope.data, and Firebase): Calling $scope.data.todos.push({title: result}); will update the UI and also …

Chrome Extension: Video Speed Controller

Speed up, slow down, and rewind any HTML5 video with quick shortcuts. HTML5 video provides native APIs to accelerate playback of any video, but most implemented players either hide or limit this functionality. This extension fixes that, plus more… Because time is money 😉 Video Speed Controller →

MapIt – Map geographical points to administrative areas

MapIt is useful for anyone who has the co-ordinates of a point on Earth, and who needs to find out what country, region, city, constituency, or state it lies within. It’s also great for looking up the shapes of all those boundaries. Above is a screenshot using the coordinates of my hometown Deinze. Data also …

SWAPI — The Star Wars API

$ curl -X GET http://swapi.co/api/people/1/ { "name": "Luke Skywalker", "height": "1.72 m", "mass": "77 Kg", "hair_color": "Blond", "skin_color": "Caucasian", "eye_color": "Blue", "birth_year": "19 BBY", "gender": "Male", "homeworld": "http://swapi.co/api/planets/1/", "films": [ "http://swapi.co/api/films/1/", "http://swapi.co/api/films/2/", "http://swapi.co/api/films/3/" ], "species": [ "http://swapi.co/api/species/1/" ], "vehicles": [ "http://swapi.co/api/vehicles/14/", "http://swapi.co/api/vehicles/30/" ], "starships": [ "http://swapi.co/api/starships/12/", "http://swapi.co/api/starships/22/" ], "created": "2014-12-09T13:50:51.644000Z", "edited": "2014-12-10T13:52:43.172000Z", "url": "http://swapi.co/api/people/1/" } …

Don’t delay worldwide releases

To anyone involved with The Interview: I really don’t get it how you could screw this up. You had global attention. Everybody wanted to see your movie. You had a perfect 10 on IMDB for a while. You eventually decided to release it online. Everybody got excited. And then you decided to limit the online …

PHP 7: Immediately Invoked Function Expressions

PHP7 will continue to borrow some of the beloved JavaScript features and will support Immediately Invoked Function Expressions (IIFEs): <?php echo (function() { return 42; })(); Output for php7@20140901 – 20141101: 42 Since we can already return functions from inside other functions, Currying Partial Application is also possible in combination with the IIFE implementation: <?php …

AWS Resource APIs for PHP

<?php require 'vendor/autoload.php'; use Aws\Resource\Aws; $aws = new Aws([ 'region' => 'us-west-2', 'version' => 'latest', 'profile' => 'your-credential-profile', ]); $bucket = $aws->s3->bucket('your-bucket'); $object = $bucket->putObject([ 'Key' => 'images/image001.jpg', 'Body' => fopen('/path/to/image.jpg', 'r'), ]); The core AWS SDK for PHP is composed of service client objects that have methods corresponding 1-to-1 with operations in the service’s …