Videosshare & followShare this post with your community:I'm active on various platforms. Watch this space or follow me there to get notified when I publish new content:▼s+fShare this post with your community:I'm active on various platforms. Watch this space or follow me there to get notified when I publish new content:Java 24 Performance Improvements & Deprecations - Inside Java Newscast #82#video#java‑24 #performance #deprecationJava 24's feature list contains a whopping 24 JDK Enhancement Proposals. Here, we're going to look at the performance improvements and deprecations/removals.2024-12-12Java 24 Language & API Changes - Inside Java Newscast #81#video#java‑24Java 24's feature list contains a whopping 24 JDK Enhancement Proposals. Here, we're going to look at the language and API changes.2024-12-05Java 24 Stops Pinning Virtual Threads (Almost) - Inside Java Newscast #80#video#java‑24 #virtual‑threadsOn Java 24, virtual threads will no longer be pinned inside synchronized blocks, which increases ease of adoption2024-11-21Release Your (Java) Projects Like OpenJDK With Tip & Tail - Inside Java Newscast #79#video#openjdk #community #migration"Tip & tail is a release model for software libraries that gives application developers a better experience while helping library developers innovate faster"2024-10-31Big News from Project Valhalla - Inside Java Newscast #77#video#project‑valhalla #java‑nextAt JVMLS 2024, project lead Brian Goetz presented the current state of Project Valhalla - this video summarizes the proposed changes to the programming model.2024-10-03How to Read a JDK Enhancement Proposal - Inside Java Newscast #74#video#openjdk #community #java‑nextOpenJDK evolves Java through JDK Enhancement Proposals, JEP for short, and uses them to communicate its intentions, but the the devil is in the details2024-08-01Integrity by Default - Inside Java Newscast #73#video#j_ms #performance #reflectionIntegrity is a cornerstone of the Java Platform as it enables/bolsters reliability, maintainability, security, and performance, but there are operations that undermine it. Now, Java wants to lock them down by default.2024-07-18Java and AI? - Inside Java Newscast #72#video#ai #java‑next #project‑valhalla #project‑babylon #project‑panamaAI development can be split into three categories: developing an ML model (where Java isn't competitive and is unlikely to become top of the class any time soon), developing an AI-centered product (where Java is well-positioned and will become stringer soon; but does this category matter in the long run?) and adding AI-based features to larger projects (where Java is already very good and will only become stronger thanks to Valhalla's value types, Panama's FFM and vector APIs, and Babylon's code reflection).2024-07-04What Happened to Java's String Templates? Inside Java Newscast #71#video#project‑amberJDK 23 doesn't contain the string template preview that was present in JDKs 21 and 22. Let's discuss why the feature was removed (probably not for the reasons you think), what a new proposal could look like, and when we may see it.2024-06-20All Java 23 Features - Inside Java Newscast #70#video#java‑23Java 23 will be released on September 17th but it's branched today (June 6th 2024) and so its feature set is final. Generational ZGC, Markdown in JavaDoc, deprecations in Unsafe, the removal of string template, and the thoughtful evolution of eight preview features. Let's take a closer look!2024-06-06Module Imports in Java 23 - Inside Java Newscast #69#video#java‑23 #j_msTo reduce the overhead of using APIs, particularly in single source files, Java 23 previews module import declarations of the form import module $moduleName, which import all packages exported by the named module2024-05-16Java Withers - Inside Java Newscast #67#video#recordsJEP 468 proposes a solution to the verbosity that can come from modeling mutable state with immutable records: derived record creation aka with expressions aka withers.2024-04-18Java 23: Restoring the Balance with Primitive Patterns - Inside Java Newscast #66#video#java‑23 #pattern‑matchingThe ongoing introduction of pattern matching to Java has unbalanced the language. Here's how primitive patterns (in Java 23) and other patterns (in future versions) will fix that.2024-04-04(Dirty?) Tricks in Java 22 - Inside Java Newscast #64#video#pattern‑matching #optional #clean‑codePattern matching Optional, expanding sealed type hierarchies, nesting switches, reverting instanceof, and more - so many (dirty) tricks to play around with in modern Java2024-02-29Does Java 22 Kill Build Tools? - Inside Java Newscast #63#video#java‑22 #on‑rampJava 22 brings multi source-file execution to the platform. It allows us to run programs consisting of multiple source files and even dependencies with just a simple java command. For experienced developers, this will make exploration and experimentation simpler but it's a real game changer for people just learning Java or even just to program: They can now write Java code from single to multiple source files and even add dependencies before they need to consider an IDE or build tool.2024-02-15Java 22 Previews Statements Before super(...) and this(...) - Inside Java Newscast #62#video#java‑22 #project‑amberWhether for validation, preparation, or splitting and sharing arguments, it can be quite annoying that Java doesn't allow statements before the super(...) or this(...) call in a constructor. Luckily Java 22 is about to change that with JEP 447, which previews statements before the explicit constructor invocation.2024-02-01Java's Plans for 2024 - Inside Java Newscast #61#video#project‑amber #project‑babylon #project‑leyden #project‑lilliput #project‑loom #project‑panama #project‑valhallaIn 2024, Java keeps evolving. Here's what the big OpenJDK projects (Amber, Leyden, Valhalla, and more) plan for this year and how that will push Java forward.2024-01-18Java Highlights of 2023 - Inside Java Newscast #60#video#turn‑of-the-year #on‑ramp #java‑8 #community #meta2023 is coming to a close and it was quite a year for Java! Let's look back at some of the highlights: on-ramp improvements, why Java 8 is dying, JVMLS, community achievements, and how cool our YouTube channel is. 😊2023-12-21How Project Valhalla And JSpecify Can Kill NPEs#video#project‑valhalla #libraries #conversationProject Valhalla's value types need to be aware of which instance can be null and which can't, so the JVM can inline them. So will Java get a null-aware type system after all? Not quite, but it may get close and JSpecify can help with some of those steps.2023-12-14Java, null, and JSpecify#video#librariesKevin Bourrillion gives an introductory presentation on JSpecify, a project spearheading a set of standard annotations for Java static analysis, specifically for tracking null2023-12-11Java 22 Unpacking - Inside Java Newscast #59#video#java‑22JDK 22 will be released on March 19th 2024 but it's forked today (Dec 7th 2023) and so its feature set is final. Unnamed patterns and variables, the FFM API, and multi-source-file programs are the highlights but there is so much more. Let's unpack!2023-12-07Java On The GPU - Inside Java Newscast #58#video#project‑babylonBabylon is OpenJDK's newest big project, aimed at easing execution of Java code on the GPU, which will unlock machine learning and artificial intelligence on the JVM. Here's all about its background, prototypes, and plans.2023-11-16Better Java Streams with Gatherers - Inside Java Newscast #57#video#streamsStream::gather is a new intermediate meta-operation that allows the JDK and us to implement all kinds of intermediate operations as Gatherers without overloading the Stream interface2023-11-02Implementing New Java Stream Operations#video#streamsImplementing a bunch of Gatherers to better understand the proposed addition to the stream API2023-11-02Java Architects Answer Your Java Questions#video#community #project‑amber #project‑loom #project‑valhalla #project‑leydenTry/catch expressions? Valhalla timeline? Synchronizing virtual threads? And many more. Here's how Brian Goetz, Alan Bateman, Stuart Marks, and Kevin Rushforth answered your questions.2023-10-26New Class-File API Will Make Java Updates Easier - Inside Java Newscast #56#video#java‑next #migrationHow the new class-file API that Brian Goetz presented at JVMLS will greatly improve the situation around Java updates2023-10-05Java 21 Pattern Matching Tutorial#video#java‑21 #pattern‑matching #java‑basicsJava 21 is the first Java release with all essential pattern matching features finalized: sealed types, type patterns, an improved switch, records, and record patterns. This tutorial puts them all together.2023-09-17Upgrading From Java 17 To 21: All You Need To Know#video#java‑21 #migrationJava 21 is chock-full of great features but that's for naught of you can't actually upgrade, so I've collected all potential upgrade hurdles and we'll go over every issue that you may encounter on the road from Java 17 to 212023-08-27Java 21 is no LTS Version - Inside Java Newscast #52#video#java‑21Let's separate Java from JDK, OpenJDK from its vendors, and maintenance from support, so we better understand how the ecosystem functions and what long-term support really means.2023-07-06Java 21 - The Other Side - Inside Java Newscast #51#video#java‑21OMG, how is there even more in JDK 21?! Scoped values preview, key encapsulation mechanism API, a new JFR command, and various API improvements. Generational Shenandoah is out, though, and it doesn't look good for the 32-bit Windows port either.2023-06-22All That is in Java 21?! 😱 - Inside Java Newscast #50#video#java‑21JDK 21 is almost too good to be true: It finalizes virtual threads, sequenced collections, generational ZGC, and the pattern matching basics; and evolves and introduces over half a dozen other features.2023-06-08Script Java Easily in 21 and Beyond - Inside Java Newscast #49#video#java‑basics #on‑rampTo give Java and programming beginners a better learning path, JEP 445 proposes to allow stand-alone main methods that are non-public, non-static, and don't have an args array and we're also JEP draft for multi-file programs2023-05-25Save 10-20% Memory With Compact Headers - Inside Java Newscast #48#video#performanceJDK Enhancement Proposal 450 proposes to merge a compressed class word into the mark word to reduce object header size on 64-but systems from 96-128 bits to 64 bits, thus saving 10-20% of heap space2023-05-11Getting Rid Of Unused Variables (Finally) - Inside Java Newscast #46#video#pattern‑matchingJEP 443 proposes to add unnamed variables and patterns to Java. With them, unused variables and patterns can be replaced by a single underscore, which helps writing readable and maintainable code.2023-04-13New (Sequenced) Collections In Java 21 - Inside Java Newscast #45#video#collections #java‑21All lists, some sets, and some maps have an encounter order, but the collections framework has no type to capture this property and define operations like getting or removing first and last elements or iterating in reverse order. Sequenced collections will fix that in Java 21.2023-03-30The Holy Grail of Java Performance - Inside Java Newscast #43#video#project‑leydenThe goal of Project Leyden is to improve the startup time, time to peak performance, and footprint of Java programs. Project lead Mark Reinhold recently proposed to extend the Java programming model with features for selectively shifting and constraining computation with condensors. Let's look at his white paper and roadmap.2023-03-02Prepare Your Code Bases For Future Java - Inside Java Newscast #41#video#deprecation #toolsWhat do the security manager, applet API, finalization, and primitive wrapper constructors have in common? What about CMS, Nashorn, RMI activation, and biased locking? And what does jdeprscan have to do with all of this?2023-02-02Java's Plans for 2023 - Inside Java Newscast #40#video#project‑amber #project‑galahad #project‑leyden #project‑lilliput #project‑loom #project‑panama #project‑valhallaA summary of what happened in 2022 and what will probably happen in 2023 for Projects Amber, Galahad & Leyden, Lilliput, Loom, Panama, and Valhalla2023-01-1924 Java Features You Missed In 2022 - Inside Java Newscast #39#video#collections #documentation #java‑18 #java‑19 #pattern‑matching #performance #recordsJDK 18 and JDK 19 preview a number of big ticket features but they also come with a lot of smaller improvements. Here are 24 less-known features that were added to Java in 2022. Among them additions to Future and ForkJoinPool, to HashSet and HashMap, Security and GC improvements, Custom Localized Date-Time Formats and an Internet Address Resolution SPI, and much more.2022-12-15GraalVM In OpenJDK And More JavaOne Announcements - Inside Java Newscast #36#video#community #java‑8 #java‑17 #openjdk #performanceOracle will contribute GraalVM's just-in-time compiler and native image technology to OpenJDK. It will also create EA and GA builds for JavaFX 20+ and is hard at work at creating generational ZGC to vastly improve ZGC's already impressive performance. And then there's the Java SE Subscription Enterprise Performance Pack, a drop-in replacement for JDK 8 with JDK 17 performance.2022-11-03The Simplest Hello World - Inside Java Newscast #35#video#project‑amber #on‑rampVisibility, classes, methods, instance and static members, parameters - a newcomer to programming needs to learn all of these concepts to truly understand a simple hello-world program in Java. Time to make that simpler and cut down on what needs to be known up front.2022-10-06Loom in the Java Ecosystem - Inside Java Newscast #34#video#java‑19 #project‑loom #librariesAmong other things, Java 19 ships with virtual threads, structured concurrency APIs, sealed types, and pattern matching in switch - all of them as previews, but still very cool! I'm using these features here to create a GitHub crawler.2022-09-27Java 19 in Action - Inside Java Newscast #33#video#java‑19 #project‑loomAmong other things, Java 19 ships with virtual threads, structured concurrency APIs, sealed types, and pattern matching in switch - all of them as previews, but still very cool! I'm using these features here to create a GitHub crawler.2022-09-08String Templates, JavaFX 19, Deserialization, and more at JavaOne - Inside Java Newscast #32#video#javafx #java‑19 #serializationString templates make it easy and safe to embed variables and expressions in strings; JavaFX 19 comes with many improvements, chief among them derived observables; and the deserialization filter can keep apps safe from certain attacks. More on all of this at JavaOne!2022-08-23Sequenced Collections, Purity, and more at JavaOne - Inside Java Newscast #31#video#collections #lambdaSequenced collections introduce an abstraction for collections with a known encounter order like all lists and some sets and maps. It will be easy to add, get, or remove the first and last elements and to iterate or stream in reverse order. We're also discussing immutable collections and pure functions. More on all of this at JavaOne!2022-08-11Java Q&A - Inside Java Newscast #30#video#project‑leyden #project‑lilliput #project‑valhalla #project‑amberWe asked you for questions on YouTube, Reddit, and Twitter and are here to answer a bunch of them. From projects Amber to Valhalla, Leyden to Lilliput, from language to performance, from the immediate future to pipe dreams we covered a lot of ground.2022-07-28Data-Oriented Programming - Inside Java Newscast #29#video#records #sealed #pattern‑matching #patterns #techniquesData-oriented programming focuses on modeling data as data (instead of as objects). Records for data and sealed types for alternatives let us model immutable data where illegal states are unrepresentable. Combined with pattern matching we get a safe, powerful, and maintainable approach to ad-hoc polymorphism that lets us define operations on the data without overloading it with functionality.2022-07-14What is OpenJDK? - Inside Java Newscast #28#video#openjdk #community #java‑basicsWhat's "OpenJDK" (or "the OpenJDK"?), how does it work, and what does it do? Here's the answer to these questions as well as explorations of JDK Enhancement Proposals, the Java Community Process, why there are so many JDK providers, and how long-term support works.2022-06-30Java 19 - The Best Java Release? - Inside Java Newscast #27#video#java‑19 #project‑amber #project‑loom #project‑panamaJava 19 is the first release to preview Project Loom's virtual threads and structured concurrency, Project Amber's record patterns, and Project Panama's foreign memory and function APIs. It also continues previews of pattern matching in switch and vector API. Put together, this makes it the most groundbreaking Java release in years and probably for years to come!2022-06-16Deconstructing Records in Pattern Matching - Inside Java Newscast #26#video#project‑amber #pattern‑matchingHow record patterns use records' transparency to safely deconstruct them in pattern matching, allowing us to separate checking structure and value of data from processing it.2022-06-02News Grab Bag: Loom Virtual Threads, Lilliput, Pattern Matching, ... - Inside Java Newscast #25#video#project‑loom #tools #project‑lilliput #project‑amber #pattern‑matching #communityProject Loom's virtual threads are merged and ship with JDK 19 - here's to prepare for them. Also, news on Project Lilliput, proposal for record patterns in pattern matching, some astonishing numbers from Sonatype on Maven Central, and the move of OpenJDK to openjdk.org.2022-05-19when And null In Pattern Matching - Inside Java Newscast #24#video#project‑amber #pattern‑matchingJEP 427 proposes two changes to pattern matching in switch: 1. Guarded patterns, which belonged to patterns, are replaced with when clauses, which belong to the case. 2. null needs to be handled by a specific case null.2022-05-05Virtual Thread Deep Dive - Inside Java Newscast #23#video#project‑loomNow that Project Loom's JEP 425 officially proposes virtual threads, it's time to take a close look at them: scheduling and memory management; mounting, unmounting, capturing, and pinning; observability; and and what you can do for optimal scalability - this episode has (almost) everything on virtual threads!2022-04-07All About JDK 18 - Inside Java Newscast #21#video#java‑18 #project‑amber #project‑panama #pattern‑matching #tools #reflection #documentationRefinements in pattern matching and Panama's foreign and vector APIs; a new command jwebserver and a new IP address resolution SPI; preparing code for UTF-8 becoming the default character set and for the eventual removal of finalization; and a few more bits and pieces.2022-03-10State of Pattern Matching with Brian Goetz#video#project‑amber #pattern‑matching #conversationConversation with Project Amber lead Brian Goetz about pattern matching in Java: Why Map::get should be a pattern, the linear thinking trap and how it impacts null handling in pattern matched, exhaustiveness in switch statements and the rehabilitation of switch.2022-02-16Compiled And Tested Code In Javadoc - Inside Java Newscast #20#video#java‑18 #documentationShort code snippets in Javadoc are a great way to document an API, but they're brittle. JDK 18 / JEP 413 solves that problem by allowing us to reference snippets from external files that are compiled and tested.2022-02-10Where to use Optional - Inside Java Newscast #19#video#optionalIs it ok to use Optional as parameter type? Overloading is an alternative, but how well does it stack up? Thoughts on this question (and other Optional-related ones) can usually be put into one of three (and a half) categories.2022-01-27Java's Plans for 2022 - Inside Java Newscast #18#video#project‑amber #project‑loom #project‑panama #project‑valhallaAn update on Java's four key projects: Valhalla, Panama, Loom, and Amber - what they're about, where they are right now, and what their plans are for 2022 and beyond.2022-01-13Project Loom Brings Structured Concurrency - Inside Java Newscast #17#video#java‑18 #project‑loomProject Loom aims to bring structured concurrency to Java, a concept that compares to "regular" concurrency like structured programming compares to GOTO-programming - let's dip our toes into this new concept. Also: JDK 18 feature freeze, JDK migration guide, and nifty things to do with the new simple web server.2021-12-16What Happens to Finalization in JDK 18? - Inside Java Newscast #15#video#java‑18 #deprecation #migration #reflectionFinalization was part of Java from day one to help developers manage resources but it turns out that it's really not good at that. Here's why and what's gonna happen next. Also, reflection and method handles.2021-11-1111 Tricks From dev.java - Inside Java Newscast #14#video#generics #lambda #pattern‑matching #records #serializationFrom compact record constructors to boolean expressions in pattern matching, from generic wildcards to chaining predicates and comparators, from jpackage to jlink - here are 11 Java tricks handpicked from dev.java.2021-10-28Faster LTS and free JDK with Java 17 - Inside Java Newscast #12#video#java‑17Java 17 comes with more than just new features. A faster LTS cadence and free Oracle JDK make this the best-supported modern release ever.2021-09-14The State of Project Valhalla with Brian Goetz#video#conversation #project‑valhallaConversation with Project Valhalla lead Brian Goetz about Java's original sin, unifying the type system, expanding generics, current work, the project timeline, and more.2021-08-30Fast and Secure Inter-process Communication on JDK 16 - Inside Java Newscast #11#video#java‑16JDK 16's socket channel / server-socket channel API can use Unix domain sockets for faster and more secure inter-process communication on the same host - also: JDK 17 final release candidate and Oracle Developer Live2021-08-26Random Numbers and JDK Flight Recorder - Inside Java Newscast #9#video#java‑16 #java‑17 #random #performance #toolsThe new API for random number generation in Java 17 - why it needed to change and how the new API is more usable, extensible, and robust - and how to get started with JDK Flight Recorder, particularly on Java 16.2021-07-29Incremental Evolution, Pattern Switches vs Visitor Pattern, and Wayland Support - Inside Java Newscast #8#video#java‑17 #project‑panama #pattern‑matching #sealed #patternsHow the six-month release cadence enabled a more incremental evolution of the Java platform and how pattern switches and sealed classes are an alternative to the visitor pattern. Also, maybe Wayland support for Java.2021-07-15Handling null and Upgrading Past Java 8 - Inside Java Newscast #7#video#migration #optional #switch #project‑valhallaDealing with null is never fun, so in this newscast, I explain how to best handle it, what tools can do, and how recent and upcoming language changes help dealing with it. I'll also look at a recent blog post about how Netflix upgraded from Java 8 to 16.2021-07-01The State of Project Panama with Maurizio Cimadamore#video#conversation #project‑panamaConversation with Project Panama lead Maurizio Cimadamore about the project's core mission, the split into foreign-memory access and foreign linker APIs, jextract, performance, interaction with Project Valhalla, the timeline, and more.2021-06-22The State of Project Loom with Ron Pressler#video#conversation #project‑loomConversation with Project Loom lead Ron Pressler about the project's core mission, challenges like interaction with debuggers and garbage collectors, the timeline for the next steps, compatibility and more.2021-06-15Java 17: Features and Development - Inside Java Newscast #6#video#java‑17 #openjdkJava 17, the next long-term support release, enters feature freeze and the release preparations begin today (June 10th). A good time to take a closer look at the list of JEPs as well as the development process.2021-06-10Pattern Matching in Switches and Security Manager Deprecation - Inside Java Newscast #5#video#switch #pattern‑matching #deprecationJEP 406, which is a candidate for Java 17, introduced pattern matching in switch statements and expressions, introduces guarded patterns, and improves null handling. Then we need to talk about JEP 411's deprecation of the security manager.2021-05-275 Secret Java API Tricks and Record Semantics - Inside Java Newscast #4#video#recordsFive nifty Java API features that you need to know (and many more in the linked thread) and a quick explanation why Java records are not about reducing boilerplate.2021-05-11JUnit Pioneer - An Exploratory Mission to Jupiter And Beyond#video#junit‑pioneerFrom growing a community on Twitch to strong documentation, from squashing commits to one-click releases - this presentation covers JUnit Pioneer in all detail2021-04-26Quicker Java and JDK 16 compatibility - Inside Java Newscast #3#video#java‑16 #vector #java‑17A walk through language features, APIs, and JDK capabilities that make Java quicker to use with less ceremony and more immediate results. Also, a rundown of some of the projects with all tests green on JDK 16.2021-04-22Java Generics III - Wildcards#video#genericsSecond part of a short series on Java Generics - this one explains generics. ? extends Number - that kinda thing.2021-04-19Java Generics II - Bounded Type Parameters#video#genericsSecond part of a short series on Java generics - this one explains bounded type parameters. T extends Number - that kinda thing.2021-04-12Vector API, Record Serialization, And Java 17 Release Schedule - Inside Java Newscast #2#video#java‑16 #vector #java‑17Short introduction to the Vector API (incubating in JDK 16) and an update on serializing records. Also, a quick mention of JEP 356 in JDK 17 and the proposed release schedule.2021-04-08Java 16 Rundown, First Of Java 17 - Inside Java Newscast #1#video#java‑16 #java‑17Java 16 got released, so I go over most of the additions like records, Stream APIs, Unix Domain Socket support, and much more. Then there's a first glimpse at Java 17.2021-03-25Patterns, switch, and Valhalla's Primitive Classes - JDK News #2#video#java‑next #openjdk #project‑amber #pattern‑matching #project‑valhalla #primitive‑classesProject Amber brings new patterns and puts them into switch while Project Valhalla takes off and proposes introducing primitive classes2021-03-05Java's Quirks and Wrong (?) Defaults with Brian Goetz#video#conversation #migration #optional #serializationMutability, nullability, serialization, primitives - Nicolai Parlog discusses with Java language architect Brian Goetz why Java is the way it is.2021-02-11Pattern Matching Quartet - JDK News #1#video#java‑next #project‑amber #pattern‑matchingA summary of four recent discussions about pattern matching on the Project Amber mailing lists2021-01-26Java Generics I - The Basics#video#java‑basics #genericsFirst part of a short series on Java generics - this one explains the basics2020-04-28Modularity with Oliver Drotbohm#video#architecture #conversation #j_msOliver and I discuss modularity in Java with a focus on the Java module system2020-04-07How We Upgraded From Java 8 And Why You Can (And Should) Do It Too#video#community #migrationMy two minutes of fame during the Oracle Code One 2019 keynote2019-09-18The Java Module System with Sander Mak#video#conversation #j_msAt J-Fall 2018 I talked to Sander Mak, modularity expert at Luminis, about the Java module system (J_MS), its adoption, how it compares to OSGi, and more.2019-05-26Caliz III: Hashing scripts and background compilation#video#performance #toolsLetting Caliz store native images and only create them for a given Java "script" (single source file) if needed2019-05-16Caliz II: Wrapping Graal AOT#video#performance #toolsExtending Caliz to create native images of Java "scripts" (single source files) with with Graal2019-05-01Caliz I: Wrapping JVM 11 and learning about Graal AOT#video#performance #toolsFirst steps toward an acceptable scripting experience with single-source-file execution and Graal native images2019-04-18Java 12 Experiments (Live Stream)#video#java‑12In my first live stream ever (yay!), we explored Java 12's API improvements2019-02-24Utilities, Singletons and Dependency Injection - Effective Java, Items 3-5#video#book‑club #patternsMildly surprising (to me), it makes sense to discuss these three patters in one video - so here it goes2018-11-27Maven 3 / 4 / 5 with Robert Scholte#video#conversation #toolsMaven is one of the cornerstones of the Java ecosystem - here I talk with Robert Scholte, Chairman of the Apache Maven projects2018-10-24First Contact with Switch Expressions in Java 12#video#java‑12 #switchWith Java 12, switch is no longer just a statement, but becomes an expression. Let's take a look!2018-10-18Use Builders... Cautiously - Effective Java, Item 2#video#book‑club #patternsWhy and how to avoid the builder pattern and how to make best use of it if you can't2018-10-09Java 11: A New Dawn - Releases, Oracle JDK vs OpenJDK, and LTS#video#java‑11 #java‑nextOracle's announcements of the six-month release cadence and new licensing caused quite a ruckus - now that things calmed down, lets discuss where we're headed2018-10-02Static Factory Methods - Effective Java, Item 1#video#book‑club #patternsHow to use static factory methods to overcome three shortcomings of constructors2018-09-24Kicking off a series on Effective Java, Third Edition#video#book‑clubKick-off to a YouTube series on Effective Java, Third Edition - let's find some angles Josh didn't cover2018-09-20First contact with var in Java 10#video#java‑10 #varHow to use var, where it works and where it doesn't (and why), and how it might impact readability2017-11-16Welcome, Java 9!#video#community #java‑9Java 9 is out today and with other members of the community I'm throwing a welcome party. Get an all around view on the new Java release with various opinions, tips, and great sources!2017-09-21Impressions of JavaZone 2017#video#communityA few impressions of my stay at JavaZone 2017 to music from WillRock2017-09-20Parameterized Tests in JUnit 5#video#junit‑5At JavaLand 2017, I spent 15 minutes exploring JUnit 5's (then) brand-new parameterized test feature in a NightHacking session2017-03-29Rewrite, Architecture, Extensions Of JUnit 5#video#community #junit‑5What were the reasons for the rewrite? How does JUnit 5 compare to JUnit 4? What's so special about the architecture and the extension points?2016-12-06