frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Ask HN: How to become a better software engineer? All my jobs are glue

1•cryptoz•34s ago•0 comments

Ant queen lays eggs that hatch into two species

https://www.science.org/content/article/ant-queen-lays-eggs-hatch-two-species
1•Anon84•2m ago•0 comments

The Ruliology of Lambdas

https://writings.stephenwolfram.com/2025/09/the-ruliology-of-lambdas/
1•nsoonhui•6m ago•0 comments

In Praise of Idleness (1932)

https://harpers.org/archive/1932/10/in-praise-of-idleness/
1•awanderingmind•11m ago•0 comments

Detect If Content Is AI Generated

https://www.detect-ai.me/
2•detectmeai•18m ago•0 comments

A Treatise on AI Chatbots Undermining the Enlightenment

https://maggieappleton.com/ai-enlightenment
1•aratahikaru5•22m ago•0 comments

Pnpm 10.16's delayed dependency updates

https://pnpm.io/blog/releases/10.16
1•nnx•22m ago•0 comments

Launching: The Boring Semantic Layer

https://juhache.substack.com/p/the-boring-semantic-layer
1•adwmayer•28m ago•0 comments

HackTerms: Crowdsourced Dictionary of Coding Terms

https://www.hackterms.com/
1•AbuAssar•28m ago•0 comments

Causal AI

https://www.hopit.ai/stories?slug=causality-in-ml-2025-09-17-ec752
1•Arkid•29m ago•0 comments

Flaggy package updated for first time since 2022 because of AI

https://github.com/integrii/flaggy/releases/tag/v1.6.0
1•integrii•30m ago•1 comments

History of Semiconductor Industry

https://www.hopit.ai/stories?slug=httpswwwtechtargetcomwhatisfeaturethe-history-of-semiconductors...
1•Arkid•33m ago•0 comments

Slavery After Abolition: Revolt on the Amelia

https://www.historytoday.com/archive/feature/slavery-after-abolition-revolt-amelia
1•samclemens•36m ago•0 comments

TypeScript Tuple Lenth Tricks

https://rena.to/blog/17-typescript-tuple-length
1•renatorib•37m ago•0 comments

Ask HN: There are other people on HN with other professions besides programmers?

1•whyandgrowth•38m ago•0 comments

Ask HN: Looking to Hire Skilled Developers from China?

2•zhyd1997_•40m ago•0 comments

[ARC-AGI-2 SoTA] Efficient Evolutionary Program Synthesis

https://ctpang.substack.com/p/arc-agi-2-sota-efficient-evolutionary
1•frozenseven•42m ago•1 comments

Ubuntu 25.10's Rust Coreutils Transition Has Uncovered Performance Shortcomings

https://www.phoronix.com/news/Ubuntu-Rust-Coreutils-Perf
2•thangqt•43m ago•0 comments

Firefox 143.0

https://www.firefox.com/en-US/firefox/143.0/releasenotes/
1•pentagrama•47m ago•0 comments

Biometric border control: Germany to launch entry/exit system in October

https://www.heise.de/en/news/Biometric-border-control-Germany-to-launch-entry-exit-system-in-Octo...
2•huijzer•48m ago•0 comments

Solving a Wooden Puzzle Using Haskell

https://glocq.github.io/en/blog/20250428/
1•Bogdanp•53m ago•0 comments

Lunar Regolith

https://en.wikipedia.org/wiki/Lunar_regolith
2•pinkmuffinere•54m ago•0 comments

Hypervisor from Scratch

https://github.com/SinaKarvandi/Hypervisor-From-Scratch
2•pykello•55m ago•0 comments

U.S. states are shedding shareholder protections. That's an advantage for Canada

https://www.theglobeandmail.com/business/commentary/article-us-states-shedding-shareholder-protec...
1•petethomas•57m ago•0 comments

Set (Card Game)

https://en.wikipedia.org/wiki/Set_(card_game)
3•rickcarlino•58m ago•0 comments

Positive emotional bias could be a sign of cognitive decline in the aging

https://medicalxpress.com/news/2025-08-positive-emotional-bias-early-cognitive.html
2•PaulHoule•1h ago•0 comments

You Are Inevitably Performative

https://rishigurjar.com/blog/inevitable-performativeness
2•rishigurjar•1h ago•0 comments

Notion API importer, with Databases to Bases conversion bounty

https://github.com/obsidianmd/obsidian-importer/issues/421
28•twapi•1h ago•0 comments

Consumer Reports calls on Microsoft to extend support for Windows 10

https://advocacy.consumerreports.org/research/consumer-reports-calls-on-microsoft-to-extend-suppo...
4•giardini•1h ago•0 comments

NativeLaunch – Expo/React Native Starter Template with Supabase, CI/CD

https://nativelaunch.dev
1•jonypopovv•1h ago•1 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•4mo ago

Comments

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

https://reportmill.com/SnapCode

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