Module 2 Success
Graduation Requirements
In order to graduate from Module 2, students must complete each of the following:
Follow the Guidelines and Expectations
Deliverables and Assessments
The following items are evaluated and assessed by instructors as part of consideration to promote you on to Module 3:
- Successful completion of the following deliverables:
- Intermission Pre-Work Submission instructions are included in the pre-work.
- Weekly Checks for Understanding (CFUs)
- Laugh Tracks, solo project, week 1
- does NOT count toward promotion
- One or more of the following projects must be fully completed and given a “passing” grade
- Book Club, paired project, week 2 and 3
- Little Shop, group project, week 4 and 5
-
Little Shop Extensions, solo project, week 6, must be completed and given a “passing” grade
- Write a technical blog post, due by week 2
- ActiveRecord Obstacle Course, due by week 6
- Mid-Mod Evaluation, does NOT count toward promotion
- Final Coding Assessment must be given a “passing” grade, or a retake must be successfully completed
- Final Technical Communication Assessment
Assessments and Final Project
Students are expected to satisfactorily complete all written and timed assessments.
Each student will be required to complete a final solo project which will is a major determining factor for promotion to Module 3.
Class Participation
Students are expected to follow Turing’s Code of Conduct and be respectful in class with regards to timeliness, paying attention to instructors, and contributing well in class for turn-and-talk sessions, journaling and note-taking, and answering prompted questions.
Group Projects
Students are expected to be a contributing team member in all group projects in Module 2. Students are expected to complete the checklists provided for each project and provide feedback for one another.
Blog Post
Write a minimum of 1 technical blog post about a topic of your choice, must include screenshots or visuals, and should be about some aspect of coding or software development. Post it to Medium or your personal blog site.
Professional Development
Students are expected to contribute during the Professional Development session and submit deliverables from that session (see goals below).
Skills and Topics
Skill Proficiencies
In addition to the above, academic success in Module 2 means that students demonstrate proficiency and comfort with the concepts below. The expected mastery level can be understood with the following scale:
- Mastery: student is able to explain and implement the concept independently or with light reference
- Functional: student recognizes when to use the concept and can implement it with the support of documentation and/or a collaborator
- Familiarity: student can recognize and describe the concept when needed/appropriate, but is not able to implement the technology/technique
Mastery in the following skills
Mastery in the following skills
- Diagram and explain the MVC model
Functional in the following skills
- Be able to implement authentication and authorization within a Rails application
- Make use of flash messages
Models
Mastery in the following skills
- Differences and use cases between a model that inherits from ActiveRecord vs a PORO
- Class methods vs. instance methods
Views
Mastery in the following skills
- Template a view in Rails using a templating language (eg,
erb
) - How to create a form in a view using Rails, including a form using nested resources.
Controllers
Mastery in the following skills
- Understand the controller’s role as a dispatcher between client and server
- Be able to build RESTful CRUD actions:
index
,show
,new
,create
,edit
,update
,destroy
Routing
Mastery in the following skills
- Understand best use of route helpers and path helpers
Functional in the following skills
- Implement RESTful routes for resources
- Implement and understand namespace and nested routes
HTTP
Mastery in the following skills
- Diagram and explain the HTTP request/response cycle
Functional in the following skills
- Understand the different segments of a URL (protocol, host, path, query params)
- Understand application state and sessions
Familiarity in the following skills
-
Understand what headers, body and status codes are in this context
- Have deep understanding ActiveRecord query methods, including differences between
find
find_by
andwhere
- Understand how to CRUD resources with ActiveRecord
- Create relationships between resources using ActiveRecord
Mastery in the following skills
- Model testing with RSpec including validations, and class and instance methods
- Feature testing with RSpec / Capybara
SQL and Database Planning
Mastery in the following skills
- Articulately speak to one-to-one, one-to-many, many-to-many relationships
ActiveRecord
Mastery in the following skills
- Have deep understanding ActiveRecord query methods, including differences between
find
find_by
andwhere
- Understand how to CRUD resources with ActiveRecord
- Create relationships between resources using ActiveRecord
HTML, CSS
Functional in the following skills
- Understand basic HTML tabs, elements, nodes
- Target specific HTML content with CSS selectors
Familiarity in the following skills
- Basic use and understanding of modern CSS grid systems
SQL and Database Planning
Functional in the following skills
- Be able to design database schemas that represent relationships between resources
Familiarity in the following skills
- Writing and executing ‘raw’ SQL statements that insert, select, calculate, join, order and group
Career Development
- Cultivate empathy when working with others
- Building teamwork competencies using agile practices
- Applying personal strengths to a teamwork setting
- Building professional relationships both with cohortmates and mentors
- Conduct conversations around feedback
- Use feedback from teammates to improve own practices