ColdFusion Muse

The Muse and the Mac

I bought a new mac yesterday and I'm diving in trying to figure things out. The Muse knows his way around every flavor of Windows going all the way back to Windows 95 and up to every version of the server product. I cut my teeth in IT as an MS network engineer. But I've seen and fiddled with Macs before. I have added hardware (SCSI drives, controllers, RAM etc.), configured print drivers, and connected to shares on the network - all in the way of support for some of my design buddies like Erin Osterberg (a beautiful and wonderful video editor working for my good friend Rob Helling at Sonburst Communications).

But I've never actually been a Mac user. Mostly I try to stick to what works and having a modest aptitude for PC's and servers I found my niche there. It's also hard to stomach the price. It seems with the Mac you are paying twice as much for the same hardware that is in a PC... except you get that thar fancy brushed aluminum casing and a shiny mouse and brushed aluminum keyboard that looks to be made for a child.

Still, I have a need to work with some I-phone apps, so I need a Mac to run Xcode. I bought an Imac with a giant screen, set that bad boy up, rubbed my hands together and started in.

From this point forward I suspect that some of my readers will likely treat me with a rueful chuckle and some ribbing. It may be painfully obvious in the next few paragraphs how clueless I am. Anyway - here goes. Mac's reputation for being easy to use is well earned. I did not have any trouble getting my network configured and figuring out all of the personal preferences. I managed to install Firefox (and firebug), chrome and eclipse. I found the "software updates" and ran them, nicely updating a good many things on my machine. I managed to register the machine in active directory and add my domain permissions to my keychain. I even figured out how to remove all the foofy stuff I'll never use from the dock (Iphoto, Itunes, Imovie, Ichat, Ical, IstartEverythingWithI). So far so good.

Install How Exactly?

So my first "issue" is with something weird happening with installs. I installed FireFox then dragged it to the applications folder and (I think) to the dock. But on my desktop there is an item that says FireFox with an icon like a drive. There's another one that says "chrome" after that install. As far as I can see I have Chrome and FireFox in the dock. When I try to delete them Mac asks me if I wish to "eject" them. Guru Toby Tremane tells me that Mac files are downloaded as ".dmg" files - disk image files. How they got on the desktop I'll never know.

Network Follies

The muse is all about work at the office, so my next task was network resources. I was feeling good about it too. I managed to get connected to my network printer ok and I've mapped server shares before on a Mac. I have about 10 or 12 shares to mount representing various projects, shared doc storage and servers that I keep track of and visit from time to time. This turned out to be an exercise in frustration. As I see it at this point (and this may change when I find out the myriad of things I don't yet know) Mac's don't really like to play nice as windows network clients. For one thing there's no drive letter.

I knew this and expected it of course, but what I did NOT expect was the complete inability to go to the file explorer, enter a UNC path and see the share content. Surely there is something on a Mac that allows me to simply browse UNC paths ad hoc without the necessity of going through the whole "connect to a server" dance. And please, if you are going to clue me in, don't forget to tell me the shortcut keys. I go hours without touching the mouse on a PC, but the Mac seems to want me to "drag" things around to make use of them.

Once I did get a drive "mapped" (sort of) using the "connect to a network server" widget, I could only see it in the "finder" under "Devices" (not "drives" or "shares" or "network resources" but "devices"?). Furthermore I could not seem to rename the "device" once I had established the linkage. This was a problem to say the least because I had shares of the same name. For example, I mapped to ServerA with a UNC of "\\serverA\webs" and ServerB with a UNC of "\\serverb\webs". In my "devices" I now saw 2 devices both of which were named "webs". There was no way to simply rename them so I could tell them apart either. I did find I could make a sym link (an alias) to these drive mappings and rename that link. I did that on the desktop and that got me a little further.

Now, I went to open some projects (in eclipse) at these locations and I had a terrible time finding them from the browse application. Some command line searching (thank god the Linux command line is still operable) and it turns out these mapped drives are actually linked to the "volumes" folder. Well of course they are – Linux under the hood remember Mark!!

Remember my "webs" example? Closer examination showed that I had a /volumes/webs folder (mapped to serverA) and a /volumes/webs-1 folder (mapped to serverB). But in the chooser I had 2 "devices" both of which simply said "webs". And here's the kicker - clicking on either one of the devices opened only /volumes/webs-1. In other words, the short cuts in chooser were crossed up and pointed to the same share. If I navigated to the volumes folder on my own and clicked on one or the other I could get the content I was looking for, but neither the chooser nor the aliases on the desktop seemed capable of getting me to both locations.

First Take

I'm impressed with the speed and the aesthetics of the system. I suspect it will take me a week or two to really feel comfortable. Next I have to install the IOS SDK for Iphone development, Skype, Photoshop, Parallels and a few other widgets to make it more usable. The screen is also impressive. Chrome and FF both work quite well. Eclipse seems to load and run adequately. I am also seeing why some people (like super genius and senior CF Webtools ColdFusion and Java developer Guy Rish) prefer a really giant screen to several smaller ones. I have 3 21 inch monitors and I thought that was pretty grand - but that 27 inch monitor really makes a difference with Eclipse. I can get code, debugging, log tailing and file explorer on the screen without sacrificing a clear view of any of them.

Final Caution

As you can tell from this post, I'm not afraid to put myself out there. I'm trying something new and I want to share, both personally and professionally, my take from the experience. I welcome comments to my blog as all my readers know. Indeed, some of the best content is often found in the comments. So with that caveat, I want to say that this is not the time for the old Mac vs. Windows debate. If you wish to flame and draw out that argument I can assure you that your comments won't last here. Please keep the discourse civil. If you have tips about how to help an old windows hand get the hang of a Mac, that would be splendid. If you want to address any of my specific points in this post - have at it. But if you only wish to jump in and start a holy war, please refrain. I'm sure there is plenty for us to learn without resorting to useless and trivial arguments. Ok... now that wasn't so bad was it Muse readers? Don't worry - the Novocain wears off in about 90 minutes :)

