4 ms·
I'm curious as to specific code examples where the author is having problems. I'm thinking about using Play! or Lift for a pet web app using Scala. Does anyone
by oacgnol 15y ago
I'm curious as to specific code examples where the author is having problems. I'm thinking about using Play! or Lift for a pet web app using Scala. Does anyone have experience using either?
- djb_hackernews 15y agoI use Play! for my hobby projects and Lift for work. Coming from MVC lift is very bizarre. Having html and javascript inside my scala classes gives me a queasy feeling. I also think Lift is dead. The creator of the project left, the documentation isn't great, View first model isn't popular, very little activity in #lift, very little activity in the lift framework google group. Not good signs.
- SkyMarshal 15y ago> Having html and javascript inside my scala classes gives me a queasy feeling. Yeah that's an interesting tradeoff. I like it because it helps keep code completely out of the html templates, which is a design goal of lift. I tend to work with designers who do HTML/CSS only, not javascript, and I do the backend Scala and frontend Javascript, so that separation of roles works. But if your dev team (as most big ones do) consists of frontend HMTL/CSS designers, frontend Javascript UX devs, and backend devs, then that architecture may not be optimal. > I also think Lift is dead. Far from it. > The creator of the project left Not exactly: 1. He's still a core committer, 2. Advised the founders of Lift Co. [1] - commercial support/SLA for lift projects, 3. Is active on the Lift group [2] (the activity takes place there and at Assembla [3], not Twitter) 4. Continues to present about [4], blog about [5][6], and advocate Lift [7]. 5. Even holds personal office hours every week in San Francisco to support Lift devs, for free. He's just not doing direct commercial consulting on Lift anymore, others have grabbed that torch and are running with it, primarily in SF, London, and India. > the documentation isn't great, True, but improving. The new book from Manning, Lift In Action [8] is excellent. You can buy it from Manning, or obtain it by other means. There are completely free options as well [9]. > View first model isn't popular Popular is not necessarily better [10], unfortunately. However, if you grok view first and still believe MVC is better, Lift also includes an MVC version [11] for you. > very little activity in #lift, The meat of the discussion is on the google group [2], not Twitter. (And it's #liftweb anyway, but admittedly not much difference there either). > very little activity in the lift framework google group. Maybe you're comparing to a mega project like Rails, or maybe you accidentally mistook the stickies at the top for the actual group activity, but there's more than 'very little activity' in the group. Granted, Lift isn't without issues. Getting started via Maven is painful (Pro-tip: use SBT + Lifty [12]). It has a non-trivial learning curve (I actually had to learn Haskell in order to grok Scala in order to use Lift - all worth it - though people coming from the ML family may have an easier ramp-up); has to deal with Scala's versioning and dependency issues (which David Pollack ticked off the Scala community by vocally complaining about, and which SBT does a decent job of mitigating), and does most things differently than the norm. However, it's a superb piece of technology more than worth the effort to learn. It's more inherently secure than any other framework out there, enables a simple architecture (3-tier only, web/app/db, no caching layers), is relatively easily scalable (just add more instances to whichever layer you need to scale), does Ajax and Comet better than anything else, is very productive once you know it (minimal code, no testing necessary for classes of errors the type system or compiler catch), and lots of other excellent stuff [13]. It's evolving, maybe not at the pace of Rails, but it's starting with a far stronger technical architecture, runtime, and Java ecosystem interopability. ----------------------- 1. http://liftweb.com/ http://liftweb.com/ 2. http://groups.google.com/forum/?fromgroups#!forum/liftweb http://groups.google.com/forum/?fromgroups#!forum/liftweb 3. http://assembla.com/wiki/show/liftweb/ http://assembla.com/wiki/show/liftweb/ 4. http://www.infoq.com/presentations/Exploring-Composition-and-Functional-Systems-in-the-Cloud http://www.infoq.com/presentations/Exploring-Composition-and... 5. http://lift.la/ http://lift.la/ 6. http://goodstuff.im/ http://goodstuff.im/ 7. http://visi.io/ http://visi.io/ (see comments on Lift) 8. http://manning.com/perrett/ http://manning.com/perrett/ 9. http://www.assembla.com/spaces/liftweb/wiki/Resources http://www.assembla.com/spaces/liftweb/wiki/Resources; http://richard.dallaway.com/lift-cookbook-an-introduction http://richard.dallaway.com/lift-cookbook-an-introduction 10. https://www.assembla.com/wiki/show/liftweb/View_First https://www.assembla.com/wiki/show/liftweb/View_First 11. http://www.assembla.com/spaces/liftweb/wiki/MVC_(if_you_really_want_it) http://www.assembla.com/spaces/liftweb/wiki/MVC_(if_you_real... 12. https://github.com/harrah/xsbt https://github.com/harrah/xsbt; https://github.com/Lifty/lifty https://github.com/Lifty/lifty 13. http://seventhings.liftweb.net/ http://seventhings.liftweb.net/
- notJim 15y agoPresumably #lift referred to an IRC channel, not Twitter. [I have no dog in this fight, just something I noticed.]
- leftnode 15y agoAnd, Play! just joined Typesafe, the company behind Scala. I definitely think Play! is here to stay.
- Egregore 15y agoAre you saying that creator of Lift David Pollak left? Can you provide some links?
- chillax 15y agoHe stepped down as dictator at least. See "Committer team maturing" here: http://goodstuff.im/happy-5th-birthday-lift http://goodstuff.im/happy-5th-birthday-lift
- SkyMarshal 15y agoWhich, fwiw, is a good sign, that the project is self-sustaining enough that the founder can hand off his baby to the community around it.
- eta_carinae 15y agoHe didn't just leave Lift, he left Scala altogether. He's now working in Haskell. Check his latest blog posts for the details (and the scala-tools.org controversy).
- benmccann 15y agoI've been using Play 2 recently. I would definitely recommend it over Play 1 for new apps. I've had a very good experience with it. It's pretty easy to get started if you want to try it out and the community on the Google Groups mailing list is very helpful if you run into difficulty. Let me know if you have any more specific questions.
- eropple 15y agoI would not use Play 1.x for Scala applications; its non-blocking support is complete crap (and I was pretty displeased to hear, when I asked in their IRC channel, that it would never be in 1.x, oh and by the way to use 2.x you'll need to rewrite your app). I can't speak to 2.x.
- benmccann 15y agoYou don't need to totally rewrite your app, but it's not backwards compatible either. The biggest change is that they've switched the default views to be written in Scala instead of Groovy. But if you'd still like to write the views in Groovy or are porting an app from 1.x, there are a couple of guys in the community who have written plugins to support writing your views in Groovy.
- eropple 15y agoI had to write enough custom logic to get around the stupid non-blocking brokenness in Play! Scala 1.x that it would be largely non-compatible anyway.
- SkyMarshal 15y agoAsk about Lift on the google group. They're honest about advising whether Lift is a good fit for a particular project or not. They want success stories, and tend to advise against Lift for any project that could have serious issues ramping up on Lift: http://groups.google.com/forum/?fromgroups#!forum/liftweb http://groups.google.com/forum/?fromgroups#!forum/liftweb