Is my vision that bad? No, it’s just a bug in Apple’s Calculator.

While programming on my Mac and converting decimal numbers to hex and binary and using Apple’s Calculator for it – because it is built-in and works decent – I thought, I saw some wobbly lines of numbers.

My first thought was: my eyes are getting tired. But it looked annoyingly wobbly and there went my focus on the task. I had to investigate, what was going on. I took a screenshot. Can you see it in the image above?

Let me highlight the annoying detail in the image below.

Maybe you are reading this on a tiny screen, or your eyes are tired, but also… I had to see it for myself. Here is a zoomed in version below:

Yes, indeed! Some digits in the binary display section are off by one pixel. Nice anti-aliased rendering by the way, but still, why are some digits misplaced by a pixel?

How did this happen? I should add, the calculator app has been open for many days. Maybe the UI coordinate system is using floats and a rounding error aggregated over many days… I’d love to find out, but I guess I won’t. Anyways, at least my vision is not that bad.

I would contact Apple, if there was a feedback option, but there isn’t, so I won’t. Instead I’ll just share the bug on the Internet. Enjoy!

Booting Linux manually from GRUB when your disk configuration has changed.

Assuming you have a dual boot system, a desktop with multiple drives. GRUB is setup to dual boot wither into Windows or into your Linux distribution. Now, one day, you change the drive configuration. You add or remove a drive or re-partition a disk. GRUB still comes up, but it fails to boot into your Linux distro. What can you do?

In GRUB press `c` to enter the console. Then search for the linux partition. Tab completion works very well.

grub> ls
(hd0) (hd0,gpt1) (hd1) (hd1,gpt1) (hd1,gpt2) (hd2)...

This displays the drives and their partitions. Iterate through the drives and show their contents with ls until you identify the drive which has the vmlinuz* and initrd* files. Again, the Tab completion is super helpful.

grub> ls (hd3,gpt2)/boot/

Your drive configuration and partitions will likely look different. Once you identified the Linux partition boot into it by setting the root partition, linux kernel and init ramdisk followed by the boot command. Make sure you add the correct devicename as parameter for the linux kernel. Drive names are commonly /dev/sd?? (e.g. /dev/sda1, /dev/sdb1, /dev/sdb2, etc) or /dev/nvme?n?p? (e.g. /dev/nvme0n1p2). If you got the device wrong, you probably end up on the console and you can list the devicenames under /dev. Below is the example for my drive configuration.

grub> set root=(hd3,gpt2)
grub> linux /boot/vmlinuz-5.14.0-kali2-amd64 root=/dev/nvme1n1p2
grub> initrd /boot/initrd.img-5.14.0-kali2-amd64
grub> boot

Once booted into your linux distribution, you may want to update grub to detect your boot partitions and to rebuild your boot menu configuration.

# update-grub

SMS Audio Headphones with Heart Rate Monitor

I was going to open up and post a picture of one package a day from the stack on my desk. πŸ™‚ Today’s surprise are SMS Audio headphones: β€ͺattendees of the Intel Developer Forum ’14 got these nice smart headphones with heart rate monitor in their christmas mail. Thank you, Intel!

SMS Audio Smart Headphones

SMS Audio Smart Headphones

Lidar lite

Earlier in 2014 I backed a kickstarter project and I was very excited, the project made the stretch goal to build lasers into these range finders. Today I opened up the box on my desk, that arrived recently and I am really excited to test out the range finders, their precision, and their usability for robotic applications. I will post updates with more info soon.

Lidar Lite

Lidar Lite

Intel Software Innovator

Today I feel very excited to be recognized by Intel as a member of the Intel Software Innovator Program. πŸ˜€


Throughout 2014 I participated in multiple partner showcases with Intel demonstrating the Cubotix Rover with Intel Perceptual Computing technology. In appreciation of my efforts I received a little welcome package with a certificate of recognition, a thank you letter, a USB “key”, a beautiful white notebook, a cool black polo shirt, and my new favorite coffee mug to refuel with caffeine. πŸ™‚

How-to allow Mac OS X’s Gatekeeper to run an unsigned application

Eclipse sandboxed by Mac OS X Gatekeeper.

Eclipse sandboxed by Mac OS X Gatekeeper.

After I recently reinstalled my MacBook Air with Mac OS X Mavericks, I encountered for the first time Gatekeeper – the sandbox, that won’t allow to run applications from unverified sources to improve Mac OS X security. However that also excludes the commonly used IDE Eclipse.

Problem: Eclipse (or other application) won’t launch in Mac OS X Mavericks.

Solution: delete extended quarantine attribute – which probably Safari or Finder added after the download. Enter the following command in the Terminal to allow Eclipse to launch.

$ xattr -d com.apple.quarantine eclipse.app

This way you can leave the sandbox in place and only add exceptions for applications, that you cannot live without. For further information on and graphical configuration options of Gatekeeper check out this Ars Technica article.

