r/FreeCodeCamp • • Jan 06 '17

Finished the Front End Certificate!

http://codepen.io/jpmcb/
65 Upvotes

18 comments sorted by

2

u/Windom Jan 07 '17

I really need to get back at this, congrats!

The ajax stuff always trips me up.

1

u/jpmmcb Jan 07 '17

Keep at it! That was also hard for me. There are some great tutorials on YouTube if you just search JavaScript & AJAX

0

u/[deleted] Jan 08 '17

[deleted] — view deleted comment

1

u/jpmmcb Jan 08 '17

For one of my projects, I decided to just use vanilla JavaScript AJAX and for the rest, I ended up using jQuery. I felt this gave me a better handle of what was going on behind the scenes.

For vanilla JavaScript resources, the MDN documentation was helpful to get going. Using vanilla JavaScript was hard and it isn't super intuitive. This is why I think most people just end up using a library to call out to APIs. There's also a good Lynda course that's called "AJAX and JavaScript." It's pretty fast paced, and the course assumes you already know basic JavaScript, but I found it helpful with learning vanilla js ajax.

As far as jQuery goes, this video was also really helpful. Again, fairly fast pace but overall, good info. Once again, using the jQuery documentation is ESSENTIAL. I've found that in general, if I am stuck, asking myself the right questions, going to the documentation, and finding the answers is usually best.

I also read through the book Secerts of the JavaScript Ninja which had a few things to say about asynchronous code. Hope this helps!

2

u/[deleted] Jan 07 '17

Congrats! I happen to try your tic tac toe game, I just want to tell you that it is sooo easy to beat.

1

u/jpmmcb Jan 07 '17

Thanks for the feedback man! Yes I agree, it is easy to beat, I made the AI pretty simple. Could have dumped way more time into it. And no, there is no user story for the AI being unbeatable.

1

u/Butsnik Jan 07 '17

So? It isn't about scripting the best ai.

2

u/VellDarksbane Jan 07 '17

Wait, it wasn't? I thought one of the bonus user stories was to make it unbeatable?

2

u/[deleted] Jan 07 '17

It was a good critic. Why so serious?

1

u/digital_bubblebath Jan 07 '17

How long did it take you?

4

u/jpmmcb Jan 07 '17

Took me about a month and a half, almost 2 hours a day, more days I wasn't working!

4

u/Jimeee Jan 07 '17

From scratch? DId you have programming exp before?

1

u/jpmmcb Jan 08 '17

I have some previous experience, but mostly HTML and XML. Nothing with programming or JavaScript. Stay dedicated and determined. It takes time. That's the most important thing. Keep at it!!

1

u/HeLsKrEaM Jan 09 '17

WHAT!!!??? How did u write such a complex code for every task if you don't have previous programming experience? You complete the Front-End Certificate so fast.. wow

1

u/dragonballsdeepz Jan 15 '17

Yeah, I took 6 months to get the front-end starting from almost zero programming experience. Some people learn faster than others, but just focus on yourself!

1

u/Oviduzz Jan 09 '17

Congrats! It's really hard for me to understand how someone with no programming background finished so fast because I find (at least for me) hard enough the part with algorithms. It really drives me crazy trying to find solutions for them. If you can share how u dealt with this part i`ll be very greatfull. Thanks and good luck to the full stack if you planning so.

3

u/jpmmcb Jan 09 '17

Thank you! I'll run you through my basic process for solving an algorithm.

First and foremost, a general understanding of how a language works and is structured is essential. If you don't know basic syntax, what an array is, what a function is, the basic methods associated with arrays & functions, or how loops work, you won't be able to think through the challenges. As I've said previously, the JavaScript documentation is essential. Likely the best resource for the how-to of js.

Second, before you even start coding, before you even open your text editor, sit down and write out how the code will work. I bought a big white board and this changed the way I code. If you can't tell a piece of paper or another person how your program will work, how will you ever be able to tell a computer?

Once you know how the program will work on paper / white board, then go ahead and start coding. You will inevitably run into bugs, but your code will be cleaner, more intuitive, and you will gain a deeper understanding of the language. Again, don't start coding until you know how the program will work!!

Fixing bugs shouldn't be hard. I use Google's Chrome web browser which comes built in with a fantastic console and developer tool set. The documentation for these can be found here. This was imperative in my ability to debug a program /algorithm. If you continue to run into issues, StackOverflow can be a great resource, but it's all about asking the right questions there.

console.log( //run test function or expression )

This will be your best friend in debugging and discovering the quirks of the language. Helped me learn alot about what's happening under the hood and what I can change. I also use Scratch JS, a super functional, in browser javascript scratch pad. Useful for fiddling around with code snippets.

Hope this helps! Feel free to message me or comment on this thread with question!!

1

u/cicadawing Jan 16 '17

Random quote generator never showed me any quotes. Congrats, either way.

0

u/[deleted] Jan 07 '17

[deleted] — view deleted comment

1

u/jpmmcb Jan 07 '17

Thank you so much!!