frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

E-Tattoo for Your Face Gauges Mental Strain

https://spectrum.ieee.org/electronic-tattoo
1•01-_-•35s ago•0 comments

Canonical Ubuntu Infra Outage

https://status.canonical.com/?
1•mynegation•2m ago•0 comments

Ask HN: Is "Vibe Coding" a term people are using with pride?

1•AbstractH24•3m ago•0 comments

Pre-Training for Recommendation Unlearning

https://arxiv.org/abs/2505.22649
1•badmonster•4m ago•0 comments

Two of the Worst Termites Hooked Up in Florida–and Now We're Screwed

https://gizmodo.com/two-of-the-worlds-worst-termites-hooked-up-and-now-were-screwed-2000608657
1•rntn•5m ago•0 comments

The Linux 6.15 kernel arrives – and it's big a victory for Rust fans

https://www.zdnet.com/article/the-linux-6-15-kernel-arrives-and-its-big-a-victory-for-rust-fans/
1•CrankyBear•7m ago•0 comments

Pirate IPTV Consumed by 30% of Swedes, Including 50% of Men Under 35

https://torrentfreak.com/pirate-iptv-consumed-by-30-of-swedes-including-50-of-men-under-35-290529/
1•hn_acker•9m ago•0 comments

GG: GUI for JJ

https://github.com/gulbanana/gg
1•tosh•9m ago•0 comments

How the iPhone Drove Men and Women Apart

https://www.nytimes.com/2025/05/29/opinion/dating-marriage-children-fertility.html
1•thm•10m ago•0 comments

Want to live to a healthy old age? What a top doctor does based on hard science

https://www.cnn.com/2025/05/28/health/live-long-healthy-life-eric-topol-wellness
1•DamonHD•10m ago•0 comments

Toxic Proteins for Drug Discovery

https://www.asimov.press/p/toxic-proteins
1•mailyk•10m ago•0 comments

Building a Distributed Cache for S3

https://clickhouse.com/blog/building-a-distributed-cache-for-s3
1•shenli3514•11m ago•0 comments

Lean GTM: What Got Us 50 Demos/Month

https://iriscotax.substack.com/p/lean-gtm-what-got-us-50-demosmonth
2•tuye0305•11m ago•1 comments

Louis – Turn your idea into a cinematic demo video in minutes

https://hirelouis.ai/
1•TakaJP•12m ago•1 comments

Human coders are still better than LLMs

https://antirez.com/news/153
2•longwave•12m ago•1 comments

Androgenic alopecia may protect men vs prostate cancer by increasing UV exposure

https://pubmed.ncbi.nlm.nih.gov/17910907/
2•CGMthrowaway•12m ago•0 comments

Ask HN: Which language best compromise between pragmatic and innovative?

1•akkad33•13m ago•0 comments

Leonardo da Vinci's Elegant Design for a Perpetual Motion Machine

https://www.openculture.com/2025/05/leonardo-da-vincis-design-for-a-perpetual-motion-machine.html
1•geox•14m ago•0 comments

Anduril and Meta Team Up to Transform XR for the American Military

https://www.anduril.com/article/anduril-and-meta-team-up-to-transform-xr-for-the-american-military/
2•boguscoder•16m ago•0 comments

Elon Musk to exit government, upset that Trump bill undermines DOGE's work

https://arstechnica.com/tech-policy/2025/05/elon-musk-to-exit-government-upset-that-trump-bill-undermines-doges-work/
2•voxadam•17m ago•0 comments

Learn to Use Email with Git

https://git-send-email.io
2•gsky•20m ago•0 comments

Scaling VLLM for Embeddings: 16x Throughput and Cost Reduction

https://www.snowflake.com/en/engineering-blog/embedding-inference-arctic-16x-faster/
1•charlesxu•22m ago•0 comments

Show HN: Open-source, visual-first Cursor for Designers

https://beta.onlook.com/
12•hoakiet98•22m ago•0 comments

Safari Vulnerability Allows Theft of Credentials with Fullscreen BitM Attacks

https://labs.sqrx.com/fullscreen-bitm-f2634a91e6a5
2•gnabgib•23m ago•0 comments

The New Dream Job for Young Men: Stay-at-Home Son

https://www.wsj.com/lifestyle/careers/stay-at-home-son-unemployment-jeopardy-c49a82bb
2•petethomas•23m ago•1 comments

Be Visible

https://dontbreakprod.com/posts/be-visible
2•dorkrawk•25m ago•0 comments

How Wall Street offloaded $13B of debt tied to Elon Musk's Twitter deal

https://www.ft.com/content/51c51b49-57fc-435d-9146-e86d7b19ca81
4•jhatax•25m ago•4 comments

NHS accused of 'abject failure' on ADHD as 550k await assessment in England

https://www.theguardian.com/society/2025/may/29/up-to-25-million-people-in-england-could-have-adhd-says-nhs
3•uxhacker•29m ago•0 comments

The Toki Pona Language

https://tokipona.org/
3•thinkingemote•29m ago•0 comments

Out-group animosity shapes partisan divisions: A model of affective polarization

https://academic.oup.com/pnasnexus/article/4/3/pgaf082/8069205?login=true
1•PaulHoule•29m ago•0 comments
Open in hackernews

CheerpJ 4.1: Java in the browser, now supporting Java 17 (preview)

https://labs.leaningtech.com/blog/cheerpj-4.1
115•pjmlp•1d ago

Comments

letters90•1d ago
The minecraft demo is quite impressive

https://browsercraft.cheerpj.com/

apignotti•1d ago
Thanks. Architecturally, beside the unmodified Minecraft and LWJGL jars, this demo uses the original JNI code from LWJGL, compiled from C++ to WebAssembly.
90s_dev•1d ago
Clever.

Java seems to have come a long way since 2015. Might be worth looking into, if only I could find a page that summarizes every new language feature.

_old_dude_•1d ago
Java Almanac has a list of all features https://javaalmanac.io/features/

And the main page let you compare API versions https://javaalmanac.io/

creatonez•1d ago
I love this... but I've grown disappointed by these technically impressive demos, now that older Minecraft running in WASM is no longer novel ever since Eaglercraft came out. As per the readme:

> The latest version of Minecraft. Newer releases of Minecraft use a newer version of Java and OpenGL which we currently do not support. [...] This demo demonstrate these capabilities by running an older version (1.2.5) of Minecraft and LWJGL entirely in the browser.

