Muchos blogs y consejos en la web parecen sugerir que para convertirse en un gran desarrollador, no basta con hacer su trabajo diario. Por ejemplo, debe contribuir a proyectos de código abierto en su tiempo libre, escribir aplicaciones para teléfonos inteligentes, etc. De hecho, muchos de estos consejos parecen sugerir que si no ama la programación lo suficiente como para hacerlo todo el día, entonces está probablemente en la carrera equivocada.
Eso no suena cierto conmigo. Disfruto de mi trabajo, pero cuando llego a casa de la oficina no estoy de humor para saltar directamente a la computadora y comenzar a codificar hasta la hora de dormir. Solo tengo un cierto número de horas de tiempo libre cada día, y prefiero dedicarlas a otros pasatiempos, ver amigos o salir afuera que frente a la computadora.
Me gusta mucho la programación, y ocasionalmente pirateo fuera del trabajo. Estoy comprometido con mi desarrollo personal y paso tiempo leyendo blogs y libros sobre tecnología como una forma de seguir aprendiendo y mejorando. Pero eso no se extiende tanto como para querer usar todo mi tiempo libre para codificar.
¿Esto significa que no soy un desarrollador de software 'verdadero' en el fondo? ¿Es posible convertirse en un buen desarrollador de software sin hacer más fuera de su trabajo? Estaría muy interesado en escuchar lo que piensas.
Actualización: gracias a todos por sus comentarios y respuestas. ¡Muchos buenos pensamientos y consejos!
fuente
Respuestas:
En mi opinión, esta actitud proviene de personas que tienen trabajos horribles y succionadores de almas, combinados con habilidades de gestión del tiempo pobres. Si básicamente está escribiendo formularios web todo el día, salga y obtenga un trabajo más desafiante, o comience el suyo.
Aquí está la cosa. Un músico de concierto (violonchelista / pianista / lo que sea), practicará como máximo 6 horas por día. La mayoría solo practica unas pocas horas por día. en los niveles más altos
La gente dice que programa más porque aprendes más, pero eso es una cortina de humo. 8 horas por día es suficiente .
El progreso NO es lineal. Es logarítmico:
La única razón por la que un músico puede practicar más de 3 horas, es porque necesitan exprimir el 1% adicional que esas horas les dan. Si crees que eso se aplica a ti, resuelve un problema que CS resolvió hace 2 décadas, entonces tienes un complejo prima-donna para arrancar.
He trabajado en compañías de ollas a presión antes, y confía en mí, la cantidad real de trabajo que realizan esos tipos no es mejor que una compañía como 37signals que impone restricciones en la cantidad de trabajo: http://37signals.com / svn / posts / 996-why-i-love-working-with-family-people
Lo que termina sucediendo es que, seguro, puede estar frente a una computadora durante 10-12 horas, y en la oficina por 2 más, pero eso no incluye el almuerzo de 90 minutos que tomó, las 2 horas que pasó navegando por la discusión foros, y la hora de descanso que tuvo que jugar uno de los muchos juegos establecidos en la oficina (futbolín, billar, yada ...).
Mire hacia atrás en ese gráfico. Ahora de vuelta a mí.
Su mente realmente tiene la oportunidad de expandirse mucho más si la involucra en alguna otra actividad: aprender a tocar un instrumento . Aprende un idioma extranjero . Mejor aún, sal y haz algo de ejercicio, y conéctate con personas reales en vivo .
Sobre la naturaleza logarítmica de la productividad:
Este es en realidad un principio bien conocido en el mundo de los negocios, me sorprende que más programadores no hayan oído hablar de él.
Actualización: más sobre el estudio de Ericsson.
Toda la noción de que tarda 10.000 horas / 10 años en dominarse en realidad proviene de los estudios realizados por Ericsson, no de Malcom Gladwell.
Como todos sabemos, puedes tener 1 año de experiencia repetido 10 veces ... así que solo tener tu trasero en el asiento durante 10 años no califica. Lo que sí califica es lo que Ericsson llama práctica deliberada .
Ha descubierto que este principio es válido en el atletismo, la música, la escritura, el ajedrez y las matemáticas. Además, define la práctica deliberada como un esfuerzo tan intenso, que incluso en los niveles más altos solo se pueden realizar unas 4 horas por día . De lo contrario, sufrirá sobreentrenamiento o agotamiento. Nuevamente, reconoce que hay rendimientos decrecientes para la práctica deliberada, hasta aproximadamente 4 horas.
Sobre el tema de no tener un trabajo bueno / desafiante:
Bazofia. O consigue un mejor trabajo, o aquí tienes una idea: convierte tu trabajo actual en algo que no sea , al menos en este momento.
Uno de los mejores programadores que conocí entró en un trabajo como programador de mantenimiento en un sistema heredado que consistía en docenas de programas y cientos de miles de líneas de código. La mayoría de los cuales habían sido pirateados a lo largo de los años tanto que tendrías que decir que ya no tenía ningún diseño coherente.
Este era prácticamente un trabajo sin salida, sin fin. La gerencia quería que mantuvieras la cabeza baja y solo arreglaras los malditos errores. Los buenos desarrolladores estaban trabajando en el proyecto greenfield. La gente vino aquí para sentarse los días restantes hasta que se jubilaron, o ganó algunos años de experiencia antes de pasar al desarrollo de nuevas aplicaciones. Mientras que la mayoría de los programadores se quejarían de la falta de desarrollo profesional, o de la oportunidad de aprender cosas nuevas, o de no tener proyectos interesantes en los que trabajar o, en general, simplemente quejarse de que nadie los habilita , este tipo simplemente se sentó y comenzó a hacer El trabajo que había que hacer.
Y a lo largo de 2 años, había transformado ese sistema de un código de espagueti con errores a algo que era una belleza y funcionaba como un reloj suizo. Tan completa fue la transformación, que el vicepresidente de la división comenzó a prestar más y más atención al proyecto existente y comenzó a cuestionar el valor del proyecto greenfield. Aunque no tenía título, la gente de operaciones acudió a él como el líder de facto del grupo. Cuando me fui, el vicepresidente estaba hablando de crear un nuevo rol para él como arquitecto de sistemas ...
No estoy seguro de lo que le sucedió después de eso, pero él me enseñó un par de lecciones muy importantes:
Tu trabajo es lo que haces, y hay problemas interesantes que resolver en todas partes . Si odia escribir pantallas CRUD, resuelva el problema al generarlas automáticamente.
No te quedes esperando a que te lleguen oportunidades. Lo más probable es que nunca lo harán.
fuente
Hay más oculto en este mensaje.
A muchos programadores entusiastas les gusta explorar cosas, experimentar, seguir sus ideas, así es como aprendemos y obtenemos nuestras habilidades y visión.
Por lo general, no puede seguir sus intereses durante las horas de trabajo. Simplemente haces las cosas que te dicen y eso es todo. Solo algunos de nosotros tenemos la suerte de hacer en el trabajo lo que haríamos personalmente, incluso si no estuviéramos pagados.
Por lo tanto, si no está haciendo nada extra, no está desarrollando su potencial. Y ese es exactamente el problema.
fuente
No lo convierte en un mal desarrollador, pero desafortunadamente, todavía tiene que competir con los que lo hacen.
Lea esto, del blog de Seth Godin :
Irrazonable
No es razonable levantarse de la cama en un día de nieve, cuando la escuela ha sido cancelada, y convertir el tiempo de inactividad en seis horas de trabajo en un laboratorio de física de crédito adicional.
No es razonable lanzar un producto tecnológico que salte la curva de desarrollo en nueve meses, sacando a la próxima generación mucho antes que competidores más razonables.
No es razonable que una compañía de camiones conteste el teléfono al primer timbre.
No es razonable comenzar una nueva compañía sin la tranquilidad que el dinero de riesgo puede aportar.
No es razonable esperar que el consultorio de un médico tenga un personal de recepción agradable y servicial.
No es razonable alejarse de un buen concierto en la economía actual, incluso si desea hacer algo valiente y original.
No es razonable que los maestros esperen que podamos permitir que los niños desfavorecidos del centro de la ciudad tengan un buen desempeño en la escuela secundaria.
No es razonable tratar a sus colegas y competidores con respeto dada la presión bajo la que se encuentra.
No es razonable esperar que cualquier persona que no sea una gran mujer, alguien con impulso y ventajas, pueda hacer algo importante en un mundo donde la baraja está en contra de la gente común.
No es razonable dedicar años de su vida a hacer un producto que la mayoría de la gente nunca apreciará.
Afortunadamente, el mundo está lleno de personas irracionales. Desafortunadamente, necesitas competir con ellos.
fuente
Para responder a la pregunta planteada: No programar en tu tiempo libre no te convierte en un mal desarrollador, sin embargo, programar en tu tiempo libre puede hacerte un mejor desarrollador.
La programación en su tiempo libre ciertamente no dañará sus habilidades, pero no debe sentirse obligado a hacerlo. La programación parece ser un campo relativamente único porque para muchas personas es tanto su trabajo como su pasatiempo, por lo que disfrutan de la programación en su tiempo libre.
fuente
No, no te hace un mal programador. Dependiendo de lo que haga, puede ser un mejor programador a largo plazo. Al principio de su carrera, puede influir en la rapidez con la que aprende la variedad de habilidades que necesita. Sin embargo, es posible que esté adquiriendo habilidades e información que lo ayudarán a largo plazo. Hacer algo de ejercicio tampoco estaría de más.
Hay una buena cantidad de investigación que muestra que el rendimiento alcanza alrededor de una semana laboral de 40. Si bien podemos ser productores por un período de tiempo trabajando más horas, a la larga perdemos eficiencia. La investigación que he visto muestra que las personas que trabajan 80 semanas son tan productivas como las que trabajan 40 horas a la semana.
Hay algunas cosas en las que puede reflexionar sobre las horas de descanso (o encendido) que pueden ayudarlo a desempeñarse mejor:
fuente
Seguro.
Puede tomar más tiempo que si pasara horas adicionales perfeccionando su habilidad. También me ha resultado difícil dedicar suficiente tiempo a la superación personal si estoy empleado a tiempo completo y hago poca programación fuera del horario laboral.
Cuando era más joven, dedicaba mucho más tiempo al aprendizaje que ahora. Los conceptos que uso día a día están profundamente arraigados en este punto, y parece más fácil adquirir conocimiento adicional con esta experiencia en mi haber.
Los programadores "buenos" parecen dedicar más horas extra porque son obsesivos por naturaleza, tienden al extremo antisocial del espectro y disfrutan genuinamente de la programación y del ciclo completo de resolución de problemas.
fuente
En el gran esquema de las cosas, se trata de encontrar el equilibrio adecuado en la vida.
Lo importante es si te gusta la programación y si sigues aprendiendo sin importar en qué nivel estés. El hecho de que usted programe o no fuera del trabajo no lo convierte automáticamente en un programador "bueno" o "malo".
Para dar una perspectiva personal, he estado programando durante unos 25 años (primero de niño, luego profesionalmente). Me encanta
Sin embargo, casi nunca programo fuera del trabajo. Esto tiene que ver con varias cosas:
fuente
Puedes convertirte en un buen programador simplemente codificando durante el trabajo, especialmente si manejas bien tu carrera. Sin embargo, los mejores programadores también codifican durante sus horas libres. Dicho esto, una persona que elige buenos trabajos con muchas oportunidades de aprendizaje, usa bien su tiempo en el trabajo, y así será un mejor programador que alguien que codifica en casa porque no puede encontrar trabajos que ofrezcan desafíos interesantes durante el trabajo. día de trabajo
Si bien codificar en casa es valioso, diría que maximizar el valor de su entorno de trabajo (aprendiendo de los compañeros de trabajo, eligiendo buenos trabajos, administrando su carrera agresivamente) a menudo es aún más valioso. Los mejores programadores hacen ambas cosas, además tienen grandes actitudes hacia el aprendizaje y la tutoría de otros.
fuente
El verdadero problema es si un nuevo desarrollador está codificando lo suficiente (en problemas lo suficientemente desafiantes) para superar unos cientos de miles de líneas de código de práctica y convertirse en un programador decente.
En teoría, esto se puede hacer en el trabajo, o en su propio tiempo, o en ambos. La práctica tiene que ser algo autodirigida, para que pueda aprender lo que necesita aprender. Eso significa trabajo que es un poco flexible.
Muchas veces los trabajos de nivel de entrada son un montón de corrección de errores u otro trabajo que no te va a enseñar a ser bueno. Lo que debe hacer es escribir mucho código desde cero, y ese código probablemente será malo. Es difícil para los empleadores pagar por esto. Es por eso que las personas terminan haciendo un proyecto de código abierto en forma paralela o lanzando una startup o lo que sea.
Cuando la gente dice que tienes que programar en tu tiempo libre, creo que realmente significa que tienes que poder pasar años de práctica significativa desde el principio. Tienes que hacer lo que sea necesario para practicar y aprender a escribir y mantener una gran base de código desde cero. Si nadie le paga por escribir una serie de proyectos probablemente desastrosos desde cero, entonces el tiempo libre es la única opción.
Si ya hiciste la práctica cuando eras joven y te convertiste en un buen programador, no creo que vayas a perder las habilidades básicas si la mantienes de 9 a 5 más adelante. Más tarde, se trata más bien de mantenerse al día con la nueva tecnología que no consume mucho tiempo.
Sin embargo, es un trabajo de nivel de entrada raro que le daría la cantidad y calidad de la práctica por sí solo para convertirse en un buen programador en primer lugar. Un nuevo desarrollador necesita tomar la iniciativa para aprender, no solo pasar el rato en un trabajo de nivel de entrada haciendo tareas de nivel de entrada.
Sería realmente difícil convertirse en un buen programador desde cero si ya tuvieras una familia y estuvieras haciendo mucho hincapié en el equilibrio entre el trabajo y la vida. Del mismo modo que sería realmente difícil convertirse en médico o ser un músico virtuoso o cualquier otra cosa en esa situación. Hay una razón por la cual las personas tienden a completar sus miles de horas de práctica cuando son más jóvenes que cuando son mayores.
fuente
Si pasara tiempo en los próximos seis meses desarrollando un juego básico en mi tiempo libre y usted no, y suponiendo que todas las demás cosas sean iguales (nunca lo son), ¿quién de nosotros sabría más? ¿Cuál de nosotros tendría más habilidades y experiencia?
Este efecto sería acumulativo, ya que el conocimiento anterior fuera del horario laboral se incorporaría al nuevo trabajo y al nuevo conocimiento fuera del horario laboral.
Y es por eso que la gente aconseja programar en su tiempo libre, por lo que puedo decir.
fuente
Entre lo bueno y lo malo hay muchos niveles intermedios. No puede convertirse en un gran desarrollador haciéndolo solo 8 horas más o menos al día, posiblemente trabajando en problemas desde un campo muy limitado.
Si su trabajo es lo suficientemente variado, puede volverse "decente" o "realizado" o cualquier adjetivo que prefiera, pero para ser un gran desarrollador, tendría que ser un poco mental, me temo.
Otra razón para hacer programación de pasatiempos es que en un trabajo a menudo tiene que cumplir con estándares subóptimos y hacer compromisos en general e incluso cuando aprende algo nuevo, es posible que no se le permita usarlo.
Y otro más, aún más prosaico, es que cualquier código que escriba en el trabajo es propiedad de su empleador. No puedes volver y aprender de tus viejos errores años después, cuando trabajas para otra persona.
fuente
Se necesitan 10.000 horas de esfuerzo para convertirse en un experto en cualquier cosa. [Michael Gladwell, "Outliers"]
Por lo tanto, hacer un trabajo adicional antes de llegar a ese nivel lo acelerará en el camino hacia el estado de experto real.
Una vez que haya pasado ese nivel, pasar más tiempo tendrá rendimientos pequeños / decrecientes.
fuente
No deberías verlo como "¿Me hace un mal programador" porque, como cada habilidad, más práctica solo hace que uno sea mejor.
Entonces, si desea ser mejor de lo que es actualmente y aprender nuevas tecnologías y dominios que su trabajo no permite, ahí es donde el esfuerzo extra y el tiempo invertido son útiles.
Pero pasar más tiempo codificando (solo para demostrarle a alguien que codifica extra) no necesariamente significa que se convierta en un buen programador a menos que aprenda lo que hace y haga algo diferente o mejore lo que ya sabe, en lugar de cortar / copiar / pegar a ciegas y armar hacks. Dedicar horas extra y hacer lo mismo una y otra vez de ninguna manera creo que te ayudará a mejorar.
fuente
Durante el día su programación es de apuestas cortas. Hay dinero que ganar, sabes exactamente cuánto y para qué, y no tienes mucho más que ganar que un cheque de pago.
Por la noche estás trabajando en apuestas largas, ideas locas que principalmente no funcionarán en absoluto. Estos son los proyectos que lo catapultarán fuera del rango y el archivo. Así es como te conviertes en el inventor de PHP en lugar de usar el código mono.
Entrevisto a muchos programadores, y si han hecho cosas extrañas interesantes fuera del horario laboral es una luz verde instantánea. Es sorprendentemente raro.
Aunque diré esto: hubo una vez que un chico que hacía muchas cosas interesantes fuera de las horas de trabajo resultó ser un fracaso total de una contratación. Todavía estoy perplejo por ese tipo.
fuente
Ser un buen desarrollador de software en el corazón, depende realmente de tu corazón. Puedes intentar ser un gran músico y dedicar mucho tiempo a la música, pero eso no te convierte en un buen músico. Necesitas disfrutar de lo que haces para ser bueno en eso. Inicialmente tenía las mismas preguntas que tú. lo había hecho, pero ahora, debido a mis gustos, he comenzado a hacer cosas adicionales en software que no sea el trabajo normal. Mejoré mi rendimiento en el trabajo normal y también me proporcionó mucho tiempo para involucrarme en otras actividades no relacionadas con el software. Entonces, la línea de base es disfrutar lo que haces y eventualmente harás lo que sea necesario.
fuente
La verdadera pregunta es qué haces todo el día. Las analogías con atletas y músicos generalmente no se aplican correctamente. Su trabajo diario no es práctica, es rendimiento, a menos que tenga la capacidad explícita de pasar parte de su día laboral en una "práctica" genuina. ¿Cómo lo sabes? Si nunca tiene el tiempo para hacer algo "bien" o aprender un nuevo idioma / tecnología / marco / etc. a fondo, entonces no está practicando, está actuando. Los atletas y músicos profesionales no mejoran durante el juego o el concierto, mejoran durante la práctica enfocada. Entonces, si eres como la mayoría, el único tiempo que tienes para una "práctica" de codificación genuina es fuera del trabajo. Dicho esto, solo vale la pena si está enfocado. Si pirateas todo el día y luego pirateas toda la noche, simplemente te cansas, no mejor.
Por ejemplo, necesita optimizar un fragmento de código en el trabajo y arrojar las herramientas de creación de perfiles habituales y acelerarlo tal vez un 50% y pasar a la siguiente tarea, pero cree que hay otras cosas que podría hacer que ayudarían incluso más pero no tienes el tiempo permitido para probarlos. Si te llevas esa pieza de código a casa y pasas unas horas extra realmente exprimiéndolo, estás aprendiendo técnicas que te harán mejorar la próxima vez que optimices algo. No estás haciendo lo mismo en casa que en el trabajo.
La práctica consiste en agregar habilidades y habilidades de perfeccionamiento y esas actividades se realizan necesariamente de manera artificial (es como aislar un grupo muscular en el gimnasio, nadie lo hace en la actividad física normal). Crear aplicaciones en casa no es una práctica automática. El trabajo en el hogar debe centrarse en las técnicas y el proceso, no en el producto final. Si un producto final es lo que necesita para estar motivado, genial. Simplemente no caigas en la trampa de desarrollarlo de la misma manera que lo haces en el trabajo.
El movimiento de codificación de kata es un ejemplo de lo que se trata la práctica.
fuente
Para responder a su pregunta: No, no lo convierte en un mal desarrollador.
Sin embargo , podría hacer que su vida profesional en el futuro sea un poco más difícil. Si tienes un trabajo en el que constantemente estás aprendiendo nuevas tecnologías que te ayudarán a avanzar en tu carrera profesional (ya sean promociones en tu trabajo actual o nuevos empleos en diferentes compañías), entonces estás listo.
Pero si actualmente está trabajando en una empresa donde la tecnología utilizada rara vez cambia, entonces en 2 o 5 o 10 años puede que le resulte difícil conseguir ese próximo trabajo. Si está codificando en casa con nuevas tecnologías y tiene algo que mostrar (aplicación, sitio web, proyecto de código abierto, etc.), le resultará mucho más fácil conseguir el siguiente trabajo.
Por supuesto, puede ser completamente feliz haciendo exactamente lo mismo durante los próximos 40 años, y mientras su empresa y las tecnologías continúen existiendo, ¡entonces está listo!
fuente
Ha habido momentos en mi vida en los que codifiqué mucho fuera del trabajo, y otros en los que no hacía nada porque estaba trabajando en otras cosas. Siempre debe estar aprendiendo, pero eso no significa que siempre tenga que aprender sobre programación en su tiempo libre. Si desea trabajar en alguna otra habilidad, ya sea carpintería, agujas, jardinería, etc., en su tiempo libre le ayudará a crecer como persona.
Simplemente no caigas en la trampa de pensar que sabes todo lo que necesitas saber sobre programación para que puedas dejar de aprender.
fuente
Esta es de hecho una publicación interesante. ¡He estado desarrollando software durante los últimos 10 años y amo mi trabajo! Yo también tengo muchos pasatiempos y trato de manejarlos adecuadamente. Pero me encanta probar cosas nuevas pasando una o dos horas frente a la computadora antes de acostarme. En mi caso, soy adicto a estudiar y escribir códigos de juegos. No siempre tengo tiempo para jugar, pero me encanta leer códigos sobre juegos. Para ser sincero, creo que el mejor código que he visto proviene de los juegos y aplico estas habilidades a mi código en el trabajo. Aprendo constantemente CADA DÍA, así que en mi opinión, si eres un desarrollador, nunca alcanzarás tu punto máximo, SIEMPRE hay una mejor manera de hacer algo ...
fuente
Esta es una gran publicación.
Yo diría que no, no te convierte en un mal programador. Si sus comentarios han sido buenos y completa bien sus tareas a tiempo, es todo lo contrario. Honestamente, te envidio que llenes el código mientras trabajas.
La razón principal por la que programo en mi tiempo libre es que realmente no me importa lo que hago en el trabajo y uso mi tiempo libre para hacer lo que me gusta. Lo que disfruto haciendo es la programación de videojuegos. No hay una compañía de juegos válida para trabajar en el lugar donde vivo (ahora tengo una familia aquí), así que puedo ayudar con los juegos independientes cuando puedo. Es la única forma de curar la picazón. Si hiciera lo que amaba todo el día, sería muy probable que no lo hiciera en mi tiempo libre.
fuente
Mi consejo será: use su tiempo de viaje para aprender cosas, para mantenerse informado: lea libros de TI, escuche el podcast de Dev, etc. Con respecto a sus actividades posteriores al trabajo: no cambia nada. De lo contrario, te convertirás en una persona aburrida.
fuente
No te convierte en un mal desarrollador, puede que ni siquiera te convierta en una especie de desarrollador "ok", simplemente te convierte en lo que eres. Sin embargo, creo que encontrarás que la mayoría de las personas que son realmente excelentes hackers tienden a gustarles probar cosas nuevas. En cualquier momento investigaré diferentes idiomas, bases de datos, marcos web, robótica, etc. Tengo dos hijos pequeños y una esposa, una hipoteca, todo eso, pero espero con ansias los tiempos en que pueda obtener 2 o 3 horas para hackear cosas. Claro, C # y .NET están muy bien para ganar un sueldo y realmente disfruto mi trabajo, pero jugar con Scala y Lift ha sido una verdadera maravilla para mí en los últimos meses. Hay desarrolladores que se clasificarían a sí mismos como "apasionados" y aquellos que simplemente se están "arreglando".
fuente
Absolutamente no. Simplemente significa que te gusta hacer otras cosas además de la codificación. No hay nada de malo en eso, y no te hace mejor o peor que cualquier otra persona, desarrollador o no.
Por supuesto. Algo de eso depende de cómo sea su entorno de trabajo. Si tienes un trabajo aburrido, que te chupa el alma, que absorbe todo tu tiempo y luego haces algunos trabajos de mantenimiento aburridos, entonces ser capaz de usar el tiempo de trabajo para desarrollar tus habilidades será muy limitado. Si tiene el tipo de entorno en el que tiene cierta libertad para hacer lo que desea explorar y aprender, aproveche esa oportunidad para desarrollar nuevas habilidades que también ayuden a su empleador o compañeros de trabajo.
Si encuentra algo interesante sobre el que desea aprender más y no tiene el tiempo o la posibilidad de usarlo en el trabajo, debe compararlo con las otras demandas de su tiempo, ya sean familiares, amigos o pasatiempos.
fuente
He estado en varias entrevistas para contratar programadores recientemente. Descubrí que los candidatos que más me impresionan, tanto como programadores y como personas con las que no me importaría trabajar, son aquellos que pasan una cantidad significativa de tiempo en actividades que NO son de programación (particularmente música, pero también matemática pura, filosofía y literatura). Para estar seguros, la mayoría también hace algo de programación de pasatiempos, pero también tienen intereses equilibrados.
fuente
Si tiene un trabajo que le brinda una experiencia intelectual completamente atractiva, es probable que esa sea su vida mental: el trabajo externo es para desahogarse. Si su trabajo no lo compromete, es mucho más probable que encuentre satisfacción intelectual después de las horas de trabajo. Eso es cierto en cualquier negocio, no solo en la codificación.
Codificar en una oficina agota su creatividad, punto. Al menos 8 horas por día, su mente está haciendo un sprint continuo en nombre de otra persona. Es normal salir de eso y no querer volver a una computadora. Cuando trabajaba desde una oficina, era lo mismo para mí: llegaba a casa y solo quería cocinar, ir a ver una película, pasar el rato con amigos o simplemente estar frente al televisor. Luego, entre 2001 y 2004, más o menos, después de que la compañía para la que trabajé se derrumbara y me desmoronara, me retiré y conduje un taxi y esperé en las mesas. Fue entonces cuando realmente comencé a codificar en mis horas libres.
La verdad es que no creo que nadie tenga más de 8 horas al día de codificación de alta calidad. Muchos codificadores solo tienen 2-3, pero podrían ser las personas más eficientes que existen. Es solo cómo lo usa, cómo lo extiende.
fuente
Depende de la industria en la que esté trabajando. Algunos son más competitivos que otros.
Si no le gusta aprender cosas nuevas por su cuenta, es probable que se mantenga en su nivel de habilidad actual. Eso puede ser suficiente ... o no.
No se trata del tiempo dedicado, se trata de la curiosidad y la sed de conocimiento y dominio. Obviamente, no tiene nada que ver con mantenerse actualizado , se trata de cosas fundamentales, a menudo difíciles: compiladores, mónadas, arquitecturas de memoria, etc. Cosas que estiran y expanden su cerebro.
Querer codificar en casa es solo un efecto secundario importante. Pero no lo subestimes, sin hacerlo, el aprendizaje es a menudo superficial.
Todos los mejores desarrolladores que conozco tienen rasgos de tesis.
fuente
No, no te hace menos programador que nadie. Eres más social. Tengo envidia de ser honesto.
No tiene que usar todo su tiempo libre para escribir código. Mi trabajo es bastante simple: administración del servidor. Escribo mucho código porque no tengo que hacer mucho en el trabajo. Eso no me hace mejor o peor que nadie. Si te apasiona la programación, ¿por qué no haces un trabajo independiente? A menudo publico anuncios de Craigslist para mis servicios y gano una buena cantidad de dinero. También es una gran experiencia de aprendizaje, ya que trabajará con startups y, a veces, incluso con sitios web grandes. Espero que esto ayude. :)
fuente
Hice una pregunta similar un par de días antes. Parece que la gente parece que nos apasiona más nuestro trabajo si le dedicamos no solo todo el día, sino también todo el tiempo que tenemos disponible para nuestra vida personal.
Ocasionalmente escribo algo de código en mi tiempo libre, pero lo hago por diversión, no porque tenga la intención de ganar un poco de reconocimiento o crecimiento profesional. Aplaudo a las personas que tienen la energía para hacerlo, pero es más probable que se queme trabajando más horas y en proyectos adicionales que convertirse en un experto en algo.
Al final del día, lo único que importa es su capacidad para aprender cosas nuevas (especialmente en el trabajo), su capacidad para comunicarse bien y tener buenas habilidades de gestión del tiempo. Que te conviertas en un buen profesional.
fuente
Para mí todo se trata de equilibrio.
Aunque me encanta programar, es solo un lado de mí, tengo otros intereses. Como veo esto si estoy contento (haciendo otras cosas que me gusta hacer) y encuentro mi trabajo interesante y satisfactorio (lo que hago) que, a largo plazo, estoy en camino de convertirme en un mejor desarrollador de software.
PD: Admito que no he leído todas las publicaciones anteriores en esta página.
fuente