I think it's great that there is such an amount of active development in the JS sphere, and I'm sure your framework is fantastic - so don't take this as directed at your framework specifically. That being said...
I am however feeling so overexposed to new libraries and frameworks that I can hardly muster the energy to even look at it. I constantly feel that I'm behind on my homework having to evaluate new libraries and frameworks showing up. Every two weeks, another one shows up with another paradigm shifting approach.
I am getting increasingly apprehensive about committing myself to learning anything new, because in two weeks there's another shiny framework that everyone is proclaiming as the next wunderkind. Sorry about the 6 months spent learning it, but now we're doing something new.
The amount of time where I feel that I am confident and productive with a library or framework is getting shorter and shorter, and more and more of my time learning, I feel is wasted.
Sorry to barf all over your post - like I said, it's nothing specifically with your framework, and it looks very shiny on the surface, but I think I'll just get back to work instead of studying it in greater detail.
So don't study it then? It's perfectly fine to continue using what you are using. Most recruiters talking to me still ask for Angular, even if I consider it a little hairy and prefer not using it.
After being in the JS sphere for a while and living with these changes, I have learned a lot. Because there is nothing new under the sun, these all do pretty much the same thing - but in different ways. There are tradeoffs, and by working with and making big and small products in different frameworks, I've learned how to learn. Picking up new things are not always needed, but the more you expose yourself to different libs, frameworks and platforms, the better you get at it.
The problem is, it's our fault that recruiters are now asking for Angular, because we sold our employers on Angular and built their apps in Angular. Now that Angular is mainstream and has fallen out of fashion, they need to hire more developers to maintain all those Angular apps we built for them.
There is no "our" and there is no "we". Developers, web developers, JS developers or even HN users who are JS developers are not:
* a tribe
* a close-knit group
* an industry union
You do not assign blame to hundreds of thousands of professionals, who live in different parts of the world, speak different languages and work on different projects.
The web evolves without intelligent design or regard of your personal interests. Deal with it or withdraw in denial to the perfect land of perfect web technologies.
Not at all! Honestly there are some WONDERFUL things about angular. There are some bad ones too.
- Polling for changes vs. event driven
- two way data bindings causing infinite redraw loops.
- "feels like O(n^2)" performance on ng-repeats / large pages
but things like the templating, directives, data-binding... they are all really good things.
And dependency injection! They have really moved the needle forward on client side testing.
No angular in itself is not a mistake at all. There are mistakes without question. I suspect the angular 2.0 release will address many of the major criticisms. Though, I haven't read much about it yet.
ng-if, ng-switch, ng-repeat? There's already a language in the browser that does these things, it's called JavaScript.
Why do you even need dependency injection and singleton services and factories in a dynamic language with closures and first-class functions? You don't. Client-side testing works fine without DI. Angular is just a way to do Java in JavaScript. It's a pile of unnecessary complexity designed to sell to enterprises that love over-designed Java projects and want to make client-side development feel more similar to what they know. In that regard I suppose Angular is a little better than Google Web Toolkit, but that isn't saying much.
> Hasn't every template language in the world has come to a similar conclusion?
No, not even every mainstream template language. For example, I still use ERB and EJS extensively, and so do many other engineers. ERB and EJS use the control flow constructs of the underlying languages (Ruby and JS, respectively).
There is of course debate about whether templates should expose the full power of a programming language. I have tried templating languages that do and ones that don't. For now, I'm sticking with templates that let me mix in arbitrary code as I see fit. Could I abuse that power and make a mess? Absolutely. But I try not to, and my code stays pretty maintainable.
The overarching problem here is herd mentality. Using Angular is a bad idea, but lots of companies are using it anyway because The Herd stampeded towards the new shiny thing, mostly because of how cool two-way binding looked in Angular's demo toy app.
Now all those companies are bogged down by Angular, but feel like ejecting it would be too costly. Elsewhere, lots of new developers are introduced to Angular and invest time and effort into learning it because they don't know any better.
Herd mentality is a big problem. It's basically the polar opposite of thinking for yourself, and as such, extremely detrimental in other aspects too.
The couple of times I've worked with angular, some things went incredibly smoothly, and when you hit those edges, it really reminded me of ASP.Net 1.0, it was nice for about 80% of your workload, but the other 20% took 10x the effort, and was a much bigger headache to work around.
Honestly, if/when browsers have better support, I think something closer to Polymer may be the best of all worlds with web development... for now, I find that React code tends to be the most sensible (with a decent framework around it)... not to mention shared client-server code with node/io.js
I can make functional prototypes very, very quickly with angular. There are things it does not do well, in my opinion, but it has given me a tool that previously didn't exist in the JS world.
I don't care about the turing completeness of angular.
If Angular has produced a local optima of efficiency in the range of "misguided attempts" then it's effect on the development ecosystem was a net positive.
That said, I am extremely concerned that most popular frameworks/libraries are products of megacorps.
That is in part due to the complexity of problems in frontend and that most companies don't need to solve those problems (or don't have the resources to solve them).
I think a more important reason would be that Facebook/Microsoft/Google media influence and corporate support creates massive brand awareness and generates instant interest. Educational projects anticipate the interest from developers and create courses, tutorials and reviews. The cycle continues and bam! we have an information cascade[0].
Rich get richer and poorer get poorer (in developer mindshare). Megacorps reap the benefits while indie developers are not able to achieve critical mass.
I shudder when I think about the possible Typescript/Microsoft, Angular/Google, React/Facebook domination in web technologies.
Angular is helpful because it promotes things like loose-coupling, dependency injection, modularity, re-use and the factory pattern. I agree that two way data binding was oversold. It isn't a bad thing, just not the most important thing about angular. No doubt angular itself, and other libraries, will evolve. But I don't think angular is a mistake. It encourages developers to design applications the right way.
Angular is helpful because it promotes things like loose-coupling, dependency injection, modularity, re-use and the factory pattern.
Modularity and code re-use are like apple pie and motherhood. The real question is, do you need dependency injection and the factory pattern to get those things? In JavaScript, the answer is no you don't, because you have closures and first-class functions. Patterns like DI and Factory were invented to compensate for the deficiencies of Java, they are superfluous in JavaScript.
I have to agree.. factories and IoC/DI in JS just seems like such alien overkill in the space. Yes, it's great when you need to create a testable system in a strongly typed world like .Net or Java, but in JS you can simple spike your module loader for unit testing your modules in certain conditions (proxyquire and the like).
Even in those platforms (.Net and Java) unit testing is such a miserable experience, and adds so much complexity it's easier to just skip unit testing in favor of simpler classes/methods and better integration tests.
I think it's not so much the fact that developers praised Angular, but rather this same above mentioned proliferation of frameworks - with so many choices, at some point it becomes paradoxically more likely that people will follow the herd instead of picking each his own framework (if I may oversimplify to make the point clearer) with the risks that entails (possibility of bad choice, of support ending while you still need it...). Nobody's gonna get fired for betting on a big name like Google.
It is our fault if Angular was not a best tool for a job at the time, otherwise we should be happy that we have better tools coming to help us doing our job.
What is problem for you - for some might be job security :) And I think Angular is still very much in fashion. At least this is impression I am getting from occasional talks with random recruiters.
this is impression I am getting from occasional talks with random recruiters
What's in fashion isn't what the recruiters are talking about, but what the developers are talking about. Recruiters will always lag a bit behind whats actually in fashion.
If you're talking about finding a job now, then I absolutely agree. But if you're talking about what technology developers will persuade their employers to adopt in the future, then developers are the ones who decide.
Employers seem to be influenced by what the developers push (maybe not short term, but longer term it seems to me to be that way). Recruiters go where the employers are. Therefore, IMHO, ultimately its the (vocal) developers who pick the fashion.
Right, his point is that it's in fashion with employers and recruiters because there are things to be maintained and sometimes even built. Where everyone else on HN that stays up with JS is trying to things with maybe a reactjs, or this, now.
I "failed" a job interview recently to the reason that they didn't have faith in my jQuery (any by extension Javascript) skills.
I managed to write a multi-page response explaining how the modern frameworks were moving away from jquery in favour of data bindings, virtual dom, etc... while I acknowledge that there is still a place for jQuery, it has a very much diminished role in modern web development.
In the end, I never sent the email in response. While it was cathartic to write, I really didn't want to come across as "sour grapes". (and truth be told, I respected their decision... I'd feel a better fit in a more technology forward environment, their reliance on "old faithful" technologies can still make money)
I feel like even angular has come-and-gone as a framework the 1.x just isn't performant on busy pages. Anything with a log of ng-repeats gets out of hand. Though I suppose that could also mean that I'm writing bad pages too.
My most recent favorite is Leo Horie's https://lhorie.github.io/mithril/ We've got some of that running in production and it really is beautiful to work with.
I'd like to try REACT, but haven't found the right project for it yet.
I've sortof started rambling here... my point was I share your experience with employers looking for "old" tech.
I dont understand, if mithril is good why would you want to try react? Personally I'm trying to solve a problem (make complex ui easy to code and understand)
Either mithril solves it or it doesnt..?
I think the reason I want to try react is to compare and contrast the various approaches.
I've written both angular & mithril for production. So far I haven't enjoyed anything as much as mithril. It is so clean & pure. It stays almost completely out of your way.
In fact there are places where I'm actually running angular INSIDE mithril pages (long story, part of migrating a project from angular to mithril, without losing legacy pages)
I would like to start a react project from scratch to see what it's like. To compare what one really, really smart guy (Leo) came up with against the mighty multibillion dollar facebook.
Leo has a day job and mithril is spare-time, facebook has a staff dedicated to react. Facebook is committed to working on react long term as a corporate strategy. Leo could get bored and walk away.
Additionally there's the aspect of looking at react-native. It makes me suspect that there may be a long term value in being aware of the patterns used in the react.
I struggle to believe it could be better than mithril, but who knows? I haven't tried it yet!
Finally there's the "learning things is fun" side of things.
FYI, Mithril is largely a scratch-my-own-itch kind of project project and I use it heavily at work, so I'm definitely not going to walk away from it :)
But what if you're in a Starbucks, and the person behind you is the head of BMA Model's hands and feet division? (http://www.bmamodels.com/hands_legs_feet). As you reach for your frappachino you're "discovered" as the next-big-thing. About to explode into the glamorous, yet high stakes world of hand-modelling. It's a multi million dollar deal... but with the stipulation... no more coding effective immediately.
What happens to mithril then Leo? What then?
If it happened at facebook they'd give the job to Jimmy "Stubby Fingers" Malone and move on.
Obviously I'm teasing (hopefully at least).
I think there are actually a lot of advantages to your running mithril lean & (mostly) solo.
You contribute and participate in all those places and even turn up on HN.
It does make it a consideration when selecting a direction for a project though. It's a bit of a risk awareness/tolerance thing. I still think C# is way better than node.js for some things too :)
I think they failed the job interview. jQuery is great, but with React or Angular (or Mithril? don't know what that is) it has become unnecessary. Unless you wanted the job fixing all of their old javascript bugs, in which case my condolences.
> I am however feeling so overexposed to new libraries and frameworks that I can hardly muster the energy to even look at it.
That's the nature of the job. In the front-end new frameworks are born all the time, new apis are created, new paradigms are "invented". Coming up with the "perfect" framework is clearly a work in progress.
Here is a list of the techs I had to learn and work with during my career :
- flex
- jquery
- extjs
- backbonejs
- angularjs 1.x
- Reactjs
- angularjs 2.X
And i'm only talking about "view frameworks" here. Not even about the crazy js pipelines involving build tools, running on nodejs , 3 different CSS pre- processors , ...
And in 1 year i'm pretty sure i'll have to work with yet another new framework because managers think framework Z isn't cool enough anymore.
Again that's the nature of the job,because front-end techs are evolving. Everybody was praising backbone 3/4 years ago. Then everybody was praising Angular then everybody is praising React as the new hot stuff.
In the front end, either you keep on learning new stuff, or you're out of job.
Those who believe they have "job security"(as I read in this thread) because they chose angular are lying to them self.
Being a front-end developer means having to learn a shit tons of libraries , techs and apis everyday. You can't just tell yourself , "I'll learn X and i'll be all set" like with server-side techs.
Yet today the biggest challenge isn't even choosing a framework, but more like choosing how to transition from ES5 to ES6. Because the tools aren't ready.
I'm not even going to try to equate the pace of backend tech libraries with frontend, but you can't just learn one stack and be set on the backend. SQL->NoSQL, various queuing methodologies, diff. Automation platforms, different scripting languages rising and falling..,
You can be a Java developer on hibernate the same way you can be a frontend dev doing jquery for almost a decade but being on the cutting edge is the same deal on frontend as it is backend.
I totally agree with the point about always needing to learn on front-end because things are always changing...but having recently been exposed to the Java world there is a huge amount of stuff there too and if you're a server side dev then it's constantly changing e.g. you're org has a django app now but what about Go, Clojure, Scala, Haskell, etc, etc, etc. Different tech for different use cases but there are constantly evolving options out there.
Things are always changing but that's the beauty of it, isn't it?
I don't see the frustration so much about job security as about not being able to really get the most out of a technology before it becomes obsolete. It's one thing to be able to simply use some technology to get the job done. It's something else to deeply understand it and to become fluent in its paradigms and write code that is idiomatic and elegant. When a developer has to spend half the time learning new frameworks, it isn't so much about the loss of job security, it's the loss of craftsmanship.
The obvious followup question (not necessarily directed at you) is why do front-end technologies appear to be so much more transitory than back-end ones?
Probably because javascript engines (since 2008ish) are constantly improving and each new ES version adds new specs/features so there are opportunities for the smart, brave and foolish to build libraries and frameworks for these.
I think it's good that there is so much fervour around it. Time and use will flush out the things that don't work and we'll be left with the bits that do (well mostly)
> I constantly feel that I'm behind on my homework having to evaluate new libraries and frameworks showing up. Every two weeks, another one shows up with another paradigm shifting approach.
Every two weeks? Try every day. I hate to be that guy, but this sounds like whining. You're a developer, it's an incredible privilege (we're part of one of the fastest-growing, most-successful businesses ever, and we basically get paid to solve puzzles by writing machines directly from our minds and in most dev shops I've worked in nobody cares if you roll in at 10am, not to mention that we get compensated quite well while arguably becoming ultimately smarter than doctors yet without any required certification or schooling... I mean, in the history of human jobs, I can't imagine it getting much better!!), and staying on top of new developments is part of our job description. If you're getting fatigued, perhaps it's time to take that vacation you've been putting off, or to (wo)man-up and ask your superiors for more. Or to ask yourself if this is the right career path for you (although there's so much work now that you can get by just fine even relying on decades-old technology/libraries/languages). OR... to specialize. The full-stack developer's days are unfortunately numbered, there's no way a full-stack developer can keep up with every new development while keeping his job anymore. I myself gave up on keeping up with frontend around the time Angular came out...
Come on, I'm a full-stack guy and worked on lots of teams/projects/companies. I have yet to see a need to stay on top of every new development constantly, especially JS frameworks that still need to be proven.
None of the productive developers I know care about all the daily/weekly noise, if something is truly new and good it'll become known on a monthly or quarterly scale.
And about job description - developers are hired to build functionality, not learn new things. It might help further your personal goals and eventually help provide functionality faster/better using new tools but at the end of the day, the business doesn't care and would rather have something that works. Don't get caught up in the hype. It's great that you seem so passionate about it but keep in mind what the work is really about.
That's how I see it too. I try to at least stay aware of what's new but I don't dive deep until it becomes apparent that this new thing will be of use to me.
I imagine most here have day jobs with projects that last more than a few months so I doubt the need to learn things faster than your cycles of your job.
> the business doesn't care and would rather have something that works
True, but unless you own the business, the business' goals are not your goals. The business wants a working product; you need to stay relevant in a career. Sometimes these may align, but not always.
Right, which is why I said learning isn't part of the job description.
When I hire devs, I base their relevancy on what functionality and results they produced for their employer/project, not how new their tech stack was.
Go ahead and learn new stuff but if you know the fundamentals, the frameworks are just different syntaxes for the same thing. But don't assume that someone who doesnt keep up with things every day or week is somehow irrelevant. These frameworks won't change your productivity that much and your output is what matters.
Sure if you don't have a family and kids, go ahead spend every second keeping on top of things, but not everyone is holed up in a dark corner just programming and researching new frameworks. It's not part of our job description, our job description is to ship, and if you're spending all your time re-building so you can be using the "new" hot gizmo framework, you're not shipping. Sorry you hit a nerve expecting everyone to be on top of everything. I get about an hour a day, if I can convince myself to wake up after putting kids to sleep, so is it better to work on my project and get something done, or just keep researching new frameworks?
Family and kids are, by any measure, a huge time and energy sink. But that too is also important work that must be done, even if it has professional costs.
The guys writing these new things, more often than not, don't have a family and kids and do have all that extra time. If you have committed to a family and kids, then join a shop where family people work and be content to use yesterday's stuff to get work done, it will still work fine for the most part. You don't have to keep up with everything, perhaps just general trends. Just watch out for that gentle slide into irrelevancy. ;)
> You don't have to keep up with everything, perhaps just general trends. Just watch out for that gentle slide into irrelevancy. ;)
I would argue that wasting time learning the JS "framework of the day" is not the best approach to stay relevant.
Learn the logic and math behind programming and you can watch the industry slowly catch up...
Yep and if you know the fundamentals then you can pick up a new framework in a couple of weeks because these frameworks being discussed are built around core CS concepts and patterns borrowed (rightly) from elsewhere.
I was recently at a jobs fair and spoke to a lot of companies and everyone (apart from one) were saying they wanted developers who had the core fundamentals and could learn any framework or language (the latter obviously takes longer but not much longer). So they weren't putting an emphasis on having to know the latest frameworks even if they were using them, but instead looking for people with knowledge of core concepts.
I don't actually work on Web related stuff at all professionally, I am only using these things because they are my "side projects".... but I do like to keep on top of things when I can. I think just saying that someone HAS to keep on top to be able to be a developer is a bit much.
"it's an incredible privilege" -- how do you figure that? It's as accessible as accountancy, and I wouldn't say that's a privilege either, unless you're going to bring in the lack of educational opportunities available to bedouin kids. Maybe it's an accomplishment, it's a job, but how is it a privilege?
Thanks. That looks like the SV experience. I realise that this is an SV site, but it sure is tiring hearing the 1%s point of view as if it's the norm across the industry globally.
> Or to ask yourself if this is the right career path for you
Yeah. No wonder people figure out that it is not the right career path for them when people will jump on them for admitting any kind of "programmer weakness"[1], or for not being perfectly passionate about programming all the time, or for not thanking their boss for having the privilege of getting their generous pay-check and almost salivating at getting more overtime to work on the companies' interesting problems.
Sometime the work itself might not be as bad as the people you have to do it with.
I understand you very well. My todo list called 'stuff to check out' grows so fast that sometimes I'm thinking about clearing it out and just start another one.
Geography. The replies I've read, as they so often do, ignore geography. SV might move rapidly from one to the next, but the city I'm in is more conservative and moves slower, so all I've ever seen much of from recruiters are jquery, knockout, angular. SV is the gladiatorial arena, and only the survivors make it through the filters to elsewhere, so elsewhere has fewer to deal with. If you engage with SV news while living elsewhere you'll still be trying to keep up, but if you hang back, things are a bit more laid back. Or, make the decision to ignore every other tech. If the next one is along shortly, you'll not likely miss much.
Which is the reason, it is an appropriate time to back and stay with React for the long term.
React has so many technical benefits that is all covered through so many posts - That declarative is better, Fast DOM manipulation with Virtual DOM is nice and a great development API and syntax sugar with JSX is wonderful.
Having said all of that, I think what seals the deal in favour of React is that it is being used by Facebook on their homepage for half a decade and in all likely hood going to be continued to, which means you're assured of incremental upgrades and regularly maintained and yet no radical shifts, which would warrant a large change for your product.
I think Facebook has hit the abstraction level perfectly with "Product Engineering" and "Library Development" or "Infrastructure Development". This abstraction may not work well for all use cases. But for a large audience this is what is needed and where it is needed, it fits in perfectly.
Take a look at Mithril. People are frequently surprised by its small learning curve (and for many, the majority of the learning is for knowledge that you can go and apply outside of Mithril)
Funny. But the "will fix everything" mentality is ironically why most frameworks are hard to evaluate and learn.
For learning, what you really want is a small set of new concepts to learn that easily map to things you are already familiar with, good documentation to refer to, and a active community that can answer your questions within a couple of minutes. That's why I mentioned Mithril.
To give him credit, the thing that is appealing about it is that there is very little to it that's not javascript. So you can very easily expect to figure out everything you need to know about it in a day or two, vs however long it take to familiarize yourself with one of these massive new frameworks.
Lately I've been helping to maintain a sizeable open source app that someone else wrote in Mithril with MSX: https://github.com/ScienceCommons/www and I have to agree that the learning curve has been very gentle. It's every bit as powerful as Angular but it feels so much more like writing vanilla JS with a lightweight MVC structure to it. It keeps the code easy to understand and maintain.
I'm using Mithril because of how easy it is to look over the source. I didn't want to have another framework with a huge learning curve (even for senior devs) like Angular. It's well documented, and you can read the entire Mithril source and understand what it's doing within a few hours. That means I don't have to bother training people on it. I can give any new people the API and a link to the source and they should be able to contribute within days.
I haven't heard of mithril until I read this thread but I think I might give it a try. I've only just picked up angular to build a form app served from a node server that communicates with good old soap services. I've kept the soap stuff on the node server so that the angular stuff is relatively light but still find it pretty heavy handed.
I'd be quite keen to look at either refactoring to use mithril or react, so will check you blog post - thanks!
If you already found good tools and happy with these - stick to it. If you are still looking - I find description on the site is pretty clear about idea behind approach, which made me quickly do proper decision to learn it/skip it this time.
I feel what you're saying. With regards to this and similar projects, I think the important thing is to be familiar with reactive programming. To me, it was an eye-opening new paradigm to develop in.
Man, a few hours ago I was debating with some team mates about js frameworks. In the middle of this ocean of frameworks I keep going with ExtJS. And I'm very criticized about this. And today the discussion is as always - that it's a monster and I need try ember ou angular etc etc... But I keep using ExtJs happily focusing in my business and almost never worrying about why something not work and wondering how to use new new coolest javascript/css/html thing - I almost never touch html and css since I begin to use ExtJS. I'm happy and it's working.
You might actually want to spend some time looking into useing node/babel to transpile ES6/7 syntax JS into ES5.. this will give you a leg up in writing inherited classes with JS... alternatively there is TypeScript, which you may also like and be more productive with.
That said, I think that ExtJS's UI is starting to look a little long in the tooth, but it's still usable. I really never liked it... class based hierarchies in JS always seemed like a waste to me.
That said, if that's your path, there are still some newer tools (namely node+babeljs) that can greatly improve your development experience... I think the module and class syntax from es6 would be a boon for you, along with being able to use es7 async/await combined with a fetch shim...
Instead of learning a new framework, try learning a new paradigm. You can then apply that knowledge in whatever new shiny tool your boss want you to use to build the next big thing.
This is seriously one reason I've been looking at career-switching to being a machinist. A new technology can come along, but it has to establish itself, and then you can take time and get really proficient at it.
That, plus the more grey hairs a machinist has, the more they're respected (usually).
That's exactly how I feel about every new js framework popping out from nowhere.
But I accidentally clicked on the title. The site looks cool and guess what, a framework which is faster that React and doesn't make you put xml in js.
And it grabbed my attention. I don't know whether I'll ever use it but it will be on my radar for sure. Especially if they don't lie about how fast it is.
I'm sure some scientist said the same thing about some early stage germ of a discovery once upon a time. But it's true, we still get very far along with Newtonian physics, we don't need a full working knowledge of quantum mechanics to get our jobs done day-to-day. Not that what we're doing is anything comparable, but maybe the analogy fits somewhat.
-) is a sign of an area or areas of still not recognized core problems leading to tackling it from different angles
-) it could be connected to the average age of developers in the field responsible for the choice of their tools. They will settle for something with time ... eventually ;)
-) bears resemblance with an earlier me, eager to find the latest, newest and most importantly most different way to ... well, what actually? Most probably traverse the unknown landscapes of new, landscapes of "my way"
-) is worst than it used to be, as the _really_ old ppl say ;) ... or I changed the sides, moved on on this spectrum of professional attention deficit hyperactivity disorder.
I am however feeling so overexposed to new libraries and frameworks that I can hardly muster the energy to even look at it. I constantly feel that I'm behind on my homework having to evaluate new libraries and frameworks showing up. Every two weeks, another one shows up with another paradigm shifting approach.
I am getting increasingly apprehensive about committing myself to learning anything new, because in two weeks there's another shiny framework that everyone is proclaiming as the next wunderkind. Sorry about the 6 months spent learning it, but now we're doing something new.
The amount of time where I feel that I am confident and productive with a library or framework is getting shorter and shorter, and more and more of my time learning, I feel is wasted.
Sorry to barf all over your post - like I said, it's nothing specifically with your framework, and it looks very shiny on the surface, but I think I'll just get back to work instead of studying it in greater detail.