As a independent Mac developer and a .Net development as a contractor I was interested in the bootcamp release from Apple. For contract work I lug around a PC Notebook and do Mac development on a desktop machine. The MacBook Pro seems like a sweet little machine, but until people were able to boot Windows on it I could not justify spending the money on that sort of machine. At present I still wouldn’t spend the money on the MacBook Pro, partly out of fear of buying a rev 1 product, but my PC Notebook is fine for what I need to do at the moment.
One interesting discussion raised by the talk of booting Windows on a Mac is whether this will harm the Mac Development side of things with people citing the issues OS/2 had getting developers to write OS/2 native software when people could run Windows 3.1 apps. Personally I don’t see this being a problem for people using bootcamp as it is going to be pretty clear to the user when they are running MacOSX and when they are running Windows. I see this potentially being a problem for Apple down the track if they include virtualisation or integrated emulation environment like Wine down the track.
The main issue will be that this will allow people to write code for windows and then point mac users to the virtualisation/emulation environment as a way to get their apps running. For Mac developers this will mean that a number of currently native apps may disappear from the Mac. Especially things like business and accounting software which doesn’t really push the GUI features of either platform. On the other hand it will mean that a lot of specialist software and hardware will be available to Mac users. This will be good for the Mac platform but it will make developing on the Mac a little less attractive. One easy way for Apple to remedy this would be for Apple to release embedable Cocoa runtime API’s for the PC.
VB6 and .Net development on the PC make it very easy to create ‘enterprise’ applications which hook into a SQL Server and leverage other Microsoft technologies. However as an environment for developing Windows Applications they are less than perfect. I know there are examples of Windows Applications that have been written in VB6 and/or .Net but on the whole the developer is required to put in a lot of work to get these things working. Cocoa on the other hand gives you most of desktop application handling out of the box. Open, Save, Recent Items, Undo, Redo, opening from the finder are all supported with little work from the developer. When you combine this with Core Data you have an excellent rapid application development environment which surpassing Visual Studio for developing Applications.
If Apple released this to developers it would mean that instead of Mac users being the second class citizens it would be Windows users. Already Apple has done this to PC users for music management software with iTunes. Now I agree that this is partly because of the lock in with the iPod but even if they did support 3rd party players I believe that iTunes has a much better UI than most of the music player software out there. Beautifully displayed Mac apps would be available to Windows users, and every time they see the candy colored icons in the title bar they would know that they should be using a Mac.