19:00: INTRO by KarlsruheJS team
19:15: YOU ALREADY KNOW SVELTE by Xiaoru Li (http://twitter.com/hexrcs)
Having heard of Svelte, but too busy to try it out yourself? Well, if you've worked with a UI framework like React or Vue before, picking up Svelte should be fairly easy. You'll feel like you already know Svelte!
This talk is a practical introduction to Svelte. We will first take a quick look at why Svelte is so different than all the other major players on the market, and how it takes a different approach to building UIs. We will then dive into all the essential concepts that you will need to start building your own Svelte project. You will learn the basics of reactivity and how your existing knowledge can be easily transferred over to Svelte-land.
19:45: 🍕& 🍻
20:30: DATABASES: THE ELEPHANT IN THE NODE.JS ROOM by Tom Houle (http://twitter.com/_tomhoule)
Node.js/TypeScript developers have various options when it comes to accessing databases in their applications, each with their own benefits and drawbacks:
- Writing plain SQL provides precise control over your database operations. However, mastering SQL takes takes a lot and writing as well as maintaining SQL strings in an application is time-consuming and error-prone.
- Query builders like knex.js are a low-level abstractions on top of SQL. They help developers save time by allowing them to build up SQL queries programmatically. Developers still need to have a deep knowledge of SQL for efficiently working with their databases.
- Traditional ORMs like Sequelize and TypeORM are higher-lever abstractions that provide an object-oriented mapping layer from classes to tables. They are typically based on "fat models" that not only implement behaviours for storage and retrieval, but also bussines logic.
- Photon.js is a type-safe database client that's auto-generated and customized for your application. It features a powerful data access API that's designed with the needs of application developers in mind.
In this talk, we'll provide an overview of these different data access methods and explain the tradeoffs for each approach.
This installment of KarlsruheJS is hosted an sponsored by our friends at EXXETA (http://exxeta.com)