impress.js with embedded live webcam

impress.js is a great system for building Prezi-like non-linear presentations using HTML5, with the added benefit that it’s open source, and your infinite canvas is in 3D. See here for the original demo.

Recently I needed to give a presentation via Google Hangouts, and needed a good way to share both my impress.js presentation slides and the webcam feed of my scary talking face. Currently Google Hangouts does not support this out of the box. The solution of setting a separate webcam capturing application to “always-on-top” only works when the browser window, containing the presentation, is not set to full screen, so that won’t do.

d3 interpolators vs. ColorBrewer single hue sequential scales

Have you ever wondered to which extent you could emulate the beautiful ColorBrewer single hue sequential colour schemes with some form of linear interpolation between the endpoints? Wonder no more!

I made you a d3 example (see here for the gist) comparing the ColorBrewer sequential single hue schemes Blues, Greens, Oranges, Purples and Reds with the d3 L*a*b*, HCL, RGB and HSL interpolators. Click on the image to go to the bl.ock and see all of the colours.

Skype 4.2.0.11 on Linux: Premium subscription but NO group video and NO group screen sharing

Usually we use Google Hangouts for group video calling and also for screen sharing with more than two participants. If you’re not using Google Hangouts yet for your video conferences (full video and audio with more than two participants) and software demos, you really should. It’s a great product, it works on all platforms (Windows, Linux and Mac), and it’s free.

Skype for Linux 4.2.0.11 - even if you pay premium, you CAN'T group video call and you CAN'T group screen share

Skype for Linux 4.2.0.11 – even if you pay premium, you CAN’T group video call and you CAN’T group screen share

Samson C01U USB condenser microphone on Ubuntu Linux 12.04

I recently acquired the Samson C01U USB condenser microphone for better quality voice-overs on the sleep-inducing screencasts I sometimes make. It took some fiddling to get it setup correctly on Ubuntu 12.04 with the default ALSA drivers and PulseAudio sound system, so I’ve documented the steps here on the chance that it might help some other Ubuntu / Linux user.

The microphone looks like this:

Samson C01U condenser USB microphone

Samson C01U condenser USB microphone

Acer V3-571G FullHD IPS: Superb price/performance Linux development laptop

I recently needed a new mobile development workstation. My main requirements were that it should have at least a Full HD (1920×1080) IPS (in-plane switching) screen and a good keyboard, and that it should be able to run Linux, preferably Ubuntu, as its primary operating system.

After experimenting with a screenshot of my 1920×1080 desktop workstation running IntelliJ Idea 12 (my IDE of choice) on an Asus UX31A with 13″ Full HD IPS screen,  I realised that I would have to go with a larger screen. The Asus UX52VS with 15.6″ IPS also looked like a good bet, but there were no reviews available yet, it was not clear whether the 4GB RAM and hybrid HDD (large spindle drive, 24GB SSD cache) would be easily upgradable to full SSD, and the  €1200 price tag was reason for more consideration.

SSDs with usable built-in hardware-based full disk encryption

(tl;dr / post summary: Many current SSDs do super fast hardware AES encryption, but only a very few expose this correctly to the user, meaning you often still need a third-party software solution. Information on this is incredibly hard to find.)

Imagine that your laptop or your PC gets stolen. That would be terrible. However, it would be even worse if your laptop contained confidential data, either your own or that of your employer or client. It’s clear that encrypting one’s hard drive has become a necessity. There are good open source software solutions for this, for example TrueCrypt (Windows, Linux and OSX) and the LUKS/dm-crypt system. However, such software encryption systems require a small chunk of your CPU capacity, and also affect SSD performance and durability to a lesser or greater extent, depending on the controller.

Adding the ATA Security eXtension BIOS to AMIBIOS (Asus P5KC)

I’ve just purchased an Intel 520 SSD drive, which does hardware-based AES encryption of the whole disk, and is clever enough to encrypt the AES passphrase with the ATA / HDD password. This encryption implementation was my primary reason for getting this specific SSD. Many modern SSDs also employ hardware-based AES encryption for randomisation and for fast secure erase (they just reset the AES key!), but do NOT use the ATA password to encrypt the keys, so the encryption is far less effective at protecting your precious data. As far as my current information goes, the Intel 320, 520 and 710 drives do it correctly, as does the Samsung SSD 840 Pro and the Kingston SSDNow 200V+.