[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Rails vs. Asp.Net politics

Leslie Viljoen

11/10/2006 11:50:00 AM

I have the deciding vote in a new (rather large) web app we need to
develop. I am experienced in Rails, but the other 2 guys on the team
know only C# and very basic Ruby. About 25% of the app could benefit
from existing classes written in C#.

So I could force everyone to learn ROR, which they may or may not
thank me for, or I could learn ASP.NET. I know C# well but have never
used ASP.NET.

I doubt execution speed would be a factor, since the bottleneck will
be in the database and there would be very few concurrent users. We'd
make a lot of use of Ajax.

So is there any advice? Anything I should take into account? Has
anyone done large projects in both environments?

Les

--
Man's unfailing capacity to believe what he prefers to be true rather
than what the evidence shows to be likely and possible has always
astounded me. We long for a caring Universe which will save us from
our childish mistakes, and in the face of mountains of evidence to the
contrary we will pin all our hopes on the slimmest of doubts. God has
not been proven not to exist, therefore he must exist.

- Prokhor Zakharov

22 Answers

Peter Hickman

11/10/2006 11:57:00 AM

0

Leslie Viljoen wrote:
> I have the deciding vote in a new (rather large) web app we need to
> develop. I am experienced in Rails, but the other 2 guys on the team
> know only C# and very basic Ruby. About 25% of the app could benefit
> from existing classes written in C#.

Well you could sell it as a good CV move for them. In the end they will
know C# and Ruby and Rails. Got to be a good thing if they ever want to
move.

If you already have C# I'm not too sure of the value of adding ASP.NET
to your CV.

Leslie Viljoen

11/10/2006 12:24:00 PM

0

On 11/10/06, Peter Hickman <peter@semantico.com> wrote:
> Leslie Viljoen wrote:
> > I have the deciding vote in a new (rather large) web app we need to
> > develop. I am experienced in Rails, but the other 2 guys on the team
> > know only C# and very basic Ruby. About 25% of the app could benefit
> > from existing classes written in C#.
>
> Well you could sell it as a good CV move for them. In the end they will
> know C# and Ruby and Rails. Got to be a good thing if they ever want to
> move.
>
> If you already have C# I'm not too sure of the value of adding ASP.NET
> to your CV.

I think so, although in the backwater of South Africa, very few people
have ever heard of Ruby or Rails! I have yet to see a single book here
on either subject.


--
Man's unfailing capacity to believe what he prefers to be true rather
than what the evidence shows to be likely and possible has always
astounded me. We long for a caring Universe which will save us from
our childish mistakes, and in the face of mountains of evidence to the
contrary we will pin all our hopes on the slimmest of doubts. God has
not been proven not to exist, therefore he must exist.

- Prokhor Zakharov

Luke Melia

11/10/2006 1:40:00 PM

0

How about picking a small slice of the app and doing two week-long
spikes, one with each technology? That should be enough to let you
have a more informed group discussion than you can now. Hopefully,
consensus will emerge. If not, you can make your decision but your
team will at least feel their ideas were given a shot.

Luke

On Nov 10, 2006, at 6:50 AM, Leslie Viljoen wrote:

> I have the deciding vote in a new (rather large) web app we need to
> develop. I am experienced in Rails, but the other 2 guys on the team
> know only C# and very basic Ruby. About 25% of the app could benefit
> from existing classes written in C#.
>
> So I could force everyone to learn ROR, which they may or may not
> thank me for, or I could learn ASP.NET. I know C# well but have never
> used ASP.NET.
>
> I doubt execution speed would be a factor, since the bottleneck will
> be in the database and there would be very few concurrent users. We'd
> make a lot of use of Ajax.
>
> So is there any advice? Anything I should take into account? Has
> anyone done large projects in both environments?
>
> Les
>
> --
> Man's unfailing capacity to believe what he prefers to be true rather
> than what the evidence shows to be likely and possible has always
> astounded me. We long for a caring Universe which will save us from
> our childish mistakes, and in the face of mountains of evidence to the
> contrary we will pin all our hopes on the slimmest of doubts. God has
> not been proven not to exist, therefore he must exist.
>
> - Prokhor Zakharov
>


Leslie Viljoen

11/10/2006 2:31:00 PM

0

On 11/10/06, Luke Melia <lkmlists@lukemelia.com> wrote:
> How about picking a small slice of the app and doing two week-long
> spikes, one with each technology? That should be enough to let you
> have a more informed group discussion than you can now. Hopefully,
> consensus will emerge. If not, you can make your decision but your
> team will at least feel their ideas were given a shot.

Great idea!

Leslie Viljoen

11/10/2006 3:21:00 PM

0

On 11/10/06, Tanner Burson <tanner.burson@gmail.com> wrote:
> On 11/10/06, Leslie Viljoen <leslieviljoen@gmail.com> wrote:
> >
> > On 11/10/06, Luke Melia <lkmlists@lukemelia.com> wrote:
> > > How about picking a small slice of the app and doing two week-long
> > > spikes, one with each technology? That should be enough to let you
> > > have a more informed group discussion than you can now. Hopefully,
> > > consensus will emerge. If not, you can make your decision but your
> > > team will at least feel their ideas were given a shot.
> >
> > Great idea!
>
>
> Also, if you do end up looking back at C#, take a look at Monorail[0]. It's
> an excellent framework to replace ASP.NET's page flow, with a more true MVC
> architecture. It borrows a lot from Rails, but not to the point of porting
> features that just won't work. Definitely something to check out!
>
> [0]http://www.castleproject.or...


Ah thanks, I am already using Castle ActiveRecord.
We do what little we can.


--
Man's unfailing capacity to believe what he prefers to be true rather
than what the evidence shows to be likely and possible has always
astounded me. We long for a caring Universe which will save us from
our childish mistakes, and in the face of mountains of evidence to the
contrary we will pin all our hopes on the slimmest of doubts. God has
not been proven not to exist, therefore he must exist.

- Prokhor Zakharov

Matt Lawrence

11/10/2006 3:22:00 PM

0

Gregory Seidman

11/10/2006 3:24:00 PM

0

On Fri, Nov 10, 2006 at 08:50:12PM +0900, Leslie Viljoen wrote:
} I have the deciding vote in a new (rather large) web app we need to
} develop. I am experienced in Rails, but the other 2 guys on the team
} know only C# and very basic Ruby. About 25% of the app could benefit
} from existing classes written in C#.
}
} So I could force everyone to learn ROR, which they may or may not
} thank me for, or I could learn ASP.NET. I know C# well but have never
} used ASP.NET.
}
} I doubt execution speed would be a factor, since the bottleneck will
} be in the database and there would be very few concurrent users. We'd
} make a lot of use of Ajax.
}
} So is there any advice? Anything I should take into account? Has
} anyone done large projects in both environments?

I have worked on large projects in both. As a language, I enjoy Ruby more
than C# by a significant but not huge margin. As a framework, I enjoy Rails
more than ASP.NET by a large margin. C# and ASP.NET make it slightly easier
to have many engineers working concurrently, but not by a whole lot. Where
it really gets interesting is in deployment. I am going to paint this in
rough brushstrokes, and make some generalizations, but I hope the
high-level view will be of use in making your decision. I'm also going to
use numbers without units, which are really only useful for relative
comparisons since they mostly represent a vague performance metric having
something to do with incoming requests based on my experience.

A single box running IIS/ASP.NET can probably manage at least 20-30. More
than that and you need more boxes and a load balancer, plus you need to
make sure that all of your shared state is in the DB (or another explicitly
shared resource) rather than ASP.NET's various implicitly shared resources
(e.g. class variables). You also have to figure out how to make sessions an
explicitly shared resource (it might be easy, but it's been a while and I
don't remember). It scales roughly linearly that way for a while, probably
to 500 or so, then gets much as when the shared resources become a
bottleneck.

A single box running a single Rails process (whether lighttpd or mongrel)
can manage maybe 5-15, depending on the demands of serving particular
requests. Beyond that you need at least multiple Rails processes and a load
balancer, with session data stored somewhere other than in-process memory
(memcached is a good choice). A decently powerful box with plenty of memory
should be able to manage enough Rails processes to support maybe 40-60.
After that, it scales roughly linearly as you add boxes and processors, up
to maybe 1000-1200. From there it gets significantly messier because you
need to deal with multiple levels of caching granularity, plus the same
concerns about shared resources as ASP.NET.

It sounds like your intended application will work well under either, given
your small team and expected deployment size. The main
tradeoffs I see for your app are the existing code and that while Atlas
makes AJAX stuff easier with ASP.NET if you have anything trickier than
what Atlas supports you will find it more difficult to deal with in ASP.NET
that you would in Ruby.

} Les
--Greg


Richard Conroy

11/10/2006 5:50:00 PM

0

On 11/10/06, Leslie Viljoen <leslieviljoen@gmail.com> wrote:
> So I could force everyone to learn ROR, which they may or may not
> thank me for, or I could learn ASP.NET. I know C# well but have never
> used ASP.NET.

> So is there any advice? Anything I should take into account? Has
> anyone done large projects in both environments?

I am scratching my head here, but isn't there some project out there
where guys are basically trying to make some version of Ruby.NET?

Basically some way of integrating Ruby (and therefore Rails) into
the .NET world. I am more familiar with JRuby which is an equivalent
project.

Patrick Lynch

11/10/2006 5:59:00 PM

0

Good afternoon,

I worked with both ASP.NET 1.1, VB.Net and C# along with SQL Server 2000
for about a year -- doing some logical modelling, testing and
development.

I have been working, currently, with Ruby, MySQL and TK -- doing a
statistical application. I'll work this app initially with Ruby (to get
the graphics and math down pat) and then convert it to RoR.

I found that ASP.Net to be a steep learning curve. In addition, it is
expensive, since you probably will want to use Visual Studio. The nice
thing about Visual Studio is that it links everything together -- the
database, the web and the languages C# and VB.Net...

Personally, since I am not developing large applications initially (but
if successful they could turn into a moderately sized commercial
package) I prefer Ruby.

The reason why I switched to Ruby (and RoR) is when I tried to upgrade
from ASP.Net 1.1 to ASP.Net 2.0 -- I was trying to use the 'trial'
software provided by Microsoft but I failed in my attempt to install SQL
Server 2005 -- currently, on my desktop, I will be unable to install any
version of SQL Server...after a few weeks of trying I finally gave up...

I will be purchasing an Apple desktop in the 1Q07 and will be doing all
my development on it, using Ruby, MySQL, RoR, Tk and possibly BLT or
some other graphics package...It's just more fun...

If you go with ASP.Net, let me know and I can give you some really good
references...

Good luck (to both of us)...
pat



--
Posted via http://www.ruby-....

Scott

11/10/2006 6:07:00 PM

0

If you'll still be developing and deploying on a Windows box, you can
use RubyCLR to leverage your existing C# classes.

What is the timeframe for the project? I think you'd be much better
off spending the beginning of the project getting everyone up to speed
on RoR than doing concurrent development, since one team will have
wasted 2 weeks of work when the decision is made. Is
internationalization support required?

Leslie Viljoen wrote:
> I have the deciding vote in a new (rather large) web app we need to
> develop. I am experienced in Rails, but the other 2 guys on the team
> know only C# and very basic Ruby. About 25% of the app could benefit
> from existing classes written in C#.
>
> So I could force everyone to learn ROR, which they may or may not
> thank me for, or I could learn ASP.NET. I know C# well but have never
> used ASP.NET.
>
> I doubt execution speed would be a factor, since the bottleneck will
> be in the database and there would be very few concurrent users. We'd
> make a lot of use of Ajax.
>
> So is there any advice? Anything I should take into account? Has
> anyone done large projects in both environments?
>
> Les
>
> --
> Man's unfailing capacity to believe what he prefers to be true rather
> than what the evidence shows to be likely and possible has always
> astounded me. We long for a caring Universe which will save us from
> our childish mistakes, and in the face of mountains of evidence to the
> contrary we will pin all our hopes on the slimmest of doubts. God has
> not been proven not to exist, therefore he must exist.
>
> - Prokhor Zakharov