Flex Builder and Parallels: a great combination
These days I run Flex Builder under Parallels on a Mac. I have a desktop iMac at the office and a MacBook for home and traveling. Flex Builder runs just great under Parallels on both of these machines. As expected, it’s slower on the 2.0 GHz Core 2 Duo MacBook than on the 2.16 GHz Core 2 Duo iMac, but it’s still quite zippy in both configurations. My coworkers have 2.4 GHz Core 2 Duo Dell machines with 2 GB of memory, and in my highly scientific and accurate benchmarks, I’m seeing build times that are about 25% more under Parallels on my desktop machine than on their “native” Windows machines. I have Parallels set up to use 1.25 GB for Windows XP, because that’s where I spend most of my time.
The 25% performance penalty might sound bad, but I perceived it as a pretty big gain from my previous desktop machine, which was a 3 GHz P4 with 1 GB of memory. So as far as I was concerned, it was a step up.
There are a lot of great things about developing inside a Windows virtual machine when the host is a Mac. The main reason I put this configuration together was so that I could build, test, and debug under both Windows and Mac very easily without having to have two separate desktop machines on my desk. Not only that, but any time you are about to do something that could really screw up your development environment, you can just make a backup of the whole VM, do whatever it is you have to do, and then if the world gets sufficiently broken as a result, just restore your backup and you’re back up and running.
Probably the biggest drawback of using Parallels, besides the performance penalty, is the fact that Parallels doesn’t currently have dual monitor support for the guest OS. That is, you can have the Mac on one monitor and Windows on the other, but you can’t have Windows use both monitors as a dual monitor setup. The workaround for this is to create a single virtual display that spans both monitors (e.g., 3100×1100 resolution). That’s not as good as true dual monitor support, but it’s good enough. Plus, the next version of Parallels is going to have a display mode called “Coherence” where Windows apps become unchained from the VM’s window, and can overlap with Mac app windows as if they were running on the Mac itself. This is amazingly cool and has to be seen to be believed. In the current beta of Parallels, Coherence still doesn’t allow the Windows apps to leave the display that has the Windows desktop on it, but I’m hoping that maybe they will remove that restriction by the time they are done. That would effectively eliminate this drawback entirely.
The one funny thing about the setup is the role reversal: the Mac’s main screen (on the right) has Windows XP displayed on it, while the secondary Dell monitor on the left is showing the Mac desktop.




Hi,
Great you got it to work under parallels, but why not use the Mac version of Flex Builder? It’s currently in beta testing
I use it all the time and it works great!
Great question! I have FB for the Mac too, and it does in fact work great in my limited testing. The answer is that our automated test environment requires that the Flash Player be able to read and write local files from inside the browser. We have so far only implemented a technique for doing that under Windows in Internet Explorer. We may very well get around to an implementation for Firefox, in which case developing in Mac FB will make more sense. But right now it’s not practical.
Just curious… how much RAM did you allocate to your Windows VM? I’m currently running a similar setup and wonder if adding more RAM to the VM will speed up FB.
I have 1.25 GB allocated to the Windows VM. I don’t generally run a lot of applications besides FB, so I think that 1.25 is actually more than I need. When I look at the memory usage statistics in Windows, it generally doesn’t look like it comes close to needing that much memory. So I’m actually thinking about decreasing it to 1 GB.
Cool setup, but you can run the Flex SDK in Xcode. This has been known for a while, but at my company that is how we are doing it. We have done all the development for http://www.mapwing.com (build, share, explore virtual tours RIA) on Macs using Xcode. It just wasn’t worth going to Flex builder and having to learn another app. Just my 2cents!