Gran almuerzo y temas de aprendizaje [cerrado]

15

Recientemente revivimos el almuerzo en Learns para el departamento de programación de la compañía para la que trabajo. A todos nos preguntaron si teníamos alguna idea para una sesión y si estaríamos interesados ​​en hacer una presentación. He tenido algunas ideas que van desde varios temas como:

Cómo pensar como un usuario al diseñar la interfaz de usuario

o diferencias en HTML5

A algunos compañeros de trabajo les eché estas ideas para que parecieran gustarles. Sin embargo, me gustaría tener más ideas antes de profundizar demasiado en la creación de una presentación.

¿Cuáles son algunos buenos almuerzos y temas de aprendizaje?

Kevin Wiskia
fuente
44
Código de espagueti? [mejor para ser presentado en un restaurante italiano]
mlvljr
2
@mlvljr: tiendo a tirar mi computadora portátil a la pared para ver si se queda pegada cuando termine de codificar
sova
+1 por utilidad. Tengo muchas ganas de hacer una lista de esta pregunta después de que reciba más respuestas.
Tim Post

Respuestas:

13

Algunos generales:

  • Desarrollo guiado por pruebas
  • Depuración en [IDE de elección] (también puede incluir cosas como la depuración remota o virtualizada)
  • ¿Qué hay de nuevo en la última versión de (podría ser un IDE, un sistema de base de datos, lo que sea)
  • Patrones de diseño
  • Factores de seguridad en [tecnología de elección]
  • Factores de rendimiento en [tecnología de elección]
  • Continuaciones y cierres (he estado leyendo la fantástica serie de Eric Lippert sobre esto)
  • Descripción general de [nuevo lenguaje o tecnología de elección]

Pero recuerde que no tiene que elegir temas generales, también puede hacer temas de L&L en su propio trabajo. Podría decirse que esto es aún más valioso porque el público puede tener una idea de lo que haces (en lugar de asumir que todo sucede por arte de magia). Por ejemplo, su encargado de instalación podría hacer un tema sobre cómo funciona la instalación, su responsable de control de calidad podría hacer un tema sobre la preparación de entornos de prueba, su encargado de construcción podría hacer un tema sobre el proceso de construcción, y si su proyecto tiene una arquitectura interesante que tal vez no todos lo saben, entonces haga un tema sobre eso.

También recuerde que su audiencia no está necesariamente compuesta solo por programadores. Es posible que también haya personas de control de calidad y gerentes de proyecto, así que no asuma que "Patrones de diseño" no es un tema válido porque todos deben conocer los patrones de diseño.

Obviamente, no puede entrar en demasiados detalles sobre algunos de estos (por ejemplo, no participe en un análisis profundo de los pros y los contras de cada patrón).

JohnL
fuente
Depuración: solo dígales que hay algunos errores en sus comidas y comience la conferencia;)
mlvljr
LOL, creo que la idea es alentar a las personas a venir a L&L, ¡no ahuyentarlas!
JohnL
9

Podrías jugar "Spot the Defect".

Revise sus registros de seguimiento de errores y encuentre algunos lugares donde las personas escribieron código que era plausible pero terriblemente incorrecto de alguna manera sutil. Vuelva a escribir el código para ocultar de dónde vino, pero conserve el error, póngalo en la pizarra y haga que la gente:

  • ver si pueden encontrar el error
  • averiguar cuál es la solución
  • describe cómo se pudo encontrar el error durante la revisión del código
  • Proponer cambios en el idioma o la herramienta que habrían evitado el error
  • y así.

Neal Gafter y yo reunimos una serie de seis problemas de "detectar el defecto" y los presentamos a la audiencia en la última Conferencia de Desarrolladores de Noruega; fue muy divertido y creo que la gente aprendió mucho.

Eric Lippert
fuente
7

La inversión de control y la inyección de dependencia son ideas poderosas que deben estar mucho más extendidas de lo que están actualmente.

