Andornot Blog

I've got a MacBook Air that I am regularly plugging an external display in and out of. If you plug in a display when your MacBook is sleeping or turned off there are (typically) no problems. However, if your MacBook is on when you attempt to plug in an external display, it never automatically registers that a new display has been connected and therefore never turns it on accordingly. Insert expletive here. Yes Virginia, Mac OS X does have its baffling quirks and bugs.

In order to fix you have to manually go to System Preferences each time an external display is connected, go into the Displays preference pane, and then manually click on the "Detect Displays" button. Even worse, if you have an external display set as the main display and you unplug said external display you're left fumbling around in the dark bringing up the system preferences with keyboard shortcuts; Alfred's "Displays" shortcut helps get a little further along but still… Ack!

Now, whenever you need to give your MacBook/MacBook Air/what-have-you a kick in the virtual desktop pants, just use Alfred to run the "fix display" keyword and you'll no longer be "plugging it in wrong" ;-)

But… it’s a Mac. It runs Mac OS X. The Inmagic software I use every day runs on Windows. Oh! How to use the shiny new Mac in my day-to-day work?

As it happens, this has grown easier with every passing year. There are so many options now that there’s no need to choose Windows over OS X just to run some app. Now we can choose an operating system (OS) because we like it, or in my case, because it came with the lightest, thinnest, most portable but still perfectly usable computer I could find.

The option I chose was to install Windows inside a virtual machine. A virtual machine (VM) is a computer and its operating system running as a program on another computer, on another OS or the same OS (see further details below). In my case, I selected VirtualBoxas the VM application, made a new VM, and installed Windows 7 on it. In the lingo of VMs, this copy of Windows is the guest OS and the Mac is the host. The only cost was for the Mac, of course, and a license for Windows. VirtualBox is open-source software available at no charge.

With Windows 7 installed and running in the VM, I then installed a copy of Inmagic DB/TextWorks. It runs just the same as it does on a regular instance of Windows. My MacBook Air doesn’t have the latest, speediest processor nor the most memory, but it’s more than enough for running DB/TextWorks in the VM, plus many other Mac apps at the same time. With the extremely fast solid state drive on the Mac (rather than a spinning hard drive), the VM resumes from sleep mode in seconds. I can stop the VM to free up resources for other apps, but restart it again quickly when I need it.

The screenshot below shows the Andornot Starter Kit open in DB/TextWorks, running on Windows in the virtual machine, on the Mac OS.

VirtualBox also includes a "seamless" mode, in which the programs running inside the VM run as windows in the host OS, just like other apps. This means that DB/TextWorks appears to be running as a program on the Mac.

Why do I love this? It’s the best of both worlds. I get to use the Mac OS, which is pretty slick, but run any Windows program I need to.

Please get in touch if you need help running any Inmagic software on a Mac, or anything similar.

What’s a virtual machine?

VirtualBox is an open source app backed by Oracle. It runs on Windows, Linux, Macintosh and OpenSolaris hosts and supports a large number of guest operating systems including but not limited to Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7), DOS/Windows 3.x, Linux (2.4 and 2.6), Solaris and OpenSolaris, and OpenBSD.

VMs are widely used by IT departments to run multiple separate servers for separate applications without having to purchase multiple separate physical machines. If you are using Inmagic DB/TextWorks, WebPublisher PRO or Genie, it might already be installed on a VM. You’d never notice, though – it appears as just another server on the network.