Video recording and production done by JSConf
Everyone in 2016 knows that websites should use HTTPS. However, there is a common misconception that TLS and other security measures are expensive and slow down both web developers and page load times. This talk will show you some easy tricks to make your site more secure without sacrificing performance or requiring a lot of effort.
Most React-Flux applications just store the data being edited as is in a database. While it is perfectly fine to treat data in a simple CRUD fashion like this with a smaller application this is not very optimal when applications get more complex. For more complex applications using the Command Query Responsibility Segregation (CQRS) design pattern together with Event-Sourcing (ES) is a much more powerful solution.
With Event-Sourcing every action leading up to the current state is stored as a separate domain event. This collection of domain events is then used as the write model in the CQRS model. These same events are projected out to a secondary database to build the read model for the application. In this session Maurice de Beijer will explain why you might want to use Event-Sourcing and how to get started with this design in your React and Flux applications.
Ever lose out on a good night's rest because your pesky cats keep waking you up at 4am for food? Rachel has. Many times. For her first project using node, socket.io, microcontrollers, and johnny-five, Rachel built a web-based feeder that delivers tasty cat chow on a configurable schedule or when triggered remotely. She'll walk you through her learning process and get you excited about trying new things in your own projects. Finally, she'll show you how to take the first steps to release your work to the open source community.
The way we interacted with computers on a large scale was stuck in place for roughly 20 years. From mouse to keyboard to joystick, it is game over. Today it is the era of gestures. Today’s gamers can do everything from slice and dice produce in Fruit Ninja to quest for a dragon in Skyrim. We’ve been captivated by these powerful, natural, and intuitive interactions; imagining what it would be like to have that power at our own fingertips.
Tim and Martin share a common interest in a lot of things: music, lights, visualizations, MIDI and electronics. But what happens if those interests are combined with the endless possibilities the web has to offer? You will find out in this live audio + visual performance.
In an industry that is so focused frameworks & tooling, we tend to lose sight of the people behind the products and how we work with them. I’ve found empathy to be a powerful resource while collaborating with teams inside companies and across the open source community. By breaking down The Other Side of Empathy, I will demonstrate how applying its principles to your development process will benefit the community and the products they create.
Load a page in less than a second; reduce the number of server requests; keep your CSS and JS merged and compressed to keep them under 50 kilobytes” – these are just a few among technical solutions and recommendations we are getting in the industry to tackle performance issues. But there is one catch – your users don’t care about absolute values in kilobytes, milliseconds and number of requests.
Performance is not about Mathematics. Performance is about Perception. Perception is what makes a site with a very few requests nevertheless feel slow, while a site that delivers search results during tens of seconds can feel fast enough for your user. User’s perception of your website’s speed is the only true performance measure.
This talk is about perception, neuroscience and psychology. The time is ripe to understand performance from the user’s perspective.
npm is six years old, but 80% of npm users turned up in the last year. That's a lot of new people! Because of that, a lot of older, core features aren't known about by the majority of npm users. This talk is about how npm expects you to use npm, and the commands and workflows that can make you into a power user. There will be lots of stuff for beginners, and definitely some tricks that even most pros don't know.
You’re on a train to work and you open up the Guardian app on your phone. A tunnel surrounds you, but the app still works in very much the same way as it usually would—despite your lack of internet connection, you still get the full experience, only the content shown will be stale. If you tried the same for the Guardian website, however, it wouldn’t load at all. Native apps have long had the tools to deal with these situations, in order to deliver rich user experiences whatever the user’s situation may be. With service workers, the web is catching up. This talk will explain how Oliver used service workers to build an offline page for theguardian.com.
Can you programmatically extract joy from the subjectivity it exists in? Can it be translated into intentional forms to hook others in? This session will gently take you along on a personal journey of how you can use code to expose new expressions of the mundane secrets we hold dear.
As a guitar player, I usually use some effect-pedals to change the sound of my guitar. I started wondering: “What if, it would be possible to recreate these pedals using the web-audio-api?”. Well, it turns out, it is entirely possible to do so.
This talk takes you through the basics of the web-audio-api and explains some of the audio-nodes I’ve used to change the live sound of my guitar.
HTTP - the way how clients and servers talk to each other on the internet - just got a major update. The first update in 15 years! HTTP/2 has landed and promises solutions to all the current performance workarounds we have for web applications: no more image sprites, no more concatenation, no domain sharding tricks. Just deploy like it's 1999! Well, that's at least what we got promised...
Published on Jun 20, 2016
For a language originally created in 10 days it surely has a lot of quirks and perks many JS developers are unaware of. Sometimes, it might even seem like we fell down the rabbit hole only to find that NaN is actually a Number, undefined can be defined, +!! equals 1, Array.sort()may not work as you suspected and so much other nonsense that can trip any JS developer’s mind.
Science in the Browser: Orchestrating and Visualising Neural Simulations
Open-science is about making scientific research accessible to everyone, from other scientists to the general public, but often that means just dumping data sets and publishing the researchers' interpretations. To truly communicate findings and ignite collaboration, we need to expose the tools that the scientists used to analyse the data, simulate the mathematical models, and visualise the results. As a neuroscientist and a web developer, this is something I've been working towards.
You've heard it before: "It works on my machine" and you know the punchline "so your problem isn't real". Sometimes a bug just won't appear on your system: computers are fickle beasts full of subtlety. Humans too, but more so: we have habits, preferences, biases, and our background, opportunities vary wildly. And even the technology industry itself is a perfect example of legacy spaghetti code (without unit tests), and this makes it very hard to debug for a better future.
In this talk we will look at the many facets that affect our decision making and interactions, and work out how we can change for the better. Together, we will take a look at the effects that our software has on the daily lives of the thousands of people who are using it. You’ll learn what you can do as an individual to support change into a positive direction, and how you can help debug this system and make a difference in the tech industry. You’ll leave knowing about practical things you can do in your daily life to make the tech industry a better, more inclusive and diverse environment that is a better place for everyone.
Trigger Warning: Mention of assault, abuse, rape and death threats, rape, racism, sexism, misogyny, homophobia, transphobia, abuse. Discussion of harassment.
Secure software development principles have become of paramount importance in recent times. Studies have revealed that corporate cyber security breaches have most frequently occurred at the web application layer. Furthermore, within the web application security landscape, client-side attack vectors have been known to be particularly dangerous if exploited. Most client-side security resources tend to primarily discuss Cross-Site Scripting (XSS) exploits and remediation tips.