Geeks With Blogs

The Lanham Factor The (ir)rational thoughts of a (not-so)mad man
I've been writing software for a while and recently had an opportunity to broaden my horizons and start developing for iOS. We decided to leverage, as much as possible, our existing skills and use MonoTouch and MonoDevelop by Novell. 
For those of you who do not know, Mono is a .NET port originally designed for Linux but adapted for other platforms as well. MonoTouch is a port specifically for building iOS applications using the .NET framework. MonoDroid is a port (in CTP-esque release) for Android.
MonoDevelop lacks one very significant component compared with other tools I am using: NO VISUAL DESIGNER. Instead of using an integrated visual designer, MonoDevelop shells to the Mac OS "Interface Builder".  Since MonoDevelop lets me have a "Visual Studio-esque" feel *and* I get to use C#, AND it's FREE, I am gladly willing to overlook this.  In fact, it's not even a question.  Free?  Sure, I'll take it with no Visual Designer.
In my experiences I've grown from UNIX and DOS to .NET development through many steps. Java/JSP/Servlets; Windows; Web; etc. I've been doing .NET for quite a few years and I guess I just got "comfortable" with the tools.
Interface Builder (IB) is amazingly confusing for me. I had the opportunity to speak at the Northern VA Code Camp on 12/11/2010. My presentation was "Getting Started with iOS Development using MonoTouch and C#". 
At the visual design part of the presentation, I asked one of the 3 or 4 Mac developers in the room about my confusion with the IB. I don't understand why the "Classes" list includes objects. I don't understand what "File's Owner" is. And, most importantly, WHAT THE HECK IS AN OUTLET AND WHY IS IT NECESSARY?!?!?"
His response to these question (especially Outlets): "They did it wrong."
I'm accustom to a visual designer that creates variables for graphical widgets for me. Not IB. Instead, I have to create "Outlets" manually. I still do not understand why and, the explanation from a seasoned Mac developer is that it's wrong. (He received nods of confirmation from the other Mac devs in the room.)
I love development for Microsoft platforms using Microsoft development tools. I love Windows 7. I love Visual Studio 2010. I love SQL Server. Azure, Entity Framework, Active Directory, Office, WCF/WF/WPF, etc. are all designed with integration in mind. They are also all designed with developers in mind.
Steve Ballmer recently ranted "It's the developers!" That's why it is relatively quick to build apps using MS tools. Clearly, MS knows that while we usually enjoy building technology solutions, we are here to make money. And we need tools that accelerate our time to market without compromising the power and quality of our solutions.
So, yeah, I am sucking up I guess. But I love Microsoft Development. Thank you, Microsoft, for providing the plethora of great development tools. 
P.S. (but please slow down a bit…I'm having trouble keeping up!)
Posted on Friday, December 31, 2010 7:30 AM Cutting Code | Back to top

Comments on this post: Why I Love Microsoft Development

# re: Why I Love Microsoft Development
Requesting Gravatar...

first you got to learn Objective-C -- knowing C#/Java is not enough -- OO knowledge & knowledge of 'C' would help but Objective-C is a different way of thinking -- different even from C++ -- Robert Clair's book was quite helpful to me -- "interface" concept in Objective-C is equal to "class" in Java/C#, "protocol" in Objective-C is like interface in Java/C# -- weird, yes, but makes sense, if we think about timeline when Objective-C was invented & what it tried to be -- IBOutlet is just a macro -- IBAction is like void ptr -- Interface Builder is like Visual Basic IDE (4.0/5.0) -- there are some advanced ideas in Objective-C like categories, extensions & blocks

Left by ram on Jan 01, 2011 5:36 PM

# re: Why I Love Microsoft Development
Requesting Gravatar...
What are you doing with "Interface Builder"? Designing a UI, and how is that UI persisted? In a NIB/XIB file. The application need to access and manage this file (the UI) right? Why not call this entity (the application entity owning this NIB/XIB file) the "File's Owner"? It doesn't have to be "done wrong" just because you don't understand it. Sometimes ignorance is just enough...
Left by Foo Bar on Jan 01, 2011 10:31 PM

# re: Why I Love Microsoft Development
Requesting Gravatar...
i think the xcode sdk is still in maturing... the vs2010 and the .net stack has been around for quite some time... there is a lot u can do with vs2010 and blend which u cant simply leverage in xcode and IB
Left by rs on Jan 03, 2011 1:22 AM

# re: Why I Love Microsoft Development
Requesting Gravatar...
Hum, I dunno.. MS's ASP .NET MVC has gotten quite popular with devs and you tend not to use a visual designer for that..
Left by Lee on Jan 05, 2011 2:52 PM

Your comment:
 (will show your gravatar)

Copyright © Brian Lanham | Powered by: