Scott Hanselman

The FreeMiniMac has arrived and will the fun ever start?

November 19, 2005 Comment on this post [13] Posted in Reviews | ASP.NET | DasBlog | XML | Bugs
Sponsored By

MyNewMacDesktophttp://macminis.freepay.com was NOT a lie my friends. You wondered, what's Hanselman doing with that Free Mini Mac banner on his site? Well, it arrived today and it's the bomb. It was free and I didn't even have to pay shipping. I want to thank everyone who signed up with the program to help me get the Mac, and I hope you get yours also!

Here's the specs:

  • 1.42GHz PowerPC G4
  • 512MB DDR333 SDRAM
  • 80GB hard drive
  • ATI Radeon 9200 with 32MB DDR video memory
  • DVD/CD-RW combo drive
  • Integrated AirPort Extreme and Bluetooth capability
  • DVI or VGA video output
  • Mac OS X Tiger, iLife 2005 software
  • 6.5 inches wide and 2 inches tall
  • Weighs only 2.9 lbs

I'll probably double the memory, and I've got at least three firewire drives I could use if I needed to, but it integrated so nicely with my network I may not bother. It's a pretty amazing and tiny little thing, this Mini Mac.

Impressive Things

  • The OOBE (out of box experience) as with all things Apple, is amazing. Completely. The box, the plastic, the manuals, hell, the foam - everything is pristine, clean and classy.
  • I grabbed an old USB mouse and keyboard, and plugged it into my Dell 20". During the setup wizard it asked if I had an Apple ID, so I entered my iTunes credentials. At this point it hadn't even asked about the Internet. Seems like a small thing, but it's a nice detail. After entering my Apple ID it (of course) knew everything about me. It set the time, my timezone, my user name. All I did was enter a password and I was at a usable desktop.
  • I didn't realize until I re-read the specs that wireless was built in. I gave it my SSID and WEP details and I was on the wireless, which allowed me to remove the ethernet cable I'd stolen from my wife's machine. I noticed also that IPv6 was installed by default. Bluetooth is also built in, so I may pickup a wireless/bluetooth Apple Keyboard and Mouse.
    • ASIDE: For Windows XP, Microsoft will be sneaking IPv6 onto your machines during the installation of the new WinFX .NET Class Libraries.
  • I poked around in the System Preferences and noticed that it not only had identified my Dell 2001FP monitor, but it had already applied the correct color profile.
  • The machine is totally silent which is awesome compared to the jet engine that is my Pentium 4.
  • Screen rotation is just built in...this is still something we have to look to the Display Driver people on the Windows side.
  • Printer and File sharing JUST WORKS. I shared my Mac Desktop and my Windows Desktop. However, I ended up just using FolderShare for synchronization (see below.)

Here's the dirty little secret. If you want to do ANYTHING even remotely interesting on Mac OS 10.4, you have to shatter the illusion and start messing around in *nix. It took me 20 minutes to remember how to edit my .bash_profile to add a path to the MANPATH using VI. I couldn't figure out how to get the Finder to show hidden files. It's like someone has put a Ferrari engine in one of those Fisher Price plastic cars that you push with your feet.

