Comments (7)
Following on from @KevinMulhern's point about writing good code. I think highlighting the huge benefits you get from reading through code and the docs is a must. It's really really daunting getting stuck into someone else's code, especially larger projects but there are plenty of good resources out there that we could easily throw something together.
I think we could really help students by giving them resources for joining live hangouts. Codebuddies do some regularly and there are probably some other resources. Maybe if we see a spike in numbers and if the forum takes off we could possibly look at implementing some but for the time being it won't work for us to look at doing this ourselves so third party resources are a must
An enhanced OOP section has already been mentioned. I think it should definitely include a bit more around code organisation. Most of the TicTacToe projects were terrible compared to Hangman in terms of organisation of code and many people struggled there so the resources around that definitely need to be enhanced.
I'll have more of a think and come back with more ideas.
from ruby_course.
@mindovermiles262 yeah lets use this issue as a place to discuss and decide on what the long term projects are. If a majority agree on a long term project. Then we can make it official by putting it in the project board.
from ruby_course.
I've created a "Long Term" project board. Please add suggestions there
from ruby_course.
Longterm projects I think we can do without having any adverse effects on the rest of the curriculum:
-
Expand the OOP lessons into a section
Currently we have one lesson and a couple of projects for teaching OOP. We could very easily vastly improve the quality of the ruby course by expanding OOP out into a section with individual lessons,History and Justification for OOP
,Classes and Instances
,Modules
,Public and Private Methods
etc -
Proper testing lessons
An entire section that will teach the philosophy and techniques to test properly. This has always been a soar point in the curriculum. There aren't many good resources out there for this so we will probably have to roll our own content here. I'm very willing to put the time into this one. -
Writing Good Code
We always recommend people to read Poodr in the chat, we might as well have a section about S.O.L.I.D design principles, refactoring and the basics of design patterns in the main course. We could use poodr as one of the resources, its not free but I think we would be doing students a disservice by not putting them through the book as part of the course.
from ruby_course.
@CouchofTomato 👍 👍 👍 for reading code, we should also explain the best techniques for doing it. That's a really useful skill with large code bases.
I just thought of another potential long term project, a full suite of lessons about enumerable methods. Once you know enumerable methods well, it opens a big part of Ruby up.
I envision these lessons being spread throughout the project, a basic enumerable lesson in the basics section. An intermediate enumerable lesson further on and finally a advanced enumerable lesson near the end of the course.
from ruby_course.
I think we could also look at some of the more widely used design patterns. Where it goes I'm not sure because it equally applies to Ruby, Rails and JS. It doesn't need to be a massive thing because I know design patterns are a rabbit hole but knowing the common ones (decorators etc) would be useful. Especially since the final chess project definitely has scope for some (command pattern etc).
from ruby_course.
@CouchofTomato agree with all that, cover the most common design patterns they will come across and direct them to more comprehensive resources if they want to learn more.
from ruby_course.
Related Issues (20)
- Ruby Basics Lessons HOT 10
- Basics of Object Oriented Programming Lessons HOT 6
- Test Driven Development Lessons HOT 7
- Files and Serialisation Lessons
- Intermediate Object Oriented Programming Lessons HOT 2
- Advanced Ruby Lessons HOT 2
- Change Link in Event Manager Project HOT 2
- `Errno::ENOENT` error in Event Manager HOT 1
- Advanced Ruby Building blocks resource links Amazon page HOT 3
- Broken link in project event manager lesson HOT 1
- Event Manager HOT 8
- broken link? HOT 5
- Missing Video HOT 4
- Lesson: Structuring Tests in RSpec
- Lesson: Mocks and Stubs
- Lesson What to Test
- "Beginning Ruby" resource has missing pages HOT 3
- Grammar issues in Event Manager project HOT 1
- Intermediate Ruby/OOP: Links to eBook HOT 4
- Split I/O Serialization HOT 1
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 ruby_course.