Code Monkey home page Code Monkey logo

Comments (7)

CouchofTomato avatar CouchofTomato commented on May 29, 2024 2

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.

KevinMulhern avatar KevinMulhern commented on May 29, 2024 1

@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.

mindovermiles262 avatar mindovermiles262 commented on May 29, 2024

I've created a "Long Term" project board. Please add suggestions there

from ruby_course.

KevinMulhern avatar KevinMulhern commented on May 29, 2024

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.

KevinMulhern avatar KevinMulhern commented on May 29, 2024

@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.

CouchofTomato avatar CouchofTomato commented on May 29, 2024

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.

KevinMulhern avatar KevinMulhern commented on May 29, 2024

@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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.