Java 21 will bring major improvements to the world's most popular enterprise programming language. Learn about unnamed classes, string templates, and other new features expected in the future. 

#programming #tech #thecodereport 

💬 Chat with Me on Discord

https://discord.gg/fireship

🔗 Resources

Java 21 Unnamed Classes https://openjdk.org/jeps/445
Java in 100 Seconds https://youtu.be/l9AzO1FMgM8
Java for the Haters https://youtu.be/m4-HM_sCvtQ

🔥 Get More Content - Upgrade to PRO

Upgrade at https://fireship.io/pro
Use code YT25 for 25% off PRO access 

🎨 My Editor Settings

- Atom One Dark 
- vscode-icons
- Fira Code Font

🔖 Topics Covered

- New Java features in version 21
- Java Programming basics
- Unnamed classes and Instance Main Methods
- Java Memes
- Should I learn Java?
- Why do people hate Java?
2024-02-04T05:04:57.758Z
nova-2
2-general-nova
2024-01-09.29447
30089e05-99d1-4376-b32e-c263170674af
3d35833e-0cac-4e4f-854b-5ec46cf5bc17
e10ea2b8f52f550a7b96847789ecc686eaf1e15ef6880f0018b759e295966351
67875a7f-c9c4-48a0-aa55-5bdb8a91c34a
deprecated
It is June 5th, 2023, and you're watching the code report.
Java is hands down my all time favorite programming language to make fun of.
Python developers roast it for having so much boilerplate.
C developers laugh at absurd class names like abstract factory manager singleton This manager factory, c plus plus developers hate that you can't blow your legs off with memory management as easily, and JavaScript developers are still trying to fix things like dates they copied from Java over 20 years though.
Unfortunately, I have some bad news.
Public static void main string args will no longer be a requirement to write hello world in Java 21, rendering an entire industry of Java boilerplate memes static null and void.
And that's not good for people like me who make a living making fun of Java, because I need that boilerplate to put food on my family.
It's great news, however, for Anyone who wants to learn Java, or more accurately, anyone who's forced to learn Java.
This new feature is called unnamed classes and instant main methods, and allows you to create a main method without a class and public static void main string args.
This is a great change, but I think we could actually make things a little bit better by also removing void.
And, actually, why do we even need a main function in the first place?
We could get rid of that Altogether, system out seems a little unnecessary.
There should just be a global print line function, and if we rename it to print, we then get a perfect language.
C Sharp introduced top level statements in 2020, and maybe Another 10 years, Java will get there too.
Before you get too excited though, this feature is primarily designed to make learning Java more accessible to beginners.
The real boilerplate is not going anywhere.
In addition, and Java is primarily used in enterprise, which is very slow to adopt new features.
There are tons of mission critical applications out there still running Java a 8, and it could be years or even decades before these new features get adopted.
But Java 21 also has some other cool updates, like structured concurrency that allows You can run multiple concurrent jobs on multiple threads while treating them as a single unit of work.
But another thing you might find kind of crazy about Java is that it doesn't natively support string interpolation, which means you need to concatenate a bunch of strings together like you're in kindergarten or use string dot format, which is also kind of annoying.
But in Java 21, we have a new string templates feature, which is a new kind of expression that allows you to insert values directly into strings.
We've come full circle to where Java is now looking more like JavaScript, and JavaScript is looking more like Java.
And I even noticed that Java recently updated their website, so now it only looks 10 years out of date instead of 20.
This is a big strategic move that has caused Oracle stock to almost double over the last year.
The big question though is with all these awesome new features, should you learn Java in 2023?
When it Comes to working as a programmer, you should choose a field that's well paid, interesting, and legal.
But the reality is that you can only choose 2 of these.
Java is well paid and legal, but not very When looking at the syntax alone, Java is pretty ugly.
If I want to write code for the JVM for fun, I'd much rather use a language like Kotlin or Scala.
That being Instead, Java is still a powerhouse language when it comes to enterprise software.
It's used extensively at companies like Twitter and Google because it's a very well balanced language.
It's Forman enough for most things, it's relatively easy to use, and most importantly, has a huge ecosystem of stable libraries and frameworks.
A few days ago, I ran a poll for the best programming language of all time, and Java came in dead last.
But now that we no longer need public static void main string args, I think it'll reclaim the top spot.
And with that being said, I'd like to officially announce my retirement from making in front of Java.
But let's enjoy these Java memes together one last time, like this one that explains how object oriented design patterns are often unnecessary and counterproductive when you could just be using simple variables and functions.
This next meme is a good one, but you wouldn't get it, so I'm not even going to try to explain it.
If you like Windows, you might like Java because it loves to force you into annoying updates all the time.
And as As you gain more experience as a programmer, you'll eventually find out that everything doesn't need to be an object, because these objects will pile up and devour your RAM.
And finally, it's important to realize that not Every meme is a joke.
Many of them are a legitimate cry for help.
This has been the Code Report.
Thanks for watching, and I will see you in the next one.

