Cuando uno recién comienza en el desarrollo web no comprende muchos términos, como por ejemplo front-end y back-end, términos que son fundamentales en el desarrollo web y que toda persona debería conocer. Es por eso que en este post te explicare que es Front-End y que es Back-End asi como las diferencias y las habilidades que se necesitan para cada área.

front-end-vs-back-end

¿ Que es Front-End ?

Bien pues front-end es la parte del desarrollo web que se dedica de la parte frontal de un sitio web, en pocas palabras del diseño de un sitio web, desde la estructura del sitio hasta los estilos como colores, fondos, tamaños hasta llegar a las animaciones y efectos.

Un front-end entonces es la persona que se dedica básicamente al “diseño web”, pero esto no signifique que no toque código, tanto el front-end como el back-end están en contacto con código todo el tiempo, dentro del área de front-end se trabaja con lenguajes mayormente del lado del cliente, como HTML y CSS para darle estructura y estilo al sitio, y Javascript para complementar los anteriores y darle dinamismo a los sitios web. Me gustaría aclarar una cosa en este punto, HTML y CSS son lenguajes pero no de programacion, son lenguajes de marcado y estilo. Solo Javascript es un lenguaje de programacion, y este ultimo es en donde se requiere realmente una logica de programacion. Aunque no es nada de tener miedo.

Ya comentamos los lenguajes utilizados en el front-end ahora pasemos con las herramientas, la parte del front-end es mas artística y creativa, una gran parte se centra en hacer sitios bonitos y amigables, resumamos en elementos visuales. ¿Y a que están relacionados los elementos visuales o gráficos? pues como su nombre lo dice a herramientas de diseño gráfico como Ilustrator y Photoshop. Y para el código editores de código como es obvio.

El flujo de trabajo de un front-end puede variar pero la mayoría del tiempo es diseñar bocetos, transformarlos en prototipos y por ultimo transformar la idea en un sitio web.

¿ Que es Back-End ?

Ya hablamos sobre FrontEnd y el trabajo que desempeña, ahora pasemos al Back-End, el lado opuesto. El Back-End es el área que se dedica a la parte lógica de un sitio web, es el encargado de que todo funcione como debería, el back-end es la parte de atrás que de alguna manera no es visible para el usuario ya que no se trata de diseño, o elementos gráficos, se trata de programar las funciones que tendrá un sitio. El Back-End es la programacion dura y pura, desde la programacion de las funciones del sitio hasta bases de datos e incluso mas.

El Back-end trabaja todo el tiempo con lenguajes de programacion, lenguajes que requieren de una lógica ya que esta área es también la encargada de optimizar recursos, de la seguridad de un sitio y demás. Cosas que el usuario no ve de primeras pero que existe código detrás que esta haciendo su trabajo.

Los lenguajes de programacion que se utilizan en el Back-end en la actualidad son PHP, Javascript, Phyton y Ruby. Ademas de HTML y CSS, que aunque básico, también deben saber al menos un poco. Aquí me gustaría hablar de 2 cosas, primero que nada, yo he mencionado 4 lenguajes de programacion, pero no son todos los que existen y no es obligatorio utilizar todos y cada uno de ellos, hay programadores back-end que solo saben algunos, no es necesario saber todos, depende de lo que se quiera programar y de las capacidades del lenguaje. Como segunda cosa que me gustaría comentar es que aunque el Back-End también debe saber de HTML y CSS, no es necesario saber a un nivel alto como lo haría un Front-End, es simplemente para poder crear una estructura básica en la que trabajar.

Las herramientas que se utilizan en el Back-end son editores de código, compiladores, algunos debuggeadores para revisar errores y seguridad, gestores de bases de datos y algunas otras cosas.

El flujo de trabajo de un back-end consiste en darle funciones a un sitio, por lo general el front-end hace un sitio estático, y el back-end después le da funciones y adapta el sistema programado a ese sitio web. Es por eso que las personas que se dedican al back-end también tienen que tener conocimientos al menos básicos de front-end. Para poder juntar las 2 partes en 1.

front-end-back-end-02

¿ Que es mejor Back-End o Front-End ?

Las 2 son importantes y se complementan la una o la otra, por una parte queremos tener sitios web bonitos y amigables y por la otra parte queremos que esos sitios sean funcionales y puedan realizar operaciones. Esta pregunta la decidí agregar porque la gente normalmente piensa que un back-end es mejor que un front-end o que se puede ganar mas dinero en una que en otra, pero al realidad es que asi no funcionan las cosas. La forma en que se puede ganar mas dinero y se puede determinar cual área es mejor, es elección propia y dependiendo de las habilidades de cada persona.

Con esto me gustaría hacer referencia a algo que muchos ya conocemos, los 2 hemisferios del cerebro, el izquierdo y derecho, no voy entrar mucho en detalle asi que lo simplificare en lo siguiente, cada persona tiene mas desarrollado un hemisferio de los 2 que tenemos, un hemisferio es mas capaz de realizar tareas creativas, mientras que el otro es mas capaz de realizar tareas lógicas. Para poder ser bueno en un área primero tienes que identificar que tipo de persona eres y que tipo de inteligencia tienes, eres una persona creativa? o eres una persona mas logica?

En el front-end se necesitan personas con esta capacidad creativa y en el back-end se necesitan personas con muy buena lógica para resolver problemas. Si entras en un área que no te gusta vas a ser malo en esa área. En cambio si te gusta esa área vas a ser mejor y entonces vas a poder cobrar mas dinero. Todo depende de que tanto te guste y que tan bueno seas.

Ahora, hay personas creativas que quieren ser back-ends, asi como hay personas lógicas que quieren ser front-ends, y la buena noticia es que si pueden hacerlo, y asi como te fui sincero con la anterior oración también sere sincero con esto, y es que aunque una persona lógica puede ser front-end y una creativa puede ser back-end, la realidad es que les va a costar mas trabajo, en verdad va a ser mas difícil y todo dependerá de la motivación de una persona para ir entrenando su cerebro con algo nuevo. Es posible, si que lo es, pero muchas personas se desaniman porque no entienden, la verdad es que no practicaron lo suficiente para aprender esa habilidad.

Y si tu determinante es el tiempo o dinero tengo que decirte que ambos tienen una vida frente la computadora muchas pero muchas horas, y ambos ganan lo que se merecen y eso depende de que tan buenos sean.

Hablar de front-end y back-end es un tema muy complejo, me gustaría seguir hablando de el, asi que si tienes preguntas, sugerencias, lo que sea, escribelo en los comentarios y yo te responderé.