Skip to content

Latest commit

 

History

History
120 lines (102 loc) · 2.91 KB

PROGRAM.md

File metadata and controls

120 lines (102 loc) · 2.91 KB

Hacker School Monterrey

A continuación se presenta el esquema para el programa de backend con duración de 7 semanas impartido en la Hacker School Monterrey.

Esquema del programa

Antes de continuar leyendo es recomendable revisar el 'prework', ya que contiene información sobre los temas a conocer previo a comenzar el programa. Lo puedes revisar aqui.

Week 1

  • Introducción a git & Github
    • Comandos básicos(commit, push, pull, rebase)
    • Flujo de trabajo con git
    • Creación de cuenta en Github
    • Sincronización de un repositorio local con uno remoto
  • Introducción a la línea de comandos (bash & zsh)
    • Creación de directorios
    • Cambio entre directorios
    • Remover archivos y/o directorios
  • Ruby 101
    • Tipos de dato: Strings, FixNum, Boolean, Nil
    • Variables y comentarios
    • Estructuras de datos: Arrays & Hashes
    • Condicionales (if, else, unless, conditional assignment)
    • Ciclos e iteradores
    • Métodos (class & instances, optional arguments, named arguments, hash arguments, *splat)
    • Clases (instance variables, method override, self, method visibility, inheritance)
    • Excepciones
    • Modulos (include, extend, self.included)
    • Bloques (yield, pass arguments)
    • RubyGems
  • Construyendo un servidor web con rack
    • Peticiones HTTP
    • Arquitectura cliente/servidor

Week 2

  • Ruby avanzado
    • Procs
    • Lambdas
    • Symbol to proc & symbol to block
    • Mising method
  • Introducción a Test Driven Development
    • Red, green, refactor
    • ¿Por que TDD?
  • Introducción a RSpec
    • Describe blocks
    • Context block
    • Expectations
    • Matchers

Week 3

  • Filosofía en Rails
  • MVC
  • Arquitectura tipo RESTful
  • Introducción a:
    • Comandos básicos(server, console, migrations)
    • Estructura de una aplicación de Rails
    • Modelos & ActiveRecord (finders, scopes, associations)
    • Controladores (Strong parameters, action hooks)
    • Vistas
      • Helpers mas utilizados
      • Parciales
      • Layouts
  • Enrutamiento básico
    • Recursos
      • Miembros
      • Colecciones
    • Rutas definidas
  • Manejo de usuarios
    • Sesiones
    • Registro
    • Recuperación de contraseña
    • Agregar complejidad a una contraseña
  • Debugging
    • PRY

Week 4

  • Autorización
  • Asociaciones polimórficas
  • Asociaciones recursivas
  • Trabajos en cola con ActiveJob
    • DelayedJob
    • Sidekiq
  • RSpec & Rails
    • Guard
    • Factories
    • FFaker
    • Unit testing

Week 5

  • Tecnicas de optimización
    • Eager loading
    • Counter cache
    • Paginación
  • Manejo y creación de backoffice
    • Enrutamiento avanzado (namespaces, nested resources)

Week 6

  • i18n
  • Calidad de codigo, principios y buenas practicas
    • Manejo de excepciones
    • Manejo, uso y nombre de variables
    • Manejo, uso y nombre de funciones
    • Single Responsibility Principle
    • Duck Typing
    • Inheritance
  • Antipatrones de diseño en Rails
    • God objects
    • Code duplication
    • Monolithic controllers

Week 7

  • Code Retreat & Hack on projects