Speaker 0: It is June 5th, 2023, and you're watching the code report. Java is hands down my all time favorite programming language to make fun of. Python developers roast it for having so much boilerplate. C developers laugh at absurd class names like abstract factory manager singleton This manager factory, c plus plus developers hate that you can't blow your legs off with memory management as easily, and JavaScript developers are still trying to fix things like dates they copied from Java over 20 years though. Unfortunately, I have some bad news.

Public static void main string args will no longer be a requirement to write hello world in Java 21, rendering an entire industry of Java boilerplate memes static null and void. And that's not good for people like me who make a living making fun of Java, because I need that boilerplate to put food on my family. It's great news, however, for Anyone who wants to learn Java, or more accurately, anyone who's forced to learn Java. This new feature is called unnamed classes and instant main methods, and allows you to create a main method without a class and public static void main string args. This is a great change, but I think we could actually make things a little bit better by also removing void.

And, actually, why do we even need a main function in the first place? We could get rid of that Altogether, system out seems a little unnecessary. There should just be a global print line function, and if we rename it to print, we then get a perfect language. C Sharp introduced top level statements in 2020, and maybe Another 10 years, Java will get there too. Before you get too excited though, this feature is primarily designed to make learning Java more accessible to beginners.

The real boilerplate is not going anywhere. In addition, and Java is primarily used in enterprise, which is very slow to adopt new features. There are tons of mission critical applications out there still running Java a 8, and it could be years or even decades before these new features get adopted. But Java 21 also has some other cool updates, like structured concurrency that allows You can run multiple concurrent jobs on multiple threads while treating them as a single unit of work. But another thing you might find kind of crazy about Java is that it doesn't natively support string interpolation, which means you need to concatenate a bunch of strings together like you're in kindergarten or use string dot format, which is also kind of annoying.

But in Java 21, we have a new string templates feature, which is a new kind of expression that allows you to insert values directly into strings. We've come full circle to where Java is now looking more like JavaScript, and JavaScript is looking more like Java. And I even noticed that Java recently updated their website, so now it only looks 10 years out of date instead of 20. This is a big strategic move that has caused Oracle stock to almost double over the last year. The big question though is with all these awesome new features, should you learn Java in 2023?

When it Comes to working as a programmer, you should choose a field that's well paid, interesting, and legal. But the reality is that you can only choose 2 of these. Java is well paid and legal, but not very When looking at the syntax alone, Java is pretty ugly. If I want to write code for the JVM for fun, I'd much rather use a language like Kotlin or Scala. That being Instead, Java is still a powerhouse language when it comes to enterprise software.

