Hola gente! Una forma alternativa, de llegar a difundir el tema.
Pasar en limpio lo que se da, y pasarlo a posts. Se que se pierde lo de dar un curso interactivo, pero por otro lado, el esfuerzo permite que: - Quede expuesto al gran google - Cualquiera lo puede consumir - Es base para un libro u otros contenidos - El esfuerzo de "pasarlo en limpio y por escrito" es un gran ejercicio: desde Richard Feynman y sus Lectures (pasadas de dar clase a libro), que tenemos: "si no sabemos explicarlo, es que no lo entendemos". Y Feynman enseniaba de tal manera, que tranquilamente lo que dio se pudo pasar por escrito. Por ejemplo, para ayudar, alguno de los asistentes puede ir grabando la voz, el material ser pasado a dibujos, codigo, presentacion con notas, etc... Es mi gran opinion personal: todo curso dictado deberia ser posible de pasar a ese formato: por escrito. Segunda alternativa: Filmarlo, y ponerlo en Youtube u otros Problema: hay que saber filmar, ver que no se pierda algun detalle, etc... Ya escribi sobre el tema: http://ajlopez.zoomblog.com/archivo/2007/07/22/lo-que-no-esta-escrito-no-existe.html http://ajlopez.zoomblog.com/archivo/2008/09/05/la-difusion-del-conocimiento-en-Intern.html http://msmvps.com/blogs/lopez/archive/2009/09/10/lo-que-no-est-225-escrito-y-en-google-no-existe.aspx http://msmvps.com/blogs/lopez/archive/2009/10/19/ense-241-ando-a-programar-parte-1.aspx Jeje.. pienso que cada cosa que uno opina firmemente, y es hasta una postura, debe estar escrita, por eso esos enlaces ya estaban preparados desde hace anios para comentar este email del bueno de Hernan Wilkinson ;-) Como gran ejemplo de alguien que puede enseniar por video: http://www.khanacademy.org/ Pero antes de llegar ahi. se podria intentar por texto. Nos leemos! Angel "Java" Lopez http://www.ajlopez.com http://twitter.com/ajlopez 2011/4/15 Hernan Wilkinson <[email protected]> > uh... parece que el tema de hacerlo remoto viene en serio... también me > preguntaron de bahía blanca.. > El tema que para hacerlo remoto tendríamos que tener instalaciones para > hacer video conferencia de la buena (no skype con una camarita pedorra :-)) > y no hemos averiguado por este tipo de tecnología... me voy a poner en > campaña.... > > Igual, si fuera de buenos aires se junta un grupo de 10 o más personas que > estén interesadas en el curso podemos ver de ir a darlo ahí, todo es posible > :-) > > > 2011/4/15 Cesar Ballardini <[email protected]> > >> 2011/4/15 Gastón Dall' Oglio <[email protected]>: >> > +10 aprox :)... En la regional Concepción de la UTN podrían estar >> > interesados. >> > >> >> moodle por ahi? :) >> >> > El 15 de abril de 2011 12:50, pablo digonzelli >> > <[email protected]> escribió: >> >> >> >> +1 >> >> El vie, 15-04-2011 a las 12:45 -0300, Cesar Ballardini escribió: >> >> > El día 15 de abril de 2011 10:35, Alex Schenkman < >> [email protected]> >> >> > escribió: >> >> > > ¿Se puede hacer de forma remota, :-) ? >> >> > > >> >> > >> >> > +1 >> >> > >> >> > > 2011/4/15 Hernan Wilkinson <[email protected]> >> >> > >> >> >> > >> Que tal, >> >> > >> quería comentarles que estaremos dando el curso de diseño con >> >> > >> objetos >> >> > >> denominado "Elementos avanzados de Arquitectura de software con >> >> > >> objetos" a >> >> > >> partir de fin de este mes. >> >> > >> Seguramente te estarás preguntando qué puede tener de interesante >> un >> >> > >> curso de "objetos" si todo el tiempo estás trabajando con ellos >> por >> >> > >> medio de >> >> > >> Java, .Net, Ruby, etc. Sin embargo este no es un curso >> convencional >> >> > >> donde se >> >> > >> enseña una sintaxis de un lenguaje cómo si de eso se tratara el >> >> > >> diseño. >> >> > >> Pero, si alguna vez te surgió la curiosidad o te preguntaste de >> dónde >> >> > >> surgió >> >> > >> el paradigma de objetos, qué bases teóricas lo sustentan, cómo se >> >> > >> compara >> >> > >> con el paradigma funcional y cuáles son sus ventajas y desventajas >> >> > >> reales, >> >> > >> entonces este curso es para vos. >> >> > >> Si alguna vez te preguntaste por qué no podés ponerle buenos >> nombres >> >> > >> a >> >> > >> las clases, por qué el paradigma se llama "orientado a objetos" >> >> > >> cuando lo >> >> > >> único que parece que escribís son clases, por qué nunca estás >> seguro >> >> > >> si está >> >> > >> subclasificando correctamente, si debés hacer para reusar código o >> si >> >> > >> debés >> >> > >> hacer porque te conviene, claramente tenés que anotarte en este >> >> > >> curso. >> >> > >> También puede ser que alguna vez te hayas preguntado por qué me >> >> > >> cuesta >> >> > >> tanto mantener los sistemas que desarrollo, por qué hay gente loca >> >> > >> por ahí >> >> > >> que dice que con Ruby es más fácil que con Java y al mismo tiempo >> >> > >> gente que >> >> > >> dice que programar con Java es más "seguro" que con Ruby o por qué >> >> > >> cambiar >> >> > >> el "tipo" de una variable genera un efecto onda que te obliga a no >> >> > >> realizar >> >> > >> el cambio, no quiero sonar reiterativo, pero este curso es para >> vos. >> >> > >> Si alguna vez te preguntaste cuál es en serio la diferencia entre >> >> > >> lenguajes estáticamente tipados y dinámicamente tipados, por qué >> >> > >> JavaScript >> >> > >> no utiliza clases (al igual que otros lenguajes como Self o IO), o >> >> > >> por qué >> >> > >> Java parece haber cumplido su ciclo... hmm tengo que decirte que >> en >> >> > >> este >> >> > >> curso encontrarás esas respuestas. >> >> > >> Si alguna vez tuviste que hacer un copy & paste de un método y >> meter >> >> > >> un >> >> > >> if en el medio para que la cosa funcionara, puesto no entendes >> nada >> >> > >> de lo >> >> > >> que escribó el tipo que lo hizo pero al mismo tiempo sentís que >> >> > >> podrías >> >> > >> hacer algo mejor pero no sabés cómo, bueno, que te puedo decir... >> >> > >> este curso >> >> > >> es para vos. >> >> > >> Si tenés dudas sobre qué decisión de diseño es mejor, sabes que >> >> > >> tenés que >> >> > >> buscar mínimo acoplamiento y máxima cohesión pero no sabes qué >> corno >> >> > >> significa eso, si tenés ganas de perderle el miedo a la >> >> > >> meta-programación >> >> > >> (esta palabra que asusta tanto) o querés saber qué es un lenguaje >> >> > >> "meta-circular", este curso definitivamente es para vos. >> >> > >> En conclusión, si te interesa la "creación" de software, hacer >> >> > >> buenos >> >> > >> programas y tener motivos para estar seguro de tus decisiones de >> >> > >> diseño, no >> >> > >> dejes de anotarte. >> >> > >> Duración: El curso es de 24 horas y lo daremos en 6 clases de 4 >> >> > >> horas, en >> >> > >> el horario de 9 a 13 hrs, dos días por semana. >> >> > >> Objetivo: El objetivo del curso es brindar a los asistentes >> >> > >> elementos >> >> > >> avanzados de Diseño de software con objetos que le permitan >> construir >> >> > >> un >> >> > >> software robusto, mantenible, extensible y reusable >> >> > >> (independientemente de >> >> > >> la plataforma). >> >> > >> Características: El mismo estará compuesto por una parte de >> >> > >> fundamentos >> >> > >> teóricos y otra de ejercicios prácticos. Los lenguajes para los >> >> > >> ejercicios >> >> > >> prácticos son Java, C#, Ruby y Smalltalk. (Al final del mail >> podrán >> >> > >> encontrar una descripción completa del contenido del curso). Este >> es >> >> > >> el >> >> > >> primer curso de los dos de diseño que daremos este año. El segundo >> >> > >> curso lo >> >> > >> estaremos ofreciendo para Junio (pero es requisito haber cursado >> el >> >> > >> primero >> >> > >> para cursar el segundo :-) ) >> >> > >> Costo: El costo del mismo es de $ 1450 IVA INCLUIDO. >> >> > >> Forma de Pago: Los pagos se pueden hacer con transferencia >> bancaria, >> >> > >> efectivo o tarjeta hasta 24 cuotas (con tarjeta hay un costo >> >> > >> adicional del >> >> > >> 5%). >> >> > >> Fechas: >> >> > >> >> >> > >> Clase 1: Lunes 25 de Abril >> >> > >> Clase 2: Jueves 28 de Abril >> >> > >> Clase 3: Lunes 2 de Mayo >> >> > >> Clase 4: Jueves 5 de Mayo >> >> > >> Clase 5: Lunes 9 de Mayo >> >> > >> Clase 6: Jueves 12 de Mayo >> >> > >> >> >> > >> Todos aquellos que estén interesados en anotarse o tengan >> preguntas >> >> > >> envíen un mail a [email protected]. Aún quedan varios cupos. >> >> > >> Saludos! >> >> > >> Hernán. >> >> > >> Descripción completa del curso: >> >> > >> Brindar a los asistentes en primera instancia, los conceptos >> >> > >> fundamentales >> >> > >> de la Orientación a Objetos, con un enfoque tal que ayude a >> producir >> >> > >> un >> >> > >> cambio paradigmático en la manera de pensar al momento de >> construir >> >> > >> software. Para esto se utiliza un enfoque pedagógico >> constructivista >> >> > >> que >> >> > >> permite desarrollar, a lo largo del curso, el Paradigma de Objetos >> en >> >> > >> forma >> >> > >> “pura” — expresando todo el paradigma sólo en términos de objetos— >> y >> >> > >> “minimal” —introduciendo sólo los elementos esenciales que >> conforman >> >> > >> el >> >> > >> paradigma y que permiten la construcción de elementos más >> complejos y >> >> > >> sofisticados—. >> >> > >> En segunda instancia, se verán elementos avanzados de arquitectura >> >> > >> que >> >> > >> le permitan construir software robusto, mantenible, extensible y >> >> > >> reusable, independientemente de la plataforma de desarrollo que se >> >> > >> utilice. Mejorar la calidad de los sistemas desarrollados a partir >> de >> >> > >> entender el concepto de contrato entre objetos, su especificación >> >> > >> (precondiciones, invariantes, etc.) y manejo en caso de >> violaciones >> >> > >> (errores >> >> > >> y excepciones). Proverá un mecanismo de comunicación de diseños >> >> > >> sencillo, >> >> > >> fluido y efectivo >> >> > >> Audiencia: >> >> > >> Programadores, Diseñadores, Arquitectos >> >> > >> Temario: >> >> > >> >> >> > >> Concepto de “paradigma” >> >> > >> Definición de "paradigma de objetos" y “programa orientado a >> >> > >> objetos” >> >> > >> Historia del surgimiento paradigma >> >> > >> Concepto de abstracción >> >> > >> Conceptos básicos del paradigma: >> >> > >> >> >> > >> Objeto y Mensaje >> >> > >> Identidad >> >> > >> Método >> >> > >> Polimorfismo, Binding Dinámico >> >> > >> Colaboraciones, colaboradores >> >> > >> Encapsulamiento >> >> > >> Expresiones Lambda >> >> > >> >> >> > >> Tipos de Lenguajes de Programación del Paradigma >> >> > >> >> >> > >> Lenguajes Clásicos/Aristotélicos >> >> > >> Lenguajes Modernos/Prototipicos >> >> > >> >> >> > >> Conceptos y construcciones derivados del paradigma: >> >> > >> >> >> > >> Creación de objetos, destrucción de objetos >> >> > >> Clases abstractas y concretas >> >> > >> Clasificación, subclasificación y herencia >> >> > >> >> >> > >> Concepto de “tipo” en el paradigma de objetos >> >> > >> >> >> > >> Definición de Cohesión en el paradigma >> >> > >> Definición de Acoplamiento en el paradigma >> >> > >> >> >> > >> Lenguajes y ambientes de desarrollo >> >> > >> Definición y especificación de protocolos y contratos >> >> > >> Jerarquías polimórficas >> >> > >> Excepciones >> >> > >> Reglas de Diseño básicas. >> >> > >> Diagramas básicos de UML simplificado >> >> > >> >> >> > >> Diagrama de Objetos >> >> > >> Diagrama de Secuencia >> >> > >> Diagrama de Clases >> >> > >> >> >> > >> Breve introducción a patrones de diseño >> >> > >> >> >> > >> Definición de Arquitectura >> >> > >> Problemas de Diseño recurrentes >> >> > >> Idioms >> >> > >> Definición de Patrón de Diseño >> >> > >> Ejemplos de utilización de patrones >> >> > >> >> >> > >> -- >> >> > >> Hernán Wilkinson >> >> > >> Agile Software Development, Teaching & Coaching >> >> > >> Mobile: +54 - 911 - 4470 - 7207 >> >> > >> email: [email protected] >> >> > >> site: http://www.10Pines.com >> >> > >> >> >> > >> -- >> >> > >> To post to this group, send email to >> [email protected] >> >> > >> To unsubscribe from this group, send email to >> >> > >> [email protected] >> >> > >> >> >> > >> http://www.clubSmalltalk.org >> >> > > >> >> > > -- >> >> > > To post to this group, send email to >> [email protected] >> >> > > To unsubscribe from this group, send email to >> >> > > [email protected] >> >> > > >> >> > > http://www.clubSmalltalk.org >> >> > >> >> > >> >> > >> >> > -- >> >> > It's not enough to teach students to surf the Net, we must teach them >> to >> >> > make waves. My pedagogical theory is relate, create, donate, which >> >> > suggests that students work in teams, create ambitious projects and >> then >> >> > donate these to people who can use and build upon them. --Ben >> >> > Shneiderman >> >> > >> >> > -- >> >> > To post to this group, send email to [email protected] >> >> > To unsubscribe from this group, send email to >> >> > [email protected] >> >> > >> >> > http://www.clubSmalltalk.org >> >> >> >> >> >> -- >> >> To post to this group, send email to [email protected] >> >> To unsubscribe from this group, send email to >> >> [email protected] >> >> >> >> http://www.clubSmalltalk.org >> > >> > -- >> > To post to this group, send email to [email protected] >> > To unsubscribe from this group, send email to >> > [email protected] >> > >> > http://www.clubSmalltalk.org >> >> >> >> -- >> It's not enough to teach students to surf the Net, we must teach them to >> make waves. My pedagogical theory is relate, create, donate, which >> suggests that students work in teams, create ambitious projects and then >> donate these to people who can use and build upon them. --Ben Shneiderman >> >> -- >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> >> http://www.clubSmalltalk.org >> > > > > -- > *Hernán Wilkinson > Agile Software Development, Teaching & Coaching > Mobile: +54 - 911 - 4470 - 7207 > email: [email protected] > site: http://www.10Pines.com <http://www.10pines.com/>* > > -- > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > > http://www.clubSmalltalk.org > -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
