For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | shangxiao's favoritesregister

This is something people love to rage about, yet it's not one with an obvious fix. The counterpoint is that this leaves money invested, which means others invest in other things, and still entails interest payments. It exists in part because you don't want someone who inherited his parents' house and wants to move in to go broke trying to pay taxes, or have to re-mortgage it, with an even stronger case with family farms.

And it exists in part because there are so many legitimate cases for doing it, even as a wealthy person: pretend you're a relatively successful businessman whose company has appreciated to $50mm. In this world, you can't just leave your gains unrealized and borrow against them. So you can

- Try to find somebody to sell to, which is a sketchy move. Of course, as your company continues to appreciate, you will be forced to continue reducing your ownership stake. Over time, this will make keeping a family business in the family largely impossible.

- Try to find money to pay taxes. This means less money for R&D, for expansion, for your employees.

- Just dump the whole business to private equity and move on.

These all suck, and the government generally collects money on assets as they move not assets at rest. I see no way to resolve it that isn't suckier than the status quo and so am left with the conclusion that people who agitate for such changes are more resentful of the rich than they are worried about the justice or lack thereof of tax avoidance.


I wish it was more commonly understood that capitalism's success lies precisely in the fact that it's a decentralized, self-regulating system robust against the failure of individual nodes, and has very little to do with the "capital" part of it, which if anything appears to drive wealth inequality more than anything else.

I can make a guess: GP does not know, he started working on the software and pointlessly duplicated existing projects, but with worse quality, because he neglected to survey the landscape.

I have noticed that happening regularly and out of curiousity interviewed those fellow programmers. I found out it's not because of lack of diligence, or because they attribute no value to a survey, but because of a risk-loving psychology trait that expresses itself in staking out ground and claiming it as one's own. (Armchair psychology warning, I am not qualified to make that conclusion; leave the real work confirming this hypothesis to the scientists in the field.)

IMO, this behaviour is harmful and we should work together to socially shun it like we already do for compulsive hoarding of physical objects. We have trouble finding a piece of software that works well because we spend so much effort to repeatedly sift through the mountains of published software that is mostly garbage.


I don't have a startup but I did make a useful little Python library while at my previous job to help ease the pain with using argparse to make CLIs.

It's called bargeparse [1]. The idea is to define an entry point function and use its signature as a means to declare the CLI arguments & options. I was surprised at how well Python's syntax for function arguments works for this... especially the use of pos-only & keyword-only arguments to force a particular style.

[1] https://github.com/shangxiao/bargeparse


I noticed this with one of my favorite channels, Vsauce… they were one of the pilot channels to be “upgraded” to YouTube Red, back when that was a thing; the series was called “Mind Field”. I never subscribed to it when it was premium, but when YouTube Red shut down it all became free.

I tried watching a few episodes of the ostensibly “higher quality” format of Mind Field, and it was demonstrably worse in most aspects. Bloated, way more filler, way more pointless behind the scenes stuff of the host interacting with the guests, and an overall much slower pace of interesting material. It felt a lot more like a cookie cutter Nat Geo show instead of the denser, faster paced material of Vsauce.

Overall I think that the smaller, self-produced (or minimally produced with small teams) format is the future and I’m glad to see that YouTube is failing to change that despite their efforts.


Same with the Big Lebowski, but in a much more deliberate (and professional) way. The Dude, imagining himself in a film noir story, thinks that every detail is some clue relevant to Bunny's disappearance, but turns out to be completely irrelevant: the guy following the Dude in the VW, the essay in the Dude's car, Jackie Treehorn's note, etc. Instead, basically every single event in the movie after exposition is a red herring when it turns out that the Dude's initial hunch that Bunny kidnapped herself was true all along.

> The Rust or Haskell compilers, for example, insist on policing whatever private understanding you might have about the meaning of your code.

The thing about "private understandings" is that they're just another way of saying "we expect ceaseless, flawless vigilance" (as one writer put it), not to mention "flawless communication and training."

