Mac OS X is fun

I noticed a few blog posts on weblogs.asp.net scroll by in the last day about the new breed of Apple machines coming out and the coolness of Panther:

 

http://weblogs.asp.net/bstahlhood/archive/2005/03/15/394735.aspx

http://weblogs.asp.net/pleloup/archive/2005/03/15/394753.aspx

http://weblogs.asp.net/tjohansen/archive/2005/03/13/394444.aspx

 

I agree that OS X and the latest machines are pretty cool.  I actually bought a 17-inch Powerbook G4 for home last fall and really love it.

 

[Disclaimer: I have 5 computers at home, and before anyone asks -- Windows runs on my main machines.  I just enjoy playing and developing on different operating systems and seeing what is out there.]

 

I find myself much more productive on Windows when it comes to my most common tasks (email and development – where the latest versions of Outlook and Visual Studio are hard to beat), but there is a slickness and fun factor to OS X that is really addictive.  The Unix foundation was what pushed me over the edge in buying one – since it meant I had a much larger toolchest to play with on it (note: the fact that they finally support two button mice and have Emacs preinstalled was what sealed it).

 

I spent much of this past weekend getting back into Mac GUI development (a little known fact is that I actually used to work for Apple while in college in the early 90s).  My first GUI programming exposure on any platform was actually with the Mac Toolbox as System 7 was just starting to come out (back when pretty much every coding error meant a machine reboot – ahh, those were the days…). 

 

I’m still wrapping my head around Cocoa.  I like the framework, but Objective C is an acquired taste that I’m still trying to acquire (and the Java support for Cocoa seemed cool at first, but runs out of steam as you try and do more complex things).  Carbon feels very natural to me, but is not what cool kids use (perhaps that says something about me?).  My plan is to do two non-trivial projects (one with each technology) over the next few weeks to understand each better.

 

Fun stuff…

 

Published Tuesday, March 15, 2005 8:07 PM by ScottGu

Comments

# re: Mac OS X is fun

Tuesday, March 15, 2005 11:26 PM by David Taylor
Scott,

No offence....but you attempting Objective C and Java to target Cocoa, given your background, seems a little silly.

Try this:
http://www.mono-project.com/Downloads

Scroll to the bottom and you will see the Mac OS X installer for MONO.

Here is the direct link to the Mac binary (it requires Panther) of MONO and it includes Cocoa#:
http://www.go-mono.com/archive/1.1.4/macos/MonoFramework-1.1.4.dmg

I am sitting here scratching my head saying "what was scott thinking!".

Anyway, while playing, you can check out the latest MONO C# 2.0 implementation (remember for the MONO generics implementation you need to use a separate compiler - gmcs, at least until they merge it before release). You can also check out how some of their ASP.NET 2.0 implementation is going ;-)


BTW, how do you have time for this?

;-)

# re: Mac OS X is fun

Tuesday, March 15, 2005 11:32 PM by scottgu
Haha -- yes, I could always use the stuff I know well. But there is something fun about trying out stuff I don't know well too. ;-)

# re: Mac OS X is fun

Tuesday, March 15, 2005 11:58 PM by Gabriel
Setting Monodevelop, the IDE for mono, on OS X is painful though...

# re: Mac OS X is fun

Wednesday, March 16, 2005 1:35 AM by David Taylor
I thought you would be amused by my suggestion. Of course, the key point is that there is a Cocoa# library, which provides an .NET assembly wrapping Cocoa. If you were just interested in getting your head around the Cocoa architecture, you would find it easier if it was presented to you using concepts you are familiar with, like Delegates, etc. That way you are not trying to cram as much new info in your brain ;-)

Hey, I do have a few questions that have been bugging me these last few months, particularly since looking at the Feb 2005 CTP.

a) Are ASP.NET Profile properties still going to be strongly typed in Whidbey? I know you removed the Profile related utilities in the web configuration tool you are shipping, but I also notice there is no intellisence when editing web.config and trying to add properties. Will they no longer be strongly typed (and instead be like the Session, Application state gags)?

b) Will you be able to use the ObjectDataSource to data to an auto-generated TableAdapter, without needing to write your own wrapper class? (ie a TableAdapter generated by the new enhancements to the strongly typed dataset in Whidbey). 3-4 months ago I tried this and gave up in frustration after 4 waster hours, so was not sure if the scenario was supported.

BTW I had a little fun writing my own DataSource control a few months ago that can bind to any Sharepoint List. I actually did a UI that let you navigate the sharepoint structure within the VS Designer and select the List you want. I got the basics working, but have not had time to finish/release the code yet. I would guess your sharepoint team are working on the same thing anyway (silly if they are not).

# re: Mac OS X is fun

Wednesday, March 16, 2005 2:33 AM by scottgu
Hi David,

I'll have to give it a try sometime.

With regard to your questions above:

a) We will provide intellisense when adding new properties to Profile. They are strongly typed right now -- but it looks like there is a bug with C# that the intellisense isn't picking it up (note: you can still add the properties strongly typed right now -- it is just the intellisense that is failing).

b) You will be able to use the data adapters generated by the "New DataSet" item in the Add Item list to directly bind to ObjectDataSource (no need for an intermediate class).

c) I believe SharePoint will ship a SharePoint List datasource with the next release. It is cool that you beat them to it though!

Thanks,

Scott

# re: Mac OS X is fun

Wednesday, March 16, 2005 3:26 PM by Tim Shakarian
Thanks for sharing Scott. I'm a Windows/.NET developer and I've been considering getting a powerbook for my home as well. The main issue is that I have yet to find a PC hardware vendor that comes close to the quality that Apple offers. Having a Unix box at home after all these years is definitely appealing as well!

# Mac OS X is fun

Wednesday, March 16, 2005 8:22 PM by TrackBack

# Mac OS X is fun - By Scott Guthrie

Wednesday, March 16, 2005 8:23 PM by TrackBack

# re: Mac OS X is fun

Thursday, March 17, 2005 12:25 PM by Mickey Williams
So I have a Panther install at home after a long and painful upgrade, and I'm looking for the definitive programming book for Cocoa - do you have a suggestion?

# re: Mac OS X is fun

Thursday, March 17, 2005 4:06 PM by scottgu
Hi Mickey,

Here is a pointer to a book on Cocoa that looks good: http://www.amazon.com/exec/obidos/tg/detail/-/0321213149/qid=1111093622/sr=8-1/ref=pd_csp_1/002-8398063-7234458?v=glance&s=books&n=507846

It has a lot of positive reviews on Amazon. I read a few chapters of it in a local store. It looked really good, and I'm planning to order a copy. Note that it does everything in Objective C -- so you will need to learn that to follow along.

Hope this helps,

Scott

# re:Mac OS X is fun

Sunday, April 10, 2005 9:39 AM by TrackBack
^_^,Pretty Good!

# re:Mac OS X is fun

Sunday, April 17, 2005 6:48 AM by TrackBack
^_~,pretty good!