Setting C.H.I.P. up

Few weeks ago I finally received my C.H.I.P. and PocketC.H.I.P. C.H.I.P. is the famous $9 computer crowdfunded in May 2015 via Kickstarter and PowerC.H.I.P. combines a 4.3-inch screen and a button-style QWERTY keypad with it. Here they are in all their beauty: C.H.I.P. Pocket C.H.I.P. Setting C.H.I.P. up I am interested to play with both toys remotely, so I did follow Setting up CHIP as a headless server with minimal tools in order to install and configure ssh.

August 7, 2016

DVD to Android Tablet

How to transfer your DVDs to your Android Tablet Suppose your kids want to watch their DVDs in the car on their Android tablet… Here is what you can do (on a Mac OSX 10.9.5): install Handbrake and its CLI $ brew cask install handbrake $ brew cask install handbrakecli install libdvdcss (thanks to lifehacker’s article) in order to bypass copy protection $ brew install libdvdcss go to the place where you will place the ripped DVD:

April 2, 2016

Learning Vega 2.0 a.k.a. Reactive Vega

h1 ~ aside { font-size: small; right: 0; position: absolute; width: 180px; } A Grammar of Graphics Vega 2.0 adds a grammar of interaction to the grammar of graphics implemented in Vega 1.0. When you say grammar of graphics all roads bring you to Leland Wilkinson The Grammar of Graphics Springer Science & Business Media, Jul 15, 2005 But given the price of 100+ USD, I am not even thinking of getting my hands on it.

August 8, 2015

How to add a new chart type to dc.js

This is a step by step description of how I extended dc.js with a new chart type. It is inspired by a wiki page by Thomas Robert. A Bullet chart Mike Bostock already implemented a bullet chart in D3.js. The vertical version from Jason Davies uses the official code which is available as a d3-plugin. (I have submitted a proposal for a bug fix and will use it instead.

April 21, 2015

HTML Scraping or Surviving Orrible Corporate Tools

At work I have to fill my weekly timesheet. We use Planisware’s Timecard to record time spent on the various projects we are assigned to work on. So you need to known what the total working time is for the day. For that our badging in and out is recorded and passed to Chronogestor which does sums them up and provides both a sexagesimal and decimal format. When there is an anomaly the sums are blocked till the request you submitted to fix it is implemented… So I thought I could do some web scraping and extract my clockings from the relevant CG’s page, make the total for the day (in decimal form: in Timecard we record time in decimal form, i.

February 7, 2015