Hacker News new | ask | show | jobs
by bengillies 4809 days ago
Ok:

> Is Ember.js actually worth learning?

Yes.

> Will it make me a better programmer (like learning Haskell will)?

That depends on whether you've learnt the concepts that Ember introduces before or not. If you're stuck in a Java shaped rut, then yes. It will make you a better programmer.

> Will it enable me to get a pay rise from my current £480 per day contracting fees?

That depends whether you find someone who wants an Ember app that is willing to pay more than £480 per day. If you don't bother looking, then you're unlikely to find it. That said, if money is what you're after, there are many better avenues to go down than learning Ember or doing Java contracting.

> Is there a more diverse and active job market than there is around my current main language (Java)?

JavaScript is growing in popularity very quickly. If you wanted to switch to it from Java you wouldn't have any problems finding an interesting job.

> So the idea is that Ember may serve to fix one particular problem in my company... I don't see how it's any better than anything else. Just because I can knock out a basic web app in less time doesn't mean it's worth learning, especially when you add learning time into the development time and compare it to the Java equivalent.

You don't see how it's better because you haven't bothered learning it. By comparing it to the Java equivalent, I assume you mean GWT. In that case, yes. It's much better.

Ember isn't really designed for basic web apps. It's designed for big complicated web apps. I wouldn't recommend Ember for really basic web apps at all - it imposes a lot of structure that you only really see the benefit of when your app becomes larger.

> I wish I was still 22 years old and didn't need to care about earning decent money...

Never wish for something out of the past. It's gone. Look to the future instead.

1 comments

This feels like a pretty HN style answer.

Is Ember worth learning? Let's see.

It adds no value over anything that we already use or what I see being used elsewhere. It's just another library that doesn't add any significant.

There is not liquid job market with good salaries or day rates with Ember at the moment, you may be able to find one or two roles in London that ask for it but it's certainly not liquid and therefore could not support a contractor.

Embers approach is not radical therefore there's not a lot to learn here. I'm not stuck in a Java rut. You can write modern, slim, fast, concurrent Java. You don't have to be stuck in the days of massive J2EE government projects. The buzz around modern Java in London is massive.

You're right in saying that I could do other things for money but I love software development and I love that people are willing to pay be quite large salaries and day rates to do it. My career isn't money focused but money is a part of it. Why shouldn't I have a big house and holiday often just because I love writing code?

Also, seeing Java devs as being 'stuck in a rut' shows massive ignorance as to what is actually happening in the Java world right now.

> Is Ember worth learning? Let's see.

You asked for an opinion. I gave you one (I'm in the middle of a large Ember project at the moment). I didn't expand on it as you appeared to have already made up your mind and written the whole thing off on the basis that the Java world keeps you pretty happy already.

> It adds no value over anything that we already use or what I see being used elsewhere. It's just another library that doesn't add any significant.

It sounds like you know a lot about it already. Why bother asking if it's worth learning then?

It's not a radical approach sure (that's the main point in fact). The main difference with Java is that Ember all happens inside the browser, and you write it in JavaScript. I have no idea how much experience you have with those things, so have no idea how much you'd learn if you picked it up.

In no way did I imply that you were stuck in Java rut. I said that if you were, you might learn something; if not, you might not. The things you'd learn about (unless you already know a lot about them already of course) involve things that you'd learn doing any front end development.

In no way should you feel bad for wanting to make a lot of money.

I'm a primarily JVM developer as well, but full stack.

The answer to you is maybe, but it's not necessary yet.

In 3-4 years, 80% of greenfield web apps will be using a single page framework. Perhaps it won't be Ember, but something from the next generation. However, the results are better for the user, and as more developers learn it, the more it will be expected as common knowledge.

Increasingly, your contracts will end up being on the back end, and your full stack opportunities will dwindle. Look at the jobs today that say jQuery or javascript. Most of those will be out of your range.

That might be fine for you -- if you stick to back ends or maintenance programming, your jobs won't dwindle. Greenfield apps will slowly dwindle, or you get in with a client who expects you to learn it, or you decide to use it on a project because you see the direction the winds are going.

Me? I have an angular.js and knockout.js proof of concept on my resume now.

This is the best answer I've received to my concerns. You're predicting that people will move from backend to frontend for the MVC layer (or w/e will come next) and this is why you are keeping up with these sorts of developments.

Good answer.

The move has already come in B2C apps. B2B is lagging and internal apps and consultingware will be the last, as normal.

The problem I see is that the frontend models are not designed for internal apps in mind. Yet. They're not designed for a mediocre developer. I think we could do a lot better for that use case. Right Now, it's faster to do a server-generated app with no ajax. I don't think that has to be the case.

I currently work with a few very popular B2C ecommerce platforms and none of them have made the move to this sort of thing yet, the best we've got is Spring MVC with AJAX.