Steve Chaloner, a Brit living in Belgium, has been developing in Java since 1996, and has been an avid user of the Play framework since 2010. Steve has introduced Play into several companies for projects ranging from the fairly small to the extremely large. He is the author of several Play modules, including the Deadbolt authorization system. Steve is a DZone MVB and is not an employee of DZone and has posted 18 posts at DZone. You can read more from them at their website. View Full User Profile

The Play Framework is Now Officially an Embarrassment

05.10.2012
| 50119 views |
  • submit to reddit

If you’ve read any other entries on this blog, you’ll know that I’m an advocate of the Play! Framework.

As of today, this has changed.

My client is currently in the process of migrating their services to a federated collection of web services. Business metrics are required, and so we needed to look at a logging service. We discussed various options, and my proposal was accepted. We have a few well-defined fields, and service-specific data is logged as a JSON document. The discussion lasted about 25 minutes or so.

I went back to my desk, and wrote the code – a RESTful service, an asynchronous client using Akka, and a front-end in 15 minutes – using Play 2.

Let me spell that out, in case you missed the figures. Implementing the entire solution took 3/5s the length of time of the meeting.

Can you imagine doing that with another web framework, especially in the Java space? Play is, by definition at this point, an embarrassment – it can, should and will make other frameworks embarrassed of what they can offer.

I’m no longer an advocate of the Play! Framework. I’m an unequivocal advocate of it.

Edit: I’ve changed ashamed to embarrassed – ashamed was the wrong word to use, and gave negative connotations.

Published at DZone with permission of Steve Chaloner, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Cafebabe Ru(ssia) replied on Fri, 2012/05/11 - 4:23am

Too many emotions in couple with lack of information.

I dare to create RESTful service (with middleware part) in 10 minutes just using Glassfish Web Profile.

Jammer Man replied on Fri, 2012/05/11 - 7:21am

"Can you imagine doing that with another web framework, especially in the Java space?" 

 Yep - Glassfish / Java EE 6 Web profile using Spring.

Enjoy your toy, while the adults use real frameworks created with real programming languages to build real applications.

René Jahn replied on Fri, 2012/05/11 - 10:56am

Should be possible in 10 minutes with many other Java frameworks ;-)

c'mon, you did not say anything about the task.

Where is the useful information?

Otengi Miloskov replied on Fri, 2012/05/11 - 9:55pm

Yes I can beat your time using Spring and Apache Click or Spring MVC.  You are using the same old MVC shared nothing action frameworks as Struts, Struts 2, Spring MVC, Click, Stripes, Grails(It is java under).

I dont see nothing special about it. If I will use Play 2 I will use it with Scala, there shines with Scala syntax, but I find Play 2 ugly with Java as I said for Java I'd prefer Spring MVC or Stripes or Click. 

 

Liam Knox replied on Sat, 2012/05/12 - 1:37am

I dont know how these posts get on this

when was computer science ever measured on how 'quick' it is done?

 I can do an app in any language in any amount of time.

 If I dont specify the problem/soluction and more importantly the worth of this app it is all redundent.

 

Matthew Fudge replied on Sat, 2012/05/12 - 6:14am

Do not get me ranting about Spring. Struts is even worse. Play I've been looking at because Steve is such an advocate.

Matthew Fudge replied on Sat, 2012/05/12 - 6:18am

How quick it needs to be done depends on your boss. But no it should not be. Writing software fast normally means it is broken/buggy.

Piero Sartini replied on Sun, 2012/05/13 - 12:54pm

Play! 2 is incompatible with Play! 1. Maybe it was worth the pain, don't know. But it feels wrong, especially in the Java space. Tapestry learned its lessons the hard way. Play! will learn it too.

Play! 2 now is a Scala framework. It is just another Rails, Grails or Django. Each of them run on the JVM. And with each of them it is impossible to use a library written for the servlet specification. For some web-applications that is ok, but it depends on the project.

Jammer Man replied on Mon, 2012/05/14 - 6:56am in response to: Matthew Fudge

LOL ... love it when know-nothings write things like "do not get me ranting about Spring..." Please rant - I need a good laugh.

 

Steve Chaloner replied on Tue, 2012/05/15 - 6:56pm

@Cafebabe, Rene, Liam - I agree.  I wrote the blog post as a brain dump, and I thnk it's not really suitable as a front-page dzone article because there is no technical information.

 I'm writing a follow-up, as a result of your comments, where I have Play and JEE apps with identical functionality side-by-side for a comparison.

 - Steve 

Steve Chaloner replied on Tue, 2012/05/15 - 7:02pm

@Jammer Man - grow up.  

 A swift google of your user name (and apologies if this isn't you) found the comment "Stay away from PHP? What a completely idiotic assertion. Dude, you are without a shred of a clue." (source: http://diovo.com/2010/03/what-programming-language-should-i-learn/)

If you consider PHP to be an "adult" development framework, well, I guess this is the end of our conversation. 

 

Sebastián Open replied on Tue, 2012/05/15 - 7:56pm in response to: Steve Chaloner

That would be a really interesting article, go for it, Steve... I'm looking forward to it

Jammer Man replied on Wed, 2012/05/16 - 11:57am in response to: Steve Chaloner

Hey - you know how to use Google!  Good for you!

Did they not teach you in grade school about the fact that other people in the world probably have the same name as you do?   I've never programmed PHP in my career, so I guess that person is not me.

Felipe Coury replied on Sat, 2013/01/05 - 1:32am

You guys don't get it. It's not that other frameworks won't make you do the same task taking the same time, the question is: which other framework would make you feel like writing an article like this? I totally get the author, and I never used Play, but I felt this way with other tools before. In my point of view, that's what really matters here.

Jaime Hablutzel replied on Thu, 2013/02/21 - 12:44pm

I agree completely with Felipe Coury, I have used frameworks like Spring, GWT, straight Servlets and some time they made me hate them because of some sort of obscure configuration required, instead play 1.2.x is a pleasure and you really feel that. (haven't used play 2 yet)

Feras Salim replied on Mon, 2014/07/21 - 1:19pm

I dont understand the excitement over how easy is to build a REST service in Java nowadays. Its the same 15 minutes to build it in Spring or Ninja or anything really. Personally I never liked Play because you need to use Scala in certain cases and I try to avoid Scala. Also something I hated in Play which might have been fixed nowadays were the horrendous stack traces (Scala heritage i guess). I really prefer Spring over Play.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.