I've never hacked anything other than I captured logins and passwords of gamers using PHP when I was about 14 year old. Then I logged into their accounts and that was it.
Back then there were no promises available just like that for everyone. It was a programming feature a few people would consider. Everything was multithreaded and it was just smart. When you don't have all those convenience methods and tools, people have to think and when you think, it's when you get fruits from programming.
If you want power, think of procedural programming and implementing things at a lower level with C and Python.
With Python you only need modules / submodules which are just folders. You can use very short names like "sd" or "stg". This saves a lot of typing which I noticed in javascript takes hours. Another thing is that you don't have to use unstable packages and your code can be actually maintainable without thinking about it for months and removing all dependencies.
What's important, write-times are really quick and both Python and C let us write code a lot faster than JS would allow to.
Writing Python code is about being efficient and having all the tools in one toolbox. You don't need 5 programming languages to deliver a project as it allows you to create a site, connect to an API, connect to a storage, use filesystem. All in a stable manner that everyone who wants to program well needs to develop. Python syntactically is that simple that people freak out when they see brevity it brings to the table. Well, you need to understand why you're doing what you're doing that way to an extent. Simply you need to understand benefits.
Here's how Python code is abbreviated.
Python:
import cmath
a = 1
b = 5
c = 6
# calculate the discriminant
d = (b**2) - (4*a*c)
# find two solutions
sol1 = (-b-cmath.sqrt(d))/(2*a)
sol2 = (-b+cmath.sqrt(d))/(2*a)
JS ecosystem is clusterfucked. I don't need much to prove it. Just a single link to a tutorial. It's so long for one reason - not because it's something awesome, but because it's a clusterfuck and you can do one thing in 10 million ways. This is pointless.
https://nodejs.org/en/learn/asynchronous-work/dont-block-the-event-loop
You're not learning programming well with it because you're not consistent in it if you're not using linters and style guides which is painful. Authors themselves are not consistent in it which tells me that being consistent in it is close to impossible.
Here's an attempt to deal with those problems
https://airbnb.io/javascript/
Well, it's so long because... that language brings nothing other than in-browser support.