5 ms·
Yay. Here we go again. > Development: Java will take 2-3 times more lines of code to implement the business features. That will be true most of the times. Als
by irahul 14y ago
Yay. Here we go again.
> Development: Java will take 2-3 times more lines of code to implement the business features.
That will be true most of the times. Also consider that a good part is Java boilerplate(getters-setters, anonymous classes where you should have lambdas, everything inside a class), and some of it is just bad programming.
Peter Norwig's spell corrector in Python:
http://norvig.com/spell-correct.html http://norvig.com/spell-correct.html
In Java:
http://raelcunha.com/spell-correct.php http://raelcunha.com/spell-correct.php
> Deployment: Slower Deployment Cycles.(hence slower iteration).
Errrmmm, how is that property of Java? Deploy it as often as you want. How is Java stopping you?
> Concurrency: Can Java Web Servers(e.g Tomcat Apache) handle high level of concurrency? Answer: Debatable
Answer - My memory might be playing tricks on me, but I remember a few years back tomcat was a reference implementation, and wasn't to be used for production deployments. Currently, the http://tomcat.apache.org/ http://tomcat.apache.org/ homepage claims Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations, so I might be wrong. But that's not important - what's important is you have jetty, netty and other options which are pretty fast in practice.
> Node.js,Twisted : Can Java Web Servers give me the same features of an evented/non-blocking I/O? Answer: Nope
Nio? Mina? Netty?
> Python is slow in execution.
Python is slow when it comes to raw CPU. If your app is CPU constrained, either write C extensions or divide work between computation units. Most of the apps are IO constrained, and you can use gevent or equivalent to make it faster.
- realrocker 14y ago"Node.js,Twisted : Can Java Web Servers give me the same features of an evented/non-blocking I/O? Answer: Nope" I eat my words. Fixed it on the post too.
- realrocker 14y ago>Python is Slower. Or use any of the JIT interpreters. Yes there is definitely scope for making it faster.
- realrocker 14y ago>Deployment I need to compile the whole thing if I have to make even a tiny change. Therefore, deployment becomes an event. Events tend to be planned and managed, hence slower.
- irahul 14y ago> I need to compile the whole thing if I have to make even a tiny change. How is "compile if I need to make a tiny change" affecting deployment? Use Play. Or use other hot code reload options for dev. As for deployment: > Therefore, deployment becomes an event. Events tend to be planned and managed, hence slower. Deployments are events, and they tend to be planned and managed. 1. Check all tests are green(deployment tool can auto-check it). 2. Tag source. 3. fab deploy(or whatever) 4. Do some user level smoke testing that everything worked. In case of Java, compiling a jar isn't that big an addition to the list. And seriously, it's not like you compile manually when you have to deploy. You set up `ant deploy` or equivalent which will run tests, jar it, tag it, push it, restart server if needed. Deployment isn't different from what you do in Ruby or Python.
- realrocker 14y agoI have never worked with Play before, but it seems like it would emulate Python/Ruby deployment cycle. Thanks.
- realrocker 14y agoThanks for taking the time to help me out :)