HN user

majewsky

15,655 karma

This process emits code when Premium Cola is present on standard input.

https://xyrillian.de (podcasts and blog) https://github.com/majewsky Mastodon: https://digitalcourage.social/@xyrill

What I say is often colored by my work experience, but opinions are always my own and not those of my employer.

Posts35
Comments7,231
View on HN
holocm.org 5y ago

Show HN: Holo (minimalistic configuration management; v3.0.0 out now)

majewsky
2pts1
news.ycombinator.com 5y ago

Ask HN: I was invited to speak at a computer museum. What should I tell them?

majewsky
9pts4
news.ycombinator.com 6y ago

Ask HN: Are React-like UI frameworks a fad or a genuine step forward?

majewsky
8pts2
old.reddit.com 6y ago

Map proposal for German long-distance train network

majewsky
1pts0
web.archive.org 6y ago

Understanding Neurotypicality (2006)

majewsky
3pts0
www.youtube.com 6y ago

Invisible Sound Design in the Legend of Zelda: Breath of the Wild (10 Min Video)

majewsky
1pts0
github.com 6y ago

Kubernetes 2.0 Milestone

majewsky
2pts0
news.ycombinator.com 6y ago

Ask HN: Favorite Manpage/Documentation Quotes?

majewsky
1pts0
news.ycombinator.com 7y ago

Ask HN: Which LDAP server doesn't require a degree to run?

majewsky
17pts14
news.ycombinator.com 7y ago

Ask HN: Favorite quotes from manpages/documentation?

majewsky
3pts0
news.ycombinator.com 7y ago

Ask HN: Best password manager(s) for mere mortals?

majewsky
4pts3
news.ycombinator.com 7y ago

Ask HN: What's the next big tech hype?

majewsky
2pts6
github.com 7y ago

Show HN: Libpackagebuild – generate Debian/Pacman/RPM packages from your Go app

majewsky
1pts1
www.youtube.com 7y ago

[video, 3 min] Bitcoin, as explained by AI

majewsky
1pts0
blog.bethselamin.de 7y ago

Notes on API design in Go

majewsky
2pts0
news.ycombinator.com 7y ago

Ask HN: Which parts of everyday life are more complex than people expect?

majewsky
24pts22
blog.bethselamin.de 8y ago

GDPR ahoy

majewsky
3pts0
web.archive.org 8y ago

WIPP Exhibit: Message to 12,000 A.D

majewsky
1pts0
www.youtube.com 8y ago

The Problem with Facebook [video, 7 min] (2014)

majewsky
2pts0
www.youtube.com 8y ago

Stephen Colbert's “Go Fund Yourself”

majewsky
9pts1
blog.bethselamin.de 8y ago

Does the HN crowd show up in monitoring?

majewsky
1pts0
blog.bethselamin.de 8y ago

Latency matters

majewsky
112pts105
github.com 8y ago

Helm plugin for showing a diff of what the next upgrade would change

majewsky
3pts0
news.ycombinator.com 9y ago

Ask HN: Resources for learning software design?

majewsky
20pts4
blog.bethselamin.de 9y ago

How to choose a gift for me

majewsky
1pts0
news.ycombinator.com 9y ago

Ask HN: Which types of jobs have been created in recent years?

majewsky
2pts0
github.com 9y ago

Show HN: Sqlproxy – Add query logging/filtering to a Golang database driver

majewsky
2pts0
blog.bethselamin.de 9y ago

How I run Certbot (as non-root and automated)

majewsky
2pts0
blog.bethselamin.de 9y ago

Argh-P-M – Dissecting the RPM file format

majewsky
2pts0
timeline.kde.org 9y ago

Timeline: 20 years of KDE

majewsky
4pts1

If your revenue is 25 billion

It isn't. They had a one-month period around February that, if every month ran like taht, would constitute a yearly revenue of 25 billion. The fact that they appear to not have published a new annualized revenue number since then suggests that the trend is not upwards, which would make sense with the growing number of companies that are asking questions about ROI on AI expenses and cutting their token spend.

Of course the degree doesn't help with that. What helps is accountability. When a bridge collapses, and it turns out the engineer who drew the plans made a mistake, they can be and often are held criminally liable.

When's the last time you saw a software engineer prosecuted for criminal negligence after a design error took down Cloudflare or whatever? Attitudes in software development will not change until that becomes a viable scenario that people anticipate when making design and implementation decisions.

Also, regardless of what you think of LLMs, it makes tech support for Linux a whole lot more accessible to the average person. There is going to be less of an expectation now that you need to have a Linux guru on speed dial for the occasional weird edge case situation.

It is very unclear whether the output of an AI tool is subject to copyright.

At least for those here under the jurisdiction of the US Copyright Office, the answer is rather clear. Copyright only applies to the part of a work that was contributed by a human.

See https://www.copyright.gov/ai/Copyright-and-Artificial-Intell...

For example, on page 3 there (PDF page 11): "In February 2022, the Copyright Office’s Review Board issued a final decision affirming the refusal to register a work claimed to be generated with no human involvement. [...] Since [a guidance on the matter] was issued, the Office has registered hundreds of works that incorporate AI-generated material, with the registration covering the human author’s contribution to the work."

(I'm not saying that to mean "therefore this is how it works everywhere". Indeed, I'm less familiar with my own country's jurisprudence here in Germany, but the US Copyright Office has been on my radar from reading tech news.)

You Just Reveived 5 months ago

Not exactly the same, but "sb." and "sth." are common abbreviations in dictionaries, e.g. "to meet sb." or "to pick sth. up". To those familiar with this convention, "s.o." can generally be inferred from context.

iPhone 17e 5 months ago

This does not square with especially Apple's unending obsession to make phones as thin as possible. Which is doubly stupid when it makes them so fragile that the first thing you do after taking it out of the box is to wrap it in a thick rubber shell.

Why Go Can't Try 5 months ago

The problem with the zero value business is that it also makes adding these QoL things in libraries difficult or outright impossible. Case in point, I tried building a library for refinement types, so you can have a newtype like,

  type AccountName string
except you write it like (abridged)
  type AccountName refined.Scalar[AccountName, string]

  func (AccountName) IsValid(value string) bool {
    return accountNameRegexp.MatchString(value)
  }
and that enforces an invariant through the type system. In this case, any instance of type AccountName needs to hold a string conforming to a certain regular expression. (Another classical example would be "type DiceRoll int" that is restricted to values 1..6.)

But then you run into the problem with the zero value, where the language allows you to say

  var name AccountName // initialized to zero value, i.e. empty string
and now you have an illegal instance floating around (assuming for the sake of argument that the empty string is not a legal account name). You can only really guard against that at runtime, by panic()ing on access to a zero-valued AccountName. Arguably, this could be guarded against with test coverage, but the more insidious variant is
  type AccountInfo struct {
    ID int64 `json:"id"`
    Name AccountName `json:"name"`
  }
When you json.Unmarshal() into that, and the payload does not contain any mention of the "name" field, then AccountName is zero-valued and does not have any chance of noticing. The only at least somewhat feasible solution that I could see was to have a library function that goes over freshly unmarshaled payloads and looks for any zero-valued instances of any refined.Scalar type. But that gets ugly real quick [1], and once again, it requires the developer to remember to do this.

[1] https://github.com/majewsky/gg/blob/refinement-types-4/refin...

So yeah, I do agree that zero values are one of the language's biggest mistakes. But I also agree that this is easier to see with 20 years of hindsight and progress in what is considered mainstream for programming languages. Go was very much trying to be a "better C", and by that metric, consistent zero-valued initialization is better than having fresh variables be uninitialized.

LLM=True 5 months ago

Claude is now forbidden from using `gradlew` directly, and can only use a helper script we made. It clears, recompiles, publishes locally, tests, ... all with a few extra flags. And when a test fails, the stack trace is printed.

I think my question at this point is what about this is specific to LLMs. Humans should not be forced to wade through reams of garbage output either.

76k gross per year in Germany is basically the same as that. 100k gross comes out to about 5.5k net per month. The big question is how much is already covered once you're down to the net pay.

(I'm German. This is my personal stance.)

Charging a tip for to-go items is preposterous. When dining in, I will indeed tip, usually by rounding up to the next 5 or 10 euro increment for a group meal, or to the next 1 or 2 euro increment for single meals (e.g. during lunch hours near the office). But this is only if the service is actually good. If a restaurant makes me wait more than 30 minutes for a quick lunch, they will be paid exactly the amount posted on the menu.

Claude Opus 4.6 6 months ago

He doesn't give hard data

And why is that? Should they not be interested in sharing the numbers to shut up their critics, esp. now that AI detractors seem to be growing mindshare among investors?

Claude Opus 4.6 6 months ago

Sucks that you got a really shitty response to your prompt. If I were you, the model provider would be receiving my complaint via clay tablet right away.

A silver lining, is it would likely be attempted via systemd. This may finally be enough to kick off a fork, and get rid of all the silly parts of it.

This misunderstands why systemd succeeded. It included several design decisions aimed at easing distribution maintainers' burdens, thus making adoption attractive to the same people that would approve this adoption.

If a systemd fork differentiates on not having attestation and getting rid of an unspecified set of "all the silly parts", how would they entice distro maintainers to adopt it? Elaborating what is meant by "silly parts" would be needed to answer that question.

jQuery 4 6 months ago

Nearly every time I write something in JavaScript, the first line is const $ = (selector) => document.querySelector(selector). I do not have jQuery nostalgia as much as many others here, but that particular shorthand is very useful.

For extra flavor, const $$ = (selector) => document.querySelectorAll(selector) on top.

How do you propose they fund the free usage otherwise?

Why do random HN commenters have to come up with a business model for free LLM usage? If LLMs are so great, they should not need to offer a free tier at all. Surely word of mouth would make people line up around the block to snatch one of those highly coveted subscriptions.