2021 Edition


Sponsored by

Montreal’s FREE 1-day Software Conference

For students & developers – Friday, January 15, 2021

Montreal’s Less Than* FREE 1-day Software Conference

Online / En ligne

*Supported by Print 
Everyone who attends will receive a 35% discount code good for all Manning products in all formats. 
Five eBook copies of Mannings’ Classic Computer Science Problems in Java by David Kopec will be raffled at the end of the conference.


Registration is now open at Eventbrite 


We are looking for sponsors for DawsCon 2021. To learn more and hopefully sign on email us at dawscon@dawsoncollege.qc.ca for how you can be involved in DawsCon.

This coming January DawsCon will be part of the first conference organized by Java Champions. The JChampionsConf will be taking place on Jan 13, 14,18, and 19, 2021.  Go to https://jchampionsconf.com/ for more information.

DAWSCON at Dawson College on January 15, 2021 Online

Dawson College will again be hosting its free one-day software conference in Montreal. This conference is bringing speakers from around the world to speak to students and developers on a wide range of topics concerning software development. You chose to be a programmer and one of the commitments this entails is to lifelong learning. DAWSCON is the ideal place to start or continue!

The event is free to attend and targeted at students, professional software developers and anyone with a general curiosity.

DAWSCON, au College Dawson, le 15 janvier 2021, en ligne

Le collège sera à nouveau l’hôte de sa conférence gratuite à Montréal. Elle permettra d’entendre des présentateurs du monde entierdes partager leur vue du développement logiciel, et de ses multiples aspects. Vous êtes un programmeur, et vous apprenez tous les jours ? Alors cette conférence est faite pour vous !

Cet événement est gratuit et nous invitons les étudiants, les développeurs de logiciel, et tous ceux qui sont curieux.

Conference Schedule

Here are all the links for every session on YouTube. While you do not need to register to attend any of our sessions, registering will allow us to make two special offers available to you. All times are EST Montreal UTC-5.

Ken – Welcome



Venkat Subramaniam – Keynote – This Ain’t Your Parents’ Java



Simon Ritter – Java at Speed: Building a Better JVM



CANCELLED – Constantin Drabo – VisRec (JSR #381) the Java API for visual recognition



Julien Dubois – JHipster



Henri Tremblay – This stupid multi-threaded code isn’t working. I hate Java!



Geertjan Wielenga – foojay: A Place for Friends of OpenJDK



Amy Pearson, Mark Stephens – Everyday coding in NetBeans



David Delabassée – Java and the 40 versions – January 2021 Edition



Francis Toth – Functional Design



Simon Martinelli – You may not need JavaScript



Heather VanCura – Java Community Participation and Collaboration in 2021



Kirk Pepperdine – Performance War Stories



Hillmer Chona, Rodrigo Graciano – Of Concurrency and other demons



James Weaver – Quantum Party Tricks: An entertaining introduction to quantum computing



Mary Grygleski – Thirst-Quenching Streams for the Reactive Mind



Ryan Cuprak – Contributors Guide to the Jakarta EE 10 Galaxy



Sven Ruppert – Using WebComponents with Java on the server-side and how to harden the stack against known Vulnerabilities



Mark Heckler – Spring Boot Omakase: A fast-paced “chef’s choice” dive into fun & useful topics!



Félix Roberge – Operator Framework: What about it ?



Alain Alphonse, Denis Keseris, François Larose – Intellectual property for software inventions



Andres Pineda – Understanding and Developing WebAssembly Apps with Uno Platform



Chandra Guntur – Paneer Tikka Masala … with Java CompletableFuture



Billy Korando – Upgrade Your Automated Tests with JUnit 5



Hugh McKee – How We Code: From Loops to Functions, to Actors?



CANCELLED – Sharat Chander – The Future of Java + You, 25 years of progress in the making


Ken – Farewell




Speakers / Conférenciers

Venkat Subramaniam

President, Agile Developer, Inc., Java Champion, JavaOne Rockstar

Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., creator of agilelearner.com, and an instructional professor at the University of Houston. He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with sustainable agile practices on their software projects. Venkat is a (co)author of multiple technical books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. You can find a list of his books at agiledeveloper.com.

You can find Venkat on Twitter @venkat_s


This Ain’t Your Parents’ Java

Java was once a language that dragged along and evolved at snails’ pace. Thankfully, that’s no longer the case. The recently years have seen accelerated development of both language features and JDK improvements. In this presentation we will dive into some of the recent changes of Java that are both fun and powerful to use and discuss where the language is heading in the near future.

Julien Dubois

Cloud Developer Advocate at Microsoft and Java Champion


Julien is known as the creator and lead developer of the JHipster project. In the past 20 years, he has mainly worked with the Java and Spring technologies as an architect and as a consultant, working for many different customers across all industries. As he loves to share his passion, Julien wrote a book on the Spring Framework, spoke at more than 100 international conferences, and created several popular Open Source projects.
Currently, Julien focuses on improving Java and Spring support on Azure.

You can find Julien on Twitter @juliendubois


JHipster is used by tens of thousands of developers around the world as a base for starting their projects. During this session, we’ll explore what makes it so successful: great developer experience, end-to-end project lifecycle support, and an awesome community. To achieve this, we’ll code a fully functional application from scratch, and deploy it to the cloud: we’ll see how JHipster manages database updates, Spring Boot components, Angular code, integration tests, as well as cloud deployment tools. Feedback on this session will be highly appreciated, as JHipster is all about making developers happy, and the project team is always keen on getting new ideas and recommendations.

James Weaver

Quantum Developer Advocate IBM, Java Champion, JavaOne Rockstar


James Weaver is a developer, author, and speaker with a passion for quantum computing. He is a Java Champion, and a JavaOne Rockstar. James has written books including Inside Java, Beginning J2EE, the Pro JavaFX series, and Java with Raspberry Pi. As an IBM Quantum Developer Advocate, James speaks internationally at quantum and classical computing conferences. He tweets as @JavaFXpert, and blogs at http://JavaFXpert.com and http://CulturedEar.com



Quantum Party Tricks: An entertaining introduction to quantum computing

Although quantum computing concepts can seem strange and difficult to learn, many of them are easy to understand in the context of simple demonstrations. For example, a quantum bit (qubit) may hold the value of 0 or 1, or some combination of those values. When measured, the state of the qubit collapses to either 0 or 1, based upon the probabilities expressed in its hidden quantum state. A simple demonstration, or “quantum party trick” if you will, can shed light on this phenomenon as well as how it is leveraged in quantum computing.

In this session, James Weaver will give an entertaining introduction to quantum computing, After covering a brief history of quantum computers, James will demonstrate key concepts in quantum computing using several party tricks disguised as programs running on a quantum computer. By the end of this session, attendees will have been exposed to concepts and tools that enable them to develop programs that run on quantum computers.

Part of this session will consists of demonstrations using a block-mining application similar to Minecraft. Attendees may choose to download this game and play along before, during, and after the session by following the instructions at QiskitBlocks.org

Billy Korando


Billy is a developer advocate with IBM and has over a decade of experience. Billy is passionate about helping developers find ways to reduce mental capacity waste from tedious work; such as project initiation, deployment, testing and validation, and so on through automation and good management practices. Outside of work Billy enjoys traveling, playing kickball, and cheering on the Kansas City Chiefs. Billy also co-organizes the Kansas City Java users group.

You can find Billy on Twitter @BillyKorando

Upgrade Your Automated Tests with JUnit 5

JUnit 5 is the latest version of the popular JUnit testing framework Java. JUnit 5, released in 2017, brought many changes with it, incorporating changes to the Java language like lambdas and streams, and also lessons learned from JUnit 4. In this presentation we will look at how to migrate existing automated testing suites to use JUnit 5 and also learn some of the benefits and new features that were introduced in JUnit 5 that you can take advantage of when you start using JUnit 5 for your automated testing!

Sharat Chander


• Sharat Chander has worked in the IT industry for 20 years, for firms such as Bell Atlantic, Verizon, Sun Microsystems, and Oracle. His background and technical specialty is in Java development tools, graphics design, and product/community management. Sharat has been actively involved in the Java Community for 20+ years, helping drive greater Java awareness, acceptance, adoption, and advocacy. At Oracle, as the senior director of Java developer engagement, Sharat also serves as the content chairperson for all Java events hosted by Oracle. He is a frequent keynote speaker and active participant in developer programs worldwide. Sharat holds a BS in corporate finance and 3rd-world economics from the University of Maryland and an MBA in international business from Loyola College, Maryland. You can find Sharat at multiple global developer events and Java community engagements. When not growing visibility for Java, he follows his other passion for baseball and fanatically following his hometown Baltimore Orioles.

The Future of Java + You, 25 years of progress in the making

In 2020, we celebrated 25 years of Java. Such an anniversary is no easy feat. Keeping Java a favorite choice for millions of developers has not happened by accident; rather it’s through the continual careful stewardship, addressing ongoing challenges and evolving developer expectations, that keeps Java vibrant. Good stewardship doesn’t only mean having a compelling technical roadmap — it also means keeping the community and ecosystem vibrant. Not all of it is obvious and not all rumors are true; this talk will shine a light onto what the Java team at Oracle has done and is doing for the community and ecosystem. What has Oracle ever done for Java that will keep Java going for the next 25 years and beyond? Come attend to learn how to separate fact from fiction.

Mark Stephens and Amy Pearson

Mark Stephens is a Java enthusiast and keen NetBeans user who regularly speaks at Oracle CodeOne, DevFest and NetBeans events.

Mark is the Founder of IDRsolutions, a UK based software Company whose products include a Java PDF Viewer, a PDF to HTML5/SVG converter and a complete replacement for ImageIO.

Mark is very proud to have an MA Degree in Mediaeval History for which he has yet to find any practical use.

You can find Mark on Twitter  @JavaPDF


Amy is a developer at IDRsolutions and an enthusiastic NetBeans user. She was a participant in the last NetCat testing program and is happiest when writing Java code and hunting down difficult bugs. In her free time, she enjoys playing guitar and delving into the world of virtual reality.
Amy is very excited (and little nervous) to be taking part in her first conference presentation for DawsCon. You can find Amy on Twitter @amypearson1612.

Everyday coding in NetBeans

NetBeans is a great cross-platform tool for coding and debugging Java and many other languages. It is free, stable , fast and well-supported. It has out of the box support for Version control (we will show you Git), build systems such as Maven and Ant, Built in debugging and profiling and JUnit testing. The fast and intelligent editor takes the drudgery out of writing code and helps you to rewrite clean and robust code.

If you want to learn to code, you will find lots of built-in examples. The hints and tools make it an ideal platform to rapidly develop your technical skills. It will even upgrade your Java code to take advantage of new Java releases.

NetBeans has a plugin architecture and is completely configurable so you can make it work the way you want to.

Finally, NetBeans is Open Source with an active and friendly development community and regular new releases. You can even download and hack the code for the IDE.

So enter in to our talk, experience British humour at a safe distance, and find out why we use NetBeans everyday for coding.

Mark Heckler

Java Champion

Mark Heckler is a Professional Problem Solver and Spring Developer & Advocate at VMware, conference speaker, published author, & Java Champion focusing upon developing innovative production-ready software at velocity for the cloud. He has worked with key players in the manufacturing, retail, medical, scientific, telecom, and financial industries and various public sector organizations to develop and deliver critical capabilities on time and on budget. Mark is an open source contributor and author/curator of a developer-focused blog (https://www.thehecklers.com) and an occasionally interesting Twitter account (@mkheck).

Spring Boot Omakase: A fast-paced “chef’s choice” dive into fun & useful topics!

Spring Boot has revolutionized the Java space and continues to do so, evolving constantly to increase developers’ superpowers and advance the state of production-grade software development.

Presenting a dynamic technology before vastly different audiences often limits what can be proposed & presented. Let’s fix that!

This session is an omakase, a “chef’s choice” of key points and latest/coolest capabilities for developers in the Spring Boot ecosystem. Known by French chefs as m’étonner (“Astonish me!”), the goal is to combine useful patterns and new possibilities in one fast-paced live-coding adventure from which everyone leaves with something tasty to chew on. Come for the apps, stay for dessert, leave satisfied & excited for the next “course” of production software!

Heather VanCura


Heather leads the Java Community standardization efforts at Oracle, and is a leader of the global community driven adoption user group programs. She is Chairperson of the Java Community Process (JCP) program. In this role she drives the efforts to transform the JCP program and broaden participation and diversity in the community. She is passionate about Java, women in technology and developer communities, serving as an International speaker and community organizer of developer hack days around the world. She resides in the San Francisco Bay Area, California USA and enjoys trying new sports and fitness activities in her free time.

Java Community Participation and Collaboration in 2021

The Java Community Process (JCP) program celebrates twenty five years of Java development in 2020. The JCP is the process by which the international Java community standardizes and ratifies the specifications for Java technologies. The JCP ensures high-quality specifications are developed using an inclusive, consensus-based approach. Read more about the JCP at https://jcp.org/en/procedures/jcp2_11.

This session will explore how Java development has been brought into the open over the past decade. Several Java developer efforts have brought open source development processes and new levels of transparency and participation into their communities.

Learn about the latest Java innovations to the Java SE Platform – Java SE 14, 15 and beyond.

Since the initiation of efforts to expand the developer participation in the Java community, Java standards development is more open that it ever has been. Learn how to take part in the Java developer community and the upcoming changes to Java – you can participate as an individual, corporation, or nonprofit such as a Java user group (JUG).

This session answers questions about why and how to participate in the evolution of the Java platform. Learn about how you can participate in contributing to the future of Java and influence the next generation of Java developers.

Mary Grygleski


Mary is a Senior Developer Advocate at IBM, specializing in Reactive Java, Open Source, Cloud, and Distributed Systems. She started working as a software engineer with C and Unix, then got into Java, Open Source, and web development in the new Millennium, and now she has ventured into Reactive, Mobile, and the DevOps space. In her previous incarnations, she worked for several technology product companies in the Route 128 Boston Technology Corridor as well the San Francisco Bay Area. She now resides in the Greater Chicago area, and is the President and Executive Board Member of the Chicago Java Users Group (CJUG). She is also an active co-organizers for the Data, Cloud and AI In Chicago, Chicago Cloud, and IBM Cloud Chicago meetup groups. Mary continues to be amazed by how software innovations can dramatically transform our lives. Despite the many challenges in an ever-evolving technical world, she gets energized by the constant change and believes that she has uncovered the pathway to staying young. She can’t wait to see what the next tech wave will be like.

Thirst-Quenching Streams for the Reactive Mind

With the advances in multicore hardware and virtualization technologies, and the demand for highly responsive, resilient, and elastic systems and increasingly sophisticated applications, an array of reactive data stream processing libraries have been born to address the ever-increasing needs. Reactive Streams is an initiative to provide a standard for asynchronous stream processing with non-blocking back pressure. This encompasses efforts aimed at runtime environments that include JVM and Javascript, as well as network protocols. So how do the various library implementations of Reactive Streams, such as Spring Reactor, Reactive Extension (Rx)’s Observables, and RSocket, stack up against each other?

This presentation will go into some details on how streams leverage on the underlying multicore processor to achieve parallelism. It will then explain the push vs the pull streaming model. It will then use a simple use case with code examples to illustrate the different API usages, as well as runtime processing analysis between a few popular Java implementations of Reactive Streams.

Félix Roberge

Container Solution Architect  at CloudOps


I’m a programmer, an architect, a technology enthusiasm, a conference speaker among other things that enjoy driving disruption and transformation to face the ever changing industry. I take pride in simplifying operations and driving innovation by providing lost cost, scalable and reliable software solutions that people will use and love. Believer of the added value of the community, I’m very involve in multiple user groups and in the Open Source Software movement.

I’m devoted in building and mentoring strong teams that nurture innovation and excellence will focusing on a stellar company culture.

Operator Framework: What about it ?

Have you wver wanted to know What are operators? What are their purpose ? How can a cloud native application leverage this new standard to empower developers and ops to do what they do best ? In this talk we will explain what is the Operator Framework and how we can leverage the use of the operator SDK to bring an apple store or google store like experience to manage and expend or Kubernetes cluster ?

Simon Martinelli

Simon Martinelli is a passionate Java, performance optimization and application integration expert with more than 25 years of experience creating efficient programming solutions as a developer, architect, and technical lead.

An active member of the Java community process, he has made key contributions to JSR-352 Batch Applications, JSR-354 Money, and Currency API.

In addition to coaching and teaching clients to optimize IT functions within business environments, he has been an Adjunct Professor at Berne University of Applied Science in Switzerland since 2007.

You may not need JavaScript

Single page applications (SPA) have become the for web application development. Angular, React and Vue.js are the best known representatives from this category of web frameworks. But does this client architecture fit every application? Or are there alternatives that may fit better and are less complex to develop?

In the first part of the talk, the differences between SPAs and classic, server-side approaches are explained and the advantages and disadvantages are discussed.

The second part reports on a current customer project in which the front end of a large ERP system had to be replaced by a modern web front end. The chosen framework is Vaadin Flow, a server-side web framework that makes development of web applications entirely in Java possible.

First, the new architecture of Vaadin Flow, which is no longer based on GWT but on web components, is explained. Then it will be shown how configurable, form-based and data-centric web applications can be implemented very efficiently by using jOOQ as a database access layer.

Hugh McKee

Hugh McKee is a Developer Advocate at Lightbend. He has had a long career building applications that evolved slowly, that inefficiently utilized their infrastructure, and that was brittle and prone to failure. That all changes when we started building reactive, asynchronous, actor-based systems. This radically new way of building applications rocked his world. As an added benefit, building application systems became way more fun than it had ever been. Now he is focused on helping others to discover the significant advantages and joys of building responsive, resilient, elastic, message-based applications.

How We Code: From Loops to Functions, to Actors?

The history of how we write code has been fascinating. For the most part, from the early days back in the 1940s and 50s up to the present day, the imperative style or writing code as a linear sequence of instructions was the norm. Then along came the object-oriented, which is a refinement of the imperative style. In the last few decades, new programming languages came on the scene that promotes the functional style. During this evolution of programming styles, on the fringe is the actor model, which defines the concept of actors as computational units.

What is interesting from a historical perspective is that the imperative, functional, and actor paradigms have been well known and actively researched since the earliest days of computing and programming. The notion of “calculating machine,” the inspiration of imperative programming, goes back to the 1830s! Functional programming has its roots in Lambda Calculus, developed in the 1930s. The actor model, first conceived back in the 1970s, was inspired by physics.

Why is it that the imperative paradigm first became the predominant programming style? Why is it that the functional paradigm took so long to catch the attention of mainstream programmers? Finally, why has the actor model, which many have predicted should be the predominant programming model, struggled to go beyond the fringe?

In this talk, we will look into these questions and then zero in on the actor model. Through a series of code examples and visualizations, we will look at some of the fantastic and often unbelievable things you can build with actors. My goal for this talk is to inspire you to seriously consider the actor model for some of your future projects.

Francis Toth

Software developer, convinced agilist and trainer with over 15 years experience developing highly scalable web/mobile/backend applications, optimizing work processes and leading dev teams. He is currently interested in software design in general, Functional Programming (Scala, ZIO, Cats, Haskell,…), type-level programming, concurrency and distributed systems. Francis founded Contramap, a Canadian consulting company providing technical expertise regarding functional programming, reactive system design and training, through talks, blog posts, open-source contributions, and development.


Functional Design

Software design is hard but doesn’t have to be. Fifteen years ago, my mentor made me realise that maintainable and sustainable design matters immensely. However the amount of principles and best practices one has to know to achieve this is very intimidating. Moreover they tend to be either too vague or way too specific and it requires years and years of practice to be got right. Too often, we end up falling back on “good enough” approaches (which can be pretty limited in the long run) or over-complicated ones resulting from a zealous application of the above guidelines. In fact all these principles and best practices share some common ideas which all together form the fundamental set of guidelines we should all know about to write sustainable code.

In this talk, we’ll look at what Functional Design consists of and how it can lead us to techniques to write better software no matter the paradigm you are used to.

Simon Ritter

Java Champion


Simon Ritter is the Deputy CTO of Azul Systems. Simon has been in the IT business since 1984 and holds a Bachelor of Science degree in Physics from Brunel University in the U.K.

Simon joined Sun Microsystems in 1996 and started working with Java technology from JDK 1.0; he has spent time working in both Java development and consultancy. Having moved to Oracle as part of the Sun acquisition, he managed the Java Evangelism team for the core Java platform. Now at Azul, he continues to help people understand Java as well as AzulÕs JVM technologies and products. Simon has twice been awarded Java Rockstar status at JavaOne and is a Java Champion. He currently represents Azul on the JCP Executive Committee and on the Java SE Expert Group.

Follow him on Twitter, @speakjava.

Java at Speed: Building a Better JVM

Getting the best performance out of your Java applications can often be a challenge due to the managed environment nature of the JVM and the non-deterministic behaviour that this introduces.

This session will start by looking at what we mean by speed and how the JVM, whilst extremely powerful, means we don’t always get the performance characteristics we want. We’ll then move on to discuss the three critical features of the Zing JVM that address these issues:

  1. The C4 garbage collector, which eliminates GC pauses that affect the performance of an application even after all hot code paths have been compiled and optimised.
  2. The Falcon JIT compiler that leverages the LLVM open source project to provide optimisations specific to the newest CPU architectures using features like AVX2.
  3. ReadyNow!, which allows details of speculative optimisations and JIT profiling to be logged on production systems. ReadyNow! profiles can then be used to substantially reduce the warmup and deoptimisation issues that affect performance when restarting an application.

Local Variable Type Inference: Friend or Foe?

Local variable type inference was introduced as a new Java language feature in Java SE 10. Gone are the days of explicitly having to define the type of a variable; let the compiler do it for you with the magic of var!

At first sight, this looks like a small change that will eliminate unnecessary boiler-plate code and reduce how much typing (on the keyboard) is required to maintain strong typing (of the language). However, as with many features, there are some unexpected nuances as well as both good and bad use cases.

In this session, we’ll explain the fundamentals of local variable type inference and look at the edge cases where it can, can’t, should and should not be used. We’ll then take a series of examples of the use of var and discuss the technical merits of each case.

Geertjan Wielenga

Java Champion

GeertjanGeertjan is an open source enthusiast, a Java Champion, and Apache Member. After working on open source projects in Sun Microsystems and Oracle, he is now Senior Director of Open Source Projects at Azul, focused on foojay.io, which is a place for friends of OpenJDK.



foojay: A Place for Friends of OpenJDK

Welcome to foojay.io, a place for friends of OpenJDK. In this session, we’ll learn about the new one stop shop for all things Java. Via foojay’s user-focused Java and OpenJDK technical dashboards, you have access to free data for daily Java usage. At the click of a button, find updated analyses, selected highlights, and categorized lists arranged for easy consumption on all things Java. Learn what foojay is about and how you can get involved too.

Chandra Guntur

Java Champion


Chandra Guntur is a Director and Java Advocate in Resilient Systems Engineering, BNY Mellon. He has been a technologist in the financial services industry since 2003 and is programming with Java since 1998. Chandra is one of the representatives for BNY Mellon in the Java Community Process (JCP) Executive Committee. He is a Java User Group (JUG) Leader, and helps run one of the largest Java user groups, NYJavaSIG (New York Java Special Interest Group). He is also responsible for running the NYJavaSIG Hands-On-Workshops (HOW), conducting code workshops and Code Katas on core Java features. Chandra is a frequent speaker at Java meetups, user groups, and key conferences including Oracle Code One, Oracle Code NY, QCon New York, Devnexus and GIDS India.

Twitter: @CGuntur
Linkedin: https://www.linkedin.com/in/cguntur

Paneer Tikka Masala … with Java CompletableFuture

Create a cooking recipe with a kata for using Future and CompletableFuture. The talk is mostly a coding demo. A recipe for a delicious Indian curry is used to show how CompletableFuture API can help emulate real life.

Henri Tremblay

Java Champion


Henri Tremblay est Java Champion. Il dirige les projets à sources ouvertes EasyMock et Objenesis. Quand il était jeune, il a développé le mocking des classes et inventé le concept de mocking partiel. Il codait avec pragmatisme.

Il a depuis été développeur, directeur technique, architecte d’entreprise, créateur d’entreprise, conférencier et expert en performance. Avec pragmatisme.

Il aime l’optimisation et la productivité. En Java et en général. Il essaie d’être utile. Il est actuellement directeur de TradingScreen Canada. Il est pragmatique.

Henri Tremblay is a Java Champion. He leads the EasyMock and Objenesis open source projects. When he was young he created the popular mocking class, invented partial mocking and was coding with pragmatism.

He has been a developer, CTO, software architect, enterprise architect, startup founder, teacher and performance expert. With pragmatism.

He loves optimization and productivity. In Java and in general he tries to be useful. He is currently the Head of Office of TradingScreen Canada. He is pragmatic.

This stupid multi-threaded code isn’t working. I hate Java!

Let me step in here. Java is probably the most deterministic language ever. But reading the Java Memory Model specification is not like reading Harry Potter and the Philosopher’s Stone. It is shorter though. Fortunately, I have tricks. Let’s have a look together.

We will go through different examples. The idea is not fully to understand the model (nobody does) but to have solid examples that work. To spend less time looking at a concurrency idiom wondering if you are safe or not.

Ryan Cuprak


Ryan Cuprak is an CPG & Retail, Formulation R&D Development Senior Manager at Dassault Systemes, co-author EJB in Action 2nd Edition from Manning and the NetBeans Certification Guide from McGrall-Hill. He is also president of the Connecticut Java Users Group since 2003. Ryan is a JavaOne Rockstar Presenter. At Dassault Systemes he works on the ENOVIA Enginuity chemical formulation software and is involved in desktop and backend server development as well as client data migrations. Prior to joining DS, Ryan worked for a distributed computing company, TurboWorx, and also Eastman Kodak’s Molecular imaging Systems group, now part of Burker. Ryan earned a BS in computer science and biology from Loyola University Chicago.

Contributors Guide to the Jakarta EE 10 Galaxy

Jakarta EE 8 has been delivered and Jakarta EE 9 is well on the way. This is a perfect time to begin exploring the horizons of Jakarta EE 10 and how you can help make it reality.

We will guide you on how to begin contributing towards Jakarta EE 10. We will cover ways of contributing, what paperwork is needed as well as the likely possibilities for Jakarta EE 10 including high level themes, platform level changes and some detailed features. Some technologies that might change include Jakarta Security, Concurrency, Messaging, Persistence, REST, Batch and Faces. New APIs that could be added include Jakarta NoSQL, MVC and Configuration. We will talk about non-specification projects such as the Tutorial and Samples.

We will also discuss what might be after Jakarta EE 10. Bring your thinking caps!

Kirk Pepperdine

Java Champion, JavaOne Rockstar

Kirk Pepperdine has been performance-tuning Java applications as an independent speaker and consultant for more than 20 years. He know works at Microsoft as a principle engineer after his startup, jClarity was acquired. Kirk was named a Java Champion in 2006, has been a JavaOne Rockstar numerous times, and can be found at Java User Groups and conferences worldwide. The author of the original Java performance-tuning workshop, Kirk continues to be an ardent supporter of the Java community as the co-founder of JCrete, a Java unconference, and helps to establish other unconferences across the globe.


Performance War Stories

A retrospective of a selection of performance regressions I’ve run into over the year. Some, with an interesting twist.

Constantin Drabo


Java ChampionPictureConstantinDrabo

Java and Fedora (Linux) enthusiastic , software engineer at National Treasury and part-time teacher in university of Bobo-Dioulasso Nazi Boni (Burkina Faso).
He’s Apache NetBeans contributor for more than ten years.



VisRec (JSR #381) the Java API for visual recognition

We will have an overview of VisRec and how this API can help Java developers for classifying and recognizing objects in images using machine learning.

Hillmer Chona and Rodrigo Graciano

Java Champion

HillmerJava Champion, Oracle GroundBreaker Ambassador, System Engineer, Medellín JUG Leader, Duke’s Choice Award Winner, focusing on software development with Java Techs.





Rodrigo is a Principal Software Engineer and one of the leaders of the NYJavaSIG, the oldest JUG and the largest in North America. You can find him at graciano.dev and on Twitter @rodrigograciano




Of Concurrency and other demons

Is your code too slow? Users must wait for one task to be done after moving to the next one? Have you heard that you can use threads in Java but you struggled with them and never quite understood how they work? In this session Hillmer and Rodrigo will demonstrate how with a few changes -and low effort- in the code and using the CompletableFuture API, even a single app can do more than one thing at time improving the response times.

Andres Pineda


Community-driven tech enthusiast with many years of experience with Software Development and a few years working specifically with Mobile solutions. Tech speaker, blogger and father of three. When he’s not at work, Andres loves sports and discovering the latest gadgets.





Understanding and Developing WebAssembly Apps with Uno Platform

WebAssembly has huge implications not only for the web, but to your career as developer — it provides a way to run code written in multiple languages on the web at near native speed. W3C recently certified WebAssembly as the 4th official language for Web. To continue having relevant skills as a developer you need to understand WebAssembly and how to work with it.

In this talk you will learn how to reuse code to make your applications run across all modern browsers and as an added bonus show you how the very same code can run on Android, Linux, iOS and Mac thanks to the open source Uno Platform

David Delabassée

Java Platform Group Oracle, JavaOne/CodeOne Rockstar

David is a Developer Advocate in the Java Platform Group at Oracle. Over the years, David has championed Java extensively throughout the world, by presenting at conferences and user groups, large and small. He blogs at https://delabassee.com and has authored many technical articles for various publications. David also co-hosts the Inside Java podcast (https://inside.java/podcast/).

David lives in Belgium. In his spare time, he enjoys playing video games with his daughter, and tinkering with technologies such as domotics, electronics, and pinballs.

You can follow him on Twitter @delabassee.

Java and the 40 versions – January 2021 Edition

With Java 15 released a few months ago, and Java 16 approaching fast, it is not always easy to keep up with new features added to the Java platform.

In this technical session, we will discuss enhancements recently added to the platform, large and small, visible, and hidden ones. We will also look at key initiatives such as Project Loom, Project Panama, Project Valhalla, … and see how they are gradually introduced into the Java platform. And to celebrate the New Year, we might even have a few demos!

Attend this session to understand what Java is bringing you in 2021!

Alain Alphonse, Denis Keseris, and François Larose

Alain Alphonse-HeadShot

Alain Alphonse is an associate at Bereskin & Parr LLP and a member of the Electrical & Computer Technology practice group. His practice includes all aspects of patent prosecution and filing, having experience with both Canadian and United States patent applications. Alain received a BASc in electrical engineering and a J.D. from the University of Ottawa, and a J.D. from Michigan State University.

Alain Alphonse est un membre du Barreau du Haut-Canada en Ontario et travaille au sein du groupe de pratique Technologie électrique et informatique chez Bereskin & Parr. Sa pratique comprend tous les aspects de la rédaction et du traitement des demandes de brevets. Alain a obtenu un diplôme en génie électrique et un premier diplôme en droit (J.D.) de l’Université d’Ottawa et un deuxième diplôme en droit (J.D.) de l’Université Michigan State.


Denis Keseris is a partner at Bereskin & Parr LLP, and member of the Electrical & Computer Technology practice group. His practice covers all aspects of patents, particularly in the fields of artificial intelligence, fintech, gaming technology, telecommunications, medical devices and cannabis. Denis is a fellow of the U.K. Chartered Institute of Patent Attorneys and is qualified as a European Patent Attorney and European Design Attorney.

Denis Keseris est associé au sein de Bereskin & Parr S.E.N.C.R.L., s.r.l., et membre du groupe de pratique Technologie électrique et informatique. Sa pratique porte sur tous les aspects des brevets, en particulier dans les domaines de l’intelligence artificielle, de la technologie financière, de la technologie des jeux vidéo, des télécommunications, des instruments médicaux et du cannabis. Denis a été nommé Fellow du Chartered Institute of Patent Attorneys du Royaume-Uni et a obtenu les titres de Mandataire Agréé près l’Office Européen des Brevets et Conseil Européen en Dessins et Modèles.


François Larose is a lawyer, trademark agent and partner with Bereskin & Parr LLP. His practice focuses on all aspects of trademark law in addition to copyright, IP related agreements, and IP related regulatory issues, such as the Charter of the French Language. He represents clients – local, national and multinational, from all industries – before the courts and tribunals in any intellectual property rights litigation.

François Larose est avocat, agent de marques de commerce et associé chez Bereskin & Parr S.E.N.C.R.L., s.r.l. Sa pratique porte sur tous les aspects du droit des marques de commerce, ainsi que sur le droit d’auteur, les contrats en propriété intellectuelle et les questions règlementaires connexes, dont celles liées à la Charte de la langue française. Il représente ses clients – locaux, nationaux et multinationaux, de toute industrie – devant les divers tribunaux dans le cadre de litiges en propriété intellectuelle.

Intellectual property for software inventions / La propriété intellectuelle et les inventions logicielles

Few things change faster or more continuously than technology. The term “software invention” has been used to refer to many different types of innovation in different technological fields. In particular, this term has been used to encompass all inventions that use some type of computer software program in their implementation. What does intellectual property have to do with software? Is it true you can’t get a patent on software? What are the benefits of protecting your software, and how do software companies use intellectual property? We will answer all these questions and more.

Peu de choses changent plus vite ou plus continuellement que la technologie. De nos jours, le terme «invention logicielle» est utilisé pour désigner de nombreux types d’innovation dans différents domaines technologiques. En particulier, ce terme est utilisé pour englober toutes les inventions qui utilisent un certain type de logiciel informatique dans leur mise en œuvre. Qu’est-ce que la propriété intellectuelle a à voir avec les logiciels? Est-il vrai que vous ne pouvez pas obtenir de brevet sur un logiciel? Quels sont les avantages de la protection de vos logiciels et comment les entreprises informatiques utilisent-ils la propriété intellectuelle? Nous répondrons à toutes ces questions et plus.

Sven Ruppert


Sven Ruppert has been coding Java since 1996 in industrial projects, is working as Developer Advocate for JFrog and Groundbreaker Ambassador (former Oracle Developer Champion). He is regularly speaking at Conferences worldwide and contributes to IT periodicals, as well as tech portals. He was working over 15 years as a consultant worldwide in industries like Automotive, Space, Insurance, Banking, UN and WorldBank. Additional to his main topic DevSecOps he is working on Mutation Testing of Web apps and Distributed UnitTesting besides his evergreen topics Core Java and Kotlin.

Using WebComponents with Java on the server-side and how to harden the stack against known Vulnerabilities

In recent years, the interest and use of web components in the community have increased significantly. Most front-end frameworks adopt the Web Component standard, and many developers have started using the norm when creating their widgets. Not to mention that it is now natively supported by all modern browsers. How to use the interoperability and flexibility of web components as Java developers on the server-side? This talk shows the use of pure client-side web components using Java on the server-side. We will have a look at the tech-stack, how it looks like for a developer and how to harden against known vulnerabilities.

Conference Organizer: Ken Fogel

Java Champion, JCP Executive Committee Member

Photo of Ken Fogel

Ken Fogel is a faculty member of the Computer Science Technology Program at Dawson College. He has spoken at Java One, now called Code One and Apache Con and participated in JCrete. He is a member of the Java Community Process Executive Committee. After his first two years speaking at Java One he decided to bring a little of his experiences at these conferences to Montreal and this led to DawsCon. Being a developer means a commitment to life long learning but not everyone can travel to conferences. DawsCon brings to Montreal (this year online) some of the finest speakers in the world to a conference where admission is FREE!

For more information, contact us at dawscon@dawsoncollege.qc.ca.

Pour plus d’information, veuillez nous contacter au dawscon@dawsoncollege.qc.ca.



Manning is an independent publisher of computer books for software developers, engineers, architects, system administrators, managers and all who are professionally involved with the computer business. The books we publish cover a huge range of topics that the modern developer needs; from languages and frameworks, to best practices for team leaders.

Last Modified: September 3, 2021