HNHacker News
TopNewBestAskShowJobs

ethmarks

325 karma · joined September 3, 2025

Ethan Marks
submissionscomments
ethmarks··on `satisfies` is my favorite TypeScript keyword (2024)
Does anyone know what was used to render these code blocks in the article? The mouseover tooltip is extremely cool. I've never seen anything like it before.

EDIT: I dug through the codebase and determined that it's using Shiki and TwoSlash for the syntax highlighting and tooltips.

ethmarks··on Nano Banana Pro
> now you're left with the bajillion other "grey market" models that won't give a damn about that.

Exactly. When the barrier to entry for training a okay-ish AI model (not SOTA, obviously) is only a few thousand compute hours on H100s, you couldn't possibly hope to police the training of 100% of new models. Not to mention that lots of existing models are already out there are fully open-source. There will always be AI models that don't adhere to watermark regulations, especially if they were created a country that doesn't enforce your regulations.

You can't hope to solve the problem of non-watermarked AI completely. And by solving it partially by mandating that the big AI labs add a unified watermark, you condition people to be even more susceptible to AI images because "if it was AI, it would have a watermark". It's truly a no-win situation.

ethmarks··on Open Source and Local Code Mode MCP in Deno Sandboxes
This is very interesting. So it's an MCP server that connects to what is effectively a sandboxed MCP "hub". This is a clever middle ground between using dozens of context-munching MCP servers and just giving the agent access to your command line.

One question: why is Deno used? I thought that it was a JavaScript runtime. Can pctx only run sandboxed JavaScript code? If so, what do you do if you need the agent to run a Python script? If not, I don't understand how using a sandboxed JavaScript runtime allows you to sandbox other things.

ethmarks··on GitHut – Programming Languages and GitHub (2014)
Absolutely stunning and ingenious visualization, but disappointing data. In 2014 there were 2.2 million repos, while in 2025 there are closer to 500 million. The repo was last updated seven years ago, so I assume that this project has been abandoned.

A cursory glance at the source code[1] reveals that it's using GitHub Archive data. Looking through the gharchive data[2], it seems like it was last updated in 2024. So there's 10 years of publicly accessible new data.

Is there any reason we (by "we" I mean "random members of the community" as opposed to the developer of the project) can't re-build GitHut with the new data, seeing as it's open source? It's only processing the repo metadata, meaning it shouldn't even be that much data and should be well under the free 1TB limit in BigQuery (The processed data from 2014 stored in the repo[3] is only 71MB in size, though I assume the 2024 data will be larger), so cost shouldn't be a concern.

I'm not experienced enough to know whether creating an updated version of this would take an afternoon or several weeks.

[1]: https://github.com/littleark/githut/

[2]: https://console.cloud.google.com/bigquery?project=githubarch...

[3]: https://github.com/littleark/githut/blob/master/server/data/...

ethmarks··on Trying out Gemini 3 Pro with audio transcription and a new pelican benchmark
Mission accomplished for Simon:

> Truth be told, I’m playing the long game here. All I’ve ever wanted from life is a genuinely great SVG vector illustration of a pelican riding a bicycle. My dastardly multi-year plan is to trick multiple AI labs into investing vast resources to cheat at my benchmark until I get one.

https://simonwillison.net/2025/Nov/13/training-for-pelicans-...

ethmarks··on Trying out Gemini 3 Pro with audio transcription and a new pelican benchmark
I highly doubt that any human could manually write a pelican SVG in a single shot like LLMs do. With a lot of guessing and checking of coordinate positions in the web browser, maybe they could do it.

I imagine that you could theoretically also guess and check without the web browser by manually rendering the SVG using some graph paper, a compass, a straightedge, and coloured pencils, but that sounds unbelievably tedious and also very error-prone.

ethmarks··on Trying out Gemini 3 Pro with audio transcription and a new pelican benchmark
Which model did you use in the example result? It looks fantastic.
ethmarks··on Gemini 3
I agree that the "will [person] say [word]" markets are stupid. "Will Brian Armstrong say the word 'Bitcoin' in the Q4 earnings call" is a stupid market because nobody a actually cares whether or not he actually says 'Bitcoin', they care about whether or not Coinbase is focusing on Bitcoin. If Armstrong manipulates the market by saying the words without actually doing anything, nobody wins except Armstrong. "Will Coinbase process $10B in Bitcoin transactions in Q4" is a much better market because, though Armstrong could still manipulate the market's outcome, his manipulation would influence a result that people actually care about. The existence of stupid markets doesn't invalidate the concept.
ethmarks··on Gemini 3
By 'fair', I mean 'all parties have access to the same information'. The stock market is supposed to give everyone the same information. Trading with privileged information (insider trading), is illegal. Publicly traded companies are required to file 10-Qs and 10-Ks. SEC rule 10b5-1 prohibits trading with material non-public information. There are measures and regulations in place to try to make the stock market fair. There are, by design, zero such measures with prediction markets. Insider trading improves the accuracy of prediction markets, which is their whole purpose to begin with.
ethmarks··on Gemini 3
And? Insider trading is bad because it's unfair, and the stock market is supposed to be fair. Prediction markets are not fair. If you are looking for a fair market, prediction markets are not that. Insider trading is accepted and encouraged in prediction markets because it makes the predictions more accurate, which is the entire point.
ethmarks··on Gemini 3
> If you are using it because you think it's Open Source I suggest you stop.

I did not know that. Thank you very much for the correction. I guess I have some keys to revoke now.

ethmarks··on Gemini 3
> The ability to add context via a local apps integration into OS level resources is big

Good point. I can see why integrated support for local filesystem tools would be useful, even though I prefer manually uploading specific files to avoid polluting the context with irrelevant info.

> Its own icon that I can CMD-TAB to is so much nicer

Fair enough. I personally prefer Firefox's tab organization to my OS's window organization, but I can see how separating the LLM into its own window would be helpful.

> having access to my chats for context has been repeatedly valuable to me.

I didn't at all consider this. Point ceded.

> I haven't looked at provider-agnostic apps and, TBH, would be wary of them.

Interesting. Why? Is it security? The ones I've listed are open source and auditable. I'm confident that they won't steal my API keys. Msty has a lot of advanced functionality that I haven't seen in other interfaces like allowing you to compare responses between different LLMs, export the entire conversation to Markdown, and edit the LLM's response to manage context. It also sidesteps the problem of '[provider] doesn't have a desktop app' because you can use any provider API.

ethmarks··on Google Antigravity
Depending on your definition of "learn", you can also use something akin to ChatGPT's Memory feature. When you teach it something, just have it take notes on how to do that thing and include its notes in the system prompt for next time. Much cheaper than fine-tuning. But still obviously far less efficient and effective than human learning.
ethmarks··on Gemini 3
Genuinely curious here: why is the desktop app so important?

I completely understand the appeal of having local and offline applications, but the ChatGPT desktop app doesn't work without an internet connection anyways. Is it just the convenience? Why is a dedicated desktop app so much better than just opening a browser tab or even using a PWA?

Also, have you looked into open-webui or Msty or other provider-agnostic LLM desktop apps? I personally use Msty with Gemini 2.5 Pro for complex tasks and Cerebras GLM 4.6 for fast tasks.

ethmarks··on Gemini 3
The point of prediction markets isn't to be fair. They are not the stock market. The point of prediction markets is to predict. They provide a monetary incentive for people who are good at predicting stuff. Whether that's due to luck, analysis, insider knowledge, or the ability to influence the result is irrelevant. If you don't want to participate in an unfair market, don't participate in prediction markets.
ethmarks··on Google Antigravity
Interesting that they include non-Gemini models. Both Claude and GPT oss are both on Google Cloud, so I assume that Antigravity is using GC as the provider and not making API calls to Anthropic or OpenAI.
ethmarks··on Gemini 3 Pro Model Card [pdf]
Does Google's team not proofread this stuff? Or maybe is this an early draft that wasn't meant to be released?
ethmarks··on Gemini 3 Pro Model Card [pdf]
> TPUs are specifically designed to handle the massive computations involved in training LLMs and can speed up training considerably compared to CPUs.

That seems like a low bar. Who's training frontier LLMs on CPUs? Surely they meant to compare TPUs to GPUs. If "this is faster than a CPU for massively parallel AI training" is the best you can say about it, that's not very impressive.

ethmarks··on The Uselessness of "Fast" and "Slow" in Programming
Is there a term for this kind of psychologically-targeted UX design?

For example, having a faster-spinning progress wheel makes users feel like the task is completed faster even if the elapsed time is the same.

ethmarks··on Cloudflare Global Network experiencing issues
You could easily cause great damage to your Cloudflare setup, but CF has measures to prevent random customers deleting stuff from taking down the entire service globally. Unless you have admin access to the entire CF system, you can't really cause much damage with rm.
ethmarks··on Cloudflare Global Network experiencing issues
A Ringworld reference in the wild?
ethmarks··on Can text be made to sound more than just its words? (2022)
But tonal information can be parsed without lexical understanding and vice versa.

Somebody cursing in French can still be interpreted as anger even if you don't understand French, and written profanity can still be interpreted as anger even if you didn't hear it spoken.

Tone and language do complent each other, but neither is a prerequisite for the other like your book analogy would suggest.

ethmarks··on I think nobody wants AI in Firefox, Mozilla
Is it really that big of a task? More so than maintaining custom spellcheck dictionaries in every supported language? Even if they only implemented OS spellcheck compatibility on MacOS and Windows and just used the existing custom spellcheck on other OSes, that'd still be a huge improvement and they'd only have to do the work for two OSes rather than every OS that Firefox supports.
ethmarks··on I think nobody wants AI in Firefox, Mozilla
> Or they can steal vertical tabs from Vivaldi.

Firefox already has vertical tabs and they work great.

> Or they can steal the profile switching from Vivaldi.

I'm pretty sure that Firefox has profile switching in some capacity, although I don't personally use it and can't vouch for it.

As for the rest of these, I agree completely. Firefox has too many wacky AI experiments and not enough normal browser features.

ethmarks··on Ask HN: Anyone else disillusioned with "AI experts" in their team?
I don't think they meant "quit your job", just "be on the lookout for another".

If your current job is unstable because nobody there knows what they're doing, it's good to have a fallback.

ethmarks··on Valve is about to win the console generation
But you can still stream video on normal Android devices, no? My Motorola phone supports Disney+. Why did studios object to streaming on Fire tablets unless it had kernel DRM but they're fine with streaming on easily-rootable phones?
ethmarks··on Valve is about to win the console generation
> I can imagine a whole scene popping up where everyone cheats to the max, creating whole new game modes.

That would be very interesting. I also bet that people would start developing bots that play the game better than a human could and eventually it would essentially turn into digital BattleBots.

ethmarks··on Transpiler, a Meaningless Word (2023)
What if the minification is inseparable from the transpiler? Like what if it converts the SCSS into some weird graph representation, applies the transpilation features (variables, mixins, etc) on that graph representation, then converts the graph representation into minified CSS? At no point in the process was it ever human-readable CSS. I don't know enough about the internals of transpilers to know if they actually do anything like this, but one could imagine a hypothetical program that does.

And furthermore, what if you run Prettier on the minified output, turning it into readable CSS? The pipeline as a whole would input SCSS and output formatted CSS and therefore would be considered a transpiler, but the subprogram that does all of the SCSS heavy lifting would input SCSS and output minified SCSS, making it not a transpiler.

P.S. I love your username

ethmarks··on Transpiler, a Meaningless Word (2023)
Would it still count as a transpiler if it minifies the code at the end?

For example, most SCSS workflows I've worked with converert SCSS source code into minified CSS, which is pretty difficult for a human to read. But I think that SCSS => CSS still counts as transpiling.

ethmarks··on Transpiler, a Meaningless Word (2023)
Doesn't it make sense to use words that mean what you're using them to mean?

By your logic I could use the term "apple" to describe apples, oranges, limes, and all other fruit because they all behave in much the same ways that apples do. But that's silly because there are differences between apples and oranges [citation needed]. If you want to describe both apples and oranges, the word for that is "fruit", not "apple".

Using a touchscreen is less precise than using a mouse. If the user is using a touchscreen, buttons need to be bigger to accommodate for the user's lack of input precision. So doesn't it make sense to distinguish between mice and touchscreens? If all you care about is "thing that acts like a mouse", the word for that is "pointing device", not "mouse".

← PreviousPage 4 of 6Next →