Sadly, no one seems to be able to get past Minecraft 1.5, which was released in 2013 :(

Edit: Hmm... not sure when this happened, but Eaglercraft supports 1.12 (2017) now. Neat! Might be hard to go further than that, since modern Minecraft uses Java 21 / OpenGL 3.2, and LWJGL itself has evolved significantly in its platform APIs.

apignotti•1d ago
As a matter of fact we have internally achieved 1.16.5.

The Java side of things works out-of-the-box, but LWJGL3 JNI code uses some subtle techniques that are yet supported in public builds of CheerpJ.

Now that we have Java 17 support we expect to be able to move even further.

bufferoverflow•1d ago
Works on my smartphone. That's wild.
boomskats•1d ago
"Ha! I KNEW it! WebAssembly literally IS just a reinvention of the JVM!!1"

Wouldn't it be funny, after all that sandboxing and component modelling, if it was JNI and SwingSet3 that finally made enterprise Wasm a thing?

(also this is impressive, great job)

txdv•1d ago
It compiles to JavaScript and not wasm AFAIK
apignotti•1d ago
The target of the JIT compiler is indeed JavaScript, since WasmGC is still too limited.

This is fundamentally an implementation detail though, when we adopt WasmGC there will be no user visible change beside a potential performance improvement

dunham•1d ago
How do you deal with numbers? Javascript doesn't do 64-bit numbers and naively multiplying 32-bit numbers can loose lower bits. If I remember right GWT used two numbers to represent 64-bit and ignored the 32-bit issue.
apignotti•10h ago
BigInts are the current solution. There are other solutions as well.
txdv•21h ago
Can you point out the limitations?
lesuorac•1d ago
Java Applets probably would've snuffed out WASM if it was added into a browser by default (instead of an extension).

However, they were pretty insecure and caused a ton of problems for the browser [1] and I'm guessing Oracle had no interest in providing free work in a secure solution. So they got eliminated.

[1]: https://blog.chromium.org/2013/09/saying-goodbye-to-our-old-...

hawk_•1d ago
This is incredible. Kudos to the team behind it. This requires knowing both the browser and JVM quite well.

I do wonder though why Oracle doesn't seem interested in building or acquiring some JVM in the browser.

devrandoom•1d ago
> why Oracle doesn't seem interested

It doesn't come with any lucrative extortion options to squeeze millions out of enterprises.

hawk_•1d ago
There ought be a fair amount of legacy Java code sitting in enterprises that they would be willing to pay for an Oracle® seal of approval for running parts in the browser.

May be they are aiming for graalvm to be the answer eventually. (actually I don't know whether graalvm in the browser is effectively aot and brings all the reflection/dynamic code issues with it.) Curious if someone knowledgeable in that ecosystem knows.

maratc•1d ago
> I do wonder though why Oracle doesn't seem interested

And then what? Everybody would write Java code and run their ... not quite "apps" but we can call it app-lets -- in the browser, so that "write once run everywhere" could be achieved?

mooreds•1d ago
Nooo! I spent a summer in college writing physics education applets. The scars are still there.

Seriously, I do wonder what the real value of some of this WASM stuff is. I mean, seems cool to run a java (or rust or <insert language here>) app in the browser, but what is the real world use case? If I run an app in the browser, I still have to do all the server side business validation because "you should never trust the client".

What am I missing?

Edit: on reading other comments, apparently this is direct-to-js compilation, not WASM. The intent of the comment still stands.

mickael-kerjean•1d ago
For my use case of building Filestash, WASM is a game changer in those 2 areas:

1. use libraries from ecosystem outside JS. In the past few months, I've added support for file types like psd, dbf, arrow, parquet and about 50 more. To give a concrete example: https://www.filestash.app/tools/parquet-viewer.html WASM open up a very exciting door. In the same idea, I stumbled upon a couple JAVA only libraries which I would love to ship on a browser and not have to create web service to interact with those.

2. enable third party to make plugin that can run in my app in a safe way. In my case, plugins are zip files containing a bunch of assets and the WIP piece is to be able to put wasm in there that will run server side without giving those plugins a blank check for acting crazy.

mooreds•22h ago
Thanks, that's super helpful. For #2, do you run the WASM plugins in a sandboxed browser?
jeffreportmill1•1d ago
I totally agree with this! Oracle still spends time and money promoting Java client, and the browser is now the largest client platform. They could really revitalize Java client by backing CheerpJ.
soco•1d ago
I don't see what for me would be the key document: how is this technology addressing the plethora of reasons which made the applets fail.
apignotti•1d ago
Applets were executed completely outside of the browser sandbox. An absolute disaster from the security standpoint.

CheerpJ is effectively just a very sophisticated JavaScript/WebAssembly library and it plays by the rules of the browser sandbox.

sunshine-o•1d ago
> Applets were executed completely outside of the browser sandbox. An absolute disaster from the security standpoint.

It is easy to forget Java (applets, web start) was a thing during the Windows 98 era, meaning a time when there was (almost?) no security. People were downloading and running random .exe files all the time.

There was no browser sandboxing and you could run wild Basic code in IE.

Sun with Java were the first one to try to solve that problem. It was imperfect but way better than what others were doing at the time.

rst•1d ago
WASM has a better security sandbox. (Designed in from the beginning, not the thousand-fingers-in-the-dike retrofit that was the Java SecurityManager -- which was eventually deprecated and abandoned along with the Applet tech it was intended to support.)
afavour•1d ago
I’d imagine the biggest one is that it doesn’t require the user to have installed a Java runtime on their computer.
maratc•18h ago
Applets didn’t fail because of missing JRE, it was included in IE. It was only after Microsoft started playing around with the implementation that Sun asked them to stop, which they did. Only then did a missing JRE become an issue.
matsemann•1d ago
Wow, seriously impressive. GWT had so many drawbacks this seems to solve (like everything with reflection not working).

Since it's the runtime being ran on wasm, does this also allow for kotlin, clojure, scala etc as long as it's valid bytecode?

apignotti•1d ago
Yes, any JVM language should work. We did some experiments with Kotlin specifically in the past.
matsemann•1d ago
Thanks! I know kotlin has a JS target, but being able to just deploy the software as-is without a separate codebase for the interface, dealing with all the differences of the platforms etc is something else entirely. Very cool.
quaintdev•1d ago
They ran freaking Intellij IDE inside the browser. Insane!
Alifatisk•1d ago
That's actually very impressive, wow
gwbas1c•1d ago
> CheerpJ can run existing, full Java applications from unmodified JARs, with no recompilation or pre-processing, straight from bytecode.

I'm kind of curious what limitations happen with networking?

As far as I know, there's no way to do direct socket / network IO in WASM. (IE, you need to use the fetch API.) Likewise, what if a jar uses HTTP, but uses an HTTP library that uses sockets?

apignotti•1d ago
CheerpJ does out-of-the-box support HTTP/HTTPS requests using fetch when the application uses the standard Java UrlConnection APIs. Of course the requests must be to the same domain (which a common case) or to a domain which is CORS enabled, since CheerpJ is subject to the same limitations as any other JavaScript library.

For more general cases our Tailscale integration is required. For more information see: https://cheerpj.com/docs/guides/Networking

jeffreportmill1•1d ago
I need to check out the tailscale solution, although CheerpJ also makes it trivial to plug in a proxy server, which I currently do in my app that supports cross origin.
apignotti•1d ago
I see the post has been killed by moderators. I would like to be contacted to discuss why this is the case. Our content is of obvious interest to the community and we always engage in productive ways.

What is the problem here?

Alifatisk•1d ago
How has it been killed by mods?
apignotti•1d ago
Sent straight down to 3rd page from the very first position in home. I assume there must be some internal "send this down to hell" button.
ConfusedDog•1d ago
Not OP here, but it did disappear from the frontpage. I was still pondering about it and left this tab open... frankly I can't think of a good use case for it besides making legacy java apps available via browser. For gaming, I'd probably still use Unity or other game engines. For app development, I probably not gonna develop on Java 11 again which the support gonna be ending in 2026. I'm impressed by this project though.
apignotti•1d ago
The legacy use case is indeed very important, but there are many other opportunities that can come from using Java libraries as part of Web apps.

CheerpJ provide "Library mode": an API to natively interact with Java objects from JavaScript: https://cheerpj.com/docs/guides/library-mode

CheerpJ also support Java 17 (currently in preview) and LTS parity is scheduled for next year.

gavinray•1d ago
Being able to access the entirety of the JVM ecosystem of libraries from JS without glue code is kind of insane.
ConfusedDog•1d ago
Yes, I'm super impressed by that.
jeffreportmill1•1d ago
I use CheerpJ to do new development that is spectacularly cross-platform, runs native on all the major platforms and everywhere else in the browser with a single code base. I don't think there are too many alternatives for that and I suspect Java + CheerpJ is one of the best.

https://reportmill.com/SnapCode

ConfusedDog•1d ago
This is really great! Thanks for sharing.
gavinray•1d ago
It could be that it got upvoted so rapidly it triggered vote-spam detection.

I don't think mods hand-downrank posts to certain pages.

apignotti•1d ago
I suspect something else is amiss here, since it is not the first time this happens.

And, in full transparency, we don't engage in any manipulation of upvote count.

We try to play as fair as possible here and in other communities.

Alifatisk•1d ago
I once wanted to port a little Java application (with no libs except JavaFX) to the web, so I converted it into Dart lang and then compiled it to the web, a bit painful but cool thing.

CheerpJ might be better solution next time.

nopcode•1d ago
Interesting how this is perceived as impressive (and it is!), but we had runescape running in the browser over 20 years ago already.