frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Built a podcast player for all my NotebookLM audio in one place

https://old.reddit.com/r/notebooklm/comments/1pvsuli/built_a_podcast_player_for_all_my_notebooklm/
1•trungpv1601•1m ago•0 comments

Why Scandinavian Cabins Stayed Warm at -30°F While Modern Homes Freeze [video]

https://www.youtube.com/watch?v=eVqwiMtoDhk
1•melenaboija•4m ago•0 comments

OpenPGP Cleartext Signature Framework Susceptible to Format Confusion

https://paste.debian.net/plainh/97923151
1•eat_veggies•11m ago•0 comments

Human Capital, Not "Industrial Policy," Explains East Asian Success

https://www.richardhanania.com/p/human-capital-not-industrial-policy
1•gmays•16m ago•1 comments

Micro Architecture: What Happens Beneath

https://www.youtube.com/watch?v=BVVNtG5dgks
2•vismit2000•18m ago•0 comments

Show HN: Visualize different text streaming speeds

https://gemini.google.com/share/5f5a70db02c2
1•rcanand2025•18m ago•1 comments

Super Mario Retro Suite – WDR Funkhausorchester [video]

https://www.youtube.com/watch?v=SEVKvQaRmYQ
1•rendx•23m ago•0 comments

Indian AI royalty proposal targets data practices of OpenAI, Google

https://www.reuters.com/sustainability/boards-policy-regulation/indian-ai-royalty-proposal-target...
2•virtuosity•25m ago•1 comments

Scientists say evolution works differently than we thought

https://www.sciencedaily.com/releases/2025/12/251224032359.htm
1•QueensGambit•27m ago•0 comments

National Atomic Testing Museum

https://www.atomicmuseum.vegas/
1•bookofjoe•28m ago•0 comments

What If Heavy Files Felt Heavy?

https://www.shiveesh.com/thoughts-and-ideas/what-if-heavy-files-actually-felt-heavy
1•shiveeshfotedar•28m ago•0 comments

A 3D-printed optical microscope for low-cost histological imaging

https://onlinelibrary.wiley.com/doi/10.1111/jmi.13398
2•manidoraisamy•31m ago•0 comments

Show HN: I built a coding platform where you learn by writing code, not watching

https://pixeldeveloper.io/
1•WahyuS002•32m ago•1 comments

Hijacking Chrome's Network Tab to Debug an Electron App

https://seg6.space/posts/debug-proxy-ffi/
1•seg6•33m ago•0 comments

I opened a bookshop. It was the best, worst thing I've ever done

https://www.ft.com/content/cc77c2c9-3415-4b96-af76-65f04d761a85
1•Brajeshwar•37m ago•1 comments

Gust a fast, rust based Swift package manager

https://github.com/quantbagel/gust
1•quantbagel•40m ago•0 comments

Survival of the Mediocre Mediocre (2018)

https://www.ribbonfarm.com/2018/04/24/survival-of-the-mediocre-mediocre/
2•Ariarule•41m ago•0 comments

Multiscale Aperture Synthesis Imager

https://hbr.org/2025/07/hybrid-still-isnt-working
1•wisty•46m ago•2 comments

Favorite Compiler and Interpreter Resources

https://eatonphil.com/compilers-and-interpreters.html
1•ibobev•47m ago•1 comments

How to use a specific version of MSVC in GitHub Actions

https://blog.ganets.ky/MsvcGha/
1•ibobev•47m ago•0 comments

Load and store forwarding in the Toy Optimizer

https://bernsteinbear.com/blog/toy-load-store/
1•ibobev•47m ago•0 comments

Why Britain has a deer problem – leaving damage that costs millions

https://www.bbc.co.uk/news/articles/c9d93xzey70o
2•zeristor•51m ago•0 comments

Humidity Calculator for Quick Cold Snaps

https://www.humidsnap.com/
2•saikiran91•56m ago•1 comments

The Promise of P-Graphs

https://pavpanchekha.com/blog/p-graphs.html
2•PaulHoule•59m ago•0 comments

The impact of nerve injury on the immune system in mice is sexually dimorphic

https://www.sciencedirect.com/science/article/pii/S2452073X25000170
2•bookofjoe•1h ago•0 comments

F-Droid bans Gab for being a "free speech zone" that "tolerates all opinions"

https://reclaimthenet.org/f-droid-bans-gab-app
3•like_any_other•1h ago•0 comments

AI Gets an Innocent Man Arrested [video]

https://www.youtube.com/watch?v=B9M4F_U1eEw
3•esaym•1h ago•0 comments

The battle to stop clever people betting

https://www.economist.com/christmas-specials/2025/12/18/the-battle-to-stop-clever-people-betting
2•Anon84•1h ago•2 comments

MiniMax M2.1: Built for Real-World Complex Tasks, Multi-Language Programming

https://www.minimaxi.com/news/minimax-m21
31•110•1h ago•6 comments

The Nine Days Paul McCartney Spent in a Tokyo Jail

https://www.utterlyinteresting.com/post/the-nine-days-paul-mccartney-spent-in-a-tokyo-jail
2•handfuloflight•1h ago•0 comments
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•8mo ago

Comments

palata•8mo 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•8mo 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•8mo 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•8mo ago
And here's an entire Java IDE with CheerpJ that downloads less than 15mb:

https://reportmill.com/SnapCode

palata•8mo 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•8mo 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•8mo 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•8mo 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•8mo 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•8mo 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•8mo 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.