Live data from Hacker News

How it feels to learn JavaScript in 2016

medium.com

81–90 of 198 posts

Re: How it feels to learn JavaScript in 2016

#81

I couldn't get through the entire thing. Even knowing that it's a fun/sarcastic piece of writing, the portrayed pain is all too real, as someone just starting to dive into the front-end. In all honesty, can I still use jQuery for new projects without issues in 2016? Is there a real reason not to?

Yes, you can. No, there's no real reason not to. But honestly, I'd go with React if you can. The reason is, if the app starts taking off, and you end up with a team maintaining your app, you're much less likely to end up with an unmaintainable mess in two years than if you use just jQuery. All applications, especially websites want frameworks. The framework is essentially a way to organize the massive amount of compl…

This a great comment. Yes you can still use jQuery and yes it's still very powerful, but it lets you shoot your own foot off too much -- and your whole team's feet are in danger too.

Angular was a huge step up in "you won't shoot your foot off-ness" and React is a step further. You still can, but you realize that you're loading the gun most of the time and can take a step back.

And that is really all this churn is about -- trying to make things easier and more foolproof. We've introduced other problems trying to solve the first couple batches of problems (accidentally using the development version of Reach on production is one I see a lot), but we'll get there.

The PHP ecosystem has had quite a bit of churn in the last 5 years too, but the yelling about it doesn't seem to be as loud since people aren't forced into it since there are alternate languages.

Re: How it feels to learn JavaScript in 2016

#82
post #27

Earlier quoted context omitted.

if ALL you are displaying is a table, then you can write a quick little jQuery(or native JS) function to remap the array and re-draw the DOM. If your fancy little table is part of a large app, or even a simple app, it is much easier to implement the entire app using a framework like Angular. The model view concepts really help to tie things together.

Your use of the word "easier" is questionable. Even for trivial SPAs it's often easier to roll the basic functionality yourself. Flipping over to something like Angular introduces technical and cognitive overhead that often isn't worth the trouble for something simple.

Except then, no one else on your team has any idea what is going on and spends hours making minor changes. And it's probably not tested because jQuery is generally quite a bit harder to test so everyone is scared of making changes.

Re: How it feels to learn JavaScript in 2016

#84
It continually shocks me how much whining developers do about sometimes having to learn new things. The requirements for continued education are shockingly low (read: non-existent) in our industry, compared to other, similar intellectual/white collar industries - doctors in California are legally required to do 50 hours of CME/2 years, lawyers in California are legally required to do 25 hours of CLE/3 years, and those are both fairly standard. There are a tremendous amount of jobs out there that won't require you to learn anything new, ever, if you don't want to (think of how many thousand brain-dead Java jobs are out there). There are plenty more that will require you to learn one or two new things (any of the hundreds of consultancies and companies that picked a fairly standardized stack and work with it all the time). And then there is a tiny subset of companies that are actively working with new tech and trying new things, and a tiny subset of people actually using all of those new things. Whining about how "it's too complicated!" because someone somewhere provided you with some new programming tools for free because they thought those tools were useful and cool is an ugly look for a profession that's so prone to patting itself on the back while loudly proclaiming how forward-thinking it is.

Re: How it feels to learn JavaScript in 2016

#85
post #52

Earlier quoted context omitted.

What about maintainability? You want everyone who touches your code to figure out your custom solution for data binding? Or you could just follow the conventions established by an industry popular framework that is instantly consumable by another developer?

Seriously? If your application become sufficiently complex that it can't be easily grokked by a decent dev, that's when you know it's time to switch. Until then it's just over engineering (which the JS community admittedly loves).

Very few teams have the opportunity to switch later on, and if they do, it's at the expense of the job of the person who chose to go without a framework.

Re: How it feels to learn JavaScript in 2016

#87
post #2

Loosely related: "The S stands for Simple" http://harmful.cat-v.org/software/xml/soap/simple

