views:

108

answers:

6

I'm a .NET web developer, who's bought a Mac, and is interested in doing web development natively on the Mac.

I've never developed outside of the Microsoft sandbox, and I'm looking for something new, but still in web development.

I've looked into Mono, but it looks like trying to fit a square peg into a round hole, am I wrong? Like for example, I can't do breakpoints on my web apps?

Here are my criteria:

  • say what you will about Microsoft, but I'm simply not interested in command-line setups, or weird configuration stuff, I just want it to work
  • I'll need a powerful IDE, as good as Visual Studio 2008. I'm particularly fond of IntelliSense, auto-correction, auto-completion, and how it all hangs togethere, and the debugging features
  • I know this isn't "cool", but I love strongly typed languages. I find the dynamic aspect of the next generation .NET languages really cool, but I like how it sits within a static world. I know I know, dynamic is cool, but I like strong typing OK, it brings peace to my mind.
  • I can definitely do without all the .NET controls, and page life cycle, I'm happy to do the front-end myself, I just want the back-end part to be as friendly, and high level as ASP.NET.
  • Oh, and I love all the reflection, generics, and functional stuff, especially LINQ, in C# and VB.NET.

Any ideas?

UPDATE

I appreciate any help. But just to make it clear, I'm not interested in VM solutions. To do .NET I'll just Boot Camp into Windows. I'm looking to develop natively on Mac OS X. If I'm wrong about Mono, that would be the best thing.

Otherwise something new might be fun.

UPDATE

I decided to have a look at Scala, and for fun, although it isn't web dev, AIR apps too. I tried Mono, but the IDE is still in Beta, and there's no way to use breakpoints in debugging, which is an unnecessary pain.

I am going to look at Scala, and maybe some Java frameworks too.

+1  A: 

Why not just use VMWare or parallels.

I run Visual Studio in VMWare (on windows 2008 server) runs well

Shaun Hare
sorry, I'm looking for something new, and I want to run it natively
andy
+1  A: 

I'd look to run Visual Studio under a VM on OSX if I were you. If you're not doing fancy WPF stuff, then your development/deployment experience will be the same.

Pete OHanlon
+1  A: 

I read some interesting articles about Scala - But I haven't tried it myself yet.
It uses static typing and also has functional features.
There is a TextMate bundle for it and also Netbeans seems to offer good Scala support.

weichsel
had a look, Scala looks pretty interesting
andy
+4  A: 

I would definitely take a look at Mono on OSX. There's tons of tools and you don't have to be a command line guy to use it.

  • For an IDE take a look at MonoDevelop which can now do iPhone development
  • MonoDevelop is built on top of Gtk# which is a great GUI toolkit
  • Another GUI would be to WinForms, but I've never been a big fan

As for web development you can still use MonoDevelop with any of the normal toolkits:

For the server you can use Apache, lighttpd, etc - pick your poison!

Perhaps I'm biased as I've been using Mono since before the 0.3 days, but I'm and fan and it's definitely not like "fitting a square peg into a round hole". It has it's own libraries and ways of doing things and support for almost all of the .NET stack.

mimetnet
cool, downloading it now to try it. can you just "run" your web app from the IDE, and then step by step using breakpoints? also, is there LINQ to SQL equivilante? how does that work, in terms of the IDE?
andy
I don't think MonoDevelop is a viable option on the Mac yet. see here: http://stackoverflow.com/questions/1559852/hitting-breakpoints-in-monodevelop-2-2-beta-1-on-osx
andy
A: 

If you're not interested in command line setups or weird config stuff then web development is probably not the right career for you. Stick to .NET if you're averse to learning.

Azeem.Butt
that's pretty small minded. I prefer to focus on the application, rather than half thought out setup procedures. Computers should make life easier, not harder.
andy
also, totally useless answer
andy
Not half as useless as web developers who don't know how to develop anything.
Azeem.Butt
@NSD...first, your comment doesn't even make any sense. secondly, have a nice life.
andy
+1  A: 

Given the constraints, I think you would be happiest with Java. It is statically typed, has good IDEs (IntelliJ, Eclipse, NetBeans) and is used a lot for web.

Nemanja Trifunovic