• 2020 #2 How To Build A Blockchain app with JS

    Šrobárova 13

    Get out and get social in 2020 : come out and discuss JS together! Get in touch with the organizers with any questions you have. We welcome a diverse range of topics that are related in any way to JavaScript and the community around it. Also, be sure to sign up for our newsletter here on meetup.com to be notified when new events are announced. Venue schedule: 18.30 - door open 18.45 - talks kick off 20.45 - talks done 21.00 - beer time AGENDA: BlockChain Smart Contract With Solidity Yiresse Abia | CrowdeChain Abstract: Do you know that Blockchain is the number one “hard skill” for 2020 in a new report compiled by jobs site LinkedIn? Have you ever heard that internet is broken? Has somebody around you talked about the internet of value? "Blockchain" today is the quantum lip technology that can change the way we exchange value. Its current stage at 2020 is as early as Internet was in 1990 During this time together we are gonna learn basic knowledge behind block-chain and code our first simple smart-contract in solidity. Topics: - Which is the greatest opportunity behind blockchain. - Smart-contract, what they are and when to use it - Solidity our Hello World SmartContract — Ethereum in a browser Jiří Chadima | Fragaria Ltd. Abstract: Have you ever wondered how to interact with Ethereum from your browser? Wonder no more, Jirka Chadima will show you how to call smart contracts directly from your website with web3.js. You will also learn about other tools built on top of that library that will get you started on your first browser-based crypto adventure. — Performance optimizations of dApps Aleš Roubíček | TopMonks Abstract: Performance matters. Even if you work on Blockchain, you can create performant dApps with smooth user experience. Aleš will show you useful techniques how to find performance bottlenecks and how to deal with them. Those techniques are relevant not just for dApps, but for every modern front-end. — Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

    2
  • 2020 #1 Think Functional!

    Studio F

    Get out and get social in 2020 : come out and discuss JS together! Get in touch with the organizers with any questions you have. We welcome a diverse range of topics that are related in any way to JavaScript and the community around it. Also, be sure to sign up for our newsletter here on meetup.com to be notified when new events are announced. Venue schedule: 18.30 - door open 18.45 - talks kick off 20.45 - talks done 21.00 - beer time AGENDA: How we have discovered FP part of Lodash Karel Žoha | Pricefx Abstract: Lodash is well known swiss army tool of an everyday developer but have you tried its FP version? We have and maybe you should too. Why is the FP version better? Come and see for yourself. — Inside Fiber: the in-depth overview you wanted a TLDR for Matheus Albuquerque | STRV Abstract: At the core of React.js, lies reconciliation; the mechanism that tracks changes in a component state and projects the updated state to the screen. Starting from version 16, the core team rolled out a new implementation of that internal instances tree (components, DOM nodes, etc.) and the algorithm that manages it code-named Fiber. In this talk, I want to provide an in-depth overview of important concepts and relevant data structures. We'll then explore how React uses the algorithm to perform initial render and process updates and a few details of the scheduler, the child reconciliation process, and the mechanism of building an effects list. Last but not least, we'll go through a few magic words we hear a lot, like coroutines, continuations, fibers, threads, generators, and algebraic effects and see how they all relate to React.js itself. Bio: I'm a client-side architect – with an iOS and node.js background – currently working as a front-end engineer at STRV, a San Francisco-based strategy, design, and engineering company with clients across the whole America and Europe. My areas of interest/passions include JavaScript and compile-to-JS languages, architecture patterns, User Interfaces libraries & frameworks (like React), developer tooling and performance optimization. — Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

  • 2019 #10 What we learned from our apps

    Sněmovní 7

    Agenda: 18.30 Incremental Migration to React Chris Meyer (@cygnil) Principle Software Engineer at DNAnexus What happens when you need to migrate to React, but you can't cease development of your existing code base? Learn how DNAnexus is steadily replacing its old application code without sacrificing development of new features. 19.15 The story about e2e testing of front-end app Antonín Simerský (@rodan_lewarx): Reason ML fanboy, React and React Native developer, Meme and bad jokes generator Pavel Kepka (@kepkap): React & React Native developer currently occupied with Reason ML stuff The goal was simple: “Prepare e2e test of our internet banking app”. Sounds easy, doesn’t it? But wait, our web app uses 2FA authorization for various events via our mobile app! The things starts to get complicated at this point... This talk will be about: - endless deprivation from various obstacles during each step of test preparation - possibilities of how to test web app with custom 2FA - how to write such as tests in Appium - how to integrate tests in CI/CD pipelines 20.00 Why React is better in ReasonML? Roman Schejbal (@romanschejbal) Tech Lead at Velvon As developers, we all want to build great apps and with React, it has never been easier. What if we take the core principles of React and bring them to the language level? That's what ReasonML does. In this talk I want to shed some light on this alternative. Let me tell you a short story about how I got to do Reason and why I think it is the next frontier of application development. Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

  • 2019 #9 Architecture of a modern web app

    ANiMiKA HUb

    React Native is an open-source mobile application framework created by Facebook. It is used to develop applications for Android, iOS, Web and UWP by enabling developers to use React along with native platform capabilities. Server Side Rendering, also called SSR, is the ability of a JavaScript application to render on the server rather than in the browser. Functional programming is a powerful programming paradigm that can help you to write better code. Using TypeScript as a functional programming language, you’ll also be able to brush up on your knowledge of applying functional programming techniques, including currying, laziness, and immutability, to real-world scenarios. Agenda: 18.30 Sharing code between iOS, Android & web using React Native, lerna and monorepo (EN) Marian Zikmund, Travelport Czech Republic Reusing code between platforms can make developing apps significantly easier. The challenge starts with choosing the right architecture and technologies: multirepo/monorepo, Lerna/Yarn Workspaces, React/React Native, PWA… I’m gonna show you different options with key (dis)advantages, as well as interesting insights we learned during the transformation of our flight search engine into monorepo architecture, using React Native for iOS and Android and React and Next.js for web. 19.15 Moving to SSR: a case study (EN) Tomáš Dohnal, Full-stack Developer, Upvest.cz Should you rather pick server-side or client-side rendering for your app? What are the pros and cons of both approaches? We’ll explore how we made a switch from client-side to server-side rendering and see if it was a good idea in the first place... 20.00 Advanced functional programming in TypeScript (EN) Daniel Steigerwald, @estejs Functional programming in TypeScript beyond pure functions and immutability. We will explore Option and Either pattern, functional optics, and category theory. Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

    4
  • 2019 #8 JavaScript New Horizons

    prostor39

    In quantum computing, a qubit or quantum bit is the basic unit of quantum information—the quantum version of the classical binary bit physically realized with a two-state device. A qubit is a two-state quantum-mechanical system, one of the simplest quantum systems displaying the peculiarity of quantum mechanics. Agenda: 18.30 Entangle Qubits with JavaScript (EN) Miroslav Bajtoš, Lead Node.js Engineer, IBM Quantum computers are evolving from science-fiction into reality. Superposition, entanglement and Hadamard transformation are new building blocks for algorithms that are super fast and also super cool (pun intended). In the talk, we will discover the mysteries of qubits, explain complex concepts in a simple way and learn how to use JavaScript for quantum programming. No prior knowledge of Physics & Computer Science is required. 19.15 Web scrapping in node.js (EN) Azamat Kassymbekov, Node.js developer, TAPDAQ LIMITED Nowadays, web scraping is no longer a "crime", but rather a necessary tool for data analysis. We will explore the possibilities of node.js, try the tools such as cheerio or puppeteer, and resolve problems that you may encounter. Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

  • 2019 #7 Application Design Patterns

    Braunův dům

    A design pattern is a general reusable solution to a commonly occurring problem in software design. Domain-driven design (DDD) is an approach to software development for complex needs by connecting the implementation to an evolving model. A Monorepo is a software development pattern where code for many projects are stored in the same repository. Agenda: 18.30 TypeScript + DDD = ❤ (EN) Jakub Kadlubiec, Lead Engineer, Pipedrive Domain-Driven Design is usually associated with .NET or Java, but that doesn‘t mean it cannot be used in a TypeScript project. That‘s exactly what we did and it worked really well. We started gradually introducing DDD practices to our dev process and changed the existing TypeScript codebase to use DDD patterns. In this talk, I will give you a very short intro into DDD and then we will walk through our experience with applying it to a real project. 19.15 React Monorepos: What, when and how? (EN) Nic Reichert, Frontend Developer, STRV Whenever we think of react, one of the first things that comes to our minds is the ease with which we can create reusable components, that we can use all over our website. But, how about we share those components between more than one website, and, even, native apps? This talk will expand on the topic of sharing code between different projects, when is it a good idea to do so and a biased approach to creating your monorepo within seconds. Our sponsors: Pricefx is fast, flexible and friendly SaaS price management and price optimization solution, based on the latest in native cloud technologies. Perfect for enterprises of any size, we serve over 90 global clients like Bosch, MediaMarkt, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

  • PragueJS Summer Workshops 2019

    Needs a location

    Workshop - React + TypeScript + GraphQL + Apollo In this hands-on, two-day workshop, you'll learn GraphQL from the ground up. We'll learn how to write queries, mutations, and subscriptions with the GraphQL query language. Once we understand how to interact with a GraphQL endpoint, you will design your own schema and implement your own GraphQL services with Node.js and Express. Upon leaving this course, attendees will be ready to build full stack applications with GraphQL, Apollo, and React. You will Get experience with TypeScript in real React application Learn how to write queries, mutations, and subscriptions with the GraphQL query language. Design your own schema and implement your own GraphQL services with Node.js and Express. What you need to have: Intermediate JavaScript Knowledge Basic knowledge of React Ensure that you have git installed on your machine (the workshop material will be communicated through a GitHub repository). Roman Schejbal Roman is a Software Engineer with over 8 years experience and demonstrated history of working in the computer software industry. Skilled in Typescript, React, GraphQL, ReasonML and many others. His first foray into engineering oddly started with Photoshop which led him down the rabbit hole of HTML and CSS. At high school he ventured into e-commerce, built his first e-commerce platform and felt immense satisfaction in people using and finding value in the things he crafted. After helping a few startups and consulting bigger companies in London, he’s now back in Prague, trying to bring boldness to technology while still building things the right way. Indicative schedule Saturday, July 27 09:30 – 10:00 Breakfast & coffee 10:00 – 10:30 Quick introduction to Typescript 10:30 – 11:00 Introduction to GraphQL and GraphiQL 11:00 - 11:30 Setting up a NextJS project 11:30 – 12:00 Apollo + React Apollo 12:00 – 13:00 Lunch break 13:00 – 15:00 Fragments and pagination 15:00 – 16:30 Mutations 16:30 – 18:00 Subscriptions Sunday, July 28 09:30 – 10:00 Breakfast & coffee 10:00 – 10:30 Quick introduction to Express 10:30 – 12:00 Implementing GraphQL server using Express 12:00 – 13:00 Lunch break 13:00 – 14:30 Setting up subscriptions via WebSocket 14:30 – 16:00 Q&A and discussion

    6
  • 2019 #6 Deep dive in the Vue.js - a modern UI framework

    Vue is a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only, and is easy to pick up and integrate with other libraries or existing projects. Agenda: 18.30 Cesta za nadšeným vývojářem (CZ) Daniel Rataj, Mall.cz Podobně jako spokojený zákazník není klišé, tak ani spokojený vývojář není mýtus. Díky Vue.js jsme si v Mall.cz mohli dovolit shodit těžké okovy technického dluhu. Vydat se směrem k modernímu e-shopu a dát zákazníkům možnost poznat, že nás práce baví. 19.15 Nástrahy Vue.js a Nuxt.js (CZ) Roman Krejčík, freelancer Pojďme se podívat na případ jedné konkrétní webové aplikace - kairly.com Na několika příkladech bych chtěl ukázat, kde se kombinace Vue + Nuxt osvědčila a nebo nakopak, kde věci nešly tak hladce, jak bychom si přáli. 20.00 Vue vs React: Kompletní srovnání (CZ) Ondřej Janošík, Notum Technologies Vedl jsem projeky ve Vue i v Reactu. Oba frameworky mají své nedostatky. Jak se tedy rozhodnout pro ten pravý a ušetřit si spoustu starostí a peněz? Na internetu se dá nalézt nespočet srovnání, většina z nich je ale spíše o emocích nežli o faktech. Rád bych zodpověděl otázku, který z těchto frameworků je lepší, jenže věci jsou bohužel často složitější, než bychom si přáli. Jeden nástroj není ideální na všechno. Místo jednoznačného verdiktu si proto připravím komplexní srovnání obou nástrojů – postavím proti sobě jejich ekosystémy, srovnám zápis kódu a zaměřím se rovněž na výsledky průzkumů a statistiky. Our sponsors: Pricefx is a modular SaaS pricing solution, based on the latest in native cloud architecture. Perfect for enterprises of any size, we serve over 80 global clients like Robert Bosch & Schneider Electric, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

    3
  • 2019 #5 Static Typing for the Web with TypeScript, ReasonReact and GraphQL

    Static typed languages are those in which type checking is done at compile-time. The main purpose of static types is to reduce possibilities for bugs in applications by defining interfaces between different parts of app, and then checking that the parts have been connected in a consistent way. Agenda: 18.30 Introducing ReasonReact Into your Typescript Codebase (EN) Vit Gottwald With the recent release of ReasonReact, there is no longer an excuse to not write your React components in ReasonML. You get the assurance of a sound type system of OCaml and the familiar syntax of Javascript. Your ReasonReact components now look like regular ReactJS components and the abstraction is zero-cost, it compiles away. We will start from a small typescript project, add a few ReasonReact components a custom React hook, written in ReasonML, and finish off with cross boundary type checking between Typescript and ReasonReact components using genType. The same applies in case you are using Flow in your project, since genType can generate both Typescript and Flow type definitions. Why ReasonML? Did you ever look at your Typescript file searching for the actual code that was buried within a haystack of manually written type definitions? With ReasonML, that is a thing of the past. The Hindley–Milner type system and algorithm W will take care of you with type inference that actually works. 19.15 Incrementally Adopting GraphQL, Frontend First Approach (EN) Roman Schejbal We'll look at some practical examples how one can approach implementing GraphQL. And because we don't always live in an ideal world where we could easily do this on the backend (as it should be), we'll start this from the frontend and eventually move it into its own node microservice. We will also look into why we should even care about GraphQL, highlight some other benefits than those that are obvious. Like simplified UI logic and new abstraction possibilities through fragments. Our sponsors: Pricefx is a modular SaaS pricing solution, based on the latest in native cloud architecture. Perfect for enterprises of any size, we serve over 80 global clients like Robert Bosch & Schneider Electric, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

    6
  • 2019 #4 Build a fullstack GraphQL app with Prisma, Apollo and React

    GraphQL is a query language for your APIs. It’s also a runtime for fulfilling queries with your data. The Apollo platform is an implementation of GraphQL that can transfer data between the cloud (server) to the UI of your app. Prisma is a real-time GraphQL database layer that turns your database into a GraphQL API. Agenda: 18.30 REST API should not stop you from using GraphQL (EN) Pavel Kepka, Blueberry In my talk I'll present how we used Apollo tooling to get GraphQL like environment in our frontend app even the backend is REST. I'll show benefits we got from this approach and the problems we encountered during the development of the application. 19.15 Code-first GraphQL Server Development with GraphQL Nexus and Prisma (EN) Lukáš Huvar, intern in Prisma GraphQL Nexus offers an alternative to the popular schema-first approach for constructing GraphQL schemas. This talk explains the benefits of using Nexus' code-first approach and gives a practical example with Prisma and Yoga 2. 20.00 Integration testing GraphQL with a separated frontend (EN) Alex Gordon, SessionM Integration testing has proven to be the gold standard when using lots of microservices and moving fast, as unit testing leaves some gaps in dealing with sometimes backwards incompatible microservices. However, it gets increasingly hard and slow to spin up all microservices in a test environment for integration testing. Specifically, it makes it very hard for teams to move independently, as giant test environments require maintenance. As such we've begun migrating to contract testing as a simple substitute for integration testing, starting with our graphql API and separated frontend. This allows us to have the same benefits of integration testing without spinning up all required services for the integration test. Our sponsors: Price f(x) is a modular SaaS pricing solution, based on the latest in native cloud architecture. Perfect for enterprises of any size, we serve over 80 global clients like Robert Bosch & Schneider Electric, across a variety of industries. SessionM is a customer data and engagement platform empowering the world’s most innovative brands that forges stronger and successful customer relationships. We put data at the heart of engagement.

    1