Related Blog Entries

Shannon Hicks's Gravatar There's no "Win vs Mac" content in this post. This is the post of someone who's trying something new for the first time.

Check out the tour Apple put together, it'll probably save you a bunch of time:
# Posted By Shannon Hicks | 1/28/11 12:27 PM
Shannon Hicks's Gravatar A couple more useful links... a little old, but still a good start:
# Posted By Shannon Hicks | 1/28/11 12:33 PM
Craig Kaminsky's Gravatar For the installers, here's what you need to know: When you unpack (for lack of a better term) a DMG file, it connects the new installer to your computer a la a DVD or CD. So, you do want to eject when you're done copying to the application folder.

For the network shares, I always went the lame-o route. I install VirtualBox, which a free VM application from Sun now being ruined by Oracle ;), and then install a virtual windows machine (typically, XP but I do have Win 7 on one of my Macs). I've used that machine to do my Windows bidding as needed.

That's just how I went about getting to my required Windows drives ... and I'm sure other Mac-ers have better thoughts on the Network Follies.

Good luck and enjoy your new toy!
# Posted By Craig Kaminsky | 1/28/11 1:19 PM
Craig Kaminsky's Gravatar Oh, before I forget! Make sure to check out Homebrew or MacPorts. They're a godsend when it comes to adding server stuff to your Mac (e.g., Ruby, Rails, Git, etc.).

I use MacPorts but others use Homebrew. In either case, I can install my own version of ruby 1.9 (instead of the 1.8.7 that comes with Apple's OS) with a simple terminal command (sudo port install ruby19). Updating becomes just as easy: sudo port upgrade ruby19 (ok, it might be update and not upgrade but you get the idea :).
# Posted By Craig Kaminsky | 1/28/11 1:22 PM
Mark Kruger's Gravatar @Craig,

Hey... thanks! That's some useful info. I've been told to use "parallels" for my windows aps. Any take on them?

# Posted By Mark Kruger | 1/28/11 1:27 PM
Craig Kaminsky's Gravatar @Mark: I prefer VMWare and VirtualBox to Parallels. I used Parallels a couple of years back and the performance was awful. I've heard it got better but, to be honest, I never went back. VMWare Fusion, which costs the same as Parallels, is really sweet. Very powerful and fast. I use that on one machine and VirtualBox on another because I did not want to pay twice for a VM machine :).
# Posted By Craig Kaminsky | 1/28/11 1:32 PM
WilGeno's Gravatar Several things Mark,

1. has a great video series on Mac for Windows users.

2. Command+k when in the Finder will open the connect to network dialog.

3. Command+tab works like alt+tab in Windows

4. Use VMWare Fusion. I think it works great.

5. OS X has a built in VNC client but I prefer Chicken of the VNC

6. Get the Windows RDP client for the Mac.

7. Um, Linux? No, it's BSD/Darwin under the hood NOT Linux. Some of the commands are a bit oddly flavored compared to Linux. Unless, like me, you started on BSD.

8. Appcelorator Titanium for developing native iPhone Apps. It connect to the iPhone/xcode sdk AND it's will cross compile to Android and Blackberry.

9. Navicat for DB access to ANY database.

10. DMG is just a self mounting/extract archive file for the Mac. It's treated like drive. Dbl click to mount and open. Drag the App inside to the Applications folder then eject the DMG like you would eject a CD. Simple. I know it seems too simple compared to installing the standard Windows app.

11. Toss that razor blade like keyboard into the trash. Even I use ONE Microsoft product. The MS Natural Keyboard. Same for the Magic Mouse. Toss that and get a real mouse. I use the Logitech cordless optical trackman. Both the keyboard and trackball have Mac drivers.

You know where to find me if you need more help with this journey.
# Posted By WilGeno | 1/28/11 4:53 PM
Mark Kruger's Gravatar @wil,

Thanks those are all FABULOUS suggestions. As a matter of fact my first nix experience was indeed BSD. Ask Jason - we ran our DNS server on a BSD installation that I literally cobbled together with a hacksaw, some plastic anchors and some machine screws. It ran like that for 3 years and the only problem we had with it was that we would often forget it was there. Happy times! :)
# Posted By Mark Kruger | 1/28/11 5:19 PM
Mark Kruger's Gravatar @Wil,

Here's a post that describes our now infamous frankenserver.

When we retired it, my boys tore it apart and created a trophy that we pass around as "geek of the year" at our occasional formal banquet.

# Posted By Mark Kruger | 1/28/11 7:26 PM
WilGeno's Gravatar I also use Spaces. This is what OS X calls multiple desktops. Open System Preferences, Click Exposé & Spaces, Select Spaces, then check Enable Spaces. This feature lets me have desktops dedicated to a particular task or group of tasks. Typically I run 4 Spaces; 1.) communications (email, skype, general browsing, etc) 2.) Remote server windows, VNC, RDP etc. 3.) Programming CFBuilder, Eclipse, TextWrangler etc 4.) Database managers PGAdmin, Navicat, MySQL Work bench. Once you enable Spaces you then gat choose a keyboard command to switch from space to space. ctrl+arrow is what I typically use.

Oh, and do get TextWrangler. It's a really nice free syntax coloring, text editor that will even let you edit those pesky config files that OS X likes to hide from us. ?
# Posted By WilGeno | 1/29/11 4:18 PM

Blog provided and hosted by CF Webtools. Blog Sofware by Ray Camden.