HNHacker News
TopNewBestAskShowJobs

ISO-morphism

637 karma · joined September 26, 2018

Stallman was right.

[ my public key: https://keybase.io/isomorphism; my proof: https://keybase.io/isomorphism/sigs/fvcsNfzwrpDIJsYDgc9wrd6dsQUddwIFseDAp2s4Wbk ]

submissionscomments
ISO-morphism··on The Fundamentals of Asyncio
This is great, thank you! Python's asyncio has certainly confused me more than other languages' async-await implementations.

Nit in [1]: When timing durations inside of a program it's best to avoid the system clock as it can and does jump around. For Python, prefer time.monotonic() or time.perf_counter() over time.time() in those situations.

[1] https://github.com/anordin95/a-conceptual-overview-of-asynci...

ISO-morphism··on iTerm2 critical security release
I've done the same, but in case you didn't know Kitty can do that automatically (though it does a bit more that you may or may not want it to do)

https://sw.kovidgoyal.net/kitty/kittens/ssh/

ISO-morphism··on Google’s TOS doesn’t eliminate a user’s Fourth Amendment rights, judge rules [pdf]
> what's going on under the hood

Rather simple methods are surprisingly effective [1]. There's sure to be more NN fanciness nowadays (like Apple's proposed NeuralHash), but I've used the algorithms described by [1] to great effect in the not-too-distant past. The HN discussion linked in that article is also worth a read.

[1] https://www.hackerfactor.com/blog/index.php?/archives/432-Lo...

ISO-morphism··on Pandoc
It _should_ be, but when I've tried to use format=flowed text still ends up displayed hard wrapped, especially on major mobile clients.
ISO-morphism··on US developers can offer non-app store purchasing, Apple still collect commission
As I couldn't find the nice page about the IAP policy that I read and found quite clear ~4 years ago (you should verify, don't trust people on the Internet): the old rules prior to the Epic and other court cases would say "Only for those users that set up payment while using the app." From what I gather, the current rules would be more lax, but the old can then serve as an upper bound.

The main rules were:

1) A user making a payment that has any effect on app functionality (this is very broad) from inside your app must go through Apple IAP (paying 30% commission). There were some exceptions, but mainly think buying physical goods - Apple isn't forcing the use of IAP for EBay or Amazon retail.

2) You may not link to, or even mention other payment methods.

Really it comes down to: if there is any difference in what the app will do for a user before and after they pay money then that money paying must go through Apple and then Apple will give it to you (minus 30%). So what a lot of apps did is just open to a login screen. No sign up button, no link to your homepage, heck, no links anywhere. The downside is that users have to know about your app from at least one more channel than searching on the App Store, but that's not a very high bar. Probably less common if you're B2B, but for B2C a lot of them would pay their subscription through Apple if possible, the experience is great: one central place in system settings showing all your subscriptions with easy cancellation buttons and enforced standard refund/proration semantics.

ISO-morphism··on Consumers defrauded on Zelle are left high and dry by the banks that created it [pdf]
In the US, Zelle vs. Venmo is comparable to debit card vs. credit card. With Zelle/debit, you're basically mailing cash - it might get lost in transit, your money is gone right away. With Venmo/credit, there's a middleman with a big pile of cash that assumes the risk of money being in-flight, and usually eats fraud/errors as a cost of doing business in exchange for selling data about your spending to advertisers.
ISO-morphism··on Tolkien, 50 Years On
For things like "there's" vs. "there're", not too much harm besides a loss of precision, Grammer can be sloppy and meaning is still understood. But for "could care less" or "cannot be understated" or "irregardless" they're _literal_ negations of intended meaning used unsarcastically and unironically. How does that not irk you at a visceral level? Learning English is already hard enough, and we want to sprinkle in "sometimes what is meant is the exact opposite of what is said, good luck figuring out when, rely on context I guess?"
ISO-morphism··on Cellebrite asks cops to keep its technology secret
They could get lucky and find one that fell off of a truck.

https://signal.org/blog/cellebrite-vulnerabilities/

ISO-morphism··on Mullvad Browser
Not sure if you're being sarcastic or not, but Windows 11 users who use Google chrome are only really a crowd at the User Agent string level. Chrome allows much deeper fingerprinting.
ISO-morphism··on Hurl 4.0.0
To hurl means to throw forcefully, and is commonly used as a synonym for vomiting, c.f. "throw up"
ISO-morphism··on Automakers are starting to admit that drivers hate touchscreens
I completely agree with you, and I think you've worded this better than I have.

I was trying to advocate for the middle path, where there's healthy communication from both sides, to the point that developers trust when "the business" makes a decision - not to the point of engineering completely blocking the, unquoted, business.

ISO-morphism··on Automakers are starting to admit that drivers hate touchscreens
I believe that the engineers are competent at developing software, and think that a lot of the quality issues are due to engineers abdicating authority over the software to managers and never saying "No, adding in that feature at this point in the timeline is going to make this a steaming pile of shit and I refuse to do it and still call myself a software engineer."

I get that we have families to feed, but I've seen far too much of a mindset shift in fellow engineers into thinking that we're warcraft peons rather than professionals. "The business" has engineering feedback as a necessary input, and speaking individually with steakholders they expect this - they'll push until we push back.

ISO-morphism··on Ask HN: Who wants to be hired? (February 2023)

  Location: North Dakota, US
  Remote: Preferred
  Willing to relocate: Yes, for the right opportunity
  Technologies: Python (pandas, plotting, *nixy things, keras, flask), C# (asp.net core), Postgres, ZMQ, MQTT, AWS (decently strong IAM), Linux (Arch/Emacs/tiling WM type, embedded/yocto/networking xp, hobby sysadmin), Docker, Typescript, React/Redux, C++ (imitation/simple level), Swift
  Résumé/CV: Upon request
  Email: me@iso-morphism.name
Looking to work on things that provide value rather than extract it, preferably tangible products.

5 years experience as a software generalist wearing many hats on small teams/solo. Main soft strengths are adaptability, tactful honesty, and general middle child agreeableness - I've been described as a chameleon, blending into the norms and practices of teams and finding the grain of codebases/languages/ecosystems, doing things "the way" instead of "my way". I make the effort to learn things, minimizing the integral of resources spent instead of maximizing the derivative of superficial progress (man pages over tldr). Main technical strengths are data analysis, data modeling, distributed systems, and being useful across a wide spectrum of both the technology stack and product lifecycle.

ISO-morphism··on Parler owner laid off 75% of staff and has only 20 employees left
> ...caused trouble for Mastodon clients on various app stores (i.e. if you can use the generic client to connect to gab, the app could fail the app store's content policies and not get approved

Then they better start banning web browsers. I yearn for that comparison to be the official PR response, for those individuals that find themselves in the position of power to make those decisions at Apple and Google to feel the weight of its responsibility. A federated blogging client should be well above the acceptable threshold on a spectrum from Firefox to CSAM.app.

ISO-morphism··on I have reached Vim nirvana
I use a similar setup in Emacs with code-cells.el [1]. VSCode had a tendency to choke rendering large interactive graphs in-line, so if I was needing to view in a separate process anyways a little elisp turns "write last IPython output to a tempfile, open, move to workspace N" into a keybind.

Edit: browser-based Jupyter would also fall down here as the penalty for a graph being too big is at least a kernel restart.

[1] https://github.com/astoff/code-cells.el

ISO-morphism··on How type influences readability
Related: `m-x glasses-mode` inserts a virtual underscore (configurable of course) to turn camelCase into camel_Case
ISO-morphism··on A fake job offer gone wrong
> This post seem to blame victims for the problem, and that is not fair.

Indeed, the scammers are the bad guys. At the same time, what about people that still fall for Nigerian princes or go through their spam folder for "sex in your area" or "penis enlargement pills"?

> ...verified it would gather information from Google, Dropbox sign, the bank receiving the funds...

While I agree that our banking system should evolve past the high-trust model that it has organically grown out of, this sounds absolutely dystopian to me. I would much rather live in a world where the resolution is "sorry, you got scammed, that sucks, learn from it" rather than "our corporate overlords will collaborate to ensure your safety." Even if real-time 2FA of fund transfers existed everywhere, people (including everyone in the right state, sure) would still click those things. Technology doesn't solve social problems.

ISO-morphism··on Ask HN: What is the thing you've built that you regret the most?
Even in war, we don't universally take "I was following orders" as a valid excuse. People writing surveillance software are not innocent - not as guilty as those that gave the order, but still guilty.
ISO-morphism··on Wait vs. Interrupt Culture
Related - The Church of Interruption [1].

> When people are interrupting each other - when they're constantly tugging the conversation back and forth between their preferred directions - then the conversation itself is just a battle of wills. But when people just put in one thing at a time, and trust their fellows to only say things that relate to the thing that came right before - at least, until there's a very long pause - then you start to see genuine collaboration.

I think that's the meat of the collaborative conversational spirit. Interruption/waiting is one axis, another nearly orthogonal axis is continuation/abandonment of the current topic which correlates more strongly with actual listening rather than politeness.

In terms of [1], I've definitely encountered "civil barkers", who will never interrupt you verbally (but usually offer increasingly strong nonverbal cues that they want their turn), then very weakly link into a new topic. That is to say, waiting isn't a sufficient (nor I'd say necessary) condition for constructive conversation. E.g. the Trump/Hillary debate, when asked to say something nice about each other, Hillary immediately pivoted into talking about her platform.

[1] https://sambleckley.com/writing/church-of-interruption.html

ISO-morphism··on US Government plans to develop AI that can unmask anonymous writers
"If I had more time, I would have written a shorter letter"
ISO-morphism··on Why do all these 20-somethings have closed captions turned on?
Dynamic range compression is called different things on different platforms, "midnight mode", "reduce loud sounds", on Windows it's "loudness equalization".
ISO-morphism··on “Science must respect the dignity and rights of all humans”
I appreciate the question you posed in your original post.

I'd challenge you to engage with GP rather than deriding them. Your comment comes off as a selfish display of moral superiority that shuts down discussion and serves to further polarize. GP pointed out a perceived logical inconsistency in moral reasoning, by definition this is morally considered. I don't think they're acting in bad faith, and while a more inquisitive tone on their part may have avoided heated responses, I don't think GP's line of thought is beyond the pale. I hope we can try to follow where those opinions come from rather than talking past each other.

> Thinking that aborting female embryos because they will be considered less important in society is wrong, AND think that removing a women's right to choose entirely based on religious teachings is wrong, AND thinking that forced sterilization of a whole cultural/ethnic group is wrong, are not incompatible.

You assert this as if it is inherently true, which isn't going to do anything against a logical challenge. There is a widely-held line of reasoning that your first two statements contradict.

In the pro-choice position that women have a positive right to abortion, many people in attempting to understand that position interpret the moral grounds for it to be that the fetus is not a person - it does not have a right to life, therefore terminating its life is moral. That interpretation of the moral justification doesn't come from nowhere, I've heard it in person from people arguing in good faith. Your original post suggests that disseminating information that could cause more women to elect for abortion is morally wrong because it harms marginalized groups. This undermines the moral grounds for abortion as the individual negative right to life is widely held to be the most basic of rights, to be universal to persons, and so if the fetus is to be considered a member of a marginalized group, working backwards it must necessarily be a person and necessarily have the right to life. Therefore it is illogical considering only these three factors to hold all simultaneously: (i) a fetus does not have a negative right to life, (ii) a woman has a positive right to abortion, (iii) a fetus can be a member of a marginalized group of persons, as (iii) contradicts (i), leaving (ii) unjustified.

That line of reasoning is consistent. It flows forwards from individuality, that group rights are derived from individual rights, the personal right to life, and that personhood is a necessary condition for membership in a group of persons. It hinges on the assumption that the moral justification for abortion is that a fetus is not a person, and does not have a right to life.

One legitimate rebuttal to GPs probe, and defense for your 3 assertions, is that there is an alternative moral justification for the pro choice position. It's not that a fetus does not have a right to life, but that a woman's rights to bodily autonomy and self-determination, or some other factors, supersede the fetus' right to life. There are more, but "your thoughts are backwards" isn't one of them. That's exactly the imposition of dogma that other commenters are fretting over.

I'd be curious to hear your opinion on the recent case of a pregnant woman in Texas pulled over in the HOV lane who argued that due to the state's legislation limiting abortion, the fetus inside her should qualify as a person and so she is justified in driving there.

EDIT: typo

ISO-morphism··on 4th Gen KDE Slimbook – Linux Ultrabook with an AMD Ryzen 7 5700U
For a programmer, screen real estate (dependent on scaling). I look at 4k 100% scaling as having condensed two 1080p monitors without bezels.
ISO-morphism··on Music for Programming
I've found that novelty, (new-to-me at least) to be much more distracting than the presence of lyrics, whether that be a new artist or a new song order. As my unit of listening is usually an album, I'll briefly notice album transitions, and shuffle on an album will be jarring, but the 2nd or 3rd time I've heard an album it's successfully backgrounded for the duration of the album.
ISO-morphism··on Google will remove user location history for abortion clinic visits
Doesn't this already (somewhat) exist in open street maps? I feel like the answer here has to be open map data that anyone can download so there isn't a company to track the location in the first place.
ISO-morphism··on FTC action against Harley-Davidson and Westinghouse for limiting right to repair
> I think the main feature of property is to disallow others from using it in a way that restricts your own use. For IP, others selling copies would restrict your ability to sell copies as they undercut you.

The main difference between the wheelbarrow and IP lies in the copies. If someone else uses my wheelbarrow I can't use it while they're using it, or they may damage it. If someone copies an mp3 of a song I performed, I still have my mp3.

We had a working economic model based on physical property and we've been crippling the wonderful ability to infinitely create zero-cost copies of digital artifacts in order to fit our existing model. It's not horrendous that we've done this, and I'd optimistically view it as a step on the road to something yet unrealized.

> medical data

That deals with privacy, which is a different can of worms.

ISO-morphism··on Dropbox Shop Beta
Not if they are a utility (like water and electricity) which some can argue they should be.
ISO-morphism··on Have an old iPad lying around? You might be able to make it run Linux soon
> ... for some brands the connection between their brand name and a device they cannot control the presentation of... larger problem.

They should not have this control. Lamborghini doesn't get to stop crypto kids from using non-Lamborghini paint to put anime girls on their cars. Apple shouldn't get to stop users from using non-Apple software to draw pixels on their screens. The "their" refers to the owner of the product, not the owner of the brand.

ISO-morphism··on It's Good to Bet on .NET
In the US, copyright infects every work at conception. No one but the author has much of a right to do anything with a work without a license. The GPL is a license - it's a subset of big C Copyright. Without Copyright the GPL is unenforceable. The GPL can't infect anything that isn't infected with the notion of Copyright.

Every license, other than completely opting out of copyright and into the public domain, infects the derived work with some sort of terms. You'll see in a lot of proprietary licenses "No reverse engineering, etc." The GPL forbids you from forbidding anything except forbidding.

EDIT: nuance, "much of a right to do anything" should more specifically be "anything involving distributing to other people." There exist exemptions in copyright law for using copyrighted works for your own personal use. Giving that thing to other people is no longer personal use.

ISO-morphism··on It's Good to Bet on .NET
The point of the GPL is to bind to the cancerous cells of copyright and neutralize them.

My understanding of the position taken by GPL authors is that the current implementation of copyright in the US favors publishers heavily to the detriment of users [1], that this is unjust [2], and that users deserve certain freedoms [3]. It's not about restricting developers, it's about removing restrictions that shouldn't have been imposed on users in the first place. If public domain is one end of the spectrum, see [4] for the other end.

EDIT: formatting

[1] https://www.gnu.org/philosophy/free-sw.html

[2] https://www.gnu.org/philosophy/free-software-even-more-impor...

[3] https://www.gnu.org/philosophy/misinterpreting-copyright.htm...

[4] https://www.gnu.org/philosophy/right-to-read.en.html

Page 1 of 4Next →