Javascript the Good Parts is for folks who already know Javascript. The concepts are more advanced than most beginners would encounter (currying, memoization etc).
I was just hired at Amazon as an SDE and found the interview process to be fairly challenging and technical (but what do I know).
I appreciated the fact that a lot of the interview focused on core data structures / algorithms and not languages / frameworks of the moment kind of thing. It caused me to go back through my university books and study a lot of the core concepts that I enjoyed learning and have gotten away from by doing more menial programming tasks (not to say that I won't be don't those sorts of things at the job).
Also, if they said that they wanted to try me out for a couple weeks I would have refused the offer. I already had a job that I was happy (and well paid) at, so why should I leave or take vacation to move across the country and be tried out at another company?
If you are on a project for a few years (and aren't doing just maintenance, in which case I'd GTFO) you should be able to show a roadmap of where you took the project, its success etc. which might not be so bad.
Teachers / doctors / dentists all need to take courses to keep their skills up to date. Programming is no different. I don't think there is one profession where you aren't required to keep your skills up to date / put in extra time.
As I've mentioned before, in a lot of professions it is paid and considered part of the job. If not, then at least it's regulated. We enjoy none of those benefits.
Software is a career requiring a much higher level of personal commitment than many other careers, while often not necessarily being better compensated.
In which professions is it paid? Teachers / dentists I know have had to pay for their own education.
Isn't the level of personal commitment subjective though? What would your solution be?
I think it's hard for programming because there's such a diverse array of programmers (university educated based on data structures / algorithms vs self-taught that might not know those things). My recent interviews with Amazon tested my core CS knowledge but nothing like frameworks or anything. I suspect those things would matter more at startups / web shops (where I used to work).
Software is a career requiring a much higher level of personal commitment
Except it really doesn't. Most of us chose to put in the personal commitment because we love it and then convince ourselves it's because we have to.
I know several people who code 9-5 Monday to Friday on whatever their boss tells them to code on and that is it. Sure non of them will ever be offered a top job at Google, Facebook or awesome SV startup of the week, and sure most of what they do sounds frightfully dull, but they still have a successful if unassuming career in software.
I don't believe so. I did the same as you (except with a Backbone app), and used an .htaccess to detect the fragment and serve up pages using Phantfom.
When you talk about 'mobile app', are you referring to an alternative mobile site the user sees in the browser or packaging it up in something like PhoneGap (or putting it in a native WebView)?
In this case: mobile website. This 'app' runs in the browser and all strategies used here don't rely on anything like PhoneGap. If you need access to certain PhoneGap features you can of course package the app up but it's not required at all.