¡Hay algunas cosas diferentes para desenredar aquí!
¿La nube es tan prominente en el futuro del software como lo veo?
Sí. Lo siento, es un trato hecho. La forma en que construimos, implementamos, distribuimos y mantenemos el software ha cambiado para siempre. ¿Qué significa “fuera de línea” en un mundo donde una proporción creciente de la población mundial está casi permanentemente en línea, donde los automóviles reciben actualizaciones de software por el aire, los desarrolladores de ojos brillantes están ocupados pegando computadoras en todos los dispositivos imaginables y muchos de los cuales son casi inconcebible (vea este feed de Twitter de los peores excesos de la locura de “Internet de las cosas” por ejemplo), y la mayoría de los desarrolladores de software han llegado a sentir que la implementación de cambios lo más rápido posible es la mejor manera de lidiar con los problemas duales de corregir errores y agregando características?
- ¿Cuál es el mejor alojamiento en la nube, HostingRaja, Amazon, DigitalOcean, Linode, Google Cloud Platform u otro?
- Cómo convertirse en un experto en computación en la nube si empiezo desde cero
- ¿Qué tan legal es alojar información de clientes en un servidor en la nube fuera del país de operación comercial? Ejemplos de cualquier manera?
- Cómo mover archivos de Dropbox a OneDrive
- ¿En qué se diferencia la nube de metal desnudo de las nubes típicas y cuáles son los beneficios relativos de cada una?
Todavía hay bolsillos aislados en los que el software está realmente fuera de línea, pero estos son cada vez más raros; estamos enviando actualizaciones de firmware a las naves espaciales que abandonaron este planeta hace años, y los proveedores de telecomunicaciones están haciendo todo lo posible para facilitar la comunicación económica con dispositivos cada vez más pequeños en el campo.
“The Cloud” es muchas cosas, todavía me gusta la explicación de que “The Cloud es solo las computadoras de alguien más”, pero lo que significa para los desarrolladores de software de todo tipo es que al menos necesitas pensar en cómo existe tu software en un mundo de comunicación ubicua. Incluso si nunca escribe el código de red usted mismo, comprender cómo funciona Internet es fundamental si desea asegurarse de que no va a esperar que haga algo poco práctico o ineficiente en el futuro.
Si quiero perseguir un futuro en el desarrollo de software, ¿primero debo aprender los conceptos de desarrollo web? ¿Debería aguantarlo?
Sí, lamento informar que deberías aguantar. No estoy sugiriendo que tenga que resignarse al desarrollo web como carrera, pero sea cual sea el camino que tome su carrera en el desarrollo de software, esas habrán sido habilidades útiles para aprender. El desarrollo web moderno abarca una asombrosa variedad de enfoques, lenguajes e infraestructura en virtud del hecho de que la web es Internet en la mente de la mayoría de las personas.
Esto no significa que tenga que escribir su propio servidor web, o tomar el administrador de sistemas Linux, o aprender todo desde cero. En Engine Yard, por solo un ejemplo, ofrecemos una plataforma para los desarrolladores de Ruby on Rails que solo desean implementar sus aplicaciones sin tener que lidiar con todo eso y, en cambio, dejarlo en manos de los expertos. Rails es un buen punto de partida para obtener una base en los conceptos web modernos, al igual que muchos otros marcos y tecnologías como Django, React, etc. Si ha probado estos y todavía odia el desarrollo web, piense en por qué y cómo puede hacer que sea menos atractivo.
Es posible que tenga la suerte de conseguir un trabajo que le permita evitar tener que lidiar con la web directamente de la universidad, pero en algún momento estoy dispuesto a apostar que de alguna manera lo rechazará. Cuando eso suceda, tener una buena comprensión de dónde están los puntos débiles y por qué las personas hacen las cosas de la manera en que lo hacen será muy útil para evitar que se repitan los errores de generaciones anteriores de desarrolladores.
La nube no es la web.
Hay mucho más en “The Cloud” que solo desarrollo web. Eche un vistazo a la lista de productos proporcionados por Amazon Web Services, por ejemplo. Trabajo en este espacio, y cada vez que miro hay algo nuevo. Tampoco es solo Amazon; mire lo que proporcionan Google y Azure y verá rápidamente que desarrollar en la nube no significa necesariamente hacer desarrollo web. Hay desafíos complejos involucrados en hacer que todas estas piezas que se mueven muy rápido jueguen bien juntas, y hay infinitas oportunidades para arremangarse y ponerse a trabajar sin escribir aplicaciones web. ¡Sal y aprovecha al máximo!