After the Basic Algorithms

So… I’ve just completed the Basic Algorithm Scripting challenges and have moved on to JSON and API’s…

I’m a little confused at this point…
Did FreeCodeCamp stop teaching the material and start simply giving you code to copy and paste into the editor without explanation? Every bit of the JSON tutorials and challenges have said “This is what we can do, here is the code to do it.” I don’t understand how anyone can learn an advanced topic that way…

Why doesn’t it teach you exactly what each expression is supposed to be doing without assuming you just understand the jist of the lesson? Am I overthinking this section of the course? Is this just supposed to be an overview and not an actual lesson on the mechanics of the particular language or application? So many questions…

JSON responses and API methods vary so much from API to API that its only practical to learn from examples. A larger part of these tests will be doing additional research on JSON syntax as well as API documentation.

But I feel like learning programming that way is just like learning a spoken language that same way. For example, if I said

Here’s some Korean that means, I’m really hungry right now, so I’ll make a sandwich

제가 너무 배고파서 샌드위치 만들 거에요.

and here’s some Korean that means, I’m gonna study hard to do well on the test

저는 시험을 잘 하러 공부 열심히 할 것입니다.

And then I said, now you know Korean.
I hope I don’t sound like I’m complaining, but at the same time, I hope the point I’m trying to make is getting across.

That said, is there anywhere that can specifically take me step by step through JSON responses and API methods? If not step by step, could you recommend somewhere to do a little extra homework?

I kind of understand what you’re getting at, but regardless you’ll have to figure it out and there are plenty of resources out there to help you do so. My personal favorite is MDN’s documentation: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON
From there API’s is all about reading the API documentation for example: http://openweathermap.org/current
After that I like to read other user’s code and try to understand whats going on. Take it step by step I promise it is nothing you haven’t seen already. Everything can be eventually broken down into functions and variables and essentially thats all JSON and API’s are. JSON is a syntax for objects (which you should be familiar with), and an API is kinda just a set of methods attached to a URL (this is very loose definition).
I hope this helps,
Ethan

2 Likes

@huntinghawk1415,

Part of becoming a great coder is learning how to dive into the documentation and other learning sources [such as the ones @Ethan-Arrowood pointed out] so that you understand how the code works. It’s the trial and error of trying things to see what happens or doesn’t happen that gives you the understanding you need. FCC is a great resource which lends itself to this model. They also provide the greatest support when you get stuck and can’t figure the answer out on your own; they point you in the direction you need to go; they help you with your logic so you can arrive at the answer on your own. To be honest, its exactly the same thing for those in a more traditional ‘classroom’ setting. A teacher can show you how things are supposed to work, but to truly grasp and comprehend how something really works, you still have to spend the time diving into extra-curricular resources yourself and playing around with the code on your own until you feel you know what you’re doing. In my opinion, this weeds out the wannabes from the real deal. The cream rises to the top so to speak. It boils down to, do you only want to know enough to get by, or do you want to become a great coder? If you do, then there is absolutely no substitute for digging and learning on your own. If you don’t learn how to do that, what are you going to do when you come up against a coding challenge you haven’t seen yet? Traditional teaching can’t prepare you for every situation you’re likely to run into; but if it can teach you how to find the answers yourself, then that teaching method succeeded. Just my humble opinion. Thanks!

3 Likes

Thanks for the great answers @Ethan-Arrowood and @AgedLace. The resource you provided along with the advice are very helpful! Hopefully I come to grasp it over time.

2 Likes