Comments (10)
Hey @prashcr, Thanks for putting this together, all of your suggestions make sense. You clearly know a lot about node.js which is something that we haven't focused on much in Odin. I have an idea, why don't you take the lead to build out that part of the curriculum? it's a catch all at the moment because no one really has put much time into it lately other than @muzfuz, who has been working on improving parts of the Javascript course in the past couple of months. You could break it out into as many sections as you want for different concepts with node. It will also need a few projects.
If you don't want to do that, could you put a pull request together, with your all the changes you want to implement on the node section that already exists. I really like what you have suggested here and I am positive that it would improve the node section drastically.
If you do decide to build out that part of the curriculum it would be worth talking to @muzfuz to exchange ideas.
from curriculum.
Yea the JavaScript section needs a lot of love. I'm happy to talk it through more, as there definitely needs to be a clear approach for students to learn how the various JavaScript technologies fit together.
from curriculum.
Sounds good 👍
I guess for a first step, we can agree on moving the server-side after the front-end. Not sure how to do that here though, I'm guessing it's on the main repo?
EDIT: Found it
from curriculum.
I think you just add a new file to the curriculum repo. Do what you think is right @prashcr. Are you on the slack chat for Odin? we have a private contributions channel over there that I can invite you to, so we can get communicate instantly when you have questions, want feedback etc
from curriculum.
Yep, under the same username. I looked around here, but the curriculum repo deals strictly with content. The seeds.rb
file in the main repo is what loads the curriculum files from here in a specified order.
from curriculum.
I'm not totally sure I agree with moving front-end JavaScript before the back-end.
NodeJS is not a framework - it's an environment for running JavaScript on a computer, and therefore a great way to teach plain JavaScript. (Granted, the curriculum currently isn't geared toward that right now).
Once you start talking about front-end JavaScript, the various APIs (even those included with the browser) can muddy the waters enough to make it confusing for students who are looking to understand the JavaScript syntax first.
So to my mind, the first port of call for any student should actually be JavaScript within the Node environment, but without any of the standard packages that it includes. That way, they can become familiar with the syntax of JavaScript functions and objects before moving on to the abstractions that front-end frameworks and libraries introduce.
from curriculum.
Assuming that students are completing the curriculum in order, by the time they get to either front-end or back-end JavaScript (which are in an optional section of the curriculum), they would've already completed Codecademy JavaScript, Codecademy JQuery, (optionally, CodeSchool JQuery), built Project Etch-a-Sketch, and solved 3 Project Euler problems with it, all from the compulsory parts of the curriculum.
Sure, there might be some gaps in their knowledge that aren't explicitly covered, such as functional methods (e.g. map, reduce, filter, call, bind, apply) or a solid understanding of scopes/closures, but we don't have to go over the basics again.
I myself followed TOP's track for JavaScript in Web Dev 101 earlier this year (but I fully completed every tutorial they mentioned, instead of doing half and putting it off till later). From there, I was able to pick up map, reduce and filter through FreeCodeCamp's bonfires, while I learned scopes/closures and the other FP methods from googling, and after that I found I was in a perfect place to start trying out Angular and React.
I found two solid NodeSchool tutorials for both though
https://github.com/timoxley/functional-javascript-workshop
https://www.github.com/jesstelford/scope-chains-closures
from curriculum.
Hey @prashcr are you still working on this or should I close this issue?
from curriculum.
Hey, my apologies, I've gotten a bit busy as of late and I'm not actively working on it at the moment
from curriculum.
Ok I will close this for now, but if you want to come back to it in the near future please let me know :)
from curriculum.
Related Issues (20)
- Advanced HTML and CSS Course (Transforms): Remove the incorrect article HOT 3
- HashMap: Thoughts and ideas HOT 11
- Javascript: Form Basics needs to be shortened HOT 6
- Git Basics: Unrelated histories pitfall HOT 2
- Custom Properties: <Correct an inaccurate statement> HOT 3
- Introduction to Grid: <Broken image> HOT 3
- Ruby: Using Git in the Real World: Item 5 under Ongoing Workflow wrong instructions HOT 1
- Foundations/CSS Foundations: Update lists per layout style guide HOT 7
- Foundations/JavaScript Basics: Update lists per layout style guide HOT 33
- Natural Responsiveness Adv. HTML / CSS: Information behind a separate link HOT 6
- Intermediate HTML and CSS - Default Styles: Revise lesson HOT 9
- Intermediate HTML and CSS - CSS Units: Add link to additional resources HOT 3
- Intermediate HTML and CSS - More Text Styles: Add information on performance considerations with fonts HOT 1
- Objects and Object Constructors: "Gentle explanation of this in Javascript" article long-stretched and text-heavy HOT 6
- How To Deal With Side Effects: Better explanation of Clock going berserk HOT 4
- Intermediate HTML and CSS - Advanced Selectors: Clarify general sibling selector HOT 1
- Foundations: add extra notes about how password typing works HOT 3
- Objects and Object Constructors: Explain Object.create HOT 7
- Intermediate HTML and CSS - Custom Properties: New video resource
- Javascript : A video resource on visualizing Prototypes and the Prototype Chain.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from curriculum.