Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Queues - Kayla Kubicke - Media Ranker #34

Open
wants to merge 38 commits into
base: master
Choose a base branch
from
Open

Queues - Kayla Kubicke - Media Ranker #34

wants to merge 38 commits into from

Conversation

ghost
Copy link

@ghost ghost commented Apr 16, 2017

Media Ranker

Congratulations! You're submitting your assignment!

Comprehension Questions

Question Answer
Describe a custom model method you wrote. I did not write any model methods but if I had time I would move my voting logic currently inside the works controller into my vote model.
Describe how you approached testing that model method. What edge cases did you come up with? I am still working on my tests.
Describe an edge case test you wrote for a controller I am still working on my tests.
What are session and flash? What is the difference between them? Session is a filter that holds on to small bits of data between requests. Flash is a filter that holds on to bits of data that exists for one request. Flash data is deleted if a new request is made.
Describe a controller filter you wrote. In my sessions controller, if a user logs in successfully an affirmative message is flashed. If a user does not correctly log in, a failure message is displayed.
What was one thing that you gained more clarity on through this assignment? I gained a lot of knowledge overall, but I specifically learned more about unRESTful routes.
What is the Heroku URL of your deployed application https://kaylasmediaranker.herokuapp.com/
Do you have any recommendations on how we could improve this project for the next cohort? N/A

Kayla added 30 commits April 10, 2017 15:23
@droberts-sea
Copy link

Media Ranker

What We're Looking For

Feature Feedback
Core Requirements
Git hygiene yes
Comprehension questions yes
General
Rails fundamentals (RESTful routing, use of named paths) yes
Semantic HTML yes, though there are some pieces you could DRY up with partials
Errors are reported to the user n/a
Business logic lives in the models no - see below
Model testing no - see below
Controller testing no
Wave 1 - Media
Splash page shows the three media categories yes
Basic CRUD operations on media are present and functional everything but edit - the form for an existing work wouldn't render
Wave 2 - Users and Votes
Users can log in and log out yes
The ID of the current user is stored in the session yes
Individual user pages and the user list are present the list works, but individual pages do not render
A user cannot vote for the same media more than once yes
All media lists are ordered by vote count no
Splash page contains a media spotlight no
Media pages contain lists of voting users yes
Wave 3 - Styling
Foundation is used appropriately yes
Look and feel is similar to the original yes
Overall

Good work overall! MediaRanker is a complex project with many moving parts, but is seems like you've gotten most of the core functionality. While I'm not worried about the more advanced voting features, I do have a few concerns:

  • It looks like you've got extra bits and pieces all over the place. For example, there's a books_index.html.erb under app/views/user, and you have index methods in all your models. This implies to me that your mental model of what goes where might be a little shaky, and it might be worth spending some time working on this.
  • You don't have any model logic, not even validations. Things like selecting the top 10 media for a given category or finding the media spotlight are great candidates for class methods on the model. This sort of model code tends to be the closest thing we get to CS Fun in Rails, and it's important to practice.
  • You have almost no tests. Writing good tests forces you to follow your code all the way through and think about all the possible states and interactions, and is an excellent learning tool.
  • You didn't include a single one of Sabbath's Dio albums in your seeds.

Some time during bEtsy, I would like you to spend some time focused on working with and testing models. Pick something with some interesting potential for validations and internal logic, and see what you can come up with. Feel free to reach out to Jamie or I if you need some direction or clarification here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant