Lemoncode blog


Artículos, ideas, desarrollos, notas y mucho más

Máster Front End Lemoncode - Beca Yes We Tech

En colaboración con YesWeTech ofrecemos nuestra primera beca de estudios para ayudar aportar nuestro granito de arena a conseguir que haya más diversidad e igualdad de oportunidades en esta profesión. ¿En que consiste? En cubrir el 100% del coste del Máster Front End Online Lemoncode a un alumno  que pertenezca a una minoría con baja representación en el sector profesional. Ofrecemos una plaza, y para ello hemos resuelto unas bases para poder inscribiros y seleccionar el aspirante.

Comment

Git y Visual Studio Code

En este post vamos a aprender manejarnos con el cliente de Git de Visual Studio Code, para ello nos clonaremos un repo de Github que contiene una aplicación web del tipo "Hola Mundo", e iremos trabajando con ella. Cada paso irá acompañado de gifs animados que nos harán más facil aprender a como usar esta herramienta.

17 Comments

Bolsa de trabajo Máster Front End Online Lemoncode

El Máster Front End Lemoncode va ya por su cuarta edición, desde que arrancamos teníamos claro que debía tener un enfoque 100% orientado al mercado laboral, y que los alumnos crecieran profesionalmente: tanto en capacitación en sus puestos de trabajo, así como prepararlos para probar nuevas aventuras. Fruto de esta actitud, hemos mantenido siempre contactos con empresas del sector y puesto en contacto oferta con demanda.

Como novedad en esta cuarta edición formalizamos dicha cooperación, hemos abierto una bolsa de trabajo, con empresas interesadas en contratar a estudiantes del Máster Lemoncode.

Comment

Introducción a la programación funcional en JavaScript

Seguro que recientemente has oído y leído sobre este paradigma de programación que está atrayendo a muchos seguidores. En este post podrás aprender en qué consiste y ver algunos ejemplos que seguro te harán reflexionar sobre tu manera de programar y quizás te animen a aplicarlo en algún proyecto. 

2 Comments

Lodash/fp set - flow

En este post aprenderás las maravillas que nos trae lodash/fp (fp viene de functional programming, genial para asegurar inmutabilidad). Lo mostramos mediante ejemplos con una guía paso a paso y usando CodePen.

Comment

JavaScript ES6 no más bucles FOR

Cuando trabajamos con array es muy normal que llenemos nuestro código de bucles, que si...

“Mirar si este elemento está en el array...”

“Mirar si la suma de ventas es mayor de X para ofrecer gastos envío cero...”

“Sacar la media de ventas anuales...”

“Si uno de los indicadores está en rojo dispara la alarma...”

“Cerrar el pedido cuando todos los artículos hayan sido enviados...”

 

¿Qué solemos hacer JavaScript ES5? Tirar de bucle y ‘palante’, ¿Que desventajas tiene esto?

- El código es menos legible.

- Es más fácil que nos equivoquemos.

- Estamos repitiendo una y otra vez trozos de código parecidos.

Otra opción era utilizar una librería como lodash, pero... ¿no hay forma de hacer lo mismo sin tener que usar librerías de terceros? La respuesta es sí, con JavaScript ES6 tenemos un montón de métodos de ayuda que están muy bien, algunos son bien conocidos (map, reduce...) y otros no tanto, en este post damos un buen repaso a los más importantes para ayudarte a que tu código sea más fácil de leer y mantener.

7 Comments

¿Por qué Redux?

Cada X años un grupo de desarrolladores, cogen piezas y buenas prácticas de aquí y allá y montan un patrón que cambia las reglas del juego. En esta ocasión le toca a Redux revolucionar el mundo del desarrollo ¿Pero que tiene este patrón de especial que no tenga MVC, MVV, MV*^...? En este artículo vamos a ver sus puntos fuertes.

Comment

Novedades Máster Front End Lemoncode tercera edicion

En unos meses arranca la tercera edición del Máster Front-End Lemoncode, al igual que enla segunda edición, toca revisar temario y actualizarlo. En este post os presentamos las principales novedades.