Applications I started with

  • I've got a copy of Mac Office 2004 that I picked up at the Microsoft Company Store so I've got the Word, Excel, etc stuff covered. But the real reason I wanted this Mac was to build Mono applications. More specifically I wanted to work on the DasBlog port to Mono. I believe DasBlog 1.6 is ported to Mono already, but now that MSBUILD can build Mono apps I thought it'd be nice to get the current DasBlog (and any future versions or derivatives) running on Mono.
  • I went to former-college-software-engineering-each-bought-Newtons-on-opening-day-sit-next-to-guy Steven Frank's uber-famous Panic and downloaded everything they offer. Panic personifies all things Mac and all things Portland, Oregon. They are decorated and awarded. I got Unison (USENET) and Transmit (FTP) as well as all the lil' apps.
  • I got NetNewsWire because it's basically FeedDemon for the Mac, now even more so. Hopefully soon it'll be hooked up to Newsgator Online. I exported everything from my Windows installation of FeedDemon into an OPML and imported it into NetNewsWire. Boom.
  • FolderShare - just when I thought it couldn't kick more ass, it does. I installed the Mac version and boom, my "Shared Desktop" lives on.
  • BuildingMonoEXEsOnMacMono for Mac. Installing it is easy, as is most all graphical installers on Mac. Installers download as mountable "disk images" with all the schmutz inside. Safari, the Mac's default browser, starts installing as soon as you give the OK. They are all the same interface. It's damn-near ClickOnce in its behavior. Pretty slick. However, the Mono Mac installer just installs the libraries, and not even the graphical ones for real application development. All this took me 3 hours. Notice that I haven't even gotten mysql or apache or Mono's ASP.NET support installed. We'll see how XSP/Mod_mono works. However, for regular development you have to:
    • Install Mono
    • Install Fink, a porting and distribution system for Unix Open Source software on Mac OS X
    • Update fink via CVS (yes, it's getting scary now)
    • Update fink to unstable by modifying fink.config
    • Update all fink's core packages
    • Install Apple's X11 support from the Optional Packages stuff on the Tiger DVD (interesting that X11 isn't installed by default.
    • Install ghome and gtkhtml3 via fink. MaxOS X has its own GUI stuff in the form of Aqua and Cocoa but since Mono builds against GTK# and there's no total package to bridge the ginormous gap you have to do this dance.
    • Build all this from source...woof.
    • Add a bunch of paths and goo to your path and environment.
    • Get Monodoc, gecko-sharp, gtksourceview-sharp.
    • Install MonoDevelop.
  • It's really amazing what this thing can do with only 512M of RAM. I have been pounding on it and it just keeps on running.

Crappy Things

  • From what I can see, Mono .NET development on a Mac is years away from even Visual Studio 2002. It's just brutal. I'll plan on doing my development using Mono on Windows and copying the results over. We'll see how that works out.
    • I'm tried using XCode and Mono to see if that's better. I was able to get XCode to build a Mono .NET exe and run it using a custom Makefile, but I wasn't able to get the error recognition to work. Of course, without a debugger it's a step back.
    • NOTE: The screenshot above is XCode using the custom makefile. The output is in the Run Log in the upper corner. The syntax highlighting in XCode for C# is actually just the Java syntax highlighter.
  • Maybe I've turned into a Microsoft whore (more than even you think) but even though I started out in C, worked on Palm in C, worked on Unix in Java, worked on device drivers in C, using C (even Objective-C) on Mac for development seems like SUCH a step back.
    • VNCingIntoTheMiniMacCan one of you who is a Mac developer share what development on a Mac is really like? How productive is the guy who wrote NetNewsWire? I guess I should go visit Panic and get a tour. I mean, for crying out loud, I was out in malloc/free world while trying to think about parsing XML streaming in over the net. Maybe Garbage Collection rots the mind?

Things I'm Not Sure About

  • What Mac application is best for Remote Desktop-like behavior from a Windows Client? Is it just VNC?
    • NOTE: To the right is a shot of me VNC'ing into the Mac while writing this very post.
  • What Mac/Windows thing could I get that would act as a software KVM, so that when I move my mouse to the right of my Windows machine it would start controlling the Mac?
  • When is installing Mono on a Mac going to suck way less? (which is argubly a Linux/*nix question more than it's a Mac question.)

Now playing: P Money & Scribe - Stop the Music (Featuring Scribe)

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Hosting By
Hosted in an Azure App Service
November 19, 2005 16:41
For a software KVM, try Synergy.

http://synergy2.sourceforge.net/

On the Mac side, use this version of Synergy, which provides a nice GUI config and settings panel:

http://software.landryhetu.com/synergy/

It is a bit glitchy with handling the clipboard, but otherwise works quite well for me.
November 19, 2005 18:39
If you need a "dasBlog on Mono" tester, I'm here (Windows XP Home and SUSE 9.3). q;-)
November 19, 2005 18:53
you only need the gtk stuff if you want monodevelop or other linux type stuff. If you were going to build a mac app using mono you could use cocoa# (which I believe is included in the mono Mac package).

as for a database I don't know about mysql but there are mac packages for postgresql.
aa
November 19, 2005 19:13
osxvnc for the server, chicken of the vnc for the client, win2vnc for the cursor
November 19, 2005 19:21
Scott, how many friends do I need to refer to get a mac mini? I've been scouring the website trying to find the info somewhere, but I can't find it. thanks
ben
November 19, 2005 19:31
If you're eanting to actually do remote desktop to Windows, use remote desktop client for the Mac:

http://www.microsoft.com/mac/otherproducts/otherproducts.aspx?pid=remotedesktopclient

- gh
November 19, 2005 21:19
Greg, he's talking about going the other way. From Windows to his Mac. I *think* there is a way to connect to Apples remote desktop service from Microsofts RDC, but i'm not sure if the Apple RD is free? I checked into a while back, but found my self using my iBook more and more and just connecting to my Windows boxes as need.


Apps:

Go get Quicksilver now if you haven't already. It's free and it's awesome. It's like SlickRun mixed with Spotlight, but faster and prettier. It has a LOT more functionality than just running apps from the keyboard. I haven't even touched 1/10th of what it can do I think.

VoodooPad. Personal Wiki that's easy to use. There is a lite version that's free for up to 5 pages. You'll wish there was an app like it for Windows or that you could share your Voodoo pads with a Windows client. hmmm, maybe I should work with Gus on something like that?

Adium - multi-IM chat client. Works great.

Try out MarsEdit with NetNewsWire. It's a client side blog editor. It's by Brent Simmons as well. (BTW Brent told us on our Seattle Cocoa programmers list that NNW will sync with Newsgator online and so will Feeddemon)

As far as how productive Brent is using Xcode, he's pretty damn productive. Before the Newsgator acquisition he said the only reason he hadn't been programming more was because he had to provide all the tech support on the most used RSS aggregator on any platform.

I posted some of my thoughts on Visual Studio vs. Xcode here.
http://www.lazycoder.com/weblog/index.php/archives/2005/11/08/xcode-and-visual-studio-go-head-to-head/

On the bright side, you can use Delicious Monster to keep track of your CDs, DVDs, and books. :) My friend got a bluetooth scanner wand and just walked around his house scanning in things, then when he got within range of his iMac, it synced them over from the wand into DM automagically.
November 19, 2005 22:03
I've been wantin me one of them for some Mono fun - good timing now that 1.1.10 just came out.

Not sure why you're developing on Mono on Windows and deploying to Mac. You can just develop and compile in Visual Studio on Windows, then just copy the binary to the Mono platform since Mono JIT compiles .NET assemblies compiled on any platform. The main reason to develop under Mono is to get more immediate feedback on what's supported, but most of the time it's easier to just develop under VS, run under Mono, and see if anything breaks.
November 19, 2005 23:37
I was digging Macintosh last week as well as SuSE Linux. Like you said about Mono Develop, it's way behind Visual Studio, but what excites me the most is that we now have a great possiblity of multi platform application like Java. The fact that I was able to write Console.WriteLine("Hello from Windows"); in VS .NET 2003, compiled it, and copied the assembly on SuSE Linux and it ran totally excited me although the reality is that not everything is going to work. We probably will have to write against Mono framework, but still... That's the reason why I've become OS whore. I have Windows, Mac and Linux at home. I think Windows is still the best platform in terms of ease of development and the number of software available out there. By trying other OSes, I want to be able to say Windows is the best.

After all, I'm a geek... I know, I know...
November 21, 2005 18:32
It's interesting that the Mono and setup of some of those things is so hard. It's funny to realize that under Ubuntu Linux it's significantly easier than that. In a matter of minutes (after easily installing the OS) I was able to install Mono and the MonoDevelop packages (via the graphical Synaptic package manager) and was able to write a graphical "hello world" program straight away. Quick and easy and I never had to open a command shell to do it. Same is true for installing Apache. I never thought I would see the day when a Linux box made things even easier than a Mac.
November 21, 2005 20:18
As for info about Mac vs. .NET development, check out this series of blog postings from the Phafare guys:

http://blog.phanfare.com/2005/10/mac-vs-pc-development/
http://blog.phanfare.com/2005/10/xcode-vs-visual-studio/
http://blog.phanfare.com/2005/10/gui-development-on-the-mac-vs-the-pc/
http://blog.phanfare.com/2005/10/web-service-integration-mac-vs-pc/
November 22, 2005 13:09
Mono support is a lot better than just Console.WriteLine at this point. The XSP (ASP.NET) support is decent, and the Winform support is really shaping up. Check this post out (Roiy is the lead on the Monoppix project):

http://bloggingabout.net/blogs/dotgrid/archive/2005/08/20/winforms_on_monoppix.aspx
November 23, 2005 6:20
I bought a powerbook a few weeks months ago just for the sake of deviation and exploration. .NET day and night felt a little droll even with the new things.

My take: oh my, just typing on the thing is somehow more pleasurable than typing on my wonderful A64 X2 pc will all the goodies. There's just some sort of feng shui that XP lacks in its core.

(That said, some of the keyboard nav still vexes me...)

So I decided to try and do everything that wasn't work on OS X for a bit.
I've been "using" since Win286. Flipping everything on to the mac really wasn't that hard.

I was actually amazed at how much decent small-shop software there is over there. I knew about a few things, but most of the time, when I went searching for something I liked on Windows for OS X, I found something close enough or better.

I don't know what you've found so far, but here are some of my random notes, they're free :)

- iTerm - good term replacement. Free.

- The dock goes on the left. Iirc you have widescreens, this placement seems natural to me.

- Quicksilver is totally cool, they hype seems warranted. I mainly use it launch apps right now (it makes the dock sort of an afterthought for all those second level apps you might go to the start menu for or whatever), but I've done some of the 10 minute tutorials and it's pretty cool... Nothing really like it on Windows right now.). Double command key triggering is my flavor. Free.

- FolderShare is awesome, I use it to synch my mac to a windows server that can then do the network backup thing along with the rest of my crap.

- quicksilver purists seem to grouse about spotlight a lot, but I actually use it a fair amount, it works better than any of the search I've used on windows (but I haven't used X1).

- TextMate - I thought I would use it just for ruby, but I ended up using it for text, html, everything. It's my emeditor for mac. It's even better actually, very CR-like with it's templating. Would love to see a windows version. Trial -> $45ish

- CSSEdit - best css editor I've ever used, better than TopStyle. Trial -> $25.

- RSyncx - This took some doing, but my mac came with a bad memory slot so it went back to Apple after the first week. RsyncX will let you clone your full drive onto a firewire (or other available) drive as a bootable copy. I don't know if this is as important to have laying around as it was with OS9 and earlier. Anyway, I ended up springing for one of the LaCie externals because my USB enclosures and firewire enclosures weren't working with RSyncX. Basically it was finnicky--buy other things like Carbon Copy Cloner and Super Duper flailed for me. Free.

- Adium - Coolest looking IM client I've ever used. Makes trillian look like a pig. Gratis.

- NNW. First I was a NewsGator lover, then FeedDemon won me over. Then I started dinking with NNW and, there it is again, it just feels nicer. I'm a NG subscriber, grandfathered or whatever... I emailed them, they will have it linked into NGO soon, but no dates. They don't have a licensing route for existing NGO subscribers yet, their advice was use NNW Lite for a few months (or pony up the $25 on the old Ranchero site)

- Speaking of NNW, Brent Simmons (the developer) is manning the support channels over on the NewsGator forums if you want to ask him about how Mac devs really do it (this is not a bumper sticker suggestion)

- I don't know how they do it. I like TextMate and I've got my little rails rig working well and so on. I do a lot of typing, I have to lean on tdd so fricking hard because I feel naked without a nice compile check, intellicrack, etc. Basically I run my tests after every third keystroke, or so it feels.

- Consolas, Vera Sans Mono... Must have even with nice complement of mac fonts (Lucida Grande is great). Mac proportions are different, so sometimes Vera is too big, Consolas to stout. Georgia is great on any platform or serif.

- DEVONthink - sort of like OneNote. I like it better, but I'm actually not a huge OneNote fan (I want to like it, It's just a little too loose for me, I like more folders and notes). I'm using it for a lot of other pim-type stuff and as a document manager. Was $70, overpriced but good.

- Cocoalicious. Don't know if you do the deli.cio.us thing. Like Bloc Party, I didn't get this the first time around, but it won me over (and I own OnFolio). Cocoalicious adds a lot of automation hooks, most notably you can do post to blog from in NNW and throw it into delicious. Free.

- Fugu. Tried transit. Tried Yummy FTP. I have an account with TextDrive so I do the scp/sftp thing for file transfer. Transit really barfed a lot and the other two didn't. Fugu's free but awkward and doesn't do remote editing that well (WinSCP blows all three away for my money). Maybe Yummy is worth paying for, jury's out over here.

- ecto - the Ranchero folks make a blog client that also might come into NGO subs hands someday. Ecto is one of the better blogjet type clients, I've used but it's been a bit flaky for me lately--it's wysiwyg/html modes can be annoying for things like bullets. I may revisit this one, but it has some neat things that some of the Window clients could learn from, at least as far as UX and tagging go.

- Mail- Mail.app is neat sometimes, I've used t-bird for personal mail for a while. But my friend/host moved me onto Exchange for personal mail recently and Entourage->Exchange is the best thing going. It's not as good as Outlook, but it's pretty much better than everything else (and now I have contacts, tasks, cal, etc for personal--before it was tedium on my main box because of profile limits).

- CandyBar - It's not a mac if it's not pretty with cute icons.

- RDC, VNC for remote. Regular old shell beats putty any day. Keys can be a pain, SSHKeyManager helps with this.

- Xcode. Do this first, do this before Fink. Save mostly obfuscated headaches. Once I got Xcode installed, Fink went on fine and then I could start fixing OSX's default ruby install.

- I switched up and installed lighttpd to do my local webdev instead of apache. Lighty is pretty cool. I still haven't grokked this whole fastcgi world where we bang rocks together and don't have a reliable worker process.

- CocoaMySql makes the shame of working with mysql more bearable.

- Synergy is your MaxiVista. I haven't gotten to this yet, but it's apparently about the same deal. There's a service piece and a Cocoa GUI piece iirc.

- KVM. I ended up getting this addlogix powerreach unit. I'm not wild about it, the keystroke switching is cumbersome compared to the Belkin SOHO I've used for several years and liked. I couldn't find something that was dual-dvi, usb k+m and supported at least 1920x1200. This was my best option.
It's good, but it was pricey at like 250 and I use the front buttons to switch. Also, some of the higher order mouse buttons get caught in the wash.
I lost mouse 5 and 6 or 6 and 7 on my logitech on the mac, they work directly. Good news was: at least I didn't need to buy a bunch of kvm cables, just another dvi cable.

I didn't intend to right a novel, but you're "good tools people", what the hell. You'll find one thing useful in here, you've done the same for a lot of the other folks out there :)

Grant

Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.