I was recently asked the following:
I'm a Manual QA Engineer looking to get into QA Automation and need advice.
I prefer Java because it is more demanded in QA Automation, but I hate the community, the API's look old and I don't like IDE's, Maven, etc.
However, there are tons of tutorials for Java + Selenium and I can find nearly any answer to questions I may have.
During your live videos I see that even you struggle to find some answers to questions. Sometimes you can spend 20 minutes figuring it out.
It frightens me that if you get stuck for 20 minutes, then I may stuck for days and may not even solve the problem.
This was a really great question and something I think a lot of folks in that situation probably struggle with. Here was my response.
That's a really interesting question and a tough one for me to give advice on.
You're right that the general QA community is built around Java Selenium (and I definitely agree with your criticisms as well).
I think JS would be a great first language, as the basics are fairly simple. There are definitely complex parts to it, but you don't necessarily need those to write automation.
The thing about getting stuck in programming is that it's going to always happen. Thankfully the answer usually appears so long as you keep looking at the code.
Also, programs like Thinkful and Codementor are great if you're looking for some professional mentorship.
And like you said, anything you learn on the JS side of things can translate to non-automation oriented tasks. Automation is a great way to learn more advanced topics, since you can do basic things in it pretty easily, but can learn some coding tricks to try some more advanced ideas.
So I personally would recommend going with JS on this. It's a tough choice and comes down to what really motivates you, but it sounds like your gut is saying JS.
HMU on twitter with a reply.
Header Photo by Kyle Glenn on Unsplash