CSS Quick Tip: Line Breaks in Flexbox Multi-line mode

Took my quite a while to find this, because it’s hardly mentioned anywhere except as a note on the Mozilla Developer Network: When you are using a flexbox layout in multi-line mode (e.g. the ‘flex-wrap’ property is set to wrap), you can force flex items to start on a new line by setting the ‘page-break-before’ […]

Boxplot renderer plugin for jqPlot

For work I needed a way to show boxplots (see diagram to the right) using the jqPlot library. All I had to do was override the draw() method of OHLCRenderer (see code below). Update 13.10.2017: Upon request I created a working demo of the BoxplotRenderer using some helper classes to setup jqPlot charts from another […]

PHP Tip: Binding variables in a SQL WHERE IN clause

Have you ever wondered if it is possible to bind an unknown amount of variables in a SQL WHERE IN clause, e.g.: SELECT id, text FROM myTable WHERE id IN (:myId1, :myId2, myId3, …) Use a OCI collection object and wonder no more: $keyList = array(100, 250, 350); $stmt = oci_parse($cnn, “SELECT id, text FROM […]

The dawn of the Nikon 300mm f/2.8

For a long time my Nikon lens 300mm f/2.8G ED VR II has been upstaged by the 600mm f/4G ED VR when photographing birds. But after a stupid tumble on my part which not only disabled its bigger 600mm sister, but also ripped some parts out of my camera D800 and completely destroyed the GPS, […]

How to import c3.js with the dojo AMD loader

I came across the nice chart library c3.js, which is based on d3.js. In order to load it via an AMD require call with dojo, you also need to set the main property in the dojoConfig, e.g.: dojoConfig = { packages: [ { name: ‘d3’, location: ‘../../../d3’, main: ‘d3’ } { name: ‘c3’, location: ‘../../../c3’, […]

Best Vector Format to Import/Export in LibreOffice

Quip tip: When creating illustrations with LibreOffice Draw I found the format “Star View Metafile (SVM)” to be the best choice for re-import in LibreOffice Writer.

How to use Google Maps API with Dojo and AMD

If you are using AMD or RequireJS for your JavaScripts and you would also like to use the Google Maps JavaScript API you have a problem. You can’t just require in the script file and then access the google.maps object from within your script, e.g.: require([‘http://maps.googleapis.com/maps/api/js?client=YOUR_CLIENT_ID’], function() { var myMap = new google.maps.Map(mapDiv, mapOptions); } […]

List of Bird Species from Trip up to Rewa Head

Last year I traveled up to the Rewa River Head in Guyana. On the month long journey I was able to identify the following 104 bird species with the help of our guides:

Power off your SONOS Bridge

If you want to be able to turn off the power of your SONOS components without any hiccups when turning them back on later (e.g. prevent multiple use of the same IP in your local network), it seems advisable to reserve their IP addresses on your router. This is important especially in the case of […]

CSS trick: Setting background color of a selected HTML option element

Update 02.02.2018: As noted by Tom this now only works when the attribute multiple is set. Have you ever wanted to set the background color of a selected OPTION element of a drop down ? Unfortunately, setting the CSS background-color property does not work for (most/all?) browsers, but there is a workaround using the background-image […]