Live data from Hacker News

Java-based Startups, do they exist?

news.ycombinator.com

31–39 of 39 posts

Re: Java-based Startups, do they exist?

#31

It's important to differentiate "Java" from the "JVM". Java is a programming language that gets compiled to bytecodes, and the JVM is an execution environment that runs bytecodes. (There is some java-language-ish stuff in the bytecode spec, but for the most part you can treat them separately). In my opinion, Java is a clumsy language but the JVM is awesome. Static typing and lack of first-class functions or easy data…

IMHO, the language is the stronger point in all of these. I don't care if the JVM is well specified, this brings me nothing to my daily productivity.

What is the advantage of using Rhino on JVM against using native Ruby or Python? In Java, at least I know I will be very confortable doing automatic refactorings with Eclipse, which is the biggest advantage of Java against these other languages. Having coded a tool in Ruby with some good testing coverage, I still don't feel as safe to refactor as I was using Java.

Re: Java-based Startups, do they exist?

#32

It's important to differentiate "Java" from the "JVM". Java is a programming language that gets compiled to bytecodes, and the JVM is an execution environment that runs bytecodes. (There is some java-language-ish stuff in the bytecode spec, but for the most part you can treat them separately). In my opinion, Java is a clumsy language but the JVM is awesome. Static typing and lack of first-class functions or easy data…

IMHO, the language is the stronger point in all of these. I don't care if the JVM is well specified, this brings me nothing to my daily productivity. What is the advantage of using Rhino on JVM against using native Ruby or Python? In Java, at least I know I will be very confortable doing automatic refactorings with Eclipse, which is the biggest advantage of Java against these other languages. Having coded a tool in R…

The JVM being well-specified is what allows other languages (like JavaScript) to be compiled to run on it. It also makes it easier to extend.

Rhino on JVM has the advantages of having access to any java library you want (sun distributes many standard ones, and there are tons of other open-source ones on the internet). Another advantage is that the JVM does hotspot optimization which leads to speed improvements. Most other interpreted languages, such as Ruby or Python, are not as far along with their runtimes.

As for Java vs. scripting languages, that's a matter of taste. In my experience the way to minimize bugs is to write less code, and I explained above why Java programs tend to be verbose, so I believe the benefits of terseness in scripting languages outweigh the benefits of static typing in Java.

Re: Java-based Startups, do they exist?

#33
post #24

We may use java for a tiny fraction of our startup (back end of the live game server) for the performance benefits. Does that count?

If you're into Scheme, you can use Bigloo Scheme to generate reasonably fast C code, or even JVM bytecode.

What's Scheme?

Just kidding.

Not really.

Re: Java-based Startups, do they exist?

#34

I know java since ever and when I think code, I think java. Thats why I use it. For me it is the most productive environment. Why do you ask at all? If you know java, use it. If you know c (well, not c) - if you know python, use it. If you have to learn something, because you don't know any language, get a job first and think about a startup after you dream in (put here any language). Any scripting language basing on…

Those other languages that run on the JVM are not based on Java. They do not add another layer. They run on the same layer as Java.

They may be slower than Java nonetheless - because the JVM is designed for running Java.

Re: Java-based Startups, do they exist?

#36

I know java since ever and when I think code, I think java. Thats why I use it. For me it is the most productive environment. Why do you ask at all? If you know java, use it. If you know c (well, not c) - if you know python, use it. If you have to learn something, because you don't know any language, get a job first and think about a startup after you dream in (put here any language). Any scripting language basing on…

Those other languages that run on the JVM are not based on Java. They do not add another layer. They run on the same layer as Java. They may be slower than Java nonetheless - because the JVM is designed for running Java.

Scala usually results in much faster code then Java. Of course it isn't a "script" language in the usual sense, but are much more modern static and strong typed language (with functional leanings).

Re: Java-based Startups, do they exist?

#37

I know java since ever and when I think code, I think java. Thats why I use it. For me it is the most productive environment. Why do you ask at all? If you know java, use it. If you know c (well, not c) - if you know python, use it. If you have to learn something, because you don't know any language, get a job first and think about a startup after you dream in (put here any language). Any scripting language basing on…

Those other languages that run on the JVM are not based on Java. They do not add another layer. They run on the same layer as Java. They may be slower than Java nonetheless - because the JVM is designed for running Java.

With scripting language I had something like jython in mind. It is indeed another code-layer ontop of java to interpret the scripts. And, not unlike python, its dead slow in some cases.

Someone reported about a factor of 100 for java against Ruby. jython is only 50. But this is still so bad that I would not waste my time.

Re: Java-based Startups, do they exist?

#38

Earlier quoted context omitted.

Those other languages that run on the JVM are not based on Java. They do not add another layer. They run on the same layer as Java. They may be slower than Java nonetheless - because the JVM is designed for running Java.

With scripting language I had something like jython in mind. It is indeed another code-layer ontop of java to interpret the scripts. And, not unlike python, its dead slow in some cases. Someone reported about a factor of 100 for java against Ruby. jython is only 50. But this is still so bad that I would not waste my time.

You may be worrying too much about speed. Remember, a lot of people have written scalable web sites using PHP, so clearly a slow front-end language is not a big liability.

BRL uses Kawa Scheme, so the code is compiled to JVM bytecodes. The result is slower than C implementations of Scheme, but still faster than PHP.

Re: Java-based Startups, do they exist?

#39
post #38

Earlier quoted context omitted.

With scripting language I had something like jython in mind. It is indeed another code-layer ontop of java to interpret the scripts. And, not unlike python, its dead slow in some cases. Someone reported about a factor of 100 for java against Ruby. jython is only 50. But this is still so bad that I would not waste my time.

You may be worrying too much about speed. Remember, a lot of people have written scalable web sites using PHP, so clearly a slow front-end language is not a big liability. BRL uses Kawa Scheme, so the code is compiled to JVM bytecodes. The result is slower than C implementations of Scheme, but still faster than PHP.

I don't worry about speed, except we are talking about a factor 50 or even 100. But one thing must be clear: The quick development that is possible with very high level languages is an advantage for the developers. They have quick time to market, fast prototyping etc. The one who pays is their client! This is indeed the wrong point of view!

I think it is desirable to give clients the best possible user experience and execution speed is indeed a valuable point, especially in the web.

A friend of mine still codes assembly if he feels its necessary. I 'am not that fanatic (in facts he is always making fun of java) - but, once you have used his number crunching algos, you'll never go back.

Post reply on HN