La semana pasada, estaba viendo esta increíble entrevista de Kevin Rose de Phillip Rosedale, de Second Life.
Y tuvieron una discusión increíble sobre cómo encontrar, contratar e identificar buenos programadores, y lo difícil que es encontrar buenos.
Lo que me ha llevado a pensar realmente acerca de la forma en que aprendemos los programadores, se enseñan. Para la mayoría de nosotros, yo mismo incluido, somos autodidactas. Lo que es genial de ser un programador, cualquiera puede aprender y desarrollar habilidades.
Pero esto también significa que no hay estándares reales de lo que es un buen programador, y qué tipo de entorno fomenta el crecimiento de las habilidades de programación.
Esto no es tanto una pregunta, sino un deseo en mí, de ver cómo podemos cambiar la cultura de la programación y los administradores de la programación, para que se fomente la educación y la superación personal.
Hay muchos caminos para la educación continua, videos de YouTube, libros, conferencias, pero debido a la naturaleza experimental de lo que hacemos, no siempre está claro qué es importante aprender y dominar.
Veamos los 12 pasos de Joel.
La prueba de Joel
¿Utiliza control de código fuente?
¿Puedes hacer una compilación en un solo paso?
¿Realiza construcciones diarias?
¿Tienes una base de datos de errores?
¿Corrige errores antes de escribir un nuevo código?
¿Tiene un calendario actualizado?
¿Tienes alguna especificación?
¿Los programadores tienen condiciones de trabajo silenciosas?
¿Usas las mejores herramientas que el dinero puede comprar?
¿Tienes probadores?
¿Los nuevos candidatos escriben un código durante su entrevista?
¿Haces pruebas de usabilidad en el pasillo?
Creo que todo esto tiene un valor importante, pero debido a algo que llamo la brecha experiencial, si un programador o gerente nunca ha experimentado ninguna de las consecuencias negativas por no haber realizado elementos en la lista, nunca verán la necesidad para hacer cualquiera de ellos.
La brecha experimental, es mi teoría básica, que cada uno de nosotros tiene diferentes trabajos y diferentes experiencias. Así que para algunos de nosotros, que siempre hemos trabajado con docenas de programadores, el control de código fuente es una necesidad. Pero para las personas que siempre han sido los únicos programadores, no pueden imaginar la necesidad del control de la fuente.
Y es debido a este defecto importante en la forma en que aprendemos, que evaluamos a las personas según las mejores prácticas que hacen o no, y la razón de cualquiera de ellas puede iniciar una guerra de llamas.
Siempre evaluamos a las personas en nuestro campo por lo que hacen y pensamos "Oh, si este tipo / gal no está haciendo las mejores prácticas de xyz, no puede ser un buen programador, así que no perdamos tiempo ni energía. hablando con ellos ".
Esta es exactamente la razón por la que tenemos tantas guerras de programación de la llama, que se vuelve, debido a la brecha de Experiental, no podemos imaginar que las personas no hayan tomado las decisiones que hemos tenido que tomar.
Así que esto me ha llevado a pensar, que necesitamos repensar totalmente cómo entrenamos, educamos y administramos a los programadores.
Por ejemplo, ¿qué porcentaje de usted ha tenido aliento de parte de su gerente para ir a conferencias e incluso hacer que paguen por ello?
Para mí, y para mucha gente, esto es extremadamente raro, a muchos de nosotros nos encantaría ir a conferencias, para aprender más, pero el dinero no está ahí para hacer eso.
Entonces, el punto de esta pregunta es realmente ¿cómo podemos entrenar, aprender y administrar mejor?
¿Cómo podemos crear una nueva cultura de aprendizaje que no insulte a las personas por no tener las mismas experiencias laborales?
Sí, todos tenemos trabajo y trabajo que hacer, pero nuestra capacidad para hacer nuestro trabajo bien, depende de nuestro deseo, interés y apoyo para mejorar nuestro dominio de nuestras habilidades.
En este momento, veo que nuestra cultura está bastante desorganizada, apoyamos a la élite, pero esas toneladas de nosotros que queremos mejorar, simplemente no tenemos suficiente apoyo para aprender y mejorar.
Quiero decir, ¿nosotros, como industria, queremos ser percibidos como simples engranajes reemplazables?
Gracias ...