frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

CheerpJ 4.0: WebAssembly JVM for the browser, now with Java 11 and JNI support

https://labs.leaningtech.com/blog/cheerpj-4.0
9•apignotti•1y ago

Comments

palata•1y ago
That's technically pretty cool, but it makes me wonder:

In order to run a Java Desktop app, I need to install a JVM first (or the Desktop app can embed it, I guess that's what IntelliJ does, right?).

Now if I run CheerpJ, it means that I essentially download a JVM when I load the page (every time), and run code in that JVM. But at this point, why not downloading a Desktop app?

It feels like we are going around, shipping simple web pages together with full browsers and calling that "desktop apps" (e.g. ElectronJS), then shipping complete JVMs as web pages and calling that a "web page"... why don't we just ship simple webpages through browsers and complex desktop apps through package managers?

apignotti•1y ago
With CheerpJ you are downloading the subset of the JVM that you need, and actually only once thanks to the standard browser cache.

There are many reasons why shipping via the browser is a better choice compared to shipping desktop apps. The main 3 in my opinion are:

1. Distribution: Give your user a link and the app will start 2. Isolation: The user can have confidence the app won't read his personal files. 3. Cross-platform: Every OS and every device, for real this time

yuri91•1y ago
For reference, when loading https://browsercraft.cheerpj.com for the first time (up to loading a world), my browser downloaded ~32MB.

The second time almost nothing.

jeffreportmill1•1y ago
And here's an entire Java IDE with CheerpJ that downloads less than 15mb:

https://reportmill.com/SnapCode

palata•1y ago
> With CheerpJ you are downloading the subset of the JVM that you need

That's interesting! May I ask how it works? Does that also happen with e.g. IntelliJ?

> Every OS and every device, for real this time

Doesn't the JVM run everywhere in 2025?

apignotti•1y ago
> That's interesting! May I ask how it works? Does that also happen with e.g. IntelliJ?

Byte ranges request do most of the heavy lifting, data is loading exclusively on-demand.

> Doesn't the JVM run everywhere in 2025?

What about iOS? Android has Java, but can't run desktop Java apps. Chromebooks also have limits.

palata•1y ago
> Byte ranges request do most of the heavy lifting, data is loading exclusively on-demand.

I don't understand what that means. The JVM is supposed to interpret and sometimes compile bytecode, right? How can it be done with only a fraction of the JVM?

Or are you saying that it is constantly communicating with a server that does the work?

apignotti•1y ago
The VM itself is very small, it's the OpenJDK runtime that is quite sizeable. Byte ranges are used to only download the parts of the runtime (in terms of bytecode) that are required.

There is no server-side computation. CheerpJ runs code exclusively client-side.

palata•1y ago
But you said before that you only download a subset of the JVM, right? Or did you mean a subset of the JDK, including the JVM and... I guess other stuff?
apignotti•1y ago
I meant the JVM in an extended sense: the combination of the bytecode parsing, JIT compiler and OpenJDK runtime. You are right, I should have been more precise and refer to only the runtime part, which is by far the most significant.
palata•1y ago
I was not trying to prove you wrong, I'm just genuinely interested :-). I don't see a lot of articles about the JVM these days.

My -Tech

https://fingolas.eu/MyTech/
1•doener•34s ago•0 comments

A checkbox to enable the Django debug toolbar

https://mdk.fr/blog/django-debug-toolbar-checkbox.html
1•julienpalard•1m ago•0 comments

MCP Hello Page

https://www.hybridlogic.co.uk/blog/2026/05/mcp-hello-page
1•Dachande663•1m ago•0 comments

Zerostack – A Unix-inspired coding agent written in pure Rust

https://crates.io/crates/zerostack/1.0.0
2•gidellav•3m ago•0 comments

Jane Street Designed Its New Data Center: A Tour with Dwarkesh Patel [video]

https://www.youtube.com/watch?v=8J-GUnfSqeE
1•canarymark•4m ago•0 comments

Zerostack – Tiny Rust Coding Agent in 8MB of RAM

https://github.com/gi-dellav/zerostack/tree/main
1•gidellav•5m ago•0 comments

Steve Blank: Secret History of Silicon Valley (2008) [video]

https://www.youtube.com/watch?v=ZTC_RxWN_xo
1•stmw•7m ago•0 comments

Taiwan-Starlink service talks fall through over regulatory issues

https://www.taipeitimes.com/News/taiwan/archives/2026/05/17/2003857478
1•aa_is_op•8m ago•0 comments

Iran's Seizure of Chinese Security Ship Shows Its Favors for Friends Have Limits

https://www.wsj.com/world/china/irans-seizure-of-chinese-security-ship-shows-its-favors-for-frien...
1•JumpCrisscross•11m ago•0 comments

I tried to make Claude make me money on Algora bounties (data and tool)

https://github.com/ztc00/algora-scout/blob/main/POST.md
2•ztc00•13m ago•0 comments

Samsung is developing nearline SSDs up to 1 PB

https://www.blocksandfiles.com/flash/2026/05/15/scality-says-samsung-is-developing-nearline-ssds-...
2•ziofill•14m ago•0 comments

Open WebUI: Jupyter code execution works despite ENABLE_CODE_EXECUTION=false

https://github.com/open-webui/open-webui/security/advisories/GHSA-482j-2pq6-q5w4
1•logickkk1•14m ago•0 comments

Irst Apple M5 memory exploit discovered using Anthropic AI

https://www.tomshardware.com/tech-industry/cyber-security/apple-m5-architecture-suffers-first-pri...
1•Timofeibu•19m ago•0 comments

OpenAI caught NPM supply chain chaos after employeedevices compromised

https://www.theregister.com/security/2026/05/15/openai-caught-in-tanstack-npm-supply-chain-chaos-...
3•Timofeibu•19m ago•0 comments

$60B AI chip darling Cerebras almost died early on, burning $8M a month

https://techcrunch.com/2026/05/16/60b-ai-chip-darling-cerebras-almost-died-early-on-burning-8m-a-...
2•ent101•21m ago•0 comments

Spend Your Compute on Correctness

https://juanreyero.com/article/ai/spend-compute-on-correctness
2•juanre•23m ago•0 comments

Ask HN: When did computers stop being fun?

3•klez•24m ago•3 comments

Will A.I. Make College Obsolete?

https://www.newyorker.com/news/fault-lines/will-ai-make-college-obsolete
1•momentmaker•25m ago•0 comments

How I use LLMs as a staff engineer in 2026

https://www.seangoedecke.com/how-i-use-llms-in-2026/
1•lalitmaganti•25m ago•0 comments

50 Years of Text Games by Aaron Reed

https://www.thepsmiths.com/p/review-50-years-of-text-games-by
1•momentmaker•26m ago•0 comments

Understanding Singleflight in Go

https://www.codingexplorations.com/blog/understanding-singleflight-in-golang-a-solution-for-elimi...
1•ghostbit•29m ago•0 comments

How to Achieve Truly Serverless GPUs

https://modal.com/blog/truly-serverless-gpus
1•birdculture•31m ago•0 comments

AI face is taking over – and driving plastic surgeons crazy

https://www.businessinsider.com/ai-generated-images-chatgpt-reshape-plastic-surgery-beauty-expect...
2•andreylangovoy•45m ago•0 comments

Built a Website for Embedded Software Engineering Interview Preparation

https://srnvl.github.io/Embedded_SWE_Prep/
2•sangramnavale•49m ago•1 comments

Pity the poor AI datacenters facing 'discrimination'

https://www.theguardian.com/commentisfree/2026/may/16/pity-the-poor-ai-datacenters-facing-discrim...
5•devonnull•50m ago•0 comments

Dutch government objects to proposed US law restricting ASML's China exports

https://www.reuters.com/world/asia-pacific/dutch-government-objects-proposed-us-law-restricting-a...
9•jonbaer•55m ago•2 comments

Classic – Hacker News

https://news.ycombinator.com/classic
3•rvnx•1h ago•0 comments

Twilight of the Velocipede: Typesetting Races Before the Age of Linotype

https://publicdomainreview.org/essay/twilight-of-the-velocipede/
1•benbreen•1h ago•0 comments

Google AI Overview – "Tersely"

https://www.google.com/search?q=tersely&oq=tersely
1•flawn•1h ago•0 comments

Liquid Breathing

https://en.wikipedia.org/wiki/Liquid_breathing
1•Markoff•1h ago•0 comments