How-to get the latest PostgreSQL version installed on Debian – the proper way

PostgreSQL poweredPostgreSQL maintains its own package repositories for binary packages for the most common Linux distributions and operating systems, which allows you to stay up to date through your familiar package manager. If you are running Debian 6 (Squeeze), you may be using the default PostgreSQL 8.4 and if you are running Debian 7 (Wheezy) it ships with PostgreSQL 9.1. Every major version of PostgreSQL comes with significant performance improvements and feature upgrades.

Repository

To update your Debian machine to the latest PostgreSQL version all you need to do is to create an additional apt-get source list /etc/apt/sources.list.d/pgdg.list and insert the following line for Debian 6:
deb http://apt.postgresql.org/pub/repos/apt/ squeeze-pgdg main

or the following line for Debian 7:
deb http://apt.postgresql.org/pub/repos/apt/ wheezy-pgdg main

Furthermore you will have to import the PostgreSQL repository signing key
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | \
apt-key add -

Upgrade

After updating your package repositories, and upgrading
apt-get update ; apt-get upgrade
PostgreSQL should be upgraded and you should have two database server versions running. In my case 8.4 with all the previous data and 9.2 with no data.

Migration

To migrate the database content from the old version to the new database system (8.4 and 9.2 on my machine) you switch to the postgres user and erase the database that was created during installation of the new database system. Afterwards a pg_upgrade command will dump the data of the old server and import it into the new server.
su postgres
pg_dropcluster --stop 9.2 main
pg_upgradecluster 8.4 main

Finally you can uninstall your old version of PostgreSQL.

References:
http://www.postgresql.org/download/linux/debian/
http://www.postgresql.org/download/

Power Up for Google Glass – XE7 comes with a mobile web browser and video streaming

Wow! Today’s update for Google Glass is huge. XE7 – Version 7 of the Explorer Edition ships a mobile web browser that allows you to open links from your google search results. Also try searching “youtube <your favorite show>” to get the video stream displayed right on Glass. After XE6, which brought Photo quality improvements, XE7 seems like a big Power Up. Google Glass just became so much more powerful.

XE7 Release Notes

Intel Perceptual Computing Challenge Award

Interactive Gesture Camera

Interactive Gesture Camera.

We just won $1000 – One Thousand US Dollars! Awesome! Thank you Intel!

During the time of December 17th to February 20th Intel held the Perceptual Computing Challenge Phase 1. I entered “Google Earth Controller”, an application demonstrating touch-free navigation of Google Earth utilizing an Interactive Gesture Camera and the Intel Perceptual Computing SDK.

It allows you to fly like Superman across Earth or other planets while staying seated in your favorite chair! See video below.

Yesterday afternoon the winners were announced and Team “W” is happy that “Google Earth Controller” was awarded with Second Place. While this was just a weekend warm-up hack we are getting ready for Phase 2 of the challenge. Stay tuned!

Apple Scholarship for WWDC 2012

Apple’s annual Worldwide Developers Conference is an exciting event providing an in-depth and inside look at the latest in iOS and OS X. Tickets are always high in demand and have sold out within two hours this year. In addition to the regular tickets, which sold for $1599, Apple accepted applications for one of 150 scholarships.

I have been very excited all day when I received an email from Apple granting me a scholarship to attend WWDC 2012. Thank you, Apple!

Scholarship notification email for WWDC2012

Scholarship notification email for WWDC2012

Intel Developer Forum 2011

At today’s keynote of the Intel Developer Forum 2011, Intel CEO Paul Otellini presents Intel’s vision about the future of computing. It came by surprise to see Google’s Senior Vice President of Mobile Andy Rubin get on stage during the keynote. Paul Otellini and Andy Rubin announced a strategic partnership between Google and Intel for delivering x86 phones and tablets running Android. So that raises the question: what is going to happen to Intel’s own Linux platform for tablets and phones MeeGo? Paul Ottelini reassured the audience, that Intel will keep the collaboration with industrial partners utilising MeeGo on embedded devices.

Furthermore for laptops the trend goes towards Ultrabooks says Paul Otellini. Intel focusses on making them lighter, faster, cheaper, less power consuming and more responsive. A few Ultrabooks are exhibited on stage. A demo computer shows in which direction mobile computing may go: an ultra low voltage cpu prototype powered by a solar cell and executing Windows.

Cisco shows the next generation office phone. It looks like their current line of IP phones, however it’s color screen is actually a detachable android tablet powered by an atom cpu, I guess.

For a seamless collaboration of mobile and stationary gadgets, Paul Otellini presents Intel Pair & Share, which enables phones, tablets, computers and TVs to connect to each other and show notifications and messages on the currently used device.

References:
IDF: http://www.intel.com/idf/
Android on x86: http://intel.com/software/android

My photo story of today: