The official page of the #1 programming language and development platform.

Austin, TX
Based in United States
In this "Ask the Architects" episode of the Inside Java Podcast, Nicolai Parlog talks to Sean Mullan about the critical importance of security in Java. 🛡️ social.ora.cl/6011BGi3dB
2
12
61
12,780
Come with @JosePaumard as he looks at what an Optional is. (viewing optional, but highly encouraged)
4
20
144
17,386
In this "Input/Output" episode of the Inside Java Podcast, Nicolai Parlog talks to Martin Chalupa and John Rose about Java's ahead-of-time capabilities and how Netflix's training run approach is the ideal one. social.ora.cl/6013BGVOfl
2
7
49
11,829
The deadline for the call for papers for JavaOne is coming soon! Submit your proposal ASAP and tell us about the ideas, experiences, and insights you want to bring to #JavaOne 2027. social.ora.cl/6013BGgeAS
1
14
62
11,691
What are the primitive types in Java? @JosePaumard lays it all out for you
9
29
278
19,788
See how the reduce() method is working with @JosePaumard.
1
28
245
19,681
22
276
921
115,499
Is Java wasteful because it uses too much memory—or are other languages wasteful because they use too little? 🤔 In this #JavaOne 2026 talk, Ron Pressler explores this question, as well as why the JDK’s garbage collectors work the way they do and how Java memory management affects application performance. social.ora.cl/6012BGyMEs
8
28
218
24,114
You can always count on @JosePaumard to have something brewing. ☕ In today’s Java Coding Tip, he breaks down what a Cyclic Barrier is.
1
28
231
19,929
☕ How Java programs can reach close-to-native performance for matrix-multiply computations on hardware with accelerated MMA support, such as NVIDIA GPUs ☕ How the same Java Tensor API can be mapped across different parallel programming models and vendors while remaining portable for source code and runtime scheduling parameters This article examines both: social.ora.cl/6011BEbmLc
3
44
293
19,726
Java 27 is coming up fast. As with every JDK release, there are plenty of changes that'll impact developers. In this episode of the Inside Java Newscast, we "declassify" all the developer-impacting changes in Java 27. social.ora.cl/6016BGzukj
1
41
236
19,957
Java 27 is almost here! 🕐 Join our team on September 15 for a celebration of our latest launch, including a breakdown of key enhancements and platform changes and the latest developments at the intersection of Java and AI. Subscribe today to stay up to date and get notified when the party starts. 🥳 social.ora.cl/6017BGJvft
15
87
382
22,792
Helidon 4.4 was released in April and stands out from other web frameworks by embracing new Java features as early as possible, particularly virtual threads and ahead-of-time computation. 🤗 Learn more in this episode of the Inside Java Podcast with Joe Di Pol. social.ora.cl/6013B1KuEx
1
19
94
12,723
Ready to share your Java expertise with the #JavaOne community? Submit your proposal and tell us about the ideas, experiences, and insights you want to bring to JavaOne. social.ora.cl/6018B1Ceew
1
16
98
14,527
Do you remember the heap memory? 🤔 @JosePaumard takes us down memory lane.
4
23
261
20,003
During a #JavaOne keynote, several speakers showed how innovations in the Java language and platform are relevant for AI—from libraries and model integration to retrieval and workflow patterns. One example was a larger end-to-end support system built from several cooperating Java services: a patient fills in a complaint via a web application, that request becomes a helpdesk ticket, and an AI-based triage pipeline speeds up its solution. The Model Context Protocol server for urgency scoring only appeared briefly in the presentation, so this article covers the design decisions behind that MCP server and its possible role in the triage workflow: Given a complaint message, how urgent is it? social.ora.cl/6018B1KRnk
2
28
217
21,494
With unnamed variables, you don’t have to name a variable you don't plan to use. You can write _ instead. Nothing goes into scope, so nobody can read it later. Works on locals, catch parameters, lambda parameters, and patterns. Not fields. codebysophy shares the details. Learn more here: social.ora.cl/6015B11ypU
2
11
87
15,052
Want to test your Java debugging skills? Introducing Duke's Debugging Challenge—a series of five Java debugging challenges designed to help you practice finding and fixing errors in your code! 📅 New challenge every Tuesday ✅ Solutions released every Thursday 🏆 Complete all 5 challenges to earn your badge Follow our LearnJava YouTube to stay up to date: social.ora.cl/6015B10hHT
1
15
68
13,049
#JavaOne is coming back in 2027! 🥳 Save the date, mark your calendars, and get ready to join the Java community for three days of technical sessions, hands-on labs, and insights from the experts shaping Java. Details: social.ora.cl/6014B1CdSo
1
27
94
13,087
Want to master `ArrayList` in Java? This comprehensive Java 101 course teaches you how to create, populate, access, modify, search, and iterate through `ArrayList` objects! Build your skills step-by-step as you explore the most important methods and techniques for working with dynamic lists of data in Java. social.ora.cl/6013B1sgCU
4
29
227
21,531
Put your Java knowledge to the test with Multiple-Choice Mondays—a new, weekly Java challenge to test your programming skills one question at a time! 📆 New question every Monday 💡 Solution + explanation every Wednesday 🏆 Get it right and download the weekly badge ☕ Build your Java skills one question at a time Follow our LearnJava YouTube to follow along: social.ora.cl/6018B1FX20
1
14
78
12,382
In this "Ask the Architects" episode of the Inside Java Podcast, Nicolai Parlog talks to Joe Darcy about Project Valhalla and how Java may support limited operator overloading—allowing custom value types to be added or multiplied with plus or multiplication signs instead of annoying method calls. Watch: social.ora.cl/6018B1L6bi
1
18
126
19,194
Java 27 is about to be released! 🥳 Join our team on the Java YouTube channel on September 15 to celebrate the latest launch, cover key enhancements and platform changes, and discuss the latest developments at the intersection of Java and AI. Details: social.ora.cl/6012B1siHa
9
111
537
30,252
How can you read chars from a binary stream? @JosePaumard explains.
1
25
203
19,985
While Java programs are deployed as bytecode, performance-relevant code will be compiled to machine code whose performance rivals that of any other platform. In the HotSpot JVM, this is the job of the JIT compilers. This episode of the Inside Java Podcast with Roberto Lozano dives into it. social.ora.cl/6011B1KPsV
1
28
156
17,985
When we play games or run simulations, there's often an element of randomness involved—making each play through the game unique and more interesting. The Random class is one way that we can generate random values. 🎲 Learn more: social.ora.cl/6014BDGFma
9
117
17,689
Still writing switch statements with repeated assignments and break after every case? There must be a better way! Well, there is! And codebysophy is here to show you how. Full details on JEP 361: openjdk.org/jeps/361
5
25
142
17,020
Spring AI 2.0 released in June and is one of several projects ensuring Java's continued strength in enterprise AI development. Listen to this episode of the Inside Java Podcast with Dan Vega for some tips on deterministic agents, MCP servers and skills, prompt engineering, and where Java's richness for AI solutions stems from. social.ora.cl/6015B1KOSV
7
24
188
20,009
It's time to revisit Java Records. 📔 This tutorial highlights how records help group related immutable data into a single object—improving readability and maintainability compared to managing multiple independent variables. If you haven't adopted records yet, they're one of the simplest ways to write cleaner, more expressive Java. Learn more: social.ora.cl/6012BDGFKM
3
31
246
22,368
JSON API, Project Valhalla, post-quantum cryptography... This edition of the Inside Java Newscast has it all! Check it out: social.ora.cl/6016B1nVY8
2
24
137
17,510
Get ready to consume this Java Coding Tip with @JosePaumard! Today’s question: What is a Consumer?
1
17
184
17,779
This master's thesis investigates the overhead of weak reference processing in generational ZGC and whether it could be reduced with targeted modifications to the pipeline—or avoided altogether through a different representation of weak semantics. See the results: social.ora.cl/6017BEbYhJ
23
220
19,882
Still setting up a build tool before even running your code once? codebysophy shares how to run a Java program with multiple files without Maven or Gradle. No javac, no class files, no build tool. Full details on JEP 458: openjdk.org/jeps/458
3
18
132
16,974
JDK 27 entered Ramp-Down-Phase 1 in early June, so we can go over its features. This episode of the Inside Java Newscast looks at Valhalla's first JEP (401) and the "Modern Java in the Wild" hackathon. social.ora.cl/6010B1KOwe
3
29
150
18,897
Want to allow users to interface with the program and allow them to enter values? We show you how to use the IO class to accept input into the program. social.ora.cl/6010BDGLWK
4
25
193
19,704
Learn how to design and write your own classes in Java in this comprehensive Java 101 course. Get started now and start exploring the building blocks of creating classes and using them to model data and behavior in object-oriented programs. social.ora.cl/6013B1E2wB
1
14
131
16,175
What is a HashTable? @JosePaumard is here to hash it out.
5
23
217
19,928
Are you still building multiline strings with \n and + on every line in Java? codebysophy is here to explain how JEP 378 fixes that. Triple quotes at the top and bottom, paste your string inside as is, and you’re all set! Learn more about JEP 378: openjdk.org/jeps/378
5
7
118
19,564
A very useful reference type is String, which is a collection of characters. It is implemented using the String class. Check out this tutorial on declaring and initializing String variables. social.ora.cl/6010BDGaLA
1
10
102
19,817
Get your Java ready! @JosePaumard is back to break down what an intermediate Collector is.
3
21
185
19,771
Want to master searching and sorting algorithms in Java? This comprehensive course teaches you how to efficiently search for data and organize arrays using some of the most important algorithms in computer science. Whether you're learning Java for the first time or preparing for exams, this course will help you understand how these algorithms work and how to trace their execution step-by-step. social.ora.cl/6011BEIoOf
5
32
203
20,869
In cases where you're assigning a variable to a value that's the result of this value and an arithmetic operator, a compound assignment operator can be used. Learn more about the compound assignment operator: social.ora.cl/6018BDGLH0
3
15
100
20,228
Join @JosePaumard to learn more about a LinkedHashSet.
5
13
141
21,038
Meet Schinnel Small from University of South Florida—our July Teacher Spotlight. Watch Schinnel share how she uses AI to enhance teaching, streamline everyday tasks, and create more meaningful learning experiences for her students. She also discusses how she teaches students to use AI as a tool for learning, emphasizing that strong communication skills, thoughtful prompting, and critical thinking are essential for getting the best results. social.ora.cl/6015BEIStv
12
48
9,701
Get a detailed look into arithmetic expressions and the assignment operator. social.ora.cl/6014BDGIxj
2
12
80
19,793
Get a clearer view of the performance work happening across the Java platform as we break down notable performance-related improvements in JDK 26, grouped into four major areas: ☕ JDK Libraries ☕ Garbage Collectors ☕ Compiler ☕ Runtime social.ora.cl/6013B8FmQU
6
27
155
21,105
One does not simply store immutable data. Check out this precious introduction to records—a reference type that allows you to create your own immutable data type where multiple pieces of related data are stored together. social.ora.cl/6015BDGIrB
1
7
70
18,902
Want to master iteration in Java? In this comprehensive Java 101 course, you'll learn how to use loops to execute code repeatedly and solve a wide variety of programming problems. You'll also explore the three primary looping structures in Java: while loops, do-while loops, and for loops. Get started: social.ora.cl/6019BEnde5
2
20
110
17,754
Can you read a Gzip compressed file? If not, don’t worry—@JosePaumard is here to explain.
3
22
152
19,810
This session from Voxxed Days Zürich 2026 looks at recent improvements to the HotSpot JVM, including updates introduced in JDK 26, and explains what they mean for Java developers who care about performance. social.ora.cl/6015BDN3NS
2
13
82
19,410
In this "Ask the Architect" episode of the Inside Java Podcast, Nicolai Parlog spoke to Mikael Vidsted about Project Detroit—recently resurrected by OpenJDK in an effort to ease Java's interoperability with Python and JavaScript. social.ora.cl/6013BEnZ3c
6
62
11,396
Records allow you to represent immutable data simply. 📊 Check out this code snippet from codebysophy, then get the full details on JEP 395: openjdk.org/jeps/395
2
22
146
18,424
In this course, you'll learn the different ways to incorporate choice in your programs. We'll cover if statements, conditional operator, switch statements and switch expressions. social.ora.cl/6019BEDI2L
15
67
10,921
Learn how to create an object from a class using a simple Dice example. social.ora.cl/6016B8YaK0
14
55
10,620
Explore a brief history of ZGC, Its internal mechanisms, and future development plans in this #JavaOne session. social.ora.cl/6013BD04hh
8
53
10,759
We keep cracking the Java code with @JosePaumard as we explore an anonymous class
16
106
13,955
Want to master boolean expressions in Java? ☕ In this comprehensive Java 101 course, you'll learn how to write, evaluate, and simplify the boolean expressions that power decision-making in your programs. Get started today: social.ora.cl/6012BDLUp6
1
12
80
11,088
How can you skip elements in a stream? @JosePaumard breaks it down.
3
13
141
15,266
In this #JavaOne session replay, you'll get a look at new and upcoming Java features that improve the convenience, reliability, and performance of immutable data, including records, value classes and objects, the lazy constants AP, and more. social.ora.cl/6018BDZhYg
1
14
80
10,199
Ready to take your Java skills to the next level? Dive into methods by exploring a fun example: the Dice class! You’ll learn how to call methods on a Java object, like: 🎲 numSides to check how many sides the dice has 🎲 setSides to change that number on the fly We’ll walk through simple code demonstrations step by step, making it easy for beginners to follow along. social.ora.cl/6014B8imQ2
5
15
99
12,955
In this #JavaOne talk, learn about many recent changes to the Java programming language and look ahead to directions and features that are in development and will appear in future editions. social.ora.cl/6012B8xWW8
3
13
77
11,458
Learn how to create an object from a Java record using a DukeCharacter example, then explore the methods records give you automatically. We’ll instantiate a DukeCharacter record and introduce or practice calling common built-in methods like accessors (component methods), toString(), and equals(). The hashCode() method is out of scope for this tutorial. social.ora.cl/6012B8imP2
17
93
11,979
Write your first Java program with void main! Check out this code snippet from codebysophy, then get the full details on JEP 445: openjdk.org/jeps/445
3
17
101
12,782
Want to learn how to create objects and call methods in Java? 🎓 In this comprehensive course, you'll build a strong foundation in object-oriented programming by working with some of the most commonly used classes in the Java API. Get started today: social.ora.cl/6011BDZCux
1
16
76
9,093
Sit down with @JosePaumard as he examines when you can use finalize().
2
18
153
19,474
In this "Ask the Architect" episode of the Inside Java Podcast, Nicolai Parlog talks to Alex Buckley—the Guardian of the JEP process. Watch them discuss how JEPs are OpenJDK's vehicle for documenting and communicating substantial changes of the Java language and the immense care that goes into writing them. social.ora.cl/6011BDcbzV
2
9
49
8,959
This #JavaOne session shows how to use JFR to build self-improving applications with AI and new JDK features. Using a real-life simulated example, you’ll learn to stream JFR data, integrate JVM events with AI, spot performance bottlenecks and unusual behavior automatically, and build better debugging and monitoring tools. social.ora.cl/6013B8iwPD
10
46
8,049
Learn about Java Text Blocks—a modern feature that makes working with multi-line strings much easier and cleaner. This tutorial is perfect for beginners and anyone looking to write cleaner, more maintainable Java code using newer language features. social.ora.cl/6014BBGdgm
17
68
10,795