HNHacker News
TopNewBestAskShowJobs

teh

737 karma · joined July 5, 2010

submissionscomments
teh··on Ideas on modernizing the open-source desktop
FWIW I am using gnome 49 and 3 finger swipe works out of the box on my asahi macbook linux.
teh··on LeMario: Training a JEPA World Model on Super Mario Bros
benbye - do you have any intuition why the model only needs 4 frames to work? I played with LeWorldModel and I am mystified why the latent prediction frame number is so small. It's an almost Markov like property where a short history is packaged as state.
teh··on Local Qwen isn't a worse Opus, it's a different tool
I sometimes wonder how much of intelligence is being good with tools.

I feel pretty averagely smart but give me some good tooling like a good editor, a good type system, semantic grep, good testing and some solvers and I can actually deliver some work.

Maybe the trick isn't 500 billion parameters but a model super integrated with the task at hand for iteration and debugging?

FWIW the article really mirrors my own experience. I can run a small gemma4 for quick edits (and it's fast!) or data cleanup but for other tasks you do need a different tool (claude).

teh··on Shell Tricks That Make Life Easier (and Save Your Sanity)
Another useful "Emergency exit" is CTRL+Z which stops the process and cannot be intercepted.

It's often faster than hitting CTRL+C and waiting for process cleanup, especially when many resources are used. Then you can do e.g. `kill -9 $(jobs -p)` to kill the stopped tasks.

teh··on Log File Viewer for the Terminal
Chrome uses sandboxing and a lot of safe tooling (wuffs, rust) for untrusted data.

curl is heavily fuzzed and you still mostly control what you are downloading unless the target is compromised.

With logs the attacker controls what goes into your logs.

And you don't need to really look very hard, there are a fair number of very recent stack and heap overflows: https://github.com/tstack/lnav/issues?q=is%3Aissue%20heap%20...

teh··on Log File Viewer for the Terminal
Super useful tool but need to be aware that this is reading potentially untrusted input (e.g. in the case of http request logs) and written in c++, so a possible attack vector. I use lnav where I trust the logs, but do wish a safe implementation existed.
teh··on An incoherent Rust
There is precedent: with type checkers like pyright you can opt into specific checks, or have a basic, standard, strict setting, each expanding the set of checks done.

How would dependencies work in this schism? E.g. if serde starts using named impls, do all dependencies have to use named impls?

teh··on Cue Does It All, but Can It Literate?
I can't fully answer your question but I did once spend about a week porting plain internal configuration to cue, jsonnet, dhall and a few related tools (a few thousand lines).

I was initially most excited by cue but the novelty friction turned out to be too high. After presenting the various approaches the team agreed as well.

In the end we used jsonnet which turned out to be a safe choice. It's not been a source of bugs and no one complained so far that it's difficult to understand its behaviour.

teh··on NixOS Is Not Reproducible
I feel you (like many people) got burned by the steep learning curve. Empirically some pretty high powered companies use nix successfully. It's of course always difficult to know the counterfactual (would they have been fine with ubuntu) but the power to get SBOMs, patch a dependencies deep in the dependency stack, roll back entire server installs etc. really helps these people scale.

nixpkgs is also the largest and most up to date package set (followed by arch) so there's clearly something in the technology that allows a loosely organised group of people to scale to that level.

teh··on Ladybird browser spreads its wings
I feel the same way. Excited to see another attempt. But it's a c++ engine so not something I would want to expose to the internet really.
teh··on Amazon Redshift re-invented
I've looked into this but saw hugely variable throughput, sometimes as little as 20 MB / second. Even if full throughput I think s3 single key performance maxes out at ~130 MB / second. How did you get these huge s3 blobs into lambda in a reasonable amount of time?
teh··on Security Engineering – A Guide to Building Dependable Distributed Systems
This is a great book!

After reading it I found it much harder to enjoy movies showing bad security though (such has heists, nuclear anything, ..).

E.g. from the book I learned about the IAEA recommendations for safekeeping nuclear material [1], and it's pretty clear that smart people spent some time thinking about the various threats.

Anyway, rambling. It's a great and very entertaining book, go read it!

[1] https://www-pub.iaea.org/MTCD/Publications/PDF/Pub1481_web.p...

teh··on How Does Lazy Evaluation Work in Haskell? (2014)
I just spent some time implementing a lazy VM: Note also the push/enter VS eval/apply implementation change in GHC described in [1].

[1] https://www.microsoft.com/en-us/research/publication/make-fa...

teh··on Over 150k botanical illustrations enter public domain
I think this is a common misunderstanding. The images are in the public domain. Nothing stops Getty (or you, or anyone) from selling them, even though you can just use them for free.

The value-add service that Getty offers is legal indemnification, i.e. they cover the legal costs if the image turns out to be copyrighted after all. To offer this service they spend some time and money upfront to research images' copyright status.

Whether you think that's good value for money is up to you.

teh··on Guide to the London Startup Ecosystem
More often than not recruiters (external and in-house) make up large numbers to get you to reply. Here is a verbatim quote from a mail I got last year:

> For the right candidate year 1 comp will be up to £500k.

After going through a three hour coding test, phone screen + onsite it turned out to be 120k + smallish bonus. Maybe I'm not the right candidate but most likely 500k was never on the table.

It's not the first time this has happened to me or people I know either. What I'm getting at is that I'd take the Oxford Knight compensation numbers with a pinch of salt. Those 300k jobs _do_ exist but nowhere near as many as in the US.

Additionally levels.fyi or glassdoor data doesn't support a large number of 300k jobs in London.

teh··on Secure EcmaScript, a runtime for running third-party code safely
The original SES doesn't seem to do anything to prevent meltdown/spectre attacks [1]

This version removed direct access "Date" [2] but I'm not sure I'd trust any code running in the same process space given how hard it is to fix spectre in general.

[1] https://github.com/google/caja/wiki/SES#current-date-and-tim...

[2] https://github.com/Agoric/SES/tree/master/demo#taming-dateno...

teh··on UK's Open Banking to Launch on 13 January
I think this is the UK's implementation of EU PSD2 directive (e.g. [1]) so may not survive brexit. Looking forward to what'll come out of it though!

[1] https://www.tsys.com/news-innovation/whats-new/Articles-and-...

teh··on A million-dollar engineering problem
Hi, drop me a line at tom@wearewizards.io :)
teh··on When You Should Use Lists in Haskell (Mostly Not)
We're mostly using Protolude at the moment. It has some nice properties, e.g.

* "id" renamed to "identity" so you can use id in your own code

* panic functions like "notImplemented"

* a generic string converter "toS"

* lots more

But to be fair most modern preludes work OK.

Foundation is a bit different in that it doesn't ship a huge amount yet but has the potential to eventually replace the core prelude with saner default types like utf8-encoded strings. If you need to ship to production yesterday I would not use Foundation just yet.

teh··on When You Should Use Lists in Haskell (Mostly Not)
I do agree but I also remeber that Haskell is 27 years old. Newer Haskell-inspired languages like PureScript don't have a built-in list any more.

There's a lot of old stuff in Haskell, e.g. String which is a list of char. We have a number of new preludes (base, foundation, protolude, ..) that improve the situation a lot, so I'm not sure we really need a "python 3" moment.

We could definitely be more aggressive in pointing out that you need to use a new prelude though.

teh··on A million-dollar engineering problem
I've been joking with friends that my next job will be AWS efficiency guru. I've somewhat optimized our own use, but I think I could use similar, simple rules to get 20% out of a 500k / month budget.

Give me what I save you in 2 months and I'll have a good business :)

teh··on Google AMP Is Not a Good Thing
I'm not sure you are arguing against any point the article made, rightly or wrongly?
teh··on Why hasn't Haskell taken over the world? And the curious case of Go
That's the weirdest argument I have heard against Haskell so far. Re-factoring is the single best thing in Haskell IMO. 90% of cases are 1/ change type 2/ fix fall-out 3/ done.
teh··on Add-ons in 2017
I just migrated a complex extension and with Firefox 52 most features are there. It was a bit painful but the new API is much better IMO. Also, we now have one code base less to maintain.
teh··on Is Nuclear Power Vital to Hitting CO2 Emissions Targets?
That's just a list of the positives. I think it'd be useful to your argument to also provide some "real world" nuclear experience.

E.g.

* The tax payer in Germany is picking up most of the estimated 100+ billion Euro cleanup of their reactors over the next 100 years.

* Sellafield cleanup alone is going to be £120 billion [1].

* New reactors in Europe are 2-3x over budget and not finished yet. So if we started constructing immediately then 2030 is optimistic [2].

* The chunk of Japan that's a no-go zone isn't that small. Have a look at Google maps some time.

I'd rather spend the 200 billion that new reactors will cost us on energy storage and many lower-risk, known-good providers like wind, thermal to spread risk.

[1] https://www.gov.uk/government/uploads/system/uploads/attachm...

[2] https://en.wikipedia.org/wiki/Olkiluoto_Nuclear_Power_Plant#...

teh··on Battery Status API being Removed from Firefox due to Privacy Concerns
That still leaks a number, let's say it's 0-5h and resolution is 1 minute, that's 60*5 == 300, so roughly 8 bits of entropy.

A `onBatteryLow` callback might do the trick?

teh··on The Linux graphics stack from X to Wayland (2011)
I've been running on Wayland for a year with only minor issues. Which distro are you using?
teh··on Command-line tools can be faster than a Hadoop cluster (2014)
What kind of data do you have? Is this mostly text, or more like compressed time series?
teh··on Four billion messages an hour: benchmarking Deepstream throughput
t2 instances have credits that are replenished at a constant rate, and used up when you use the CPU - is this sustainable for more than 1h?

That's ~25MB of data per second for an in-memory workload over 6 machines. I think they missing a zero on the size of the messages?

teh··on Go's first commit
We had a look at first commits from various projects a while ago [1] - I like how the first commits get cleaner the newer the projects are, presumably because version control became more ubiquitous.

[1] https://blog.wearewizards.io/first-commits

Page 1 of 5Next →