Heinz's Happy Hour Season 03
Join us every first Thursday of the month at 16:00 UTC for your cup of
hot Java at Heinz's Happy Hour. Free to attend and take part.
Subscription
gives you access to all the recordings. Topics will be
whatever your host Heinz Kabutz comes up with.
Satisfaction guaranteed or your money back!
Discussion and questions here: #heinzs-happy-hour
Technical support for webinar here: #happy-hour-support
Why subscribe to the recordings? We
live in a busy world and sometimes the webinar might clash
with another important meeting you might have. Or you might
want to go over the contents one more time. We also have a
bundle for all our
Happy Hours since 2016.
Thank you for your support.
Dates and Topics
- Dec 6, 2018: Project Loom, Fibers and Blocking IO
Writing concurrent code is easy. We simply start a thread,
point it at a network socket and let it read and write data.
But having one system level thread per socket is too
heavy-weight. One alternative is Java.NIO, with non-blocking
sockets. But the coding is a lot more involved, and the
latency sometimes worse. In this webinar we will look
into the future at what Project Loom will give us (hopefully)
with the advent of fibers. We will explain what fibers
are, what they can do, and what they might not be able to
do. Will also demonstrate how the code would look with
the new construct. Preparation: Build
your own "loom" JDK, so you can follow along with
the examples. Note that Project Loom is in active development,
so anything we say in the webinar is subject to change.
Maybe before tomorrow.
- Jan 3, 2019: Acing the Threading Questions At Your Next Job Interview
A lot of Java job interviews include questions on
threading, even when the actual job does not require any
knowledge of concurrency. It's like asking an airline
pilot whether he has a driver's license. In this webinar
we first look at what is so magical about concurrency and
why interviewers ask seemingly irrelevant questions. We
then look at specific questions and their answers. We
also examine what may be wrong with the questions.
- Feb 7, 2019: Threading Problems
Threading is easy - if you don't do it. The biggest
challenge is that we don't get immediate feedback when we
make a mistake. It can take years of production before
our code fails. When it does, things blow up
catastrophically. Today's webinar is an extract from
our new Mastering
Threads Course (Early 2019 Edition).
- Mar 7, 2019: Puzzle: Is a Programmer a Person?
Great question. In today's webinar, we aim to find out the truth with
some Java code, based on our latest
Java Specialists' Newsletter. Our guest today is Maurice Naftalin,
author of the most successful book on the topic of Java Collections.
- Apr 4, 2019: HttpClient in Java 11
Java 11 added the HttpClient. It supports HTTP/2, and
asynchronous communication via nonblocking sockets.
- May 2, 2019: Parallel Divide and Conquer with CompletableFutures
CompletableFutures are the rage today. We use them to
describe complicated concurrent workflows. For example,
HttpClient in Java 11 returns them when we send
asynchronous requests. They can also describe parallel
divide and conquer workflows. In this webinar, we will
start by parallelizing a large Fibonacci calculation with
Fork/Join. We will then change java.math.BigInteger to
multiply in parallel. You will learn how to patch with
the new modules system. Then we will show the issues
with Fork/Join and show a solution based on
CompletableFuture. This webinar will be interesting for
intermediate to advanced Java programmers.
- Jun 6, 2019: Mind Hacking for Health
Laziness is one of three great virtues of a programmer,
according to Larry Wall, inventor of Perl. And it is
true. You need to have a certain amount of laziness to be
able to sit on your backside all day, subsisting only on
gummy bears and coffee. Of course programmers understand
that being active is good for them, but it does not
change the relief we feel when we sit back in our chairs.
- Jul 4, 2019: Topic TBD
- Aug 1, 2019: Topic TBD
- Sep 5, 2019: Topic TBD
- Oct 3, 2019: Topic TBD
- Nov 7, 2019: Topic TBD
Calendar