En cuanto a materia:

  • Módulo Layout:
    • En la pasada edición, introdujimos CSS Grid. Este año ganará más peso en el temario.
    • UI Design: la sesión de introducción a UX fue un éxito, este año hemos decidido añadir una de UI design de la mano de Antonio Benitez.
  • Módulo Frameworks:
    • Angular Redux (ngrx / store): además de las bases y las pruebas unitarías, añadimos una sesión de integración de redux con Angular 4.
  • Módulo comunicación servidor:
    • WebSockets.

Y como gran novedad... algo que de entrada os va a chocar... backend, ¿¡¡¡ Comooor !!!? Desde que arrancamos este Máster, hemos recibido muchas peticiones para incorporar temas de backend en el mismo. Tras darle muchas vueltas, nos hemos dado cuenta de que tenéis toda la razón, si bien un desarrollador tiende a especializarse, es bueno que tenga la visión completa de un producto (sobre todo para no cometer barrabasadas por desconocimiento). La gran pregunta que nos hacíamos, ¿cómo podíamos incluir una introducción a backend sin tocar el temario y la cantidad de horas que asignamos a la parte de Front-End? ¡Invitándoos a sendos cursos adicionales al máster!

En concreto:

  • Introducción a desarrollo de API's REST con .NET Core (ASP .NET Core, Entity Framework) 21 horas de duración.
  • Introducción a desarroolo de API's REST con Nodejs (Express + Mongoose + Mongodb) 21 horas de duración.

En cuanto a profesores:

Antonio Benitez.png

Antonio Benitez

UI Design

Diseñador visual con más de 17 años de experiencia centrados en la creación de interfaces gráficas de usuario para videojuegos, Web y aplicaciones de escritorio y móvil. Reconocimiento internacional como colaborador en el proyecto open source eMule.

 

Eduard Tomàs

ASP.NET Core

MVP en IIS/ASP.NET por parte de Microsoft, apasionado del desarrollo, la tecnología, los videojuegos, la sci-fi y por supuesto la cerveza.

 

 

¿Te apuntas?

Estas son sólo las novedades de esta edición, si quieres saber más acerca de este máster, te recomendamos estos enlaces:

Máster Front-End Lemoncode

Opiniones antiguos alumnos

Novedades segunda edición

Comment

Máster Full Stack + Front End

Hasta hace no mucho en Lemoncode ofrecíamos un máster especializado en Front End, y recibimos varias propuestas de desarrolladores que estaban interesados en tener la foto completa de como desarrollar un proyecto web de cabo a rabo, así que nos liamos la manta a la cabeza y montamos el máster Full Stack con un buen temario y un estupendo plantel de profesores (8 docentes cada uno especialista en su área).

Comment

¡Ya está bien! ¡¡ Me hago Freelance!!

Seguro que más de una vez te ha dado el “calentón” y has dicho ¡Un día me tengo que montar por mi cuenta! Es más hasta habrás buscado información aquí y allá y habrás visto que esto de ser desarrollador nos hace ser” bichos raritos” ya que no encajamos en los estándares de lo que se considera montar un negocio.

4 Comments

Máster Full Stack ¿Esto de que va?

Hace unas semanas incorporamos a nuestra oferta formativa un Máster Full Stack. Al ver este término más de uno habréis pensado:

¡Anda, esto lo he visto en un montón de ofertas de trabajo!, pero ¿en qué consiste esto exactamente? ¿es un tipo de trabajo atractivo y en el que pueda tener proyección?

En este post vamos a intentar aclararte dudas y que veas si esto del "Full Stack" está hecho para ti.

Comment

Curso de React: Preguntas y respuestas

Hace unos días que impartimos el curso de React en vivo donde se cubrieron desde conceptos básicos de la propia librería a cómo adentrarnos en el desarrollo de una aplicación web real con esta tecnología.

Durante el curso de esta formación los alumnos realizaron preguntas muy interesantes tanto durante el curso en vivo como por el canal de slack que abrimos para el mismo. Hemos decidido seleccionar un grupo de preguntas y material en este post, espero que te sea interesante.

Por cierto si tienes ganas de aprender React, puedes adquirir la grabación de este curso por sólo 29 € pinchando en este enlace.

¿Cómo arrancar un proyecto con React desde cero? ¿Qué necesito?

Prerrequisitos

Necesitarás tener instalado Node. Al instalar Node, podemos abrir una terminal y ejecutar el comando `npm` para listar los paquetes necesarios.

Boilerplate

Tienes en el repositorio react-training-ts (o react-training-es6 para la versión en ES6) todos los ejemplos estructurados con su código fuente junto con un README.md explicando paso a paso para ejecutarlo. En el ejemplo 02 Sample App / 00 Boilerplate se encuentra una plantilla que puedes utilizar como punto de inicio o configuración inicial.

IDE / editor

Como editor podemos usar, por ejemplo, Atom o VisualStudio Code.

Plugins necesarios para trabajar con Atom:
- En el caso de usar TypeScript: atom-typescript
- En el caso de ES6, language-babel para el highlight del código, auto-complete JSX, etc.

Otros plugins de Atom que te pueden ayudar:

Comment

Integrando React en aplicaciones antiguas

La temida migración

Llegó el momento... 10 años desarrollando con nuestra querida tecnología web (ASP.NET Web Forms, PHP, ASP.NET MVC, Ruby...) y han venido del departamento de ventas con las siguientes quejas del sitio web que hay montado:

  • Hay clientes que quieren hacer sus transacciones tirados en el sofá y no pueden, les hace falta tener un portátil a mano.
  • Hay clientes que no pueden completar los pedidos.
  • El 30% de nuestros clientes tiene móviles baratos y no le tira nuestra web.
  • Cuando un cliente está en el campo no puede trabajar con nuestro sitio porque la conexión es muy mala.

En el nuestro:

  • Tenemos una web pobre, no responsiva, que no se adapta a los gestos y demás que podemos hacer con una tablet o un móvil.
  • Tenemos tanta lógica en sphaguetti JavaScript que es ingobernable, de ahí que nuestra aplicación tenga petes aleatorios.
  • Que nuestra aplicación tiene mucha dependencia con el servidor para cosas que se podrían gestionar en cliente.
  • Que nuestra aplicación es muy pesada y consume ancho de banda, batería de móvil y recursos.

Lo peor... que esto pasa hasta con elecciones no tan antiguas ¿Te acuerdas de Angular 1? ¿ Tienes problemas de rendimiento?

Ahora llega el momento de la elección, seguramente tu aplicación web sea un mamotreto enorme y no puedes cerrar las cortinas un par de años y migrarla por completo.

¿No habría forma de ir haciendo migraciones parciales? ¡React al rescate!

React

React es una librería ligera para manejar interfaz de usuario que tiene un rendimiento muy bueno, además nos permite componentizar nuestras páginas.

Una de las principales ventajas de React con respecto a otras tecnologías web es que nos permite ir reemplazando partes de una página y coexistir con librerías antiguas.

Veamos cómo.

Aproximaciones

Todos los ejemplos que van a ser mostrados se encuentran visibles de forma pública en el repositorio de GitHub de Lemoncode: integrate-react-legacy-apps.

1 Comment

¿ Por qué React se ha convertido en un estándar de facto?

Hace unos años que empezó React su andadura, cuando arrancó, recuerdo haberle echado un mal vistazo a la tecnología y haberla desechado. 

Lo que no entendía era como un equipo brillante de desarrolladores, podía haber parido esto y cómo más y más empresas que su negocio depende de tener un buen Front-End (Facebook, Netflix, Uber, Airbnb...) la estaban adoptando como estándar.

Tocaba volver a jugar con React y darle una mirada sin prejuicios.

Comment

Master Front End Lemon ¿ Qué tiene esto de especial?

