Jack,

For my money Rails is somewhat more mature than lift, but lift is on a
trajectory to overtake Rails feature-wise and is certainly already there
performance-wise. The real issue, to me, is Scala vs Ruby. Quite apart from
being more slightly more performant and equally expressive, the real win of
Scala is its types allow you scale the code over time. What i mean by that
is that a type system like Scala's allows you to

   - navigate code
   - substitute and refactor code while preserving properties
   - design for abstraction

One of the biggest problems of Ruby code -- and seasoned Ruby devs will tell
you this -- is that in a code block of 10 lines -- that is part of say a
100K line project -- if i point to a line of code, you can't tell me what it
is doing. This is compounded by the fact that with monkey-patching, even if
you thought you knew, with the next check-in in some other part of the
codebase, you don't.

In the same situation in Scala any given expression has a type that the
compiler may infer. So, i don't need to know Joe Bloggs who wrote that
block. i reason about what it does through the types. This gives better
separation of *dev team*s -- not just code blocks. This is good if you want
to scale up your efforts organizationally -- either by spreading it out over
different groups working at approximately the same time, or by spreading
development out over time. i'm not saying this is a silver bullet. Software
is hard and there are always non-linear or cyclical dependencies, but types
really help with practical development. After a while, you get to the point
where you can design using types, and then cutting the code is like falling
off a log. At this point designing for highly leveraged abstractions that
significantly reduce the amount of code and increase the applicability of
code is within your grasp.

The guy who makes these points in a much less zealous and much more
reasoned, dispassionate way with lots of practical examples is Bill Venners.
His recent talk for JavaOne -- which is on video (i'll look for the link) --
is quite powerful in this regard. Heck, even Charles Nutter, in his own blog
acknowledges that Scala is the heir apparent of Java for the JVM.

Don't get me wrong -- i'm not a Scala biggot. There are a lot of corners of
this language i don't like. For my money, Haskell is a better language. But,
Haskell doesn't run on the JVM. You can't ship Haskell apps as jars or wars
and smoothly hook them into maven repos, and you can't very easily build
Haskell apps using standard JVM libs. So, that's why Scala, and that's why
lift.

Well... there's also the fact that the Scala and lift communities are
populated by very impressive people who are very open and incredibly
responsive.

Best wishes,

--greg

On Sun, Aug 23, 2009 at 7:45 AM, jack <jack.wid...@gmail.com> wrote:

>
> I am doing a startup company that involves both a lot of processing on
> the backend (in the code) and a decent amount of comet/ajax in the
> frontend.It is very important that the code quickly  on the server.  I
> have seen the light with respect to Scala and Lift looks terrific. My
> only concern is how new it is and the availability of resources
> (programmers, books etc).
>
> I really do want to use Lift instead of Rails. Could somebody please
> convince me? :)
>
> >
>


-- 
L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117

+1 206.650.3740

http://biosimilarity.blogspot.com

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to