Live data from Hacker News

Ask HN: Enterprise Java guy needs advice on what to transition to

news.ycombinator.com

1–10 of 57 posts

Ask HN: Enterprise Java guy needs advice on what to transition to

#1
I have made my living doing Java enterprise development for big companies for the past 10+ years. I can sense the world is changing (much like when I transitioned from C/C++ to Java) and that I need to make a change. Frankly I am tired of all the complexity and over engineering of enterprise Java. For all the effort, I find most apps are large (1+ MLOC), monolithic, hard to understand and maintained by large groups of onshore/offshore resources who just keep the stuff running by sheer numbers and have no pride in their craft. I want to do something better as I still have about 20 years left in my working life. I have played around with Python and like it but not sure how it will scale up to a large project. Any advice appreciated, especially from those who have already made the transition.

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#3
There is plenty of work doing GWT+(Spring|Guice) apps in areas more interesting than traditional enterprise Java.

Also, there are a lot of interesting infrastructure projects written in Java (Hadoop, Lucene, Cassandra etc). It's pretty easy to get started in any of them.

If you really want to do a new language then I doubt you'll find many people arguing against Python. But the real action is in Javascript (both server & clientside)

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#5
I would suggest experimenting with Groovy/Grails on some weekend projects. Grails is similar to Rails so you could easily leverage this knowledge if you ever wanted to move to RoR.

Beyond that I would agree with earlier commentators that the real action over the next few years will be in JavaScript. Both server and clientside. The former being particularly interesting.

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#6
What do you want to do? What do you want to build? What gets you excited?

Try various things, and pick one that actually gets you excited, and makes you think "wow, this is so cool" - not something that makes you think "well, the market seems to be moving in this direction, so there'll probably be decent money there".

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#7
I've done a ton of spring / hibernate enterprisey stuff and am now focusing on iOS and Android development.

For one off stuff I usually use ruby nowadays, and if mobile would not be my thing, I'd definitely be delving in to Rails (have some previous experience here) and Node.js.

I've done some projects in Django but didn't really dig that as much. There's a ton of Python frameworks out there though, and Python the language is pretty cool to work with and a breath of fresh air if Java has been your mainstay for the last decade.

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#8
Delicious Bookmarking site I believe is Django/Python

As far as scaling to a big enterprise project, not sure yet.

Given your java background have you compared groovy/scala/erlang to python yet?

While I do code android applications I am going through the same evaluation process for my server side development.

Groovy is nice in that I get to re-use Spring/Hibernate EJB, etc while having the features of an object oriented scripting language DSL and Grails has a good set of MVC features.

Python seems a little rough if you are re-using legacy java however jython does function and I guess one could build up jython stuff to handle legacy java enterprise.

Scala and Erlang seem interesting both attempting to solve same and similar problems in different ways implementation language wise.

Zed Shaw has some notes on enterprise coding with python, which are worth a read. I would also not rule out new C++ frameworks as Google still uses a lot of C++ in enterprise with good results.

Re: Ask HN: Enterprise Java guy needs advice on what to transition to

#10
Start with Scala. Then try Play! and such. Also look at GWT. And do iOS. Much better job market than Python etc. http://blog.getgush.com/

I'd stay away from Groovy etc.

Also, please get over that "scaling" stuff. PHP scales just fine. Rails scales just fine. Python scales just fine.

Post reply on HN