Notas Erick Navarro es un desarrollador con años trabajando haciendo software, siempre en constante aprendizaje y tratando de enseñar lo aprendido a lo largo del camino. Es joven, pero su experiencia en backend es muy madura. Su Framework favorito y más utilizado es Django, por lo que creí interesante que compartiera su experiencia con la comunidad.

El siguiente texto es una entrevista sin editar o manipulaciones.

Yo

Buenas noches Erick. Quería compartir con mis lectores una entrevista con un desarrollador que conozca con mucha profundidad Django y se dedique en exclusiva al backend. Antes de nada, ¿qué es para ti Django?

Erick

Buenas noches Andros, en una frase: “algo genial” es una herramienta que agiliza mucho el desarrollo web y es una de mis favoritas.

Yo

¿En que te ayuda?

Erick

En poder plasmar una idea en algo “tangible” de forma fácil y rápida, en poco tiempo se puede tener una web funcionando de la forma que queramos

Yo

¿Qué es lo que te atrajo a este Framework? ¿Cómo lo conociste? ¿O él te conoció a ti?

Erick

Me atrajo la facilidad y simplicidad de como trabaja, lo conocí cuando apenas estaba aprendiendo Python y quería hacer algo web, venia de PHP así que el salto fue enorme

Yo

Es curioso como gran parte de los desarrolladores webs se han criado con PHP pero luego han dado un salgo hacia otros lenguajes, como Ruby, Go, Python… ¿Por qué crees que ocurre esto? ¿PHP esta deprecated?

Erick

No creo que este desfasado, están saliendo nuevas versiones que lo mejoran, a mi parecer comparando los lenguajes, en este caso Python y php pienso que Python es mucho mas amigable, fácil de entender y poderoso, ahora yendo al lado web PHP te da muchas libertades por lo que el código de un proyecto puede terminar siendo un caos, Django en este caso te da cierta dirección que te permite encaminar el proyecto, aunque lo mas justo seria comparar Django con un framework de PHP el único que llegué a probar fue CodeIgniter y Django es mas simple de usar

Yo

Y ahora con Laravel esta tomando un rumbo interesante. Pero volviendo a la comunidad de Django. ¿Podrías ser crítico? 3 cosas que te gusten y 3 que podrían mejorar.

Erick

¿De la comunidad o del framework?

Yo

Del framework

Erick

Cosas que me gustan

  • La comunidad es genial, debido a los mas de 10 años de Django existe una gran cantidad de paquetes listo para usara,
  • El desarrollo del framework es muy activo siempre están agregando cosas nuevas y mojorándolo
  • El estar basado en Python también es una gran ventaja ya que este es un lenguaje muy usado en varios campos, ciencia de datos, IA, etc Cosas que no me gustan
  • La simplicidad de un proyecto recién creado es buena pero me gustaría que hubiera una opción para generar un código base mas complejo, existen herramienta como cookiecutter pero sería genial que esto sea parte del core de Django
  • El soporte de Python2 que por fin se dejará de lado en la versión 2.0, esto será beneficioso para aprovechar las mejoras de Python3
  • Hay muchas cosas que he visto en otros lenguajes y frameworks que quisiera que se agreguen a Django, en fin, también hay pequeños detalles pero creo que a un nivel mas alto son muchos mas los pros que los contra de Django

Yo

¿Qué opinión tienes sobre el rendimiento? Suele ser muy atacado por ello.

Erick

Eso ya no es por Django en si sino por carencias que puede tener el lenguaje, al ser interpretado no va a ser tan rápido como otros lenguajes pero aun así es muy usado por grandes compañías que manejan mucho tráfico, para hablar de rendimiento se deben considerar muchos factores, pero en términos generales Django cumple con su función y es por eso la gran popularidad se ha ganado a través de los años

Yo

Hace poco se ha incorporado Channels. ¿Qué son y por qué deberíamos usarlo?

Erick

Esa es una de las características que mas me gustan (sonríe), Channels básicamente es un paquete que permite darle un comportamiento asíncrono a Django para poder manejar por ejemplo Websockets, los cuales son muy usados hoy en dia para aplicaciones realtime, un punto a favor de usar Channels es que podemos usarlos junto con todas las herramientas que nos ofrece Django, ORM, autenticación, etc, la parte realtime era una de las falencias que tenia Django respecto a otros frameworks pero ahora podemos decir que esta cubierta

Yo

¡Qué prometedor! ¿Conoces otras alternativas, como Flask? ¿Qué opinión tienes sobre ellos?

Erick

Flask, Bottle, etc, son muy buenos, ya depende del proyecto para decidirse por alguno de ellos puede pasar que en algunas ocasiones no se necesiten de todas las características de Django por lo que es una muy buena opción optar por un microframework

Yo

Ya que una vez fuiste un Padawan de Django. ¿Qué consejos podrías dar a los nuevos desarrolladores?

Erick

Trazarse un proyecto y para adelante, como se dice, aprender haciendo pero es muy importante detenerse un poquito y entender las bases de la herramienta entre mas conozcas la herramienta mas fácil se te hará hacer cosas nuevas

Yo

¿Cuales son para ti las mejores extensiones?

Erick

No se si las mejores pero si las que mas uso Django-crispy-forms sorl-thumbnails son las que se me vienen a la mente ahora

Yo

Ya para terminar, ¿que otros lenguajes estas aprendiendo?

Erick

Rust, Elixir, Elm, me estoy metiendo en la programación funcional por lo que estoy bastante entretenido con estos lenguajes.

Yo

Gracias Erick por tu tiempo. Espero que tus palabras sirvan para que muchas personas se animen a probarlo y a los viejos lobos a reflexionar. Un saludo.

Erick

Gracias a ti por la entrevista, siempre estoy dispuesto a devolver al menos un poco a la comunidad de donde tanto he aprendido.