
If you’ve read any of my material on sqlblog.com or follow me on twitter (@aaronbertrand), you have probably already painted a clear picture that I’m a Windows-based database guy; more recently, though, I have been (at least indirectly) branded a crazy Apple fanboy… and deservedly so. Here’s my story…
A few short years ago, the only Mac experience I had was with a 17″ iMac G5 (the first pretty iMac, not the UFO or the fishbowl), which I bought for web design and compatibility testing in my own personal projects. (I did have the fishbowl-based MacAquarium fish tank at work for a while, until I dismantled it when a snively and overbearing co-worker complained that the filter made too much noise. Yeah, exactly.) We had some G4s in the office back when we were still in Newport (we’re talking late 90’s, early 2000’s here, I can’t even remember if they were OS8 or OS9), but I had played with them barely enough to know that I preferred Windows. At least at the time.
About two years ago, I realized that if I wanted to seriously start speaking out in the community, I would need to learn how to use a laptop. Not that I expected such a transition to be difficult, but I was convinced that a small screen would annoy the crap out of me. I shopped around, and while I could have gone with a piece of junk from Dell or HP (which probably wouldn’t even still be working as I write this), I decided to go all out and procured a 17″ MacBook Pro with 4GB of RAM. I have to say that I fell in love with OS X almost immediately, and man, what a beautiful screen. There were some little learning curve issues, like the location of the applications’ minimize/close buttons top left, the way the dock differs from the taskbar, and how closing a window doesn’t really close the application. But these were easy to overcome, and I continued to use the laptop for web, e-mail, presentations, blogging… you know, not work stuff, but the reasons your mom needs a computer.
Then my company was bought and we were assimilated into a Boston office - translating to the fact that I would be working from home quite a bit, and would be expected to punch the clock during my commute (mobile broadband is great for checking in, getting a head start on diagnosing problems, and so on). For starters, I needed to get my aging Dell Precision in my home office up to speed (or replace it), and find a way to do work from my laptop while on the commuter rail. Remember, I am a Windows / database guy, so most of my work is done in Visual Studio and/or Management Studio - neither of which, of course, are available for Mac OS, one of the reasons not many of my colleagues have a Mac at all. I was surprised at the media table at PASS last year, when I sat down next to Brent Ozar, who was sporting a MacBook Pro not unlike the one I had just pulled out of my ultra-rare SQL Server 2008 computer bag. We didn’t really think much of it at the time (and I’m sure we both get our share of ribbing at such events), but it has been a running topic on twitter whenever anything Mac comes up within our collective circles.
Back to my work problem. As it turned out, I found that I was most productive if I did not maintain a working environment at home, but rather kept all my critical files and projects in a single location on my workstation in the office. This was partly because I got sick of transferring files between machines on flash drives, and partly because SourceSafe and other important shared resources could, at certain times, be excruciatingly slow and painful over the VPN - making it frustrating, if not impossible, to perform several tasks remotely. So all I really needed was a Remote Desktop session on my workstation at work, which meant my machine at home simply became a dumb terminal. In turn this meant that it didn’t matter what kind of machine it was, as long as it could connect to the VPN and support RDC. For a while I tried to stick with a Windows machine (and used RDC on the Mac if I needed to be away from the desk), but as you might imagine from the tone of this post, I became increasingly more frustrated with Windows (and PC hardware in general) as time went on.
Right now I have 4 Dells (3 Precisions and 1 OptiPlex)… the Precisions were $3,000 or more (one was nearly $5,000 at the time of purchase), and the OptiPlex was $600 (+ an inexpensive upgrade earlier this year - a better video card which doesn’t fit in the case, and 8GB RAM). The OptiPlex is the only machine that is usable, and barely so; it is running the release candidate of Windows Server 2008 R2 (which you can download, however note that it is x64 only!). Ironically that was by far the cheapest machine I have ever been involved in purchasing; the other three, while much more expensive, are either dead, gutted or both. (And that iMac I mentioned above? I donated that to work as a test machine, and it is still running stronger than many PCs purchased more recently have bitten the dust!) Between crappy motherboards, bad power supplies and an utterly horrible experience with Windows Update/Microsoft Update, I had just had enough with Windows, and felt much more confident in Mac hardware. I started to use only my laptop at home and on the train, and contemplated what I would do about having a workstation in my home office that might display a little bit of longevity for a change.
I had no interest in getting another machine that would run an x86 version of Windows… the Windows world is definitely moving toward 64-bit, and I am fine with this. The trouble is, many vendors are not, and do not update their software and/or drivers to work on x64. (So while you would have a hard time buying a machine that didn’t support x64, you would be wasting your money on RAM above 3GB if you couldn’t actually run x64.) For most of my hardware this hasn’t been an issue, and by the time Windows 7 and Windows Server 2008 R2 hit the streets, I think the hardware and drivers situation will be well under control. However, my main problem has been trying to connect to work from a Windows x64 box at home - and I did try for a while, believe me. Cisco has furiously refused to provide a 64-bit VPN client for their older gear; and even if you wanted to try installing the 32-bit client, installation is blocked. You can use AnyConnect if you have newer stuff (which we don’t), or you can pay for a 3rd party product like NCP’s SecureEntry Client (the demo of which I couldn’t get to work), but otherwise you are out of luck.
With all of these things in mind, when it finally came time to face the fact that I needed more than a 17″ screen to be productive at home, I opted for a Mac. “You’re crazy!” was the most common response, when talking about it with friends and colleagues. “How could a SQL Server dork use a Mac as their workstation?” In reality, it would not be that much different than what I was already doing with my MacBook Pro. I could establish a VPN connection (oh and Cisco *is* maintaining a VPN client for the Mac, which continues to work with their old gear), then start a Remote Desktop Connection to my workstation at work, and voila, except for the fact that I am limited to one screen, it is just like I am at work.
So, I went ahead and bought myself the ultimate Christmas present: A Mac Pro with two quad core processors. I filled the three empty hard drive bays with three Western Digital 1TB drives, then added 16GB of RAM from OWC. Shortly after that I filled up the rest of the memory slots with another 16GB of RAM from MemoryToGo (if you are buying a Mac, and Steve Jobs may have me killed for saying this, but I strongly urge you to buy it configured with the least amount of RAM possible, and add it after market, even if it means you have two or more sets of warranties to deal with … this RAM upgrade would have been over $9,000 had I purchased the machine that way through Apple, but only drained me of a bit over $1,000). I’m not going to tell you about my displays, because I’d like to help you avoid getting drool on your keyboard. If you haven’t already. My motto is, why get something that is adequate, when you can spend a little more on something that will last longer and keep you happier in the meantime? I’m not talking about a computer for a hobbyist, or your mom, but rather for those of you who spend many hours in front of one both at work and at play.
A few things are a little slower when I VPN and work remotely, of course; but this has more to do with the VPN and the network traffic in and out of the office, than the fact that I am using a Mac. One common symptom is typing a query within Management Studio, inside the RDC window, and then watching the cursor slowly catch up. But there are other options. To summarize, if you are considering using a Mac even if everyone around you thinks you need Windows, you can:
- Do what I do most of the time: run a Remote Desktop Connection session against the workstation at the office, and work inside of it. Several tasks I do in the host rather than within the RDC; for example, Word for Mac is just as capable as the Windows version on my office PC, and Entourage works just great for e-mail (just make sure you buy the right version of Office for the Mac; the home and student edition, for example, does not have Exchange support). For Excel I still find the Windows-based version easier to use, but your mileage may vary.
- Use development tools inside of a local Windows virtual machine. You see, as long as I have a VPN up and running on the Mac (the host), I can set up any virtual machine to just piggyback on the host’s connection, and then work from there. I shift the slowness factor from typing and display issues (which can be annoying) to pulling results over the VPN and local host (which can be a different kind of annoying). Some people swear by VMWare Fusion, some use Parallels, and still others use the free VirtualBox (though I don’t know if it supports x64 guests). You should try all three and see what works best for you… for me it is VMWare Fusion. Also, I install Windows within Boot Camp, so if I really, really, really need to boot into Windows (e.g. to test Hyper-V stuff), I can. Of course as long as I continue to be stubborn, and insist on running an x64 OS, in that case I won’t be able to connect to work.
- Run a Management Studio-like tool within Mac OS, in many scenarios obliterating the need for a VM or a Remote Desktop Connection. I started using Aqua Data Studio 7.0 last year, and initially was very impressed, but ran into some stability issues - one where I actually lost work (I want to stress that these were related to Apple’s Java VM and were not the fault of the vendor). I just installed version 7.5 today, and am giving it a whirl again. There are other tools you might try, such as RazorSQL. If you have experience with these or other tools, connecting to SQL Server databases from Mac OS, I’d love to hear about them so I can continue to spread the word.
My single biggest problem with using both platforms: I use the same slim Apple keyboard both at work (with a PC) and at home (with a Mac), which for most typing is fantastic, as there is no shift in finger movements depending on where I am… with one exception. The CMD key at home becomes the CTRL key at work for operations I perform A LOT: copy & paste. This is extremely frustrating, and while I have found several key re-mappers that claim they can help fix this problem, none of them work for these specific keys, since both are essential for core functionality (primarily re-assigning Ctrl+Alt+Del on Windows is the fix that I haven’t yet managed to get working). After a few miscues I end up right-clicking and using the context menu. So, watch out for that one, and if I get around to dealing with it in a satisfactory way, I’ll try to get the word out.
The only other compatibility problem I’ve had (which @mike_walsh was quick to remind me of, thanks Mike!) was the last time I spoke at the New England SQL Server User Group, we had a real problem convincing the projector to correctly display the virtual machine, making my demos horrible. The next time I speak (June 13th at CTDOTNET) I will bring both the MBP and a 15″ MacBook unibody, running the virtual machine demos off the latter. I am banking on the fact that switching between Mac and Windows mid-stream caused the problem, but hopefully their projector can handle multiple inputs.
Next on my shopping list is the new 17″ MacBook Pro with its awesome alleged 8-hour battery life. I will probably splurge on the SSD if, for no other reason, than to lessen the effects of hot laptop meeting white, computer-dork thighs. But first, I need a good excuse to replace my “aging” MBP. It just doesn’t need replacing; for the most part, it is still operating as it did on day one. (With the notable exception of a video card problem last year, which was common across the entire line, and which was fixed quickly and happily out of warranty.) Maybe I can push it down the stairs or “forget” it somewhere. Anybody in the market for one? Bueller?
Anyway, after all of that verbal diarrhea, I hope I have illuminated some of the reasons I have chosen to use a Mac where I can, and how I have worked around some minor issues that have come up. If you have any questions I haven’t covered, please feel free to comment below, or contact me directly (via twitter: @aaronbertrand or e-mail: abertrand@otolabs.com).
And when people call you crazy, ignore them. Even though they’re probably right.
Aaron Bertrand
Senior Data Architect, OTOlabs
http://www.otolabs.com
Here, here. Yes, people say you’re crazy when you use an Apple, but here’s my gauge: talk to people who use Macs and ask them on a 1-10 scale how happy they are with it. Ask them if they want to buy the next piece of gear that comes out from Apple. It’s overwhelming how many happy Mac users there are, and how excited they get about the next piece of gear. I’m definitely in that crowd.
Then turn around and ask Windows people that same question. They say things like, “Yeah, it works. I’m okay. It’s good, I guess.” They’re rarely rabid fanbois about their gear. Windows isn’t bad - it’s okay - but OSX is just amazing.
Great post, I had a very similar change just last year. I too am the “SQL Server dork who uses Mac OS X as their workstation”! For me, I had gone through one too many expensive-yet-problematic PC experience, and my dabblings with Vista had put me off Windows big time. So when it came time to invest in a new laptop, I opted for the 15″ MBP…was hooked in no time. I do 90% of my SQL Server and BI development through VMWare Fusion now. I January I went for the big desktop upgrade and got the Mac Pro Octo. What a machine! I actually now really dislike having to use Windows at all (apart from SQL Server of course, which I still love, it’s a great product!). LogMeIn is a nice wee tool for remoting into other machines too.
Hey there old friend! Great story, which I read from my Dell Vostro 1500 ;) Maybe one day I’ll make the jump but so far so good on keeping productivity running on non optiplex and dimension pcs from home anyway. Take care Aaron!
I’m in the same situation. SQL guy, running a mac. I RDP into my home lab or work desktop for serious work & then i have fusion running XP for occasions i’m offline.
I order you never to right-click to delete a file again! here are the following magical incantations i use to get me by in a windows world:
fn + delete = windows delete!
fn + left = HOME
fn + right = END
fn + up = PAGE UP
fn + down = PAGE DOWN
Thanks Aaron, this was the very small push I needed…having been a SQL Server geek for almost 10 years, I’ve always wanted to go over to the “dark side” with a Mac because I love OSX…I even flipped everyone in my house (wife and son) over to Macs years ago, but have begrudgingly maintained Windows use for myself (because of demos, presentations, dev work, etc.). I now see it’s time to cross-over…now I just have to decide between 15″ and 17″…
Nick, my issues are not about cutting/copying/deleting files, but rather cutting/copying text. I go to work all day and use Ctrl+C, then when I get home I keep using Ctrl+C on the Mac, which of course doesn’t work. :-)
Josh if you are getting the new one then the 17″ is much more bang for your buck. Between the much larger screen and the long battery life, for me at least it’s a no-brainer.
As an aside, I have also converted many friends and family members to Macs…
Andy, good to hear from you buddy!
I find i CMD + Q to quit applications when i’m in windows.. Owww Frustrating!
Excellent, courageous post. I am also a SQL Server DBA and Apple fan. My machine: a 9 year old (!), still going strong, G4 Cube with the original flat panel LCD Studio display. I love it, and while it was somewhat expensive at the time, I don’t know too many people that have a 9 year old box that still works well, with a modern OS, and that they don’t curse :-). I have upgraded RAM, upgraded from a DVD Rom to a DVD Burner, and added external hard drive space, but other than that the machine just runs and runs. I pulled the same trick using the Citrix client to connect to the office.
NCP client doesn’t work on a Mac platform however on any other machine it should work just fine. Have you tried it on a non-Mac?
VPN Haus, I did not need to try any alternatives on the Mac, as the Cisco client worked perfectly right out of the gate, both over my home network and using Verizon’s mobile broadband service when on the road. I tried the NCP client on three different Windows x64 installations, and performed a lot of troubleshooting trying to get it to work. I’m sure if I got support involved I could have made it work eventually, but I decided to cut my losses. It’s not really that big of a deal that I can only connect to work from inside a VM. I believe we are in the process of testing some new gear anyway, so this problem may simply go away.
Ok, cool - glad you found a solution to your problem. Of the back of your comment, I checked in with tech support to see what the story was and here’s what they sent me (the point’s a bit moot now but thought it worth passing along anyway):
“There is a licensing issue that can arise when running the NCP engineering client on a Windows platform installed on Mac hardware (using bootcamp). One can either boot directly to Windows and the hardware is recognized directly. Or one can also first boot Mac OS, and then run a virtual session of this same installed Windows platform. However the hardware is then ‘virtualized’; hence the ’signature’ has changed, and so the client will want to be activated again. We can take care of this pretty quickly through the HelpDesk. These are common Mac-related user setups and issues we’re aware of:
-An NCP Client running on Windows installed on a (Intel based) Mac hardware platform — works fine
-An NCP Client running on (virtual) Windows within VMWare/Parallels — also works fine
-An NCP Client running on a (virtual) Windows, with shared network interface, and ‘Unity’/'Coherence’ (seemly running a Windows app within the Mac environment) enabled, doesn’t work — there are two distinct network stacks at play here, and NCP client ONLY works on the Windows stack. You can however use the client to connect as mentioned in the two cases above.”
Maybe this last one was what caused you the trouble? Anyway, hope the new gear makes life easier!
turn your pc into a mac…
I have been looking for a long time and found this post. Thanks a lot….
Aaron,
You didn’t mention it in this article, but Bootcamp is not currently an x64 option. Apple will allow you to install Windows, but only x86 versions. I suppose you can hack around it and install a x64 version, but Apple does not provide 64-bit drivers for it’s hardware.
I love my Mac, but this kind of bologna from Apple is a constant annoyance. No reason Apple shouldn’t have x64 drivers for it’s hardware except that then Windows users would be able to fully address 4Gb+ of RAM on their Mac.
Hi Boringo,
I’ll agree that x64 is not intuitive, and there are some drivers missing if you don’t go out and get them yourself, but on all of my Macs, Bootcamp (as well as VMWare Fusion VMs) are all x64. The things that are missing are the things that I can live without inside of Windows… such as iSight. 99.9% of the time I am running my Bootcamp OS as a VM, not as a native boot; the only exception is when I give user group presentations (though even there, the Mac hardware is much more projector-friendly than the virtualized hardware through VMWare, and twice I’ve had non-starts when booting directly to Windows).
[...] [...]
[...] day-to-day usage, or just want to laugh at what a helpless fanboy I’ve become, please feel free to read my story.If you want to comment or ask questions here instead of on my employer’s web site, that is fine [...]
[...] I’ll blog more about my virtualization setup in another post. (Thanks to Aaron Bertrand (blog, twitter) for sharing his setup here.) [...]
Just a quick update. After a while Microsoft’s Remote Desktop Connection client for the Mac became increasingly more annoying - inconsistent font smoothing, periodic fits of non-responsiveness, and a handful of inexplicable crashes. I switched to CoRD (http://cord.sourceforge.net/) and have been very happy with it.