Languages which impose weird restrictions tend to do so because it allows them to offer (nearly) ironclad guarantees about something else.

There are certain programming idioms that work brilliantly in Haskell. Those same idioms would be utterly miserable in the presence of unrestricted mutation.

Or to take the author's other example, Rust forbids shared mutable state, and it keeps careful track of ownership. But I can freely use native CPU threads without worrying about anything worse than a deadlock, and I can bang directly on raw bytes without worrying about anything worse than a controlled runtime failure. And this remains true even if team communication occasionally fails or if someone makes a mistake.

Sometimes I want to rule out entire classes of potentially dangerous mistakes, and not just have a "private understanding" that nobody will ever make certain mistakes.

As always, it's a matter of using the right tool for the job. If you need to write a high-performance, heavily-threaded network server that parses malicious binary data, Rust is a great tool because of those restrictions. If you need to do highly exploratory programming and invent new idioms to talk about your problem domain, Common Lisp is awesome. And if you need to build libraries where everything has a rigid mathematical structure, Haskell is a great tool.

In my experience, Commony Lisp is a deeply opinionated language, and its most dramatic opinion is that "your code and your data should have identical representations and structures." And for the right problem, that restriction is extremely powerful.


I've used Tesseract.js to recognise the https://** links from the camera input and to make them clickable.

First issue I've encountered was the text recognition performance. Depending on the camera input (if the image contained something that looked like the text or not) I've got 2-20+ seconds per 640x640px image for text recognition on iPhone X. Not so fast as you may see. But the recognition was pretty accurate though.

The performance, as expected, improves when the image size is getting smaller and the amount of text on the image is also smaller.

Since I did't want to recognise the whole text, but only the links, I've used the TensorFlow Object Detection model to quickly find the areas with the text http://**. Then, instead of recognising the whole image I needed to do it only for smaller parts of the image. This gave some improvements to the performance: from the variable 2-20 seconds per frame I've got more stable 0.5-1 seconds. Also not good, but several times faster.

I've described the challenges in more details here https://trekhleb.dev/blog/2020/printed-links-detection/. But to sum up, I had a good recognition quality with an arguable performance with Tesseract.js


I bet they weren’t as dumb as you think and you were passed on for being stubborn and drunk on ego.

Of the many scenarios where amortized complexity is not okay, code in a tight loop where predictable performance is key, e.g. code running game logic, jumps immediately to the top of the list. The fact that you were unable to incorporate this into the conversation makes me suspect you were more interested in putting on a show than a practical solution to the task at hand. The worst case performance for a dynamic array is O(n), but the amortized performance is constant. They aren't the same thing.

You may be a different, more mature, engineer nowadays. But, when I encounter the type of persona your story describes I tend to respond with strong no’s irrespective of whether you have since written a textbook.


I know the post is about Windows 11 but I installed Windows 10 for someone on a laptop about 2 months ago and it had the most crazy dark pattern I've ever seen to be able to proceed past the installation screen without a Microsoft account.

Short of not connecting to the internet first the only way I saw where it was possible to create an offline account was to first attempt to sign in using an incorrect password with a hotmail account. It was only after failing that where an option appeared to create a local account.

It doesn't stop there too. Now once in a while when they turn the machine on and reach the login screen, there's a big banner that says something along the lines of "Hey, you're missing out on very important features and are less secure by not registering an account with Microsoft..." with a call to action to link a MS account. This also hides the login screen by default and the only way to ignore that and get to the login screen is to click somewhere in the empty space but for a non-technical user this isn't intuitive. They always try to click the only thing that looks clickable. It's so shady.

Sadly I had to make a MS account for them in the end to unlock Windows "S" mode into a regular version of Windows 10 Home so I could install an app that wasn't in the app store on their machine. The only way to do that was to make a MS account for the Microsoft Store but fortunately you can still login to Windows itself with the offline account. It never ends.


> At a previous company, there was an “infamous” commit in our main repository. The commit was about 10 years old, and it replaced every tab with 4 spaces.