It's used extensively at companies like Twitter and Google because it's a very well balanced language. It's Forman enough for most things, it's relatively easy to use, and most importantly, has a huge ecosystem of stable libraries and frameworks. A few days ago, I ran a poll for the best programming language of all time, and Java came in dead last. But now that we no longer need public static void main string args, I think it'll reclaim the top spot. And with that being said, I'd like to officially announce my retirement from making in front of Java.

But let's enjoy these Java memes together one last time, like this one that explains how object oriented design patterns are often unnecessary and counterproductive when you could just be using simple variables and functions. This next meme is a good one, but you wouldn't get it, so I'm not even going to try to explain it. If you like Windows, you might like Java because it loves to force you into annoying updates all the time. And as As you gain more experience as a programmer, you'll eventually find out that everything doesn't need to be an object, because these objects will pile up and devour your RAM. And finally, it's important to realize that not Every meme is a joke.

Many of them are a legitimate cry for help. This has been the Code Report. Thanks for watching, and I will see you in the next one.
It is June 5th, 2023, and you're watching the code report. Java is hands down my all time favorite programming language to make fun of. Python developers roast it for having so much boilerplate. C developers laugh at absurd class names like abstract factory manager singleton This manager factory, c plus plus developers hate that you can't blow your legs off with memory management as easily, and JavaScript developers are still trying to fix things like dates they copied from Java over 20 years though. Unfortunately, I have some bad news. Public static void main string args will no longer be a requirement to write hello world in Java 21, rendering an entire industry of Java boilerplate memes static null and void. And that's not good for people like me who make a living making fun of Java, because I need that boilerplate to put food on my family. It's great news, however, for Anyone who wants to learn Java, or more accurately, anyone who's forced to learn Java. This new feature is called unnamed classes and instant main methods, and allows you to create a main method without a class and public static void main string args. This is a great change, but I think we could actually make things a little bit better by also removing void. And, actually, why do we even need a main function in the first place? We could get rid of that Altogether, system out seems a little unnecessary. There should just be a global print line function, and if we rename it to print, we then get a perfect language. C Sharp introduced top level statements in 2020, and maybe Another 10 years, Java will get there too. Before you get too excited though, this feature is primarily designed to make learning Java more accessible to beginners. The real boilerplate is not going anywhere. In addition, and Java is primarily used in enterprise, which is very slow to adopt new features. There are tons of mission critical applications out there still running Java a 8, and it could be years or even decades before these new features get adopted. But Java 21 also has some other cool updates, like structured concurrency that allows You can run multiple concurrent jobs on multiple threads while treating them as a single unit of work. But another thing you might find kind of crazy about Java is that it doesn't natively support string interpolation, which means you need to concatenate a bunch of strings together like you're in kindergarten or use string dot format, which is also kind of annoying. But in Java 21, we have a new string templates feature, which is a new kind of expression that allows you to insert values directly into strings. We've come full circle to where Java is now looking more like JavaScript, and JavaScript is looking more like Java. And I even noticed that Java recently updated their website, so now it only looks 10 years out of date instead of 20. This is a big strategic move that has caused Oracle stock to almost double over the last year. The big question though is with all these awesome new features, should you learn Java in 2023? When it Comes to working as a programmer, you should choose a field that's well paid, interesting, and legal. But the reality is that you can only choose 2 of these. Java is well paid and legal, but not very When looking at the syntax alone, Java is pretty ugly. If I want to write code for the JVM for fun, I'd much rather use a language like Kotlin or Scala.
That being Instead, Java is still a powerhouse language when it comes to enterprise software. It's used extensively at companies like Twitter and Google because it's a very well balanced language. It's Forman enough for most things, it's relatively easy to use, and most importantly, has a huge ecosystem of stable libraries and frameworks.
languages
software
A few days ago, I ran a poll for the best programming language of all time, and Java came in dead last. But now that we no longer need public static void main string args, I think it'll reclaim the top spot. And with that being said, I'd like to officially announce my retirement from making in front of Java. But let's enjoy these Java memes together one last time, like this one that explains how object oriented design patterns are often unnecessary and counterproductive when you could just be using simple variables and functions. This next meme is a good one, but you wouldn't get it, so I'm not even going to try to explain it. If you like Windows, you might like Java because it loves to force you into annoying updates all the time.
And as As you gain more experience as a programmer, you'll eventually find out that everything doesn't need to be an object, because these objects will pile up and devour your RAM. And finally, it's important to realize that not Every meme is a joke. Many of them are a legitimate cry for help.
toys
This has been the Code Report. Thanks for watching, and I will see you in the next one.
It is June 5th, 2023, and you're watching the code report. Java is hands down my all time favorite programming language to make fun of. Python developers roast it for having so much boilerplate. C developers laugh at absurd class names like abstract factory manager singleton This manager factory, c plus plus developers hate that you can't blow your legs off with memory management as easily, and JavaScript developers are still trying to fix things like dates they copied from Java over 20 years though. Unfortunately, I have some bad news. Public static void main string args will no longer be a requirement to write hello world in Java 21, rendering an entire industry of Java boilerplate memes static null and void. And that's not good for people like me who make a living making fun of Java, because I need that boilerplate to put food on my family. It's great news, however, for Anyone who wants to learn Java, or more accurately, anyone who's forced to learn Java. This new feature is called unnamed classes and instant main methods, and allows you to create a main method without a class and public static void main string args. This is a great change, but I think we could actually make things a little bit better by also removing void. And, actually, why do we even need a main function in the first place? We could get rid of that Altogether, system out seems a little unnecessary. There should just be a global print line function, and if we rename it to print, we then get a perfect language. C Sharp introduced top level statements in 2020, and maybe Another 10 years, Java will get there too. Before you get too excited though, this feature is primarily designed to make learning Java more accessible to beginners. The real boilerplate is not going anywhere. In addition, and Java is primarily used in enterprise, which is very slow to adopt new features. There are tons of mission critical applications out there still running Java a 8, and it could be years or even decades before these new features get adopted. But Java 21 also has some other cool updates, like structured concurrency that allows You can run multiple concurrent jobs on multiple threads while treating them as a single unit of work. But another thing you might find kind of crazy about Java is that it doesn't natively support string interpolation, which means you need to concatenate a bunch of strings together like you're in kindergarten or use string dot format, which is also kind of annoying. But in Java 21, we have a new string templates feature, which is a new kind of expression that allows you to insert values directly into strings. We've come full circle to where Java is now looking more like JavaScript, and JavaScript is looking more like Java. And I even noticed that Java recently updated their website, so now it only looks 10 years out of date instead of 20. This is a big strategic move that has caused Oracle stock to almost double over the last year. The big question though is with all these awesome new features, should you learn Java in 2023? When it Comes to working as a programmer, you should choose a field that's well paid, interesting, and legal. But the reality is that you can only choose 2 of these. Java is well paid and legal, but not very When looking at the syntax alone, Java is pretty ugly. If I want to write code for the JVM for fun, I'd much rather use a language like Kotlin or Scala. That being Instead, Java is still a powerhouse language when it comes to enterprise software. It's used extensively at companies like Twitter and Google because it's a very well balanced language. It's Forman enough for most things, it's relatively easy to use, and most importantly, has a huge ecosystem of stable libraries and frameworks. A few days ago, I ran a poll for the best programming language of all time, and Java came in dead last. But now that we no longer need public static void main string args, I think it'll reclaim the top spot. And with that being said, I'd like to officially announce my retirement from making in front of Java. But let's enjoy these Java memes together one last time, like this one that explains how object oriented design patterns are often unnecessary and counterproductive when you could just be using simple variables and functions. This next meme is a good one, but you wouldn't get it, so I'm not even going to try to explain it. If you like Windows, you might like Java because it loves to force you into annoying updates all the time. And as As you gain more experience as a programmer, you'll eventually find out that everything doesn't need to be an object, because these objects will pile up and devour your RAM. And finally, it's important to realize that not Every meme is a joke. Many of them are a legitimate cry for help. This has been the Code Report. Thanks for watching, and I will see you in the next one.
It
it
is
is
June
june
5th,
5th
2023,
2023
and
and
you're
you're
watching
watching
the
the
code
code
report.
report
Java
java
is
is
hands
hands
down
down
my
my
all
all
time
time
favorite
favorite
programming
programming
language
language
to
to
make
make
fun
fun
of.
of
Python
python
developers
developers
roast
roast
it
it
for
for
having
having
so
so
much
much
boilerplate.
boilerplate
C
c
developers
developers
laugh
laugh
at
at
absurd
absurd
class
class
names
names
like
like
abstract
abstract
factory
factory
manager
manager
singleton
singleton
This
this
manager
manager
factory,
factory
c
c
plus
plus
plus
plus
developers
developers
hate
hate
that
that
you
you
can't
can't
blow
blow
your
your
legs
legs
off
off
with
with
memory
memory
management
management
as
as
easily,
easily
and
and
JavaScript
javascript
developers
developers
are
are
still
still
trying
trying
to
to
fix
fix
things
things
like
like
dates
dates
they
they
copied
copied
from
from
Java
java
over
over
20
20
years
years
though.
though
Unfortunately,
unfortunately
I
i
have
have
some
some
bad
bad
news.
news
Public
public
static
static
void
void
main
main
string
string
args
args
will
will
no
no
longer
longer
be
be
a
a
requirement
requirement
to
to
write
write
hello
hello
world
world
in
in
Java
java
21,
21
rendering
rendering
an
an
entire
entire
industry
industry
of
of
Java
java
boilerplate
boilerplate
memes
memes
static
static
null
null
and
and
void.
void
And
and
that's
that's
not
not
good
good
for
for
people
people
like
like
me
me
who
who
make
make
a
a
living
living
making
making
fun
fun
of
of
Java,
java
because
because
I
i
need
need
that
that
boilerplate
boilerplate
to
to
put
put
food
food
on
on
my
my
family.
family
It's
it's
great
great
news,
news
however,
however
for
for
Anyone
anyone
who
who
wants
wants
to
to
learn
learn
Java,
java
or
or
more
more
accurately,
accurately
anyone
anyone
who's
who's
forced
forced
to
to
learn
learn
Java.
java
This
this
new
new
feature
feature
is
is
called
called
unnamed
unnamed
classes
classes
and
and
instant
instant
main
main
methods,
methods
and
and
allows
allows
you
you
to
to
create
create
a
a
main
main
method
method
without
without
a
a
class
class
and
and
public
public
static
static
void
void
main
main
string
string
args.
args
This
this
is
is
a
a
great
great
change,
change
but
but
I
i
think
think
we
we
could
could
actually
actually
make
make
things
things
a
a
little
little
bit
bit
better
better
by
by
also
also
removing
removing
void.
void
And,
and
actually,
actually
why
why
do
do
we
we
even
even
need
need
a
a
main
main
function
function
in
in
the
the
first
first
place?
place
We
we
could
could
get
get
rid
rid
of
of
that
that
Altogether,
altogether
system
system
out
out
seems
seems
a
a
little
little
unnecessary.
unnecessary
There
there
should
should
just
just
be
be
a
a
global
global
print
print
line
line
function,
function
and
and
if
if
we
we
rename
rename
it
it
to
to
print,
print
we
we
then
then
get
get
a
a
perfect
perfect
language.
language
C
c
Sharp
sharp
introduced
introduced
top
top
level
level
statements
statements
in
in
2020,
2020
and
and
maybe
maybe
Another
another
10
10
years,
years
Java
java
will
will
get
get
there
there
too.
too
Before
before
you
you
get
get
too
too
excited
excited
though,
though
this
this
feature
feature
is
is
primarily
primarily
designed
designed
to
to
make
make
learning
learning
Java
java
more
more
accessible
accessible
to
to
beginners.
beginners
The
the
real
real
boilerplate
boilerplate
is
is
not
not
going
going
anywhere.
anywhere
In
in
addition,
addition
and
and
Java
java
is
is
primarily
primarily
used
used
in
in
enterprise,
enterprise
which
which
is
is
very
very
slow
slow
to
to
adopt
adopt
new
new
features.
features
There
there
are
are
tons
tons
of
of
mission
mission
critical
critical
applications
applications
out
out
there
there
still
still
running
running
Java
java
a
a
8,
8
and
and
it
it
could
could
be
be
years
years
or
or
even
even
decades
decades
before
before
these
these
new
new
features
features
get
get
adopted.
adopted
But
but
Java
java
21
21
also
also
has
has
some
some
other
other
cool
cool
updates,
updates
like
like
structured
structured
concurrency
concurrency
that
that
allows
allows
You
you
can
can
run
run
multiple
multiple
concurrent
concurrent
jobs
jobs
on
on
multiple
multiple
threads
threads
while
while
treating
treating
them
them
as
as
a
a
single
single
unit
unit
of
of
work.
work
But
but
another
another
thing
thing
you
you
might
might
find
find
kind
kind
of
of
crazy
crazy
about
about
Java
java
is
is
that
that
it
it
doesn't
doesn't
natively
natively
support
support
string
string
interpolation,
interpolation
which
which
means
means
you
you
need
need
to
to
concatenate
concatenate
a
a
bunch
bunch
of
of
strings
strings
together
together
like
like
you're
you're
in
in
kindergarten
kindergarten
or
or
use
use
string
string
dot
dot
format,
format
which
which
is
is
also
also
kind
kind
of
of
annoying.
annoying
But
but
in
in
Java
java
21,
21
we
we
have
have
a
a
new
new
string
string
templates
templates
feature,
feature
which
which
is
is
a
a
new
new
kind
kind
of
of
expression
expression
that
that
allows
allows
you
you
to
to
insert
insert
values
values
directly
directly
into
into
strings.
strings
We've
we've
come
come
full
full
circle
circle
to
to
where
where
Java
java
is
is
now
now
looking
looking
more
more
like
like
JavaScript,
javascript
and
and
JavaScript
javascript
is
is
looking
looking
more
more
like
like
Java.
java
And
and
I
i
even
even
noticed
noticed
that
that
Java
java
recently
recently
updated
updated
their
their
website,
website
so
so
now
now
it
it
only
only
looks
looks
10
10
years
years
out
out
of
of
date
date
instead
instead
of
of
20.
20
This
this
is
is
a
a
big
big
strategic
strategic
move
move
that
that
has
has
caused
caused
Oracle
oracle
stock
stock
to
to
almost
almost
double
double
over
over
the
the
last
last
year.
year
The
the
big
big
question
question
though
though
is
is
with
with
all
all
these
these
awesome
awesome
new
new
features,
features
should
should
you
you
learn
learn
Java
java
in
in
2023?
2023
When
when
it
it
Comes
comes
to
to
working
working
as
as
a
a
programmer,
programmer
you
you
should
should
choose
choose
a
a
field
field
that's
that's
well
well
paid,
paid
interesting,
interesting
and
and
legal.
legal
But
but
the
the
reality
reality
is
is
that
that
you
you
can
can
only
only
choose
choose
2
2
of
of
these.
these
Java
java
is
is
well
well
paid
paid
and
and
legal,
legal
but
but
not
not
very
very
When
when
looking
looking
at
at
the
the
syntax
syntax
alone,
alone
Java
java
is
is
pretty
pretty
ugly.
ugly
If
if
I
i
want
want
to
to
write
write
code
code
for
for
the
the
JVM
jvm
for
for
fun,
fun
I'd
i'd
much
much
rather
rather
use
use
a
a
language
language
like
like
Kotlin
kotlin
or
or
Scala.
scala
That
that
being
being
Instead,
instead
Java
java
is
is
still
still
a
a
powerhouse
powerhouse
language
language
when
when
it
it
comes
comes
to
to
enterprise
enterprise
software.
software
It's
it's
used
used
extensively
extensively
at
at
companies
companies
like
like
Twitter
twitter
and
and
Google
google
because
because
it's
it's
a
a
very
very
well
well
balanced
balanced
language.
language
It's
it's
Forman
forman
enough
enough
for
for
most
most
things,
things
it's
it's
relatively
relatively
easy
easy
to
to
use,
use
and
and
most
most
importantly,
importantly
has
has
a
a
huge
huge
ecosystem
ecosystem
of
of
stable
stable
libraries
libraries
and
and
frameworks.
frameworks
A
a
few
few
days
days
ago,
ago
I
i
ran
ran
a
a
poll
poll
for
for
the
the
best
best
programming
programming
language
language
of
of
all
all
time,
time
and
and
Java
java
came
came
in
in
dead
dead
last.
last
But
but
now
now
that
that
we
we
no
no
longer
longer
need
need
public
public
static
static
void
void
main
main
string
string
args,
args
I
i
think
think
it'll
it'll
reclaim
reclaim
the
the
top
top
spot.
spot
And
and
with
with
that
that
being
being
said,
said
I'd
i'd
like
like
to
to
officially
officially
announce
announce
my
my
retirement
retirement
from
from
making
making
in
in
front
front
of
of
Java.
java
But
but
let's
let's
enjoy
enjoy
these
these
Java
java
memes
memes
together
together
one
one
last
last
time,
time
like
like
this
this
one
one
that
that
explains
explains
how
how
object
object
oriented
oriented
design
design
patterns
patterns
are
are
often
often
unnecessary
unnecessary
and
and
counterproductive
counterproductive
when
when
you
you
could
could
just
just
be
be
using
using
simple
simple
variables
variables
and
and
functions.
functions
This
this
next
next
meme
meme
is
is
a
a
good
good
one,
one
but
but
you
you
wouldn't
wouldn't
get
get
it,
it
so
so
I'm
i'm
not
not
even
even
going
going
to
to
try
try
to
to
explain
explain
it.
it
If
if
you
you
like
like
Windows,
windows
you
you
might
might
like
like
Java
java
because
because
it
it
loves
loves
to
to
force
force
you
you
into
into
annoying
annoying
updates
updates
all
all
the
the
time.
time
And
and
as
as
As
as
you
you
gain
gain
more
more
experience
experience
as
as
a
a
programmer,
programmer
you'll
you'll
eventually
eventually
find
find
out
out
that
that
everything
everything
doesn't
doesn't
need
need
to
to
be
be
an
an
object,
object
because
because
these
these
objects
objects
will
will
pile
pile
up
up
and
and
devour
devour
your
your
RAM.
ram
And
and
finally,
finally
it's
it's
important
important
to
to
realize
realize
that
that
not
not
Every
every
meme
meme
is
is
a
a
joke.
joke
Many
many
of
of
them
them
are
are
a
a
legitimate
legitimate
cry
cry
for
for
help.
help
This
this
has
has
been
been
the
the
Code
code
Report.
report
Thanks
thanks
for
for
watching,
watching
and
and
I
i
will
will
see
see
you
you
in
in
the
the
next
next
one.
one
success
The speaker discusses the release of Java 21 and the need for a new feature called unnamed classes to make learning Java more accessible to beginners. They also mention updates to the language, including changes to the syntax, the use of string templates, and the potential for enterprise software to be a powerhouse language. The speaker also announces their retirement from making in front of Java and mentions upcoming birthday memes.
Java is mounting a huge comeback
It is June 5th, 2023, and you're watching the code report. Java is hands down my all time favorite programming language to make fun of. Python developers roast it for having so much boilerplate. C developers laugh at absurd class names like abstract factory manager singleton This manager factory, c plus plus developers hate that you can't blow your legs off with memory management as easily, and JavaScript developers are still trying to fix things like dates they copied from Java over 20 years though. Unfortunately, I have some bad news. Public static void main string args will no longer be a requirement to write hello world in Java 21, rendering an entire industry of Java boilerplate memes static null and void. And that's not good for people like me who make a living making fun of Java, because I need that boilerplate to put food on my family. It's great news, however, for Anyone who wants to learn Java, or more accurately, anyone who's forced to learn Java. This new feature is called unnamed classes and instant main methods, and allows you to create a main method without a class and public static void main string args. This is a great change, but I think we could actually make things a little bit better by also removing void. And, actually, why do we even need a main function in the first place? We could get rid of that Altogether, system out seems a little unnecessary. There should just be a global print line function, and if we rename it to print, we then get a perfect language. C Sharp introduced top level statements in 2020, and maybe Another 10 years, Java will get there too. Before you get too excited though, this feature is primarily designed to make learning Java more accessible to beginners. The real boilerplate is not going anywhere. In addition, and Java is primarily used in enterprise, which is very slow to adopt new features. There are tons of mission critical applications out there still running Java a 8, and it could be years or even decades before these new features get adopted. But Java 21 also has some other cool updates, like structured concurrency that allows You can run multiple concurrent jobs on multiple threads while treating them as a single unit of work. But another thing you might find kind of crazy about Java is that it doesn't natively support string interpolation, which means you need to concatenate a bunch of strings together like you're in kindergarten or use string dot format, which is also kind of annoying. But in Java 21, we have a new string templates feature, which is a new kind of expression that allows you to insert values directly into strings. We've come full circle to where Java is now looking more like JavaScript, and JavaScript is looking more like Java. And I even noticed that Java recently updated their website, so now it only looks 10 years out of date instead of 20. This is a big strategic move that has caused Oracle stock to almost double over the last year. The big question though is with all these awesome new features, should you learn Java in 2023? When it Comes to working as a programmer, you should choose a field that's well paid, interesting, and legal. But the reality is that you can only choose 2 of these. Java is well paid and legal, but not very When looking at the syntax alone, Java is pretty ugly. If I want to write code for the JVM for fun, I'd much rather use a language like Kotlin or Scala. That being Instead, Java is still a powerhouse language when it comes to enterprise software. It's used extensively at companies like Twitter and Google because it's a very well balanced language. It's Forman enough for most things, it's relatively easy to use, and most importantly, has a huge ecosystem of stable libraries and frameworks. A few days ago, I ran a poll for the best programming language of all time, and Java came in dead last. But now that we no longer need public static void main string args, I think it'll reclaim the top spot. And with that being said, I'd like to officially announce my retirement from making in front of Java. But let's enjoy these Java memes together one last time, like this one that explains how object oriented design patterns are often unnecessary and counterproductive when you could just be using simple variables and functions. This next meme is a good one, but you wouldn't get it, so I'm not even going to try to explain it. If you like Windows, you might like Java because it loves to force you into annoying updates all the time. And as As you gain more experience as a programmer, you'll eventually find out that everything doesn't need to be an object, because these objects will pile up and devour your RAM. And finally, it's important to realize that not Every meme is a joke. Many of them are a legitimate cry for help. This has been the Code Report. Thanks for watching, and I will see you in the next one.
The speaker discusses the release of Java 21 and the need for a new feature called unnamed classes to make learning Java more accessible to beginners. They also mention updates to the language, including changes to the syntax, the use of string templates, and the potential for enterprise software to be a powerhouse language. The speaker also announces their retirement from making in front of Java and mentions upcoming birthday memes.