Live data from Hacker News

Is java dead for startups?

news.ycombinator.com

11–20 of 101 posts

Re: Is java dead for startups?

#11

Born again Java fan here. I took a diversion into languages like Python (which I still heavily use), but now I wish I had just used Java in the first place. Once you turn a program from a 2 hour long run-time down to < 10 minutes (my Lucene vs PyLucene experience), you don't really see the benefit of using Python anymore. Plus I've realized that I prefer static typing.

I usually throw the search engine up as a rest service, and keep the web app in ruby on rails. Best of both worlds.

Re: Is java dead for startups?

#12
post #7

If you're a web shop, IMO, none of the Java web frameworks are ideal for the fast prototyping that most startups need to do on a regular basis. I've hated every Java web framework I've ever worked with and I've used most of the popular ones. Always felt like I was fighting the framework for one reason or another; too verbose, not expressive enough or too tightly structured. There are some decent platforms for the JVM…

The play framework sounds like something you'd be interested in. It abandons the Java conventions for a more rails like experience. http://www.playframework.org/

Re: Is java dead for startups?

#13

Java the language is stagnating, but the JVM ecosystem is stronger than ever. Attract some smart folk with Scala or Clojure, chances are good that they know Java as well.

If you lure people in with Scala or Clojure, then mostly make them program in Java, there's a decent chance they'll feel betrayed and leave sooner. At least, that's been my experience in places that lure with something glamorous and then do only a very small amount of it.

Right, the idea is to transition newer JVM languages in. A lot of legacy code would be in Java, so the Scala or Clojure interop would let them build on top of all that. Maybe start with a more or less self-contained component, like a web services API or something could demonstrate the advantages of developing with newer languages.

Re: Is java dead for startups?

#14
post #7

If you're a web shop, IMO, none of the Java web frameworks are ideal for the fast prototyping that most startups need to do on a regular basis. I've hated every Java web framework I've ever worked with and I've used most of the popular ones. Always felt like I was fighting the framework for one reason or another; too verbose, not expressive enough or too tightly structured. There are some decent platforms for the JVM…

I think Anatari is right on the money. It seems like a lot of startups are web shops, which means Java may not be the best fit. But on the back-end, it's great. I would imagine that a lot of back-ends are initially written in some other language and then rewritten in Java (or another JVM language) when performance really counts.

Re: Is java dead for startups?

#15

Born again Java fan here. I took a diversion into languages like Python (which I still heavily use), but now I wish I had just used Java in the first place. Once you turn a program from a 2 hour long run-time down to < 10 minutes (my Lucene vs PyLucene experience), you don't really see the benefit of using Python anymore. Plus I've realized that I prefer static typing.

The benefits of dynamic languages are not their speed, its the rapid prototyping and interactivity they provide once the prototype has been designed it can be implemented for speed in any lanuage providing the features you need.

Re: Is java dead for startups?

#16
It's funny, one initial selling point for Java was as a rapid prototyping language. Because back then it was, relatively speaking.

I think in the big picture of a increasing speed supply (courtesy Mr Moore, for cheap cycle farms and cache; but also JIT compilation techniques), and comparatively fixed user speed demand (a gui only needs to be fast enough; network latency swamps many other delays), Java is now much faster than it needs to be (faster meaning performance, not development time).

Back then, you had compiled languages (C, C++) that were fast, and scripting languages, like python, that were not. Python was touted as a glue language. Anyway, Java was mid-way in terms of speed (being partly compiled and partly interpreted), and mid-way in terms of dynamic benefits (eg. garbage collected and runtime array bounds checked - but requiring static typing). That combination of ease of use and performance was a good fit for some tasks, at that time. As the speed supply moved up, Java became usable for more tasks. But as speed kept increasing, Python and Ruby and even PHP also became fast enough - and they had the ease of use of being fully dynamic.

To give a direct answer your question: agile/iterative prototyping is how startups compete these days (not on performance), and ruby, php etc are better than Java on this particular attribute. Another aspect is that many cool new things are happening in languages other than Java - they have more interesting tools (eg. Sinatra), and more interesting energy in the community, because they attract those crazy, eager, young, passionate, enthusiastic early adopters.

Exceptions: where more performance is required (eg. Google uses a lot of Java; and it's the basis of the Android platform and others); and for the Enterprise; and also where type-safety (for reliability) is more important than agility (though ML-based languages have some of this market).

Note: a startup can tackle any problem, not just consumer-facing webapps. I think webapps get disproportionate publicity (because they're on the web); and web forums (like this one) favour them.

btw: I remember Java's younger years, I'm still a fan, and I'm using it in my product development. Java... some one still loves you.

Re: Is java dead for startups?

#17
post #7

If you're a web shop, IMO, none of the Java web frameworks are ideal for the fast prototyping that most startups need to do on a regular basis. I've hated every Java web framework I've ever worked with and I've used most of the popular ones. Always felt like I was fighting the framework for one reason or another; too verbose, not expressive enough or too tightly structured. There are some decent platforms for the JVM…

The play framework sounds like something you'd be interested in. It abandons the Java conventions for a more rails like experience. http://www.playframework.org/

playframework is way better than rails in my opinion

Re: Is java dead for startups?

#18
Java is an avowedly corporate language. It isn't built to be fun or elegant or beautiful or especially powerful - it's built to be robust, idiot-proof and flexible.

For startups, it just seems very poorly suited for the task. I think most of us would agree that the main advantage any startup has is speed and agility. Java isn't that well suited to rapid development, at least not compared to Python or Ruby. It doesn't offer any potentially game-changing technical advantages over the mainstream like Scala, erlang of JavaScript might. Java is a sturdy, reliable language that is very well suited to fairly boring corporate work. It's just not rock and roll though, is it?

Think about the standard startup rhetoric - do one thing and do it well, start small and iterate rapidly, split the market with something unique. If you're going into battle against an incumbent, you need to change the rules of the game - you don't want an AK47, you want an IED. If you're trying to build disruptive technology, it seems obvious that you'll be better off using tools that are themselves disruptive.

Re: Is java dead for startups?

#19
post #7

If you're a web shop, IMO, none of the Java web frameworks are ideal for the fast prototyping that most startups need to do on a regular basis. I've hated every Java web framework I've ever worked with and I've used most of the popular ones. Always felt like I was fighting the framework for one reason or another; too verbose, not expressive enough or too tightly structured. There are some decent platforms for the JVM…

The play framework sounds like something you'd be interested in. It abandons the Java conventions for a more rails like experience. http://www.playframework.org/

Yeah, never heard of it until now. If I ever venture out into Java land again, I'll have to give it a better look. How does it compare to Grails?
Post reply on HN