If have commits like this, add the ids to a file `ignorerevs`, and then tell git about it:

   git config --local blame.ignoreRevsFile ignorerevs
Then at least `git blame` will still give useful results. (This is a relatively new git feature, added a year or two ago.)

A great overview of the pros and cons of different approaches is given in https://de.slideshare.net/billkarwin/models-for-hierarchical...

It never seemed important to the CEO of a previous company I worked for that we had something to say, only that we gave off the impression that we had something to say. We hired an outsourced blog writing service to fill our wordpress instance with generic, inoffensive platitudes and listicles poorly cribbed from Wikipedia and the ONS. Squint a little bit and you could convince yourself there was value to it, but nobody with any experience in the problem space would treat it as anything more than marketing fluff. His hope was always that one day we would get rewarded by the great Google algorithm and appear on the first page for search terms we were convinced our users were looking for, but the end result was that our blog was largely designed to be read by robots.

It's the same thing as the tweaks you have to perform for SEO optimisation, some have questionable value to the end user but you jump through the hoops anyway because it's what is done, by pleasing the robots you're rewarded with a higher search position.


Not to hijack this (I have zero affiliation with this project), but RoboHash has been my absolute favorite version of this: https://robohash.org/

Their tagline is (or was at least) 'if 4chan found a bloomberg terminal'.

I say this as someone who frequented both communities at one time or another: they are very very very alike. I wouldn't be surprised if this who thing is a charade to take money from 'normies' as much a wall street.


There’s a long history of similar occurrences that follow along a common line: whatever appears to support individual investors will be the path taken by politicians and regulatory bodies.

Right now it appears that the public wants to be able to trade on their terms because there is this narrative that the little guy is finally sticking it to the big bad hedge funds. In reality there is probably very little truth to this. However, support for the individual investor plays extremely well which is why you see politicians from both sides joining forces on this issue. A rumor makes it halfway around the world while the truth is still putting its pants on. Nobody is interested in the subtleties around these issues where there almost certainly should be regulations in place or at least warnings from those who do actually know better. But late in bull markets when speculation is running wild those who try to be the voice of reason are run over by the masses until they shut up and go away.

Galbraith wrote about this in the 1950’s and if you read his account of the 1929 crash the parallels are eerily similar. Nobody wants to be told they aren’t making money due to skill but because they’re caught up in a dangerous bubble. In the aftermath of a crash when tremendous sums are lost, nobody blames the speculators, they always find another scapegoat- the regulators, the brokerages, the hedge funds- whomever. It doesn’t matter so long as the speculator is held up as a victim. I expect this to end no differently.


Cash equities settlement is t+2, as are most transactions in financial markets. This is just how the underlying plumbing of the markets work, nothing to do with robinhood. You have the illusion of instant trading, but under the hood there's a huge amount of boring settlement machinery.

Incidently, this is no different to the experience of a big bank or hedge fund trader. Settlement risk is real, and institutions have entire risk management departments devoted to it (banks even need to capitalise for it, to cover precisely these types of scenarios)


Based on other comments here, I did a little digging on Wikipedia, in case others with zero background (like me) are curious.

This appears to be a nuclear thermal rocket [1] which would use a nuclear reaction to directly heat propellant (e.g. hydrogen) that is ejected.

This is different from a nuclear electric rocket [2] which would produce electricity which would then generate propulsion [3] using a smaller quantity of propellant, e.g. using an ion thruster [4].

It is also different from a fission-fragment rocket [5] where the nuclear fission products themselves are ejected for thrust directly.

[1] https://en.wikipedia.org/wiki/Nuclear_thermal_rocket

[2] https://en.wikipedia.org/wiki/Nuclear_electric_rocket

[3] https://en.wikipedia.org/wiki/Electrically_powered_spacecraf...

[4] https://en.wikipedia.org/wiki/Ion_thruster

[5] https://en.wikipedia.org/wiki/Fission-fragment_rocket


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:

HN For You