• Deploying Kafka Streams Applications with Docker and Kubernetes

    All things change constantly, and we need to get on board with streams! Moreover, dealing with constantly changing data at low latency is pretty hard. It doesn’t need to be that way. Kafka Streams, Apache Kafka’s stream processing library, allows developers to build sophisticated stateful stream processing applications which you can deploy in an environment of your choice. Kafka Streams is not only scalable but fully elastic allowing for dynamic scale-in and scale-out as the library handles state migration transparently in the background. By running Kafka Streams applications on Kubernetes, you can use Kubernetes powerful control plane to standardize and simplify the application management—from deployment to dynamic scaling. In this talk, Viktor explains the essentials of dynamic scaling and state migration in Kafka Streams. You will see a live demo of how a Kafka Streams application can run in a Docker container and the dynamic scaling of an application running in Kubernetes. SPEAKER: Viktor Gamov is a Developer Advocate at Confluent, the company that makes a streaming platform based on Apache Kafka. Working in the field, Viktor Gamov developed comprehensive expertise in building enterprise application architectures using open source technologies. He enjoys helping different organizations design and develop low latency, scalable and highly available distributed systems. Back in his consultancy days, he co-authored O’Reilly’s «Enterprise Web Development.» He is a professional conference speaker on distributed systems, Java, and JavaScript topics, and is regular on events including JavaOne, Devoxx, OSCON, QCon, and others (http://lanyrd.com/gamussa). He blogs at http://gamov.io and produces the podcasts Razbor Poletov (in Russian) and co-hosts DevRelRad.io. Follow Viktor on Twitter @gamussa, where he posts there about gym life, food, open source, and, of course, Kafka and Confluent!

  • 1) 7 Principles of Productive Developers 2) Cloud Native Enterprise Java & Istio

    Our feature speaker for this meeting is Sebastian Daschner, a Lead Java Developer Advocate for IBM and esteemed Java Champion. He will be giving the following two presentations: --- PART 1 --- TITLE: 7 Principles of Productive Software Developers ABSTRACT: When working as a software developer, as well as in any other job, it’s important to be productive and to get things done. You want to focus on what adds value, increase your development speed, and cut out as many of the cumbersome, boring and repetitive tasks as possible. This session shows seven principles how to accomplish the goal of being more effective and efficient as a Java developer. These principles include technical as well as self-organizational aspects. We’ll see how to implement them, especially how we can get the most out of our tools, why the invention of the mouse was a setback in productivity, and which mindsets to follow. This talk is not limited to specific tools or technologies yet it’ll provide examples and experiences, and it is brought to you by a German — from the country of efficiency. --- PART 2 --- TITLE: Cloud Native, Service-Meshed Java Enterprise With Istio ABSTRACT: In enterprise software, we see more and more of the cloud native technologies, especially container orchestration and service meshes, emerging and slowly taking over the market. Developers are facing the challenge which technology to choose to implement microservices for a cloud native setting. Java Enterprise has been used for software solutions for a long time and its APIs are well-established in the ecosystem. However, is it possible to develop cloud native, service-meshed Java Enterprise applications that fulfill concerns such as scalability, resiliency, and telemetry — in an effective, manageable way? This session shows how to implement service-meshed applications using Java EE 8 and MicroProfile. We will develop a mesh of microservices, managed by Kubernetes and Istio. We’ll see why especially the Java Enterprise approach fits the concepts behind container orchestration and service meshes well. The session also includes how to integrate the required cross-cutting concerns, such as monitoring, tracing, or resiliency into our applications, where developers have to actively integrate technology themselves and where the platform support us. Especially the cooperation between Java EE and MicroProfile provides a potent technology. All of the time will be spent live-coding while explaining the concepts and solutions. SPEAKER: Sebastian Daschner Lead Java Developer Advocate for IBM and renowned Java Champion https://www.sebastian-daschner.com/

  • 1) Reactions to Amazon Corretto. 2) Serverless Database, FaunaDB.

    This meeting will have two parts. Ian Downard will begin with a short talk about an OpenJDK distribution from Amazon called Corretto. Then Chris Anderson from FaunaDB will talk about the principles of serverless databases and tradeoffs in guaranteed consistency and global replication. # TITLE: Reactions to the latest OpenJDK, Amazon Corretto # SPEAKER: Ian Downard # ABSTRACT: The latest Java distribution to be released into the world has come from Amazon in the form of an OpenJDK distribution they call Corretto. This exciting news has many Java enthusiasts wondering what they should consider when evaluating JDKs for building and running Java software. In this very short presentation, Ian will summarize the history and principles of OpenJDK so that we can better understand how Corretto delivers on the expectation that it be secure, stable, and free. # TITLE: Design Patterns for Serverless Databases # SPEAKER: Chris Anderson # ABSTRACT: Over the past decade, application developers have discovered that it is extremely difficult to build bug-free applications over database systems that do not guarantee consistency. In recent articles, Prof. Daniel Abadi went into deep technical detail comparing Google Spanner and Calvin, the two major approaches to guaranteeing consistency in geo-replicated database systems - global consensus vs partitioned consensus. FaunaDB’s architecture does not experience the latency cost of delaying transactions by clock skew uncertainty, a cost that is present in many other consistent database systems. In this talk I'll show how deterministic transaction resolution means FaunaDB only needs one round of consensus. You'll learn how consistency is managed in FaunaDB and analyze its architectural advantages over Google Spanner and Spanner derivatives such as CockroachDB. # SPEAKER BIO: Chris is a cofounder of Couchbase and architect of Couchbase Mobile. He holds a bachelor’s degree in philosophy from Reed College, and is an O'Reilly technical book author. He leads Fauna's developer community.

  • PJUG Holiday cheers

    Base Camp Brewing Company

    There's no presentation planned for this month. Instead, we'll plan to get together to chat and celebrate the end of the year over s'more stout at Base Camp Brewing.

  • The CUBA Platform

    WeWork Pioneer Place

    CUBA Platform (https://www.cuba-platform.com) is an open source Java framework for rapid enterprise application development. CUBA allows to develop application much faster using a well-known set of frameworks: Spring, Vaadin, EclipseLink and more. We’ve spent our time developing CUBA, adding extra functionality to frameworks so you won’t spend your time on implementing common tasks like user management, security and audit, generic REST API, etc. CUBA provides plenty of features out of the box and you will still be using well-known frameworks during development. In addition to this we will introduce the unique application extension approach that both ensures internal extensibility and facilitates external components development. In this presentation we will talk about the framework using both presentation and live coding session, hoping to hear provocative questions sparking a proper, deeply technical discussion. Speaker – Aleksey Stukalov Aleksey is a developer advocate of the CUBA Platform team. Since 2008, Aleksey participated in multiple enterprise software projects, in positions ranging from a developer to a project manager, leading teams of 50+ developers. He has been involved in the entire development cycle, from architecture design to final delivery of large scale projects for blue chip companies, primarily in the oil & gas industry. This mix of technical and management experience has enabled Aleksey to gain a significant, in-depth understanding of business applications development. Aleksey joined the CUBA team in 2013 and has played a key role in the development of the framework features and roadmap.

  • Microservices past, present, and future at the Hudson's Bay Company

    Microservices at HBC Hudson's Bay Company owns and operates multiple retail businesses, including Saks Fifth Avenue, Lord & Taylor, and The Bay. We will discuss microservices past, present, and future at HBC. We'll examine how HBC utilizes the Apibuilder project to accelerate software development. Sean Sullivan is a Principal Software Engineer at the Hudson's Bay Company. Sean has worked on a variety of backoffice engineering projects, including payment processing and email generation. He is a contributor to open source projects and has contributed to Amazon's AWS SDK for Java version 2.0. He lives in Portland Oregon.

  • AWS SDK for Java version 2.0

    WeWork Pioneer Place

    The AWS SDK for Java version 2.0 is a complete re-implementation of the SDK for the Java language. It provides a modern API that leverages the latest capabilities from the Java platform. This presentation will highlight key differences between the V1 API and the V2 API. Also, we will examine the V2 HTTP layer and the updated API for AWS CloudMetrics. Presenter: Sean Sullivan is a Principal Software Engineer at the Hudson Bay Company. HBC owns and operates multiple retail businesses, including Saks Fifth Avenue, Lord & Taylor, and TheBay.com. Sean has contributed code to the AWS SDK for Java project on Github. He lives in Portland Oregon.

  • Hands-On DevOps of Java EE Microservices in Kubernetes

    WeWork Pioneer Place

    In this second of a two part presentation, Steve Hall, Principal Engineer Next Generation Systems at Nike, will dive into the code, the tests, and the packing and running of Java EE microservices in Docker and Kubernetes. Attendees will learn practical DevOps tips that incorporate various aspects of Spring Boot, Spring Web Flux, Docker, and Kubernetes.

  • Transitioning from Java EE to Micro Services

    WeWork Pioneer Place

    In this talk Steve Hall, Principal Engineer Next Generation Systems at Nike, will discuss why typical patterns used in Java EE may not work in microservices. He will show code and test examples using a progressive approach that incorporates Spring Boot, Spring Web Flux, Docker, and Kubernetes.

  • How to Protect against Deserialization Attacks

    Oracle Portland

    Insecure deserialization is one of the most critical web application security risks, yet it is by no means a new vulnerability category. Data serialization and deserialization have been used widely in applications, services and frameworks, with many programming languages supporting them natively. Deserialization got more attention recently as a potential vehicle to conduct several types of attacks: data tampering, authentication bypass, privilege escalation, various injections and, finally, remote code execution. Two recent vulnerabilities in Apache Commons and Apache Struts, both allowing remote code execution, helped raise awareness of this risk. We will discuss how data serialization and deserialization are used in software, the dangers of deserializing untrusted input, and how to avoid insecure deserialization vulnerabilities. Speaker: Alexei Kojenov (https://twitter.com/kojenov) is a Senior Application Security Consultant with years of prior software development experience. During his career with IBM, he gradually moved from writing code to breaking code. Since late 2016, Alexei has been working as a consultant at Aspect Security, helping businesses identify and fix vulnerabilities and design secure applications. Aspect Security was recently acquired by Ernst&Young and joined EY Advisory cybersecurity practice.