The JSConf 2018 was held in Bruges from May 29-30. It was a hot day with lots of hot topics, ranging from 3D/VR Javascript to performance for webapps and all the way to Architecture.
Do you know the imposter syndrome? (I know what you’re thinking: “How is this question related to Javascript?” Keep reading.)

Impostor syndrome can be defined as a collection of feelings of inadequacy that persist even in face of information that indicates that the opposite is true. It is experienced internally as chronic self-doubt, and feelings of intellectual fraudulence.

The keynote speaker on Day 2 used this story to demonstrate the (his?) capabilities of Javascript, to overcome the syndrome. He used MIDI/bluetooth devices to control the browser and read brainwaves to input text only using Javascript. Link to the slides.

 

The short sessions provided a great way to get familiar with the specific topics but lacked a bit of technical depth is most cases. I’ve compiled a list of the sessions that I attended with their most important takeaways. I hope this list inspires you to deepen your knowledge, and helps you overcome your imposter syndrome as well! But let’s start with my top-3 takeaways. Here we go.

 

Top 3 Take-aways from JSConf Belgium

Performance: Check out HTTP2 for future webapps for a big win in performance. Support on clients is widespread. For servers: latest versions are needed though!
Security in DevOps: Use “NPM audit” to see if any of your NPM packages contain security vulnerabilities, especially when creating customer facing web applications.
Blazor: for the .NET lovers out there this features a way to run your .NET assemblies directly in the browser , no plugins required, it is still experimental though!

 

Are you still reading? Then you’ll be interested in more, so here you go.

 

BabylonJS

More info https://www.babylonjs.com :

  • JS lib for 3D and VR.
  • Focusses on ease of use
  • Written in typescript.
  • Many features including
    • physics engine
    • animations
    • particles
    • hardware accelerated GUI
  • Allows imports from Blender, unity, 3ds max, maya, clara

They showed some really nice demos but it appears to be quite heavy on the browser. Could be interesting to see if an export from unity system is possible to create VR/AR experience based on what Christopher makes in Unity with the Hololens to expose this via webVR.

Scalable Angular architecture

  • Front end scaling VS backend scaling
  • Front end scaling is more about
    • Growing codebase
    • Performance
    • Growing requirements
  • Session about scalable architecture in general, not angular specific.
  • Explanation of core layer/abstraction layer/presentation layer.
  • Use of RxJS or Redux to help with maintaining scalable application

They showed some interesting concepts but nothing spectacular new. Cool that some concepts/techniques discussed are already used in EAGLE development

Web VR/AR

Using front-end skills to create mixed reality experiences on the web. Cool demo on webVR/AR using mobile devices (Google cardboard style VR)

Modern web performances

  • Usage of webp image format with fallback
    • only supported by chrome for now
    • 25% smaller images
  • Usage of HTTP2 vs HTTP1 can be huge win in performance!
    • less round trips
    • push resources to client
    • does require TLS to work
    • server support
      • IIS windows 10 / windows server 2016
      • Apache 2.4.12
      • Tomcat 8.5
      • Node js 8.4 experimental support
    • Client support
  • Demo of offline website/pwa
    • Usage of service worker + cache to provide offline functionality to user

Overal: nice session with good tips on web performance. The leverage of HTTP2 could be interesting for EAGLE to improve loading times.

Baking security in devOps

  • nodeJSscan
    • scan node JS code for security vulnerabilities
  • NPM audit
    • Audit NPM packages for security vulnerabilities
  • Github dependencies
    • Github built in system to check security vulnerabilities of used pakcages by your code
  • JSlint
    • Creates cleaner code, cleaner code leads to less chance of security vulnerabilities.
  • Automate these scans on commit of code (github)
    • Softsnitch created by Nviso will be open source in future (1month)

Nodescan and NPM audit are tools that can be used to find security vulnerabilities quite easily. Mostly of interest for our client facing applications.

Blazor

Running .net assemblies in browser without plugin

  • Experimental project from Microsoft: C#/Razor and HTML
  • Running .net assemblies in browser by using webassembly / mono
  • Can only run standard .NET assemblies
  • Features
    • Usage of razor syntax for components
    • Data binding
    • Interop: call C# from JS, call JS from C#

Impressive to see .net assemblies run in a browser directly without plugin. This will still be in experimental phase for some time until Microsoft decides to turn it into a project (or not). https://github.com/aspnet/Blazor

Looking forward to the next edition!

Bart Lissens

Bart Lissens

Geo-ICT Consultant

Bart is an experienced developer, who started at Merkator with the Eagle project, and is now working at one our Telecom-customers. He has a Bachelor in Applied Computer Science and continues to grow his skills.