Function Basics: <Short description of your suggestion>
Checks
- [x] This is not a duplicate of an existing issue (please have a look through our open issues list to make sure)
- [x] I have thoroughly read and understand The Odin Project Contributing Guide
- [ ] Would you like to work on this issue?
Describe your suggestion
Please remove the MDN links from https://www.theodinproject.com/lessons/foundations-function-basics.
I have never been more confused in my life.
The javascript.info are great in explaining everything.
MDN assumes you have 10 years of experience.
Path
Node / JS
Lesson Url
https://www.theodinproject.com/lessons/foundations-function-basics
(Optional) Discord Name
No response
(Optional) Additional Comments
No response
MDN assumes you have 10 years of experience.
I find this to be a rather vague description, both the MDN and JavaScript.info article are descriptive in their own way and I think learners can navigate around these articles after reading the written material from The Odin Project's lesson.
If you could share us what exactly makes the MDN article confusing to follow, I think we can move further with this conversation.
I think it is the fact that most of the examples that are being used are using functions that "take a source string".
Like I don't even really know what a function is yet, and MDN is explaining functions to me by using a "string method" and calling it in a way I am not familiar with yet.(without explaining it, or was previously explained in the MDN course)
Like at least explain that the repeat built in function needs two parameters while you are showing it to me ( this was stated later) and that a normal, basic function will just take parameters (as explained from Odin).
Like what I'm saying is, I was just taught what a function is, and that it is called by having an argument to be used inside the function, and then I open MDN and see this built in function call, and I'm like "is this a different way to call functions? is it an object? why did they not just simply call the function as usual?" instead of actually learning what a function is.
JS.info starts to explain functions, by using functions!!!!
MDN's first shot at explaining functions (built in functions):
///////////////////////////////////////////////////////////////// const myText = "I am a string"; const newString = myText.replace("string", "sausage"); console.log(newString); // the replace() string function takes a source string, // and a target string and replaces the source string, // with the target string, and returns the newly formed string /////////////////////////////////////////////////////////////////
So me here thinking "wait, that is not really what I just read from Odin's Functions lesson... why do we have a string before the function now, etc...."
JS.info:
///////////////////////////////////////////////////////////////// Clearly declaring a function so I can see what a function really is:
function showMessage() { alert( 'Hello everyone!' ); } /////////////////////////////////////////////////////////////////
Then clearly showing me how a function is called
///////////////////////////////////////////////////////////////// function showMessage() { alert( 'Hello everyone!' ); }
showMessage(); showMessage(); /////////////////////////////////////////////////////////////////
Then clearly showing me how parameters are used.
///////////////////////////////////////////////////////////////// function showMessage(from, text) { // parameters: from, text alert(from + ': ' + text); }
showMessage('Ann', 'Hello!'); // Ann: Hello! (*) showMessage('Ann', "What's up?"); // Ann: What's up? (**) /////////////////////////////////////////////////////////////////
So MDN was explaining to me what wood is by showing me a paper, JS.info showed me the tree.
Don't want to waste your time or anything, but yea MDN got me really confused lol
Thanks for the feedback and specific details @oalsheik, the context helps a lot.
I'm going to advocate for keeping the MDN article mainly because MDN is where you will find yourself a lot in the future, and getting used to their more comprehensive explanations and examples sooner rather than later is very important.
That being said, I can see where you're coming from and think moving the javascript.info resource to the start would be a more appropriate order. The MDN stuff is very valuable but perhaps not as the initial assignment; having the javascript.info article first would serve as a better introduction and also give you more context for when you then go into the MDN one.
Side note, the built-in function stuff isn't really anything new because you'll have come across them in the Data Types and Conditionals lesson a little while back. But I can see how that being the very first thing in the assignments might throw you off.
Acceptance criteria
- [ ] Bring the 3rd assignment (the javascript.info one) to the start of the assignments. Rephrase the first sentences of that and the MDN assignment accordingly.
Comment below if you'd like to be assigned to work on this issue. Please do not open a PR unless you have been assigned by a maintainer.
Thanks for the feedback and specific details @oalsheik, the context helps a lot.
I'm going to advocate for keeping the MDN article mainly because MDN is where you will find yourself a lot in the future, and getting used to their more comprehensive explanations and examples sooner rather than later is very important.
That being said, I can see where you're coming from and think moving the javascript.info resource to the start would be a more appropriate order. The MDN stuff is very valuable but perhaps not as the initial assignment; having the javascript.info article first would serve as a better introduction and also give you more context for when you then go into the MDN one.
Side note, the built-in function stuff isn't really anything new because you'll have come across them in the Data Types and Conditionals lesson a little while back. But I can see how that being the very first thing in the assignments might throw you off.
Acceptance criteria
- [ ] Bring the 3rd assignment (the javascript.info one) to the start of the assignments. Rephrase the first sentences of that and the MDN assignment accordingly.
Comment below if you'd like to be assigned to work on this issue. Please do not open a PR unless you have been assigned by a maintainer.
I'll take this on!