Cada vez es mas fácil o mas difícil desarrollar?

Hola a todos, hoy les quiero hablar sobre una conversación que tuve con un compañero de trabajo, hoy en día es ¿mas fácil o mas difícil desarrollar?.
Hoy en día hay miles de Frameworks y librerías que nos facilitan muchísimo el desarrollo de nuevas aplicaciones, como ejemplo podemos tomar a Polymer, esté se basa en del desarrollo de webcomponents, la idea es construir o re-utilizar componentes desarrollados por otros o nosotros y de esta forma aceleramos el desarrollo de una web.(Tengamos en cuenta que hoy en día esta en su etapa beta, 0.9). Estos componentes desarrollados luego los usamos como si fueran un TAG mas de nuestro HTML, poner un mapa hoy en día en una web usando Polymer es tan fácil como poner el siguiente TAG:
<google-map latitude="37.77493" longitude="-122.41942"></google-map>
Con esto nos olvidamos del JavaScript y de renegar haciendo los imports y todo eso. (MAS FÁCIL IMPOSIBLE!!).
O que tal cuando queremos construir una WEB con JAVA y SPRING, con tan solo usar el annotation  @RequestMapping ya tenemos un controller (BASTA DE CONFIGURACIONES RARAS), y sin hablar si queremos usar JACKSON para convertir un objeto a JSON, con tan solo declararlo en el xml de spring como un ObjectMapper, una configuración de entre 5 y 10 lineas, no mas de eso, y tenemos un mapper a json en nuestros controllers. Recordemos que de lo contrario, tendríamos que realizar la conversión antes de retornar los datos en todos nuestros controllers.
Pero hasta acá todo fácil, si es que viviéramos en un mundo ideal, ¿qué pasa si es que falla nuestra aplicación en medio de lo que desconocemos?, imaginemos que tenemos un dato de entrada a nuestros controllers y no nos llega el dato esperado del lado del server, ¿cómo sabemos lo que paso? si lo que hace spring es lo mágico que nos facilita la vida. O que tal si nos ponemos en el caso de usar Polymer y algo fallara en el renderizado del mapa usando el TAG de Polymer, ¿Cómo sabríamos que fallo?, sí el funcionamiento interno es justamente lo que desconocemos y nos facilita la vida al desarrollar.
Eh aquí donde todos nos tenemos que darnos cuenta que si bien hoy en día teneos muchas herramientas que nos facilitan la vida a la hora de desarrollar, tenemos que tener un cierto nivel de conocimiento de las herramientas que usamos para poder afrontar los problemas que podamos llegar a enfrentar, y ahí es donde la experiencia y los conocimientos a bajo nivel (conocer las entrañas de las herramientas que usamos) nos es de buena ayuda.
Por todo esto yo diría que si bien hoy tenemos muchas herramientas que nos ayudan en el día a día en los desarrollos, el nivel de conocimientos que debemos tener hoy para solventar los posibles errores que debemos afrontar requieren un mayor nivel de conocimientos, en patrones, lenguajes, arquitecturas, tecnologías, en fin, en muchísimas mas cosas que las que requeríamos antes.

Me gustaría dejar la siguiente frase para que la tengamos en cuenta:

"Hoy en día es mas fácil iniciarnos en el mundo del desarrollo, y depende de nosotros profundizar los conocimientos"

En lo personal amo esta profesión porque siempre hay algo por aprender y tengo retos nuevos todos los días, conozco gente que admiro el como realiza las cosas, como las resuelve. Y siempre que me preguntan de que trabajo responde que yo no trabajo, hago lo que mas me gusta en el mundo.

Hakiemos nuestras vidas, nuestra forma de vivir, nuestra forma de aprender, hagamos divertido nuestro aprendizaje.

Happy Haking } ; ) by Tahuri

Comentarios

Entradas más populares de este blog

Niveles de visión de los datos

ZonedDateTime & OffsetDateTime

Migración MongoDb 2.4 -> 2.6 -> 3.0 (con replicas)