Hacker Newsnew | past | comments | ask | show | jobs | submit | zaphirplane's commentslogin

That forign key column is saving duplicating multiple columns

But I don’t think that’s the top 5 reasons of normalization


Qt looks nice as a user and gnome gtk isn’t too bad either

Wx isn’t bad either. https://wxwidgets.org/

You don’t get an app that looks the same across platforms. You do get apps that look like they belong on your platform, even though the code is cross-platform. It uses the native toolkit no matter where you run it across Windows, GTK, Qt, Motif, macOS/Carbon, macOS/Cocoa, and X11 with generic widgets.

Older platforms are also supported, like OS/2, Irix, and OSF/1.

https://wiki.wxwidgets.org/Supported_Platforms

It’s a C++ project, but it has bindings for most of the languages you’d use to build an application. Ada? Go? Delphi? Ruby? Python? Rust? Yes, and more. https://wiki.wxwidgets.org/Bindings


The problem is, most of these bindings are out-of-date. Delphi from 2012, Basic from 2002, D from 2016. wxRuby is a dead link. wxAda was already dead in 2009, as the discussion I can google suggests.

So, if you use wxWidgets, you probably have to use either C++ or Python version, others are unlikely to be supported.


wxRuby has been resurrected as wxRuby3, see https://mcorino.github.io/wxRuby3/

Among actively developed bindings, there is also wxRust at https://crates.io/crates/wxdragon


3 things bug me Now why would cursor agree to that unless the offer was better than what their market valuation + acquisition premium < 60

This was a similar play for twitter by the same person

While an innovator at the time, today there are a lot of LLM coding solution, sold by model providers, model aggregators even open source ones , it’s not obvious what is being bought that isn’t a feature of vs code or one of the LLM agents ( as the dismissive saying goes )


The distinction here is, this law is a do as I say not as I do. Different laws for different dob ( dob not age )

SQLite is famous for single writer how does that reconcile with you criticism of the article

It’s well established if the US wants to they can find them and crypto can be traced.

Same question though how are they paying for the domain, assuming this is on the plaintiff to trace


What does "finding them" even means in this context? There are many hacker organizations located in Russia that are much worse than Anna's Archive. From my understanding those also operate websites / platforms to offer services.

Well clearly that’s false? Not all crypto transactions are traceable for example. And since they haven’t found them, that seems to disprove your statement doesn’t it?

Not really this is civil case not the full weight of a state behind it

> crypto can be traced

Anna's Archive exclusively uses Monero, which can't be by design


How does it insert itself between the agent and the mcp, does —from edit the mcp file to add itself as a mcp

It becomes the only MCP. All other MCPs are registered within the tool.

This has been hashed to death and back. The mcp allows a separation between the agent and the world, at its most basic not giving the agent your token or changing a http header , forcing a parameter.

Well yes you don’t need those things all the time and who knows if the inventor of mcp had this idea in mind but here we are


The separation is being oversold as if only MCP can do it, which is laughable. Any CLI can trivially do exactly what MCP do in terms of separation.

How ? Have you used these things when they are blocked and try to get around the block

What are examples of better ones. I don’t get the let me show the world my work and I’m not a fan of large PR


if you mean better messages, it's not really that. those junk messages should be rewritten and if the commits don't stand alone, merged together with rebase. it's the "logical chunks" the parent mentioned.

it's hard to say fully, but unless a changeset is quite small or otherwise is basically 0% or 100%, there are usually smaller steps.

like kind of contrived but say you have one function that uses a helper. if there's a bug in the function, and it turns out to fix that it makes a lot more sense to change the return type of the helper, you would make commit 1 to change the return type, then commit 2 fix the bug. would these be separate PRs? probably not to me but I guess it depends on your project workflow. keeping them in separate commits even if they're small lets you bisect more easily later on in case there was some unforseen or untested problem that was introduced, leading you to smaller chunks of code to check for the cause.


If the code base is idempotent, I don't think showing commit history is helpful. It also makes rebases more complex than needed down the line. Thus I'd rather squash on merge.

I've never considered how an engineer approaches a problem. As long as I can understand the fundamental change and it passes preflights/CI I don't care if it was scryed from a crystal ball.

This does mean it is on the onus of the engineer to explain their change in natural language. In their own words of course.


Commits don't show "how an engineer approaches a problem". Commits are the unit of change that are supposed to go into the final repository, purposefully prepared by the engineer and presented for review. The only thing you do by squashing on merge is to artificially limit the review unit to a single commit to optimize the workflow towards people who don't know how to use git. Personally I don't think it's a good thing to optimize for.


Preserving commit history pre-merge only seems useful if I had to revert or rebase onto an interstitial commit. This is at odds with treating PRs as atomic changes to the code base.

I might have not stated my position correctly. When I mean "squash on merge", I mean the commit history is fully present in the PR for full scrutiny. Sometimes commits may introduce multiple changes and I can view commit ranges for each set of changes. But it takes the summation of the commits to illustrate the change the engineer is proposing. The summation is an atomic change, thus scrutinizing terms post-merge is meaningless. Squashing preserves the summation but rids of the terms.

Versioned releases on main are tagged by these summations, not their component parts.


"Tell me you don't have to debug foreign codebases often without telling me" ;)

The primary value of commit history comes from blame, bisect and corresponding commit messages. There's no reason to "treat PRs as atomic changes to the code base", commits are already supposed to be that and PRs are groups of commits (sometimes groups of size 1, but often not).

> When I mean "squash on merge", I mean the commit history is fully present in the PR for full scrutiny.

And when you merge the set of commits prepared by the author for review in, you get both "summations" and individual commits stored in the commit graph (where their place is) and you get to choose which way you want to view them at retrieval time without having to dig up things outside of the repository. Sometimes it's useful to see the summations only ("--first-parent"), sometimes you only want the individual atomic changes ("--no-merges"), sometimes you want to see them all but visually grouped together for clarity ("--graph"). When you squash on merge, you just give all that flexibility away for no good reason.

It's a commit graph, not a commit linked list, so treat is as such.


If you don't care about how the problem was solved, why are you reviewing it at all?


I was hoping for a deeper article


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: