Please visit JSCamp Barcelona 2020

_Schedule: 18, 19 & 20 july

Wednesday, 18 July

08:00 - 09:00
Registration and Breakfast
Registration starts at 8:00
09:00 - 13:00
Webpack Academy

Meeting room ESTOCOLMO - 1st floor

09:00 - 13:00
Fast start with Vue

Meeting room BARCELONA - 1st floor

09:00 - 13:00
Scalable Node.js with Nest

Meeting room LOS ANGELES - Park floor

09:00 - 13:00
WebVR with A-Frame

Meeting room AMSTERDAM - Park floor

09:00 - 13:00
Ionic All In One

Meeting room MERIDA - 1st floor

09:00 - 13:00
Deep JS Foundations

Meeting room AUDITORI - 1st floor

13:00 - 14:00
Lunch break
Lunch not provided
14:00 - 17:00
Deep JS Foundations

Meeting room AUDITORI - 1st floor

Thursday, 19 July

08:20 - 09:20
Registration and Breakfast
Registration starts at 08:20
09:20 - 09:40
Opening JSCamp 2018

by David Pich

09:40 - 10:20
A Tale of Two Asyncs

10:20 - 11:00
Building a Platform: Webpack and the Future

Webpack 4 its here! But what does that mean to you? Join me as not only I help break down everything we’ve accomplished this year, but also look forward to what we have in store for you in the future. Join me as we’ll talk about what it means to represent the #0CJS (Zero Config JS) movement, what it means to put developers first, and how we aim to embody the term Legato: to perform in a smooth, flowing, manner without gaps.
Join me as I breakdown why this update, more then any that have come before, is the most groundbreaking set of changes for the future of webpack and our ecosystem!

11:00 - 11:20
Break
11:20 - 12:00
Rise above the Framework

In 2011, state of the art in frontend development was generally a large MVC application, probably built with Backbone, styled with global css, and written in ES5. Fast forward today, and now we have to spend days or even weeks picking out what technologies we're going to use before we even start. And config files....don't even get me started on config files.

12:00 - 12:40
A Tale of Types, Classes, and Maps

JavaScript is very likely the most influential technology of our time in software engineering. A lot of this is due to the sophisticated JavaScript engines in modern browsers, Node, and Electron. In this talk we’re going to explore important ingredients of these modern JavaScript engines, and how these ingredients make it possible to write the amazing JavaScript applications that we see today.

12:40 - 14:40
Lunch break
14:40 - 15:20
Keep Betting On JavaScript

Brendan Eich's famous quip, 'Always Bet On JavaScript', revels in JS's history of naysayers predicting that we'd eventually reach a point where JS couldn't grow to meet the demands of modern development; it turns out those have always been bad bets.
It's safe to say JS is no longer trying to prove itself. It has arrived. Even if it was once a 'dumb kid brother' to something like Java, it's now fully a first class citizen in the programming language ecosystem. JS is certainly not the only dominant language or the 'best tool' for every situation. But increasingly, most tech stacks have it as a central part of their strategy.
We'll look forward at the bets we continue placing on JS and the web, by first looking back at how far we've come and what those steps looked like. From these lessons, we can gaze into the distance and see what the path ahead may look like.

15:20 - 16:00
Understanding client side routing with Vue.js

In web development, routing often refers to splitting an application’s UI based on rules derived from the browser URL. Numerous tools/libraries exist that allow us to enable routing both on the client and server side of applications.
What does it actually take to construct a client side router? First, I'll use the most basic tools that the Vue framework already provides to build a fully functional custom client side router. We'll then switch over to using the official vue-router library to understand all the benefits that it adds such as nested routes, navigation guards, transition effects, etc.
The objective of this talk is to convey the relevance/importance of client-side routing and how easy it is to accomplish with integrating vue-router to a well structured Vue app.

16:00 - 16:20
Break
16:20 - 17:00
WebXR: A New Dimension For The Web Writing Virtual and Augmented Reality Apps With Web Technology

Writing 3D applications for the browser is possible since some years due to the WebGL API. But since Virtual Reality and Augmented Reality are getting more popular, web developers and designers now have a serious reason to get to know the 3D web, its APIs and design patterns.

17:00 - 17:40
Building Real-World Desktop Apps with Electron

There’s one surprising thing which links the VS Code, Slack, WhatsApp, Github and Atom desktop apps together - they have all been built using JavaScript, HTML, and CSS. Thanks to Electron, building these powerful, cross-platform desktop apps is easier than you think. Today we’ll learn how to do just that. We’ll talk about the pros and cons of building Electron apps, and look at a real-world example to see how Slack has been created. We’ll dive into Slack’s architecture, and investigate why we solved some of the problems we faced in the way we did.

17:40 - 18:00
Closing remarks

18:00 - 18:15
Group photo

19:30 - 20:45
Meetup: Web Technologies Meetup with Microsoft + VueJS

Friday, 20 July

08:20 - 09:20
Breakfast
09:20 - 09:40
Opening Day 2
by MC
09:40 - 10:20
The Bumpy Road to Universal JavaScript

Since the mid 90s, developers have struggled to build web applications that can be executed both on the client and the server. And still today, even with Node.js and virtual DOM libraries like React, this can be quite challenging.
In this talk, we'll look at common obstacles and problems that developers face when building this type of web application, including typical performance and security issues. You'll leave the presentation knowing how to build a fast and secure web application that can be rendered on the client and the server.

10:20 - 11:00
Semantic, Searchable Webapps with Angular

Web Apps are a great way to reach a large audience of users, but JavaScript can create challenges when it comes to SEO and discoverability of your content.
In this session we will talk about these challenges and possible solutions as well as what you should look out for.

11:00 - 11:40
Break Up With Your Frontend Monolith

Tired of migrating thousand of code lines to the next popular JavaScript framework? Stuck in complexity and legacy code maintenance? Why not learn from the idea of microservices we already applied so well to our backend systems?

11:40 - 12:00
Break
12:00 - 12:40
Rethinking Enterprise Architectures with Node.js

A Node.js platform is built on top of few principles. One of these is having a small set of functionalities, leaving the rest to the developers. This rule makes the learning curve as small as possible, and in combination with the same language reduces an amount of time spent on switching between front-end and back-end side. We glorify simplicity, we praise reusability, but the question is - how to really take advantage of them? In this talk you'll learn why NestJS could increase your productivity and how to unlock your full potential as a JavaScript/TypeScript developer.

12:40 - 13:20
Machine Learning in the browser

Even if you've never done anything with machine learning, you have probably already heard that it's very powerful, adaptive and will change our way of thinking about computing forever. But how can you, a web developer, who's never been interested much in statistics benefit from the ML hype? In this talk I want to give you the tools to build a small self-learning application that runs completely in the browser with deeplearn.js

13:20 - 14:40
Lunch break
14:40 - 15:20
The past, present, and future of the Web

15:20 - 16:00
Service Workers + WebAssembly: Experience implementing a WebP decoder

WebAssembly is a super exciting new technology that is already supported in all major browser. In this talk we look at how you can use web assembly today and how it enables new exciting use-cases. You will be taken through a journey of implementing a webp decoder that allows other developers to easily display webp in Firefox (doesn't support it out of the box) without doing any JavaScript except loading the service worker.

16:00 - 16:20
Break
16:20 - 16:40
How does npm design

We will talk about how we've been doing design at npm, and how we think about UX. We'll talk about stages of UX Design in organizations and where npm stands. Who designs at npm? Although I'm the only designer, anyone who touches product makes an impact on the UX, and that's where we're headed.

16:40 - 17:20
How to Create 'Vuetiful' Data-Driven User Interfaces

Although we usually know what components are needed when building most views within an app, sometimes we don't know what they are until runtime. This means we need to build a screen based on the application state, user preferences, or response from an API. A common case is building dynamic forms, where the questions and components needed are either configured by a JSON object, or where fields change based on the users' answers.

17:20 - 18:00
Closing Remarks

Stay up to date

Subscribe to our newsletter and you’ll always know what’s up!