Applets Are Officially Gone, But Java In The Browser Is Better Than Ever

Applets Are Officially Gone, But Java In The Browser Is Better Than Ever

@openrewrite The truth? Most "6-month migrations" are 4-hour automations once you understand how LST structures and visitor patterns work together.
Join our next workshops: moderne.ai/moderne-openrewrite-training-hub
#OpenRewrite #CodeTransformation #RefactoringAtScale #JavaDevelopment #MigrationEngineering
3/3 🧵

Giải pháp BitDive cho Spring Boot: Tạo test tự động từ lỗi thực tế trên production. Giảm thời gian sửa test flaky, tăng độ tin cậy và dễ dàng tái hiện bug. Phản hồi từ cộng đồng Spring Boot được mong đợi! #SpringBoot #Testing #Automation #DevOps #JavaDevelopment #KiểmThửTựĐộng #PhátTriểnPhầnMềm

https://www.reddit.com/r/programming/comments/1nkfg4g/stop_babysitting_tests_in_spring_boot_turn_real/

(more Linux and FOSS news in previous posts of thread)

Apache NetBeans 27 released with Gradle 9 fixes, improved JDK 25 compatibility, Maven 3.9.11, improved refactoring for standalone files, improvements for code formatting and reindentation, etc.:
https://alternativeto.net/news/2025/8/apache-netbeans-27-released-with-gradle-9-fixes-improved-jdk-25-compatibility-and-more/

Microsoft's DocumentDB (PostgreSQL-based, MongoDB compatible document database) is now under the umbrella of the Linux Foundation:
https://news.itsfoss.com/documentdb-moves-to-linux-foundation/

QEMU 10.1 released with Intel TDX (Trust Domain Extensions) support, ARM, RISC-V and LoongArch improvements, etc.:
https://9to5linux.com/qemu-10-1-released-with-tdx-support-many-risc-v-and-arm-improvements

FreeBSD quarterly status report: bsd-user-4-linux (BSD user-mode emulation for QEMU on Linux), ability to install packages from pkg.freebsd.org in the system installer, Sylve (Proxmox-inspired, unified system management platform), Geomann (partition tool), work on suspend/resume and s0ix sleep support for laptops, porting Apple's HFS+ file-system:
https://www.phoronix.com/news/FreeBSD-Q2-2025-Status-Report

GhostBSD presents the new macOS-like Gershwin desktop environment, a successor to GNUstep, currently with Xorg support with plans for Wayland, using XFCE4-WM with plans for a custom WM:
https://www.phoronix.com/news/GhostBSD-Gershwin-Desktop

#WeeklyNews #OpenSource #FOSSNews #OpenSourceNews #FOSS #Apache #NetBeans #DocumentDB #QEMU #VirtualMachine #Virtualization #Database #DatabaseManagement #IDE #FreeBSD #GhostBSD #Gershwin #OperatingSystem #OS #DesktopEnvironment #BSD #Coding #Development #DBMS #CodeEditor #Programming #Java #JavaDev #JavaDevelopment #FosseryTech

Feeling the friction of getting Java apps cloud-ready? Spring Architects, it's time to smooth out those bumps with Quarkus! Achieve superior cloud-native performance, reduced resource consumption, and simplified deployments. Embrace Quarkus and accelerate your journey to the cloud. #CloudNative #JavaDevelopment #Spring

https://quarkus.io/spring/

OH: Moment, ich gibt dir die API-Keys aus dem Production Pod zum Testen.

#cloud #secretmanagement #APIKeys #javadevelopment

Discovering a JDK Race Condition, and Debugging It in 30 Minutes with Fray

https://aoli.al/blogs/jdk-bug/

#HackerNews #JDKRaceCondition #FrayDebugging #SoftwareDevelopment #TechBlog #JavaDevelopment

Discovering a JDK Race Condition, and Debugging it in 30 Minutes with Fray

Discovering a JDK Race Condition, and Debugging it in 30 Minutes with Fray I’ve been adding more integration tests for Fray recently. To ensure Fray can handle different scenarios, I wrote many creative test cases. Many of them passed as expected, while some failures led to epic fixes in Fray. Then something unexpected happened: Fray threw a deadlock exception while testing the following seemingly innocent code: 1private void test() { 2 ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1); 3 // Shutdown thread. 4 new Thread(() -> { 5 executor.shutdown(); 6 }).start(); 7 try { 8 ScheduledFuture<?> future = executor.schedule(() -> { 9 Thread.yield(); 10 }, 10, TimeUnit.MILLISECONDS); 11 try { 12 future.get(); 13 Thread.yield(); 14 } catch (Throwable e) {} 15 } catch (RejectedExecutionException e) {} 16} This code creates a ScheduledThreadPoolExecutor, schedules a task, and shuts down the executor in another thread. Initially, I suspected a bug in Fray, but after investigation, I discovered that the deadlock was actually caused by a bug in the JDK itself.

Ao Li
🚀🙄 Oh joy, another JEP! Because what #Java really needed was a *smaller* object header—*finally*! Newest fad: turning "compact" from experimental to product feature. 🥳 Next up: "compact" blog posts, because brevity is key. 😂
https://openjdk.org/jeps/519 #JEP #JavaDevelopment #CompactObjects #TechHumor #HackerNews #ngated
JEP 519: Compact Object Headers

JEP 515: Ahead-of-Time Method Profiling