

Ask HN: Completed JS CodeCademy but still struggling.  Other resources? - timhargis

I just recently finished CodeCademy&#x27;s JavaScript track.  I&#x27;m assuming this is a small % of the knowledge really needed to be able to actually build shit.  I went on CoderByte (http:&#x2F;&#x2F;coderbyte.com) and tried some of their &quot;Easy&quot; challenges and I&#x27;m struggling with some of the basic ones because it is stuff that was not taught on CodeCademy.  The 2nd question was to write code to return the factorial of a number.  Is this really basic shit, or did I just run into a weird question that is not very common in real world programming?  I haven&#x27;t taken higher level math in probably 15 years so I was concerned about this going into this process of learning JS but numerous people told me it wasn&#x27;t that important.  Are there other resources I should be learning from?  What do you recommend to improve in the early stages?  I&#x27;m trying to learn enough to get into a program like Hack Reactor.
======
declandewet
The factorial example is used in many programming tutorials, not to teach you
that you need to understand complicated mathematical theory to become a
programmer (you don't, so don't worry), but instead to teach you one of the
more advanced paradigms of beginner programming: recursion (having a function
call itself again and again until it's to-be-returned value is adequate enough
to finally be returned).

Learning more about the language is always going to help, though. I would
suggest doing the CodeCademy track a second time to see if you've improved.
Focus on writing efficient solutions that are better than what you would have
done your first time around. Once that is done, give these resources a go:

\- [http://codeschool.com](http://codeschool.com) \-
[http://lynda.com](http://lynda.com) \-
[http://teamtreehouse.com](http://teamtreehouse.com)

I would also suggest purchasing these books, as they are somewhat the standard
learning and reference resources:

\- JavaScript: The Good Parts \- JavaScript: The Definitive Guide

There are other books that will help tremendously, and a list of free ones can
be found at [http://jsbooks.revolunet.com](http://jsbooks.revolunet.com)

Other books I recommend:

\- Eloquent JavaScript \- Effective JavaScript \- High Performance JavaScript
\- Maintainable JavaScript \- Principles of Object-Oriented Programming in
JavaScript \- JavaScript Patterns \- The Past, Present and Future of
JavaScript \- JavaScript Enlightenment \- Secrets of the JavaScript Ninja

------
zaroth
Honestly, yes factorial functions are really basic stuff. You should
definitely have the tools necessary to implement factorial both iteratively
and recursively after a brief into to Javascript.

That's not to say you don't have to think about it, or that your code will run
perfectly the first time. Veterans don't walk around with the code for fact in
their head. But you should be able to go through the process to getting the
right answer.

It doesn't really matter how long it takes to get to the solution, do not feel
bad that it's a struggle. The "this just doesn't make any fucking sense"
feeling is normal for a new programmer, and it DOES pass.

Absolutely resist the urge the just search for the answer. That pain you feel
in your head is part of the learning process.

Good luck with your challenge!

~~~
zaroth
Took a quick look at coderbyte, also keep in mind a big part of learning the
language is understanding the different underlying types, how to convert
between them, and what built-in functions they provide.

For example, the very first challenge (string reversal) in some languages
you'll get a reverse function right off of the string, but in others you have
find another way, which may involve getting access to each character and
rebuilding the string by hand.

Try solving the same simple problem as many DIFFERENT ways as you can, that
can really help flesh out basic understanding the way to Get Things Done in
that language.

------
AbhishekBiswal
Here's a list of resources :
[http://superherojs.com/](http://superherojs.com/)