Adam Crossland
fuente
1
El primero podría ilustrarse espléndidamente haciendo que el jefe lave los platos después. Los chicos recordarán;)
mlvljr
2
@mlvljr: En realidad, la idea del COI es que todavía laves los platos, pero ahora el jefe también te dice cómo .
Peter
@peterchen Sí, eso sería correcto. El gerente debería saberlo mejor;)
mlvljr
2

Nunca he participado en un L&L, pero parece que básicamente estás trabajando con:

  • algo fácilmente digerido durante el almuerzo
  • algo que ayudará a inspirar debates y comentarios interactivos

Creo que plantear una pregunta sobre "cómo crees que hacemos X" y, finalmente, revelar la implementación actual sería interesante y estimulante para tus oyentes. Puede abstraer toda la programación de la ecuación para que incluso los no codificadores puedan tener un golpe.

Incluso podría abstraer un problema complicado que su empresa enfrentó como un enigma o rompecabezas. Como si tuvieras que trabajar con una clavija cuadrada y un orificio redondo y, finalmente, acabaras de cortar la clavija cuadrada en una forma circular, cambiando el software de stock para satisfacer las necesidades de tu empresa.

Creo que cualquier introducción que fomente el pensamiento técnico abre automáticamente conversaciones interesantes.

Por ejemplo, optimización de tiempo / proceso

¿Cómo acelera la operación de su camarero? Sirve un trozo de pastel y espera a que la persona termine. Él toma su plato y lo lleva a la cocina, luego sirve a la siguiente persona. ¿Cómo puede satisfacer a sus clientes hambrientos más rápidamente si no le importan los platos que se acumulan?

Creo que las metáforas simples para describir los paradigmas que usas en el trabajo serían un buen alimento para pensar mientras comes un sándwich.

sova
fuente
1

Sugiero prácticas ágiles como:

  • integración continua
  • programación en pareja
  • reuniones de pie
  • radiador de información
  • planificación de póker

fuente
1

Usamos principalmente nuestro Lunch and Learns para cubrir las nuevas tecnologías que están saliendo de la pila de software que usamos actualmente.

Por lo tanto, actualmente estamos en una pila .NET 3.5 / 4, C #, Visual Studio 2010, etc., así que vamos a almorzar y aprender sobre los siguientes temas:

  • ASP.NET MVC 3
  • Nu-Get (.NET Package Manager)
  • etcétera etcétera.

Obviamente, su empresa puede estar en una pila diferente, pero podría adoptar el mismo enfoque.

Esto ha funcionado realmente bien para nosotros en lo que respecta a mantenerse al día con la tecnología, especialmente porque el marco ASP.NET MVC y el software asociado está creciendo a un ritmo rápido.

mkchandler
fuente
1

Disfruto de las charlas que discuten la historia de algo con lo que trabajo, especialmente las charlas que profundizan lo suficiente como para darme una idea adicional de mis muchos '¿Por qué es así?' tipo de preguntas

Mucha gente, por ejemplo, no tiene idea de que PHP comenzó como un simple conjunto de scripts de Perl para la gestión de una edad (P) ersonal (H) ome (P).

Si su empresa utiliza una gran cantidad de software libre / de código abierto, hay una rica historia para discutir. Te sorprendería cuántas personas piensan que Linus Torvalds escribió bash (cuando en realidad solo lo portó muy temprano).

Puede investigar y desenterrar anécdotas humorísticas, interesantes y a menudo informativas sobre casi cualquier tecnología si dedica suficiente tiempo a hacerlo.

Esto tiene el beneficio adicional de incluir personas que de otra manera no podrían participar.

Tim Post
fuente
0

Dependiendo de la audiencia, podría cubrir algunos conceptos básicos y mejores prácticas, como:

  • OO
  • Trabaje a través del "Código completo" de McConnell
  • Escribir código seguro
  • TDD
  • Patrones de diseño
Hugo
fuente