Cuando toca elegir un máster uno empieza a buscar aquí y allá... y a comparar ofertas, si has llegado hasta aquí es que has escuchado hablar del Máster Front End Online Lemoncode, igual hasta le has echado un ojo al temario y has pensado "anda tiene buena pinta", y acto seguido te has preguntado: 

¿De verdad este es un máster en el que voy a aprender, y poder aplicarlo al mundo laboral? 

Aquí lo mejor es apoyarnos en las opiniones de antiguos alumnos.

¿Los profesores saben de lo que hablan?

En este máster, los profesores somos además consultores, nos metemos en buenos "charcos" y sacamos proyectos reales de envergadura hacia delante.

Estoy trabajando, ¿Cómo puedo seguirlo?

Ponemos todas las facilidades para que puedas cursarlo: lo impartimos los viernes por la tarde (de 19:00 a 22:00) y sábados por la mañana (10:00 a 13:00), además las sesiones se graban con lo que si no puedes asistir a una o necesitas repasar, siempre las tendrás a mano.

Cuentas también con tutorías online en vivo con los profesores, quedáis ambos el día y la hora que mejor os convenga.

Un máster en remoto suena a "buscate la vida" ¿Esto es así?

En este máster las sesiones y las tutorías son en vivo y en directo, interactúas con el profesor vía audio, compartiendo escritorio o por el chat abierto de la sesión.

Contamos con un canal de Slack en el que alumnos y profesores estamos muy activos.

Por otro lado los desarrollos y prácticas las realizamos en GitHub siguiendo el sistema de branch per feature y con pull requests, con lo que analizamos tu código, te damos feedback y propuestas de mejora.

¿Está el máster al día? ¿ Cómo seleccionáis el contenido?

El mundo del Front End avanza muy rápido y tenemos muchas opciones abiertas ¿Cómo hemos estructurado el  temario?

  • Impartimos una base (layout + ES6 + TypeScript).
  • Cubrimos bundling (en esta damos suma importancia a Webpack 2).
  • A nivel de frameworks: Nos centramos en dos tecnologías que estén bien fuertes y en uso (en esta edición React + Redux y Angular 2). Cubrimos en menor medida otras más antiguas (por ejemplo jQuery) , y tecnologías prometeredoras (Vue.js).
  • Nos centramos en Unit Testing + TDD (tenemos un módulo sólo dedicado a esto).
  • También damos suma importancia a acceso a capas REST.
  • Para finalizar impartimos un módulo de cloud, abriendo a varias alternativas: Amazon, Azure, Heroku.

Antes de arrancar cada edición revisamos y actualizamos temario, ¿Qué tiene de nuevo esta segunda edición?

  • Aprovechando que dentro de poco lo tendremos disponible en todos los navegadores modernos, introducimos el elemento Grid de HTML 5 para maquetación.
  • Introducimos una sesión de inmersión a UX.
  • Nos centramos en Webpack 2.
  • Añadimos Vue.js a la cartera de frameworks.
  • Ampliamos el módulo de testing cubriendo casos tanto con React + Redux como Angular 2.
  • En el modulo de acceso a capas REST / Servidor incluimos este año WebSockets.

Mi perfil es... (desarrollador Back End, Front End, ...) ¿Aprovecharé el máster?

En la primera edición del máster pasaron diferentes perfiles, desarrolladores C#, Java, Full Stack, de Front End puros, diseñadores que pilotaban de programación..., ¿cómo aprovecharon el máster?

  • A los desarrolladores de Back End, le pasamos un material previo de estudio para que entraran en harina. Trabajando, consiguieron pillar comba y aprovecharlo bien.
  • A los desarrolladores Full Stack, les vino bien porque siempre tocan el Front End de "puntillas" y es bueno tomar un poco de tiempo y profundizar.
  • A los desarrolladores Front End, normalmente están especializados en un framework o tecnología. Viene bien abrir abanico y ver otras alternativas.
  • A los diseñadores que programan, les abre un nuevo abanico, mezclar su potencial de diseño gráfico y mejorar sus capacidades de desarrollo es algo muy positivo.