This is insightful. Of course, the OP is consciously playing off the earlier app-deployment spoof (https://circleci.com/blog/its-the-future/).

But this earlier spoof may well be based, intentionally or not, on the SOAP piece you linked -- which was a hit on HN 7 years ago (https://news.ycombinator.com/item?id=2079631).

Thus prompting the observation and related question: These three areas - front-end, deployment, RPC - seem to have engendered a churn in standard approaches, and a corresponding cultish devotion to certain toolkits -- leaving them open for satire. But yet, there is also a need for a guru to explain WTF to do, because a lot of practitioners need to get these jobs done.

So, what is the deeper parallel between the areas? E.g., a lot of corporate resources suddenly poured into these problems, and everyone is funded to come up with, and promote, their own solution?

Re: How it feels to learn JavaScript in 2016

#88

Cross-posting my comment from reddit: I don't know about anyone else, but the problem I personally have with the crazy, messy JavaScript ecosystem is: - I am a relatively experienced amateur programmer (with limited [nine months] professional experience) - I can learn any new programming language, library, methodology, or whatever pretty easily - I don't have any formal experience using anything of this newfangled st…

It sounds like your gripe isn't with the knowledge base, but with the people doing the hiring. The issues there are very real in that, if you're dealing with a non-trivial codebase, there's no way to tell whether someone with very little real world experience is a competent programmer or just "faking" until you've got them working on it for a few weeks, and even then they may not be worth the time you put into traini…

This has been my exact experience. I just had a week of phone calls and emails about a very promising, well-paying frontend job opportunity. All of them were with no-technical-knowledge buzzwordy HR types who were very friendly and assured me that my resume and portfolio were great, and that I would be a good fit for the job. The whole thing ended with a phone call that went something like:

"Hi, so, your resume says you have nine months of experience?"

"Well yes, but I have countless personal projects under my belt, I designed and built game engines with teams of students..."

"Yes, but this position requires four years of professional experience."

"Well I still think I'd be a great fit for your company, I have experience with the specific technology stack you use, you can ask my previous employer..."

"Yes, but this position requires four years of experience, so, I'm sorry, but you don't meet the qualifications."

"Oh. Okay, thanks, bye."

Another story:

I got a call about a job I'd applied to. The guy on the phone said I looked like a promising candidate, but my resume didn't list the start and end dates of my previous job (nine months total), as I'd accidentally sent an old version of my resume. I emailed the correct version of my resume, and nearly immediately got an email back, saying, and I quote:

"Needed 1+Years of Experience so if you can change the duration time"

After a few minutes of consideration, I edited my resume to change the end date of my previous job to be one year from the start date, saved it as a separate copy, attached it, and sent it back. The guy immediately replied asking me to verify that the 50k starting salary would work for me. (Before anyone says 50k is too low, rent is due and I'm desperate.) This was just last week and I haven't heard back since but this is the most promising opportunity I've been able to find after months of searching.

---

The thing is, I don't even want to do frontend web development. I want to work in game development, but apparently to get a start doing that professionally, I need professional programming experience on my resume to look good because those positions are so competitive. Okay, fine, I can do web development, front- or backend, I thought. That'll be great for padding out my resume, and, y'know, paying rent. But it turns out that landing one of these jobs is also really difficult!

What frustrates me about all of this is not so much my own position, but about the future of the industry. As time goes on, I think we're going to see more and more people take the path I took of learning stuff on their own instead of at college. Formal CS education is far from useless, but if this stuff's all available for free online, people are going to download it, play around with it, and learn how to use it... it just seems crazy to me that companies are hiring just-out-of-college CS graduates over people who have made a ton of stuff on their own over the years.

Re: How it feels to learn JavaScript in 2016

#89
Slightly related, but if you're helping someone start out learning to code, it's worth reading this:

http://pgbovine.net/programmers-talking-to-beginners.htm

You don't _need_ react to build a cool site in 2016, but if you're dead set on that, then this piece is a good intro to the set of questions that arise!

Re: How it feels to learn JavaScript in 2016

#90
If you are sick of javascript on the front end, but don't want to give up the fancy-pants UI, you could do worse than my library, intercooler, which lets you add AJAX to your app with a few HTML attributes.

http://intercoolerjs.org

Make REST work the way it was intended, supports CSS transitions, request indicators, etc.

Good little library that eliminates a lot of complexity for web apps that don't need all this junk (most of them.)

Post reply on HN