5 ms·
No mention of my other criteria I see. Money is an important part of a career. Weddings, houses and children cost money. So the idea is that Ember may serve to
by sc0rb 13y ago
No mention of my other criteria I see. Money is an important part of a career. Weddings, houses and children cost money.
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.
Seems to me the use case (and job market) is small.
I wish I was still 22 years old and didn't need to care about earning decent money...
- joachimhs 13y agoEmber.js is a framework for writing web applications on the client side. This experience, and the end result will be a lot different that the type of web apps that you might be used to writing from the server-side. I've created my share of Java-based server-side generated web applications, and when it comes to writing applications that run well on the web, JavaScript MVC frameworks are the way to go. I can't comment on how it might affect your career on either the short of long term, though. That said, I expect that the demand for these types of rich webapps will become larger as we move forward. I'm turned 22 ten years ago myself, but I think making that statement you made is unfair.
- sc0rb 13y agoSo you think that client side JS web apps are 'the way to go'. What's wrong with server side MCV web applications? How does Ember.js in the clients browser scale when you have a a lot of data that needs marshaling / unmarshaling or generally processing and moving around? Surely it's more performant to do this on the JVM on the server rather than relying on the clients computing power (or lack of). Ideally you wouldn't do a lot of data processing in the MVC part of an app anyway but it seems like you're telling me the whole web app needs to be client side?
- johnernaut 13y agoMost data-processing (if not all) should be done on the server-side. Your API should give your front-end app as much of a complete data-set as possible. Note that data 'appearance' is fine on the front-end for the most part.
- sc0rb 13y agoSo what's the point of making the MVC portion of the application client side when I can just use Spring MVC (or similar) and keep to the same tech stack that the rest of the project is using? Same goes for .NET projects etc?
- jiggy2011 13y agoIf you write all of your code to run on the server then you need to pull down a full page from the server every time you want to update your data. There's plenty of reasons you might want to avoid this in some cases. For example, you might want your forms to be validated without waiting for the user to push submit. You might have rich content in some markup language (like markdown) and you want the user to have a live preview on the same page as they are editing. Or you might have an app with real time data that changes frequently and you don't want the user to sit there pushing refresh constantly.
- sc0rb 13y agoThis functionality is already provided via AJAX. There's no need for me to put the whole MVC later on the client side to achieve this. You don't need to pull a whole page down to get new data and you can do the form validation on the client side although you need to redo the validation on the server side anyway to make sure the client JS hasn't been tampered with.
- jiggy2011 13y agoOnce you are doing AJAX you are going to be writing Javascript (or something that compiles to it). Ember.js can help with that. So rather than writing a bunch of code to pull down JSON from the server and manually update the DOM in ways that deal with various browser quirks you can say "here's my model, here's how I want it rendered, link it to this REST API" and it will take care of a ton of heavy lifting for you. It's true that it doesn't give you any magical power that you didn't have before and you can do everything it can do with vanilla javascript or any of the other frameworks. However that's a bit like saying you don't see the point of rails because you can just use vanilla PHP for everything.
- joachimhs 13y agoSo, you would do most data-processing on the server side. But the data that your client-side application needs you will server to it, most likely via JSON. You can definately go too far and implement too much on the client side, and this is generally a bad approach. It's like with anything else. You need to figure out the balance between what you process on the server and what you process on the client.
- bengillies 13y agoOk: > 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.
- sc0rb 13y agoThis 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.
- jiggy2011 13y agoThis is a bit of an odd question. Ember.js is a tool like many others. So it's sort of like asking "Will I be richer if I learn Django or if I learn Rails?". Nobody on HN can really give you a definitive answer. It is a framework for building rich javascript client web apps and helps you keep your code structured in a certain way and takes care of a great deal of boilerplate heavy lifting for you, if you take the time to learn it's idioms. So the question, "Is there a way in which I can leveridge the fact that such a framework exists in order to make more money as a consultant?" is one that only you yourself can answer.