Todo es una moda pasajera. Aprenderás más en tu primer año fuera de la universidad que en todos tus años en la universidad. La informática no tiene nada que ver con las computadoras.
College te ofrece una caja de herramientas llena de herramientas. Este es un destornillador, que es una llave inglesa. PUEDES usar cada herramienta una vez en la universidad. Es cuando entras al mundo real es cuando realmente descubres lo que tienes. Separas las útiles del resto, las que quieres dejar en casa en el banco de trabajo, por si acaso, y las que guardas en tu bolsillo todos los días.
Tqm, Iso, Cmm, Agile, etc. Estas son todas modas que vendrán y se irán, ninguna de las exitosas es más que sentido común. Todos los ingenieros y empresas exitosos usan algo de sentido común, eso es lo que los hizo exitosos, pocos necesitaban un nombre para ello. El problema es que no se puede vender el sentido común, un gerente no puede demostrar su valor a la empresa capacitando y comprando sentido común sin un nombre llamativo. Ponle un nombre que sus superiores hayan leído en algún artículo o revista y el gerente conserva su trabajo y tú el tuyo. Muy pocas de las empresas que afirman seguir estas prácticas realmente lo hacen. La mayoría escribe un cheque a un consultor y obtiene su certificado anual o vitalicio en algún club para que puedan poner un gráfico en su sitio web o una etiqueta en la caja en la que viene su producto. Muchos dirán que esto es raro ... estado allí, lo he visto, sucede. Todo esto es parte del negocio, a veces tienes que tomar atajos para mantenerte rentable y mantener las puertas abiertas y las luces encendidas. Los seguidores incondicionales de todas estas prácticas han argumentado que la última fue una moda y esta no lo es, la última realmente fue demasiado cara de seguir, esta no lo es. El último fue falso, acabas de contratar a un consultor, este es real. Como los lenguajes de programación, estos también evolucionarán. El último fue falso, acabas de contratar a un consultor, este es real. Como los lenguajes de programación, estos también evolucionarán. El último fue falso, acabas de contratar a un consultor, este es real. Como los lenguajes de programación, estos también evolucionarán.
Su capacidad para comprender las realidades de los negocios, el sistema universitario y su papel en él es la clave. Como todo en la vida, elige tus batallas. No es la universidad ni la empresa ni el gobierno ni el trabajo de nadie más enseñarle lo que necesita o quiere saber. Es su trabajo buscar el número uno. Del mismo modo, no puedes culpar a nadie más por proporcionarte el tiempo para hacer esto, tienes que hacerlo. Te caerás del caballo, no eres una víctima, levántate y vuelve a subir, sin excusas, la vida no es justa con eso. Aproveche los folletos, no pretenda ser independiente. Y ciertamente pague sus deudas, no deje a una empresa seca de folletos sin darles algo (¿lo mejor en ese momento?) A cambio.
¿Por qué la gente piensa que cmm o ágil o cualquiera de los otros es una moda pasajera? ¿Por qué creen que no lo son? ¿Por qué el profesor te enseñó el programa de esa manera? ¿Evitar los gotos o evitar las constantes o evitar esto y aquello? ¿Es porque produce un código más confiable? ¿Código de mejor rendimiento? ¿Reduce el error humano? ¿O es porque es más fácil calificar trabajos / programas dándoles más tiempo para investigar? ¿Es porque no saben programar y solo están siguiendo el libro de otra persona sobre el tema? ¿Le enseñaron que no se puede tener un código de alto rendimiento, confiable y mantenible? ¿Ni siquiera puede "elegir dos" que el mantenimiento interfiera con el rendimiento confiable y alto? A veces sacrifica la fiabilidad por el rendimiento. A veces, no le importa la confiabilidad o el rendimiento, solo desea obtener de la versión 117.34. 2 de otro programa de software de contabilidad a la versión 118.0.0. Su modelo de negocio se basa en la venta de actualizaciones de versión y soporte técnico y, en lo que respecta a los desarrolladores de software, cualquier robot antiguo puede escribir el mismo código de la misma manera. Reemplace el quemado por uno recién salido de la universidad y siga vendiendo actualizaciones.
No existen respuestas universales a estas preguntas, hay que averiguar cuál es tu opinión, vivir con ella y defenderla. Cambia de opinión, vive con ello y defiéndelo.
Cuestiona todo ... ¿realmente me quemaré si toco la olla caliente en la estufa? ¿Los efectos psicológicos del miedo causarán más daño que el simple hecho de quemarse? ¿Existe una forma segura de probar la respuesta sin lastimarse?
Cuando podía pagarlo, compraba y eventualmente fundía transistores, tapas, resistencias, etc. en mi dormitorio, todos los cuales tienen un mal olor distintivo. Es mucho más barato y fácil comprar un amplificador para su estéreo que intentar construir uno el día después de su primera clase de transistores. Linus es la excepción, por supuesto, es más fácil comprar un sistema operativo que escribir uno ... Puede hacer más, aunque lo que aprende en ese tiempo es diferente de lo que aprendió Linus.
El mundo dentro y fuera de la universidad adoptará estas fórmulas (cmm, ágil, etc) para la resolución de problemas y cuando salga el próximo las descartarán igual de rápido. No tiene que usar el control de versiones para tener éxito, hay tantos éxitos con como sin (bueno, en realidad, debido a la era de la industria, hasta ahora hay muchos más éxitos sin control de versiones). Del mismo modo, puede tener éxito con un mínimo de pruebas (mire los nombres realmente importantes en la industria informática como ejemplos). Puede tener éxito probando su propio código, así como tener éxito siguiendo la regla de que nunca debe probar su propio código. Puede tener éxito usando emacs y puede tener éxito usando vi. Tienes que decidir qué combinación funciona para ti y, si tienes suerte, encontrar un lugar para trabajar que te convenga.
Cuando salga de la universidad y entre en el mundo real, escuche, trabaje y discuta con los "veteranos". Tienen décadas o siglos de experiencia combinada, trampas en las que han caído y que puede evitar o probar por su cuenta (tal vez se dé cuenta de que no tiene que tocar la olla caliente para descubrir que lo quemará). La mayoría habrá visto al menos una o dos de estas modas ir y venir, y en particular, lo mucho que se quemaron y lo que hicieron para recuperarse. Conocen muchas formas diferentes de probar cosas, y también conocen los nombres de los estilos de prueba que han ido y venido. Qué funciona, qué no. Dónde está el riesgo y cómo evitar perder el tiempo por la tangente. A medida que madura y se convierte en el veterano, páselo hacia adelante. Pague por lo que aprendió tratando de enseñar a los que lo siguen. Recuerda enseñarles CÓMO pescar, no les des un pescado. Y a veces tienes que dejar que fracasen antes de que tengan éxito, evitar que se quemen demasiado.
Lo que realmente quería decir aquí es que ahora mismo nos encontramos en una situación poco común en la que podemos presenciar la evolución de un universo paralelo (y tal vez influir en él). Sí, la informática es una ciencia joven en comparación con la física. Pero al mismo tiempo, ha evolucionado muchas veces. Dependiendo de dónde trabaje y con quién trabaje, es posible que pueda observar a los ingenieros de hardware. Los lenguajes de programación en el mundo del hardware ciertamente no son nuevos, pero no han evolucionado tan rápidamente como el mundo del software. El software tenía algunas décadas de ventaja. El hardware siempre ha pensado en los ingenieros de software como ciudadanos de segunda clase. Nuestro trabajo es fácil, su trabajo es duro. (Tenga en cuenta que en realidad soy un ingeniero de hardware y software). Lo interesante es que ahora mismo todavía están lidiando con lo que consideraríamos problemas elementales o infantiles. ¿Por qué debería usar el control de versiones? Soy el único que trabaja en este chip. Tu experiencia con gcc u otros compiladores baratos o IDE gratuitos no se puede comparar con las costosas herramientas que utilizo, si la empresa pensara que eres lo suficientemente digno para usarlo o incluso saber cómo usarlo, te comprarían una copia. Y una larga lista de otras excusas. Tuve el placer de aprender tanto vhdl como verilog y volverme productivo en ambos en una semana de lo que fue casi un desafío de un ingeniero de hardware (a pesar de que mi diploma decía ingeniero eléctrico, mi puesto de trabajo es ingeniero de software). Quería aprender estos idiomas, cuando las herramientas estaban disponibles para mí, me quedaba en la oficina hasta la noche y aprendía yo mismo. A partir de ese momento, ese ingeniero en particular se dio cuenta de que lo que estaba diciendo era cierto, los lenguajes son solo sintaxis, Los fundamentos de la programación son los mismos, todas las herramientas hacen lo mismo. Son manzanas y manzanas, no manzanas y naranjas.
En general, sin embargo, todavía es difícil enviar el mensaje de que una de estas dos industrias paralelas tiene mucha más experiencia en lenguajes, hábitos de programación, control de fuente, pruebas, herramientas, entornos de programación, etc. que la otra. El problema que estoy tratando de resolver es tomar los diseños de hardware a medida que se desarrollan, crear simuladores funcionales asequibles que podamos vincular con una simulación (máquina virtual) del procesador para que podamos comenzar a probar el hardware y desarrollar la prueba y software entregable mucho antes de que vayamos al silicio. No, no hay nada "nuevo" en esto, pero no tenemos ningún mecanismo para obtener el código más reciente, realizar un seguimiento de los cambios en el código para ver dónde debemos concentrar nuestro tiempo. No hay mecanismo para rastrear la documentación que define la interfaz de usuario (programación) para el hardware. La única copia dorada está en la bandeja de entrada del correo electrónico de alguien en forma binaria y solo cambia cuando, bueno, no tiene que leer el verilog para averiguar qué está pasando. Espera, ¿cuántos años tiene ese verilog? ¿Ese error que pasé toda la semana contigo lo descubrí hace tres semanas y lo solucioné? Entonces, ¿simplemente volamos a algún lugar de vacaciones y festejamos durante seis meses esperando a que la gente de hardware termine su tarea y nos la arroje por la borda, o aprovechamos esta oportunidad para tratar de ser pacientes y optimistas y enseñarles que ellos? hay métodos de sentido común que no son tan intrusivos que les permiten hacer su trabajo, hacer una copia de seguridad de su trabajo y compartir sus cosas para la revisión por pares ... ¿Qué edad tiene ese Verilog? ¿Ese error que pasé toda la semana contigo lo descubrí hace tres semanas y lo solucioné? Entonces, ¿simplemente volamos a algún lugar de vacaciones y festejamos durante seis meses esperando a que la gente de hardware termine su tarea y nos la arroje por la borda, o aprovechamos esta oportunidad para tratar de ser pacientes y optimistas y enseñarles que ellos? hay métodos de sentido común que no son tan intrusivos que les permiten hacer su trabajo, hacer una copia de seguridad de su trabajo y compartir sus cosas para la revisión por pares ... ¿Qué edad tiene ese Verilog? ¿Ese error que pasé toda la semana contigo lo descubrí hace tres semanas y lo solucioné? Entonces, ¿simplemente volamos a algún lugar de vacaciones y festejamos durante seis meses esperando a que la gente de hardware termine su tarea y nos la arroje por la borda, o aprovechamos esta oportunidad para tratar de ser pacientes y optimistas y enseñarles que ellos? hay métodos de sentido común que no son tan intrusivos que les permiten hacer su trabajo, hacer una copia de seguridad de su trabajo y compartir sus cosas para la revisión por pares ...
Recuerde que los ingenieros de hardware dejaron la universidad con una caja de herramientas nuevas y brillantes, como lo hizo usted. Aprendió 17 lenguajes de programación diferentes de los cuales solo puede usar uno, el resto de los lenguajes que en su carrera se inventarán después de que deje la universidad. Cuando dejaron la universidad, pueden decirte lo que saben sobre cálculo y la teoría de la relatividad cuántos electrones hay en cada uno de los elementos y calcular la carga alrededor de una superficie gaussiana. Pero la mayor parte de su carrera es uno, cero y, o y no (oye, tenemos esos en común, todo lo que realmente necesitas saber sobre computadoras, uno, cero y, o no, ingeniero de hardware o software). Concedidas las leyes fundamentales de la física, el cálculo, los electrones no van a cambiar tan rápido como lo hacen los lenguajes de programación. Pero los fundamentos de la programación son los mismos en todos los lenguajes y seguirán siéndolo en el futuro. ¿Dejaste la universidad sabiendo eso o te fuiste pensando que Java es diferente y mejor que C ++ porque esto y aquello y lo otro?
Como cualquier otro negocio, el trabajo de las universidades es seguir siendo rentable. Tienen que contratar a los académicos adecuados para traer tanto a los estudiantes adecuados como a los dólares de investigación adecuados y los tipos de investigación adecuados para que la universidad sea rentable. Tienen que ofrecer las clases adecuadas para traer a los estudiantes adecuados y producir los graduados adecuados para que, a medida que pasen las décadas, los empleadores, tanto cerca de la universidad como, con suerte, lejos, reconozcan que esta universidad produce empleados productivos y rentables. (sí, ya veces hay que atraer a los atletas adecuados en el deporte adecuado para obtener la cantidad adecuada de tiempo en televisión y la cantidad adecuada de reconocimiento de nombres e ingresos deportivos). Algunas universidades enseñarán C ++ y Java, otras nunca lo harán. Algunos inventarán CMM, otros enseñarán Agile, otros no harán ninguna de las dos. Si la universidad tiene algún valor, hay algo que puedes aprender. No te enseñarán todo lo que hay que aprender, pero tendrán algo útil. Aprenda algo mientras esté allí, recopile una cantidad razonable de diversas formas de herramientas en su caja de herramientas. Deja la universidad y consigue un trabajo. Si su caja de herramientas apesta, tal vez encuentre otra universidad y nunca mencione la primera. Si es una buena caja de herramientas, use esas herramientas y construya algunas nuevas en su propio tiempo. Si es una caja de herramientas bastante buena, diga cosas buenas sobre esa universidad y los buenos académicos de los que aprendió esto y aquello y devuélvale a la escuela lo que le dieron. Aunque no obtuvo todas las herramientas posibles en el catálogo universal de herramientas universitarias, se irá con un determinado subconjunto. Incluso si no te gradúas ...