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

categorización de los contenidos #16

Open
gaboesquivel opened this issue Oct 20, 2015 · 8 comments
Open

categorización de los contenidos #16

gaboesquivel opened this issue Oct 20, 2015 · 8 comments

Comments

@gaboesquivel
Copy link
Member

necesitamos una categorización inicial de los contenidos, podríamos empezar con la siguiente

introduccion
conceptos básicos #10
conceptos fundamentales .. lo que tenemos actualmente en el readme
patrones #12
paradigmas de programación #13
modelo de concurrencia y event loop #14
Web APIs
NodeJS
mejores practicas #5

podemos partir de aquí hacia una mejor categorización

@stevengpa
Copy link
Contributor

Me parece excelente 👍

@CharliePops
Copy link

Me parece muy buena la idea del libro. En la seccion de conceptos fundamentales, me parece bien incluir contenido sobre herencia, closures y scope. Pero temas como currying, fabrica y composicion, me parecen deberian ir en la seccion de patrones.

@josoroma-zz
Copy link

Muy bien! Yo estaba dandole a ejemplos de ES5, entonces voy a ver como se comportan en ES6.

@gaboesquivel
Copy link
Member Author

@CharliePops si me parece bien, también estoy pensando que podría ser bueno organizar por paradigmas de programación, me parece más ordenado que mezclar paradigmas.

__ Introducción__

  • Historia
  • TC39
  • ES5 / ES6 / ES7 / Node
    • babel ( instrucciones para correr los ejemplos )

Conceptos Fundamentales

  • variables
  • operadores
  • estructuras de control
  • objetos
  • tipos
    • cadena de caracteres
    • números
    • NaN, null, y undefined
  • matrices
  • funciones
  • cierres ( closures )
  • ámbito ( scope ) y contexto
  • funciones son ciudadanos de primera clase
  • módulos

Ejecución de Programas de JavaScript

  • JavaScript Engines
  • Stack de Llamadas
  • Modelo de Concurrencia
  • Node.js

__Web APIs __

  • DOM
    • dom events
  • Cache
  • Storage
  • Web Sockets
  • File System

Paradigmas de Programación

Funcional

  • bases y conceptos
    • funciones de alto orden
    • immutabilidad
  • patrones
    • composición
    • currying
    • recursividad ( recurción? )
    • monads
    • pattern matching
  • buenas practicas

Orientado a Objectos

  • bases y conceptos
    • clases
    • propiedades
    • métodos
    • herencia
    • polimorfismo
  • patrones
    • constructor
    • fabrica
    • singleton
    • proxy
    • etc ...
  • buenas practicas

Event-Driven

  • bases y conceptos
    • signals or events
  • patrones
  • buenas practicas

Funcional Reactiva

  • bases y conceptos
  • patrones
    • namespacing
  • buenas practicas

Buenas Practicas

  • Composición sobre herencia
  • JavaScript idiomático
  • Control de Calidad y Guías de Estilo
  • GitHub Flow?
  • Module Driven Development
  • Readme Driven Development

Qué les parece?

@josoroma-zz
Copy link

ahh hola,

Queria proponer tres cosas:

  • Nombres de carpetas o sub-carpetas no utilicen tildes o espacios o caracteres no tipicos entre [0-9a-z] y que esten en minuscula.
  • Temas extensos como book/web-apis/almacenamiento tengan un readme o intro base contando la historia de como ha trabajado, trabaja y va a trabajar. Un ejemplo de intro:

https://github.com/josoroma/Fundamentos-de-JavaScript/blob/feature/web-apis/almacenamiento/intro/book/web-apis/almacenamiento/intro.md

  • Cuando se agrega un tema se utilice en el nombre del branch algo como feature/wep-apis/almacenamiento/intro y cuando se mejora se use algo como improvement/wep-apis/almacenamiento/cookies_fix_typos o improvement/wep-apis/almacenamiento/cookies_extend_limits asi no manejamos bug o hotfixes que creo no aplica para nuestro caso, osea no es un gitflow tan puro, dei gual manera esta la forma semver.org de nombrar branches tambien. Por ejemplo: https://github.com/josoroma/Fundamentos-de-JavaScript/branches

En realidad el sufijo fix_typos o el _extend_limits seria el ID del issue que Jira y Bitbucket remplazan de manera tuanis, peeero nosotros tampoco estamos manejando issues o user stories. Pienso que los branches nombrados de esa manera son mas faciles de trazar.

Asi estoy creando los branches por el momento:

git checkout -b feature/web-apis/almacenamiento/intro

si lo quisiera mejorar despues de haber sido aceptado y mergeado:

git checkout -b improvement/web-apis/almacenamiento/intro_extend_localstorage

Me cuentan como les suena? Gracias!

@gaboesquivel
Copy link
Member Author

@josoroma lo que comentas sobre nombres de branches no pertenece al hilo de esta conversación, no tiene que ver con categorización de contenidos. Ahora bien, respondiendo tu pregunta el nombre que le des a tus branches no importa, lo importante es que sigue la guía para pull request

cambiar nombres de las capetas si definitivamente, ver #28

no veo problema introducción en temas si es necesaria, únicamente asegurarnos seguimos siendo concisos y tenemos ejemplos prácticos... explicación siempre acompañada de código.

@stevengpa
Copy link
Contributor

@gaboesquivel , quizás puede revisar el PR #42 y #43 , luego de esto podemos trabajar en otro PR la estructura de arriba, la cual está muy completa ⛽

@gaboesquivel
Copy link
Member Author

gracias @StevenPerez, listo. Perfecto.. una vez que esto quede listo podemos empezar a ordenar el resto del backlog

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

No branches or pull requests

4 participants