10 Reasons .NET developers should consider the switch to Mac OS

R

RMZ

This may come across as a trolling message, it's not ment to be. It's
intended to share a recent experience I had with Mac OS in an
entertaining way. I'm doing this because I love technology in general
and most programmers I know are passionate about technology,
unfortunately many of them stay away from Mac. Some as if it's the
forbidden fruit (you know you're out there) and others because they
think it's OS for people who aren't intelligent enough "to use a real
computer" as someone recently put it to me. I admit I was one of these
people less than two years ago, but I've found Mac OS to be, frankly
the most power desktop OS I've played with or tried to develop for.
The word "Magic" isn't a perfect fit, bit it's the first word that
comes to mind (Chuck Palahniuk, that's for you).

So I recently had the opportunity to toy around with a Pystar System,
if you are not familiar with this company they produce a generic $399
bare-bones PC capable of running Mac OS retail version without
requiring an OS loader hack. (yes, I know about the legal issues with
their license agreement and doing this, i'm not promoting Pystar and
when I transition to Mac OS it will be on Apple branded hardware, bear
with me).

So having the opportunity to play with Mac OS, Windows XP and Vista on
a $399 Pystar my first observation was performance differences. Simply
put everything is faster- everything. From the apparent refresh rate
as you glide the mouse cursor. To the time it takes programs to
launch, to the response time when shutting programs down. On Mac OS
Leopard 10.5 I was able to open three QuickTime movie trailers at 720p
(HD resolution) and have a windowed Open GL 2.0 game going. With zero
slow down (not even a hiccup) as I clicked through to bring each of
these windows to the top there is no problem. So this leads to my
first of ten reasons I think .NET developers should consider switching
to Mac OS

1. Performance boost for day to day task.

You work on a PC, you play on your PC. While Mac OS won't make Visual
Studio.NET run any faster, it will boost the performance of many of
the other things you do on a computer. In my test on Windows XP and
Vista the results were about the same, after the 2nd 720p QuickTime
trailer got running things really got sluggish.

2. The current version of Mac OS comes with a program called Bootcamp
that makes running XP easy. That's the Apple marketing line, but the
thing of it is it really works and it's really easy. Essentially this
is partion manager, there is no emulation going on and you do need a
licensed copy of Windows to make this work, but support is built in.
So you can install Visual Studio.NET on a Mac through Bootcamp

3. Two different computing environments, one for work and one for
play.
This one will contract with a later point, but if you're a .NET only
developer, the addition of Mac OS to you life may be exactly what you
need to help separate work from play. Ideally most of you play time
would be away from a computer, but everyone does e-mail and everyone
browses the web, everyone makes a family DVD manges photos (the list
goes on). To say Mac OS does these sort of task better would be
subjective, but what I can tell is fact is that Apple provides
exceptional quality software for free to new Mac owners to handle
these task. These applications (e.g. iPhoto, iMovie, iChat, iDVD,
Garage Band) have no equal in the Windows world. The only one of these
apps to have crossed over is iTunes and chances are you're running
that in the background on Windows now. Imagine every application you
use for common task begin that well designed, power and simple to use.
That's what you get.

4. First class test environment for Mono development.
The Mono project (open source project aimed at bringing .NET cross
platform) has become a very serious effort to allow .C# .NET apps to
run on Unix platforms. The effort that's gone into Mono can really
only be appreciated when you bring a .NET .exe you compiled in Visual
Studio over to Mac OS and it just works on Mono unmodified. I have
several utility apps that I experienced this with.


5. First class Java 2 development with exceptional quality free tools
and OS support.
Java programming for Mac OS is a joy. Since Sun Microsystems and Apple
Corp get along rather well what you find on Mac OS is a large amout of
native API support available to Java. Java is as capable on Mac OS
as .NET is on Windows. In fact it's more capable because of the native
UI integration (Mac OS comes with a optimized Java virtual machine
that seems to run near native code speed, with plenty of native API
wrappers ready to go and well documented..... for example want to play
or capture video using QuickTime, you can do that on Mac OS using Java
in a few hours of coding. Want to take advantage of the nice look and
feel of native Apple/Mac OS apps, you don't have to do a thing, Apple
has made it so Java's Swing (their counterpart to WinForms) is mapped
to Mac OS UI components. So Java apps look like native apps on Mac.

6. Imagine this: all the best development tools for the Mac OS
platform are 100% free to use.
Apple's coutnerpart to Visual Studio.NET is XCode, this tool and all
compilers come included on the Mac OS DVD or can be downoaded free for
commercial and private use. With XCode you can develop native Mac OS
applications using Objective-C and Cocoa.

NetBeans 6.1 (Sun's open source Java IDE) seems to run at least twice
as fast on Mac OS and will make Visual Studio.NET developers feel at
home. When you install the Mac OS version of NetBeans all desktop apps
you build with Swing will maintain much of the look of native apps and
will run near (or at) native code speed. This is also free.


7. iPhone development tools are free
Last week it was reported that iPhone applications are expected to
boom to a $1 billion market in 2009. All the development tools you
need (including desktop iPhone emulator) are 100% free to download,
but they only run on Mac OS.


8. A true next generation operating system capable of running 64-bit
and 32-bit code side by side
Another little marketing spill that lives up to it's hype. You can use
the for mentioned FREE development tools to output 64-bit or 32-bit
binaries and test, run, debug them side by side on the current version
of Mac OS


9. It's Unix under the hood.
You can run many Linux applications on Mac OS because it's Unix based.
Every commercial OS except Windows it seems is based on Unix and
confirms to many Unix standards under the UI. Windows remains
isolated. That was fine and good 10 years ago when Windows 95 was all
the rage, but over the years the OS itself has become a bloated mess.
With no built in intelligence or corporate demands to stop poorly
designed device drivers (finally with Vista, but that's lead to
another mess) and more importantly a cluttered task manager and
background processes that do God knows what.

From an architecture stand point and user experience over time Windows
(yes, even Vista) seems archaic

10. Mac OS pampers its users and you deserve to be pampered.
In this industry chances are you're not doing too bad for yourself
when it comes to earning a living. Do you like the nice things in life
such as luxury cars and fine dining? Well then why wouldn't you want
a luxury OS? Yeah, you pay a bit of a premium for Apple branded
hardware, but they are constantly rated #1 in customer service and
that extreme attention to detail bleeds over in their software design
as well.

Silly tv commercials aside, why would you settle for less doing what
you do?

I originally started this post bashing Microsoft for doing such a
horrible job evolving Windows and it was apathy that led me to avoid
that path. I like Microsoft a great deal and their technologies have
helped me earn a good income, but the thing with technology is things
are always changing and it's in the nature of our line of work to
anticipate change and to stay current. Sadly, this company that has
put out so many great things for the corporate world has failed it's
desktop users and I believe at this point they are in danger of
letting everything slip away. That won't come next year or the year
after, but ten years down the road if Windows continues to try and
play catch up with other OS's (like Mac OS) they will be abandoned.
 
S

Stephany Young

I hope the amount Apple paid you for advertising for them had lots of 0's on
the end.

<snip>
 
M

Mr. Arnold

Cor Ligthert said:
This is ment to be a trolling message, it has all the ingredients.

The same post was made in the C# NG. Why didn't he just cross post to all at
once and post to a MAC advocacy NG too and let the battle begin? ;-)
 
R

RMZ

The same post was made in the C# NG. Why didn't he just cross post to all at
once and post to a MAC advocacy NG too and let the battle begin? ;-)

Because it's not ment to be trolling post.... It's ment to offer
perspective on why a Windows developer might want to consider using a
Mac OS.

If I could sum it up: At this point in it's evolution the using
Bootcamp on Leopard 10.5.x the Mac OS can run Windows XP as well any
Gateway, HP, Dell, etc... so why not go for it? While Apple seems to
be attacking Microsoft in their TV spots, if you spend just a moment
to think about it you realize those adds are really targeted at PC
hardware vendors and not Microsoft (since every Mac sold creates a
potential Windows customer). I believe Balmer has said in interviews
he views it this way..... Apple is running that ad campaign to try and
aggressively position themselves as a high end product above Windows
to the non-tech savy public. With a high price tag and excellent
customer satisfaction/support rating to back it they certainly can
claim that. But if you read my post I try to stay on focus with why
a .NET developer might consider a Mac. My assumption being .NET
developers might consider other platforms if the lure were strong.

So why don't more Windows users see through the stupid marketing BS
and view the Mac as just a high-end option the next time they go to
buy a PC instead of the enemy? Why does that question have to start a
heated debate? If it doesn't start a heated debate then how am I
trolling?

The point is you don't have to take sides and it's valid to look at
the Intel based Mac's as PCs. I feel there are several benefits Mac OS
offers to a .NET developer and those were the things I was trying to
point out. It's foolish to view Mac OS
 
R

RMZ

I think the term "troll" gets thrown around as sort of a catch all too
often. If someone wants to provide a perspective piece on a top
relevant to a specific news group, even if that post has potential to
generate some controversy around it, it's not "trolling" as I see it.

You're certainly free to see otherwise, but this is an unmoderated
group and the post is relevant to the topic of this NG. It's a bit
disgusting how black & white some people can be with these terms. I
think there is a vast difference in an on topic perspective piece and
someone posting an off topic message just to create a flame war. I do
not want a flame war with this post and if you view the original
message as a "trolling" post the best thing you can do is simply not
respond. Rest assured, beyond this post I will not be responding
anymore.

If you read my post I'm not bashing Windows (well not too hard anyway,
it deserves a little bashing... but the press has done a pretty good
job of that). I'm not tying to convert .NET developers to Java
developers, I'm not trying to do anything except say "look, if you
love technology there's this really cool toy box called Mac OS". I
realize I do say a bit about Java, but since Java and C# are so
similar I guess I make an assumption that everyone has programmed in
Java a bit, I'm sorry if the bits on Java came across the wrong way.

Personally I enjoy reading and responding to these sort of post from
other developers.
 
M

Michel Posseth [MCP]

Well there is one big reasson i would stick at MS as beeing a professional
coder

Operating systems market shares

Linux = 0.57 %
MAC ( incl intel based ) = 6.56 %

Windows XP = 78.37 %
Windows Vista = 9.19 %
Windows 2000 = 2.97 %

The most comonly believed story by Linux / Apple fan-boys (girls) is that
Linux and Apple are having some kind of war with Microsoft. The fact is
that if you look at the market shares for Windows, Mac and Linux, both Mac
OS and all the Linux distros that have ever been released are blown away by
the figures of Windows. Nice slogan by the way "Facts and figures" :)

There is no war even if one of these party`s would feel ike it ,, it is more
like one ant going to battle against a elephant .

This besides the fact that i feel that MS is pretty good for us coders .

regards.

And lot of suc6 earning a living with your market potential

regards

Michel Posseth [MCP]
 
M

Mr. Arnold

RMZ said:
Because it's not ment to be trolling post.... It's ment to offer
perspective on why a Windows developer might want to consider using a
Mac OS.

If a developer has the need, then he or she will investigate it. I don't
need someone standing up on a soapbox trying to explaine things and preach.
If I could sum it up: At this point in it's evolution the using
Bootcamp on Leopard 10.5.x the Mac OS can run Windows XP as well any
Gateway, HP, Dell, etc... so why not go for it? While Apple seems to
be attacking Microsoft in their TV spots, if you spend just a moment
to think about it you realize those adds are really targeted at PC
hardware vendors and not Microsoft (since every Mac sold creates a
potential Windows customer). I believe Balmer has said in interviews
he views it this way..... Apple is running that ad campaign to try and
aggressively position themselves as a high end product above Windows
to the non-tech savy public. With a high price tag and excellent
customer satisfaction/support rating to back it they certainly can
claim that. But if you read my post I try to stay on focus with why
a .NET developer might consider a Mac. My assumption being .NET
developers might consider other platforms if the lure were strong.

When it hits in the corporate world like .Net with MS Windows and Web besed
solutions, then it might get some attention. Other than that, Apple is going
to keep the status quo in the markets both business and home user consumer
markets, as it has been doing for many years.
So why don't more Windows users see through the stupid marketing BS
and view the Mac as just a high-end option the next time they go to
buy a PC instead of the enemy? Why does that question have to start a
heated debate? If it doesn't start a heated debate then how am I
trolling?

No one considers Apple to be an enemy. That's your take on things, and its
no better than standing on the Linux soapbox. There is room for all
solutions and MS is not going anywhere in your lifetime. You'll be dust in
your grave if Apple ever out paces MS in the corporate and consumer markets.
The point is you don't have to take sides and it's valid to look at
the Intel based Mac's as PCs. I feel there are several benefits Mac OS
offers to a .NET developer and those were the things I was trying to
point out. It's foolish to view Mac OS

No one is taking sides on anything. MAC(s) are not putting one dime in my
pockets. I know which side the bread is buttered on, and it's MS butter at
this time, just like it was IBM mainframe butter when I was using that
technology many years ago, just like MS will continue to be for many years
to come. Mainframe technology has not gone anywhere and is still a viable
solution to this day. It's going to take more than Apple technology to knock
MS out of the box.
 
A

Andy B

This is a programming list. Not a list to talk about what box is the best to
run/develop .net applications on (unless I'm wrong of course). There might
be a list about .net in general with no particular programming aspect. In
general, I don't think that many programmers on this or any other
programming list really want to put up with this sort of stuff like "10
reasons to..." junk. Let's stay on topic of vb programming (for those people
who do like sending those "spam" mail). And just saying you are going to
back out of your own thread when the furnace gets turned up on your posts
sort of shows something ...eh hem...
 
R

RMZ

No one considers Apple to be an enemy. That's your take on things, and its
no better than standing on the Linux soapbox. There is room for all
solutions and MS is not going anywhere in your lifetime.

This point I have to respond to. My post may be a soap box talk, but I
see it as vastly different from a Linux programmer coming here trying
to "bring people over". You seemed to miss my point that an Intel
based Mac running Leopard is just premium personal computer capable of
running any number of secondary OS', not through emulation but through
traditional portioning. So when you buying a Mac you're really just
choosing a high-end vendor for your PC hardware.

This is a key distinction between Mac and Linux, because Apple is a
hardware vendor that provides an option for Windows users. Just like
as Dell, HP, Gateway, etc... provide options to Windows developers in
the market for a new PC. Many of my points where trying to highlight
the way Mac OS could provide ADDITIONAL variety and opportunity
to .NET developers and not serve as a replacement. In this regard I am
championing Mac as a hardware platform and not pushing the Mac OS as a
Windows replacement. They can co-exist and you can have the best of
both worlds, but you can only get that legally if you choose mac as
your PC hardware vendor. Answer for me how that relates to someone
coming here on a soapbox pushing Linux as a OS replacement?

If there were a single hardware vendor selling Linux based Intel PCs
and that hardware vendor provided a utility to make partioning a
transitioning between Windows and Linux easy, and provided: all the
bells and whistles, quality of software and lucrative development
opportunities that Apple is doing right now If that company existed
and my original post were promoting them then it would be a proper
analogy, but that company doesn't exist.

I have never said Apple's hardware or development tools were idea for
corporate software, however the reality is if a .NET developer were to
put Java skills under their belt they would open the door to many
corporate development opportunities.
 
R

RMZ

I have never said Apple's hardware or development tools were idea for
corporate software, however the reality is if a .NET developer were to
put Java skills under their belt they would open the door to many
corporate development opportunities.

[Sorry this posted before I was done. I'll continue...]

It's not that you can't write Java apps on Windows, but if you're
choosing to put Java skills under your belt, by developing and/or
testing in Java on Mac OS you're able to immediately run your code
cross platform in a Unix-like environment. I assume we're all
competent enough to see the advantages this could provide. Again, not
pushing Java as a replacement for .NET just something I strongly feel
is worth learning considering some of it's similarities to .NET and
the opportunities it can open up.
 
R

RMZ

-This is a programming list. Not a list to talk about what box is the
best to
-run/develop .net applications on (unless I'm wrong of course).

1. This newsgroup is unmoderated,
2. Microsoft does not post "forum rules of conduct, etc..."

So while you may appreciate keeping this to Q&A only type of
newsgroup, with no post aimed at providing a perspective piece, there
is no mandate that calls for that and I think many people enjoy these
sort of perspective pieces for the discussion they generate. The
target audience of the discussion is .NET programmers so what better
places to bring this up? I can respect that some people may have
strong views about what they envision the rules of conduct to be here,
but without an enforcement mechanism it's pure arrogance to try and
shove your concept of these rules down someone else throat.

I've also observed how often the term "troll" is (mis)used
conveniently when someone disagrees with the topic.
 
H

Herfried K. Wagner [MVP]

RMZ said:
Because it's not ment to be trolling post.... It's ment to offer
perspective on why a Windows developer might want to consider using a
Mac OS.

Well, a Windows developer uses Windows and develops applications for Windows
for several (personal and different) reasons (bigger, better market,
existing code bases, development tools, ...). Switching to another
technology is not a task which should be based on things like "programs
close faster". In addition, I cannot notice the problems with Windows you
describe on my Windows XP and Windows Vista machines -- and yes, I have used
OS-X.
 
M

Mr. Arnold

RMZ said:
This point I have to respond to. My post may be a soap box talk, but I
see it as vastly different from a Linux programmer coming here trying
to "bring people over". You seemed to miss my point that an Intel
based Mac running Leopard is just premium personal computer capable of
running any number of secondary OS', not through emulation but through
traditional portioning. So when you buying a Mac you're really just
choosing a high-end vendor for your PC hardware.

You miss the point. You are preaching. If I want to see a preacher, then
I'll go to church, watch them on TV or listen to them on the radio.

You want to preach then put up a blog. You don't do what you're doing. It's
tacky.
This is a key distinction between Mac and Linux, because Apple is a
hardware vendor that provides an option for Windows users. Just like
as Dell, HP, Gateway, etc... provide options to Windows developers in
the market for a new PC. Many of my points where trying to highlight
the way Mac OS could provide ADDITIONAL variety and opportunity
to .NET developers and not serve as a replacement. In this regard I am
championing Mac as a hardware platform and not pushing the Mac OS as a
Windows replacement. They can co-exist and you can have the best of
both worlds, but you can only get that legally if you choose mac as
your PC hardware vendor. Answer for me how that relates to someone
coming here on a soapbox pushing Linux as a OS replacement?

I say that this is soapbox preaching, regradless of your intent.
If there were a single hardware vendor selling Linux based Intel PCs
and that hardware vendor provided a utility to make partioning a
transitioning between Windows and Linux easy, and provided: all the
bells and whistles, quality of software and lucrative development
opportunities that Apple is doing right now If that company existed
and my original post were promoting them then it would be a proper
analogy, but that company doesn't exist.

This has nothing to with .Net development in the MS VB.Net forum.
I have never said Apple's hardware or development tools were idea for
corporate software, however the reality is if a .NET developer were to
put Java skills under their belt they would open the door to many
corporate development opportunities.

The same thing can be said about Linux. It's not happening with .Net
developers on the MS platform to all of a sudden wanting to start using
Linux nor is that going to happen with MAC's either in the corporate
environment, which would involve a Return on Investment to even bring in
another platform. If the corporate world was embracing Apple, you would see
it in market place figures. It's not happening.

Apple has its niche in the market place and that's where it's going to
remain. You want to talk this, that and the other then put up a blog man
put up a blog, because what you're doing here is tacky and you look foolish.
 
M

Mr. Arnold

RMZ said:
I have never said Apple's hardware or development tools were idea for
corporate software, however the reality is if a .NET developer were to
put Java skills under their belt they would open the door to many
corporate development opportunities.

[Sorry this posted before I was done. I'll continue...]

It's not that you can't write Java apps on Windows, but if you're
choosing to put Java skills under your belt, by developing and/or
testing in Java on Mac OS you're able to immediately run your code
cross platform in a Unix-like environment. I assume we're all
competent enough to see the advantages this could provide. Again, not
pushing Java as a replacement for .NET just something I strongly feel
is worth learning considering some of it's similarities to .NET and
the opportunities it can open up.

Java is not even a standard and .Net is and have many things to offer. I
have been in a few shops as a consultant where the decision was being made
to use .Net or Java, and each time they went to .Net route.

You need to stop preaching in the forums and put up a blog, because it's
tacky and you look foolish.
 
R

RMZ

You need to stop preaching in the forums and put up a blog, because it's
tacky and you look foolish.

There we go with that "you need to" do this or that as if this is your
newsgroup to mandate or as if your opinion reflects the majority of
readers. I don't write opinion/perspective pieces often enough to
justify a blog, in fact it takes a pretty extraordinary experience to
spark that side of me, at least when it comes to programming.

You have a right to post your opinion and I respect it, but I also
disagree you on what is proper for these forums. Should I get the
notion to post a "soapbox" piece again, your free to throw the
tomatoes, but you won't stop me :)

Having said that there are places in the world where the Internet is
regulated/censored, wouldn't that be a nice world if everything were
regulated and any kind of different ideas were suppressed by an all
controlling entity or regulatory body? I think not. You concept of
what is tacky or proper for this newsgroup is simply that, your
concept. Why software developers tend to be such an arrogant bunch I
still haven't figured out.
 
R

RMZ

Java is not even a standard and .Net is and have many things to offer. I
have been in a few shops as a consultant where the decision was being made
to use .Net or Java, and each time they went to .Net route.

You need to stop preaching in the forums and put up a blog, because it's
tacky and you look foolish.

Well now we've gone off-topic into the endless Java vs. NET debate. I
won't embrace a discussion on tha because while I am predominately
a .NET developer and have been for the past six years, I've also kept
a watchful eye on Java and I've seen firsthand the benefits Java can
offer to the Enterprise over .NET.

..NET works fantastic as long as all your servers are running
Microsoft, but integration with non-Microsoft technologies has become
the focus of so much of my work. Java's cross-platform nature can
simply handles a lot of these sort of problems better because of it's
platform independent nature. Yes .NET is an ECMA standard, but
practical advantage does that give it over Java which today literally
runs everywhere.

When I considered focusing on Java around the time of .NET 1.0 my
reasons for sticking with .NET were 1. Windows dominance 2. Java
runtime performance issues 3. Lack of enterprise grade RAD development
tools (they existed, but they were quite horrible compared to
VS.NET).

Today things have changed: 1. .NET's lack of cross-platform support
has become a handica as non Microsoft server platforms gain market
share and integration becomes the leading problem for workflow, 2.
Performance wise Java and .NET have become neck and neck 3. At this
stage, the best RAD development tools are open source and .NET's
marriage to Visual Studio.NET has also become a hindrance.

Combine the above with new Microsoft technologies such as Silverlight
and compaire that to what other vendors are doing (e.g. Flex 3.0) and
you begin to see this trend. (side note: Mark Anders who worked for
Microsoft and has been credited as the "father of ASP.NET" left
Microsoft to work with Adobe and is largely responsible for Flex 2.0
and 3.0, if you love ASP.NET you'll find it's been carefully designed
to cater to the structure you're custom to AND Flex is a fantastic
framework for building Rich Internet Applications that puts
Silverlight to shame, but I digress)

There's been a slow exodus at Microsoft over the past five years and
it's something too many corporate software developers ignore. It
effects us because some people are paying attention. Sticking with the
Flex example if you do a job search on Flex vs Silverlight you may be
suprised, Silverlight jobs are almost non-existent. .NET jobs may be
aroudn another 20 years or longer, there are positions for COBOL
programmers working on mainframes today, but the question is do you
want to be doing that type of work or do you want to stay with what's
current.
 
M

Mr. Arnold

<snipped>

It's boring man and if you continue to post like this, then I am going to
take into account that there may be something wrong with you.

You need to find something else to do, as none of it is flying in a MS .NET
NG.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top