Si quieres ver cómo les fue de primera mano.

¿En qué mejora mi Curriculum?

Además del valor que te añade cursar el máster, a lo largo del mismo te ofrecemos la posibilidad de participar en proyectos open source que publicamos en GitHub, esto te permite llevar contigo ejemplos reales de tu trabajo y código.  Ejemplos de proyectos en los que han contribuido los alumnos de la primera edición:

Por otro lado cooperarás en un trabajo de fin de máster, es un proyecto open source que tenemos publicado en GitHub con licencia MIT, en el que podrás aprender a trabajar en equipo, con branch per features, pull requests, y TDD.

Más información de este proyecto:

https://github.com/MasterLemon2016/LeanMood/wiki

El fuente del mismo:

https://github.com/MasterLemon2016/LeanMood

Si tienes claro un side project en el que quieres trabajar también puedes proponerlo como trabajo fin de máster y te daremos soporte para completarlo.

¿Y si tengo más ganas de aprender? ¿ Qué pasa después del máster?

Si eres de los que vas a tope y te gusta aprender, mientras seas alumno del máster te ofrecemos una política de "buffet libre de formación", es decir puedes asistir a coste cero a otros cursos que te invitemos (Git, ALM, ...).

Una vez terminado el máster, estás invitado a la siguiente edición del máster Front End para que puedas seguir al día, por otro lado te ofrecemos también formar parte del equipo del proyecto open source LeanMood.

Como resumen...

Este es un máster en el que puedes aprender mucho, trabajando duro puedes dar un salto cualitativo a tu perfil profesional. Si te animas a apuntarte puedes contactar con nosotros en la siguiente dirección: formacion@lemoncode.net

 

Comment

Curso de React: Preguntas de los alumnos

El proximo 25 de Febrero arranca el curso de react: un curso online en vivo (también contarás con la grabación), en el que aprenderemos los conceptos básicos de esta tecnología basándonos en el desarrollo de una aplicación desde cero.

Para poder dar la mayor utilidad posible a este curso les estamos pidiendo a los alumnos que se apuntan que nos comenten si tienen ya dudas, consultas, inquietudes, para poder cubrirlas en el curso o en futuros posts o webinar. La idea es que no se quede ninguna pregunta sin respuesta sea por un medio o por otro.

¿ Quieres añadir la tuya?

Escríbela en los comentarios del post o envianos un correo a formacion@lemoncode.net

Preguntas:

  • ¿Qué buenas prácticas podemos tomar en React?
  • ¿Cómo puedo estructurar mi proyecto para que sea mantenible y no se me vaya de las manos?
  • Se que Redux no entra en el temario del curso, pero ¿ Podríais comentar el concepto y que otros paquetes me hacen falta para poder trabajar bien con este patrón?
  • ¿ Cómo manejo el tema de la seguridad, sesión etc.. en React?
  • Si quiero utilizar React,  ¿ Tengo que empezar una aplicación de cero o puedo integrarlo en una aplicación antigua que este basada en por ejemplo JQuery?

 

 

Comment

Tú pregunta... no te cortes

A que esto te suena...

¡ Vaya este curso parece interesante! Pero... ¿ No me pasará como en otros en el que me apunto y al final no resuelven ciertas dudas e inquietudes antes de empezar la formación?

Esto es muy normal que ocurra, ya que un profesor lleva cierto temario preparado y cada uno tenemos nuestros problemas específicos.

Para evitar esto hemos decidido darle una vuelta de tuerca a los cursos que impartimos, antes de arrancarlos vamos a pediros que nos transmitáis dudas previas, consultas, ... lo que veáis interesante para vosotros sobre la tecnología que vamos a impartir.

Eso está muy bien ¿ Pero que vais a hacer? ¿ Os dará tiempo a contestar todas las preguntas en el curso? ¿ Y si son preguntas que no aplican al 100% al temario del curso? 

Aquí seguiremos la siguiente estrategia:

  • Las preguntas que podamos encajar dentro de la dinámica del curso irán en el mismo.
  • Las que no, sea por tiempo o temática, prepararemos respuestas que publicaremos en posts, o webinars o... lo que veamos adecuado para poder cubrirla. En algún caso si la respuesta es muy extensa, podemos darte orientaciones.

Tiene buena pinta, ¿ Cuando empieza esto y donde lanzo mis preguntas?

Vamos a arrancar esta iniciativa con el curso de React, tenemos publicado un post en el que puedes leer las preguntas que han planteado los alumnos, y en el que en la sección de comentarios puedes añadir las tuyas, o si lo prefieres nos las puedes enviar a formacion@lemoncode.net

¿ Qué te parece esta iniciativa?

 

Comment

Novedades Master Front End Lemoncode segunda edición

Una de las cosas más divertidas de montar un máster de desarrollo es el tenerlo siempre al día. La primera edición del máster arranco el 15 de Septiembre de 2016, y finalizo el 30 de Diciembre de 2016, en ese tiempo la tecnología ha evolucionado, y también hemos recibido un feedback muy valioso de los alumnos. Así que nos hemos arremangado y preparado una serie de mejoras y cambios para que el máster esté a la última.

En cuanto a materia:

  • En cuanto al módulo de Layout:
    • Hemos añadido una sesión adicional, y hablaremos también de como maquetar utilizando Grid.
    • Hemos añadido una sesión de inmersión a UX. Este área, seguramente genere material para un módulo propio en siguientes ediciones.
  • En cuanto a lenguajes:
    • Nos adaptamos a los nuevos cambios introducidos en TypeScript.
  • De bundling:
    • Hemos visto como Grunt y Gulp pierden fuelle (se cubrira un básico en la introducción), pero nos centramos en el que se está convirtiendo en estandar de factor Webpack 1.x y 2.x
  • Hablando de frameworks y librerías:
    • Añadimos al set de React / Redux las librerías Normalizr y Reselect.
    • Si bien en este máster nos centramos en Angular 2 y React, no nos podemos olvidar de los cientos de librerías nuevas que están saliendo, hemos elegido la que parece más atractiva para tener una sesión introductoria: vuejs. Seguiremos tomando el pulso en siguientes ediciones del máster y ampliando / actualizando temario en esta area.
  • En cuanto unit tests:
    • Además de los conceptos generales y las pruebas unitarias en el stack de React y Redux, añadimos una sesión de pruebas con Angular 2.
  • De acceso a datos:
    • Además de cubrir HTTP, REST y seguridad, haremos una introducción a websockets.

En cuanto a profesores:

Partiendo de la base de profesores con la que contamos, hemos ampliado con unos compañeros estupendos:

 

Carmel Hassan

Sesión de UX.

Después de cinco años dedicada a la industria IT sanitaria, trabaja como Senior UX Specialist en ITRS liderando el diseño para la UX de productos para la visualización de información y análisis de datos en tiempo real construidos sobre Valo.

 

Jesús Rodríguez

Sesiones de Webpack 2 y Testing Angular 2.

Desarrollador Front-End y escritor técnico. Ha aprendido muchas tecnologías a lo largo de su carrera y las ha ido documentando en diferentes blogs. Actualmente escribe la documentación oficial de Angular 2.

 

Daniel Sánchez

Sesión de VueJS

Desarrollador Lemoncoder, especializado en Front-End (React + AngularJS) con experiencia en diversos proyectos de gestión web (LOB). Amante de las nuevas tecnologías y siempre en estado de renovación continua.

 

Comment

Git, ramas, pull requests, eso no aplica en mi empresa

En los últimos años seguro que habéis escuchado hablar de: Git, rama por caso, pull requests, integración continua... Sobre estos términos comunes se han desarrollado los pilares de populares proyectos open source. 

Si esto es tan maravilloso ¿Por qué hay tanta reticencia en el mundo empresarial?

 

Comment