HNHacker News
TopNewBestAskShowJobs

Nadya

4,139 karma · joined April 7, 2015

nadyanay.me - U+26A5

Democracy is totalitarianism. Freedom is oppression. Censorship is freedom.

[ my public key: https://keybase.io/nadya; my proof: https://keybase.io/nadya/si gs/lklP5B4B7JREUYCzdbw60w0u3esviheCxECPU0D9TgU ]

submissionscomments
Nadya··on YouTube is cracking down on consumers' favorite loophole
This makes a lot of assumptions in the same way that "pirating loses game companies money" - yes but its not always clear cut or an exact science. Pirating was also a big factor of Minecraft's initial popularity.

What if adblockers contribute to a video going viral? Or even sharing a video with family/friends who may not have an adblocker installed? What if I'm a content creator who uses adblock and now I share my content elsewhere? What if I'm a content creator primarily funded by Patreon and many of my viewers were adblock users and I move to another platform to retain my patrons and now YouTube loses money on all my subscribers who weren't adblockers? What if enough people are exiled that the go to place to watch new videos is no longer YouTube but Vimeo or another competitor? Social media sites rely pretty heavily on network effects and if enough users leave (Myspace, Digg) a competitor will fill the space (Facebook, Reddit).

The gamble here is that more people will subscribe than people who will leave. Which is likely true but it could have knock on effects.

Nadya··on Why Kakoune
The primary difference is rolling vs alternating (as someone else mentioned) and slight left vs right hand biases (I don't think anyone brought this up yet) and there is some definitely enough room for preference of one over the other there. I prefer rolling over alternating and I'm left-hand dominant. For finger alternation I'd recommend any of the CarpalX layouts (Qgmlwb specifically). If I knew about CarpalX before learning Colemak I probably would have learned it instead but I also don't want to relearn typing for a 4th time.

There's always a handful of exceptions to every rule but by and large from my experiences in the altkey layout communities the people who touted Dvorak the loudest largely didn't know how to type properly before learning Dvorak and it was their first alternative layout learned. So it's colored my view a bit.

I have regularly typed for >8 hours/day - nearly every day - since age 8. The hand pains didn't really start until I was in my 20's.

Nadya··on Why Kakoune
I come out of the woodworks every now and again whenever I see Dvorak mentioned in any context. I really despise its popularity as an alternative keyboard layout because I feel it wasted a good year of my life.

1) Few people will have benefit of learning Dvorak. What benefits they see comes from learning how to properly touch type by forcefully breaking bad habits with their original (usually QWERTY) keyboard layout.

2) Switch to Colemak or any more modern layout that takes advantage of bigrams/trigrams better. Colemak is genuinely superior to QWERTY beyond just learning to touch type.

I used to type 170~ WPM on QWERTY. Sustained. By all means an accomplished typist. I learned Dvorak well enough to get back up to 120~ WPM but saw no real benefits of using it: I already knew how to touch type. But QWERTY was causing my hands to cramp up over time and so I was on the search for improving that. I gave Colemak a try and it was a great relief. I only type 150~ WPM on Colemak after some years of using it but the lack of pain from typing for long periods of time is worth the small hit to my typing speed.

Almost every single person I see who touts benefits of learning Dvorak was typing <60WPM in QWERTY and did not know how to properly touch type. The benefits they see weren't from using Dvorak: it was from finally learning how to touch type properly.

Apologies as I know Dvorak wasn't really the focus of your post here. But in an attempt to perhaps make it still relevant: change every now and then is good. It can break you out of bad habits you didn't know you had learned and sometimes open you up to new ways of accomplishing something. As other replies have mentioned - I'm a big fan of Helix and gave up Neovim for it.

Nadya··on Passkeys will come at a cost
What's your game plan for replacing your retina or fingerprints if compromised?

Biodata is the least secure because it can't be easily changed and the technology already exists to compromise them.

Nadya··on Gandi.net updates pricing, increases rates by up to 1000%
I'm opposed to them for purely ideological reasons. Their products are some of the best on the market that I've used at work. I can't really speak to their support because everything I've had to use for work Just Works so I've never had to contact support.

I think it is dangerous to have as much of the web as there already is behind a single entity is all. I do not wish to contribute to the centralization of the web even further by pushing my own sites and projects through Cloudflare. So I make an active effort to avoid using them. The ever increasing centralization of the web should be considered harmful and Cloudflare and AWS already run an absurd portion of the internet and it only seems to be getting worse. To such an extent that US East 1 outages has become a meme.

Nadya··on Gandi.net updates pricing, increases rates by up to 1000%
Another option is Purely Mail [0] which is who I'll be using if running my own Mail-in-a-box turns out to be a bit too much. It could end up being cheaper than mxroute depending on your needs.

[0] https://purelymail.com/

Nadya··on Gandi.net updates pricing, increases rates by up to 1000%
Was only a matter of time after Gandi was sold off.

It made me migrate all of my emails to a self-hosted solution using Mail-in-a-box. I'm also looking for another registrar that handles .me and .ru domains without going through Cloudflare.

So far no luck. So my domains will cost me a little more to renew next time it comes time to renew them.

Nadya··on Show HN: Hacker News user blogroll
I'm in the middle of making it easier for me to write so that I'll actually write more. :) so there's only 1 really old post currently.

https://nadyanay.me/blog

The subject matter I have planned is more on retro/small web projects and a store for well researched posts where I'm sick of having to find studies over and over to cite as sources. Easier to quote myself than write the same post for the 50th time.

Nadya··on Vore: A new RSS feed reader
Well... I'll spoil that it is most likely not exactly "pregnant". A lot of vore art draws inflated bellies for after the (physically impossible) full-body consumption. Sometimes with a limb or few pushing out against the belly. So I could see how it could easily be mistaken for either pregnant or overweight women.

It is also a common overlap with furries (well- yiff rather) but I guess that makes a bit more sense since animals are more known to eat one another - although it's mostly the anthromorphized ones so idk really.

Also overlaps with the oversized giant women / shrunken male fetishes which I guess makes the act more physically possible if you ignore the impossible sizes of the people involved.

Most vore is "swallowing whole while alive" and not "actually eating", there is often no chewing involved or depicted. If the victim is chewed or killed in the process - that crosses into the less popular guro and snuff categories.

Nadya··on Learning DNS in 10 Years
See: punycode phishing / homograph attacks

They likely mean Unicode outside the ASCII range. Last I checked Firefox refuses to implement the "fix" for this type of attack because it is "culturally insensitive" and "treats English as a privileged language over other languages".

This URL in Firefox should look like "apple.com": https://xn--80ak6aa92e.com/

Nadya··on Secret ChatGPT plugins can be revealed by removing a parameter from an API call
Very likely! I wasn't as involved in the space during GPT-3 so my first time encountering the phrase was after DallE launched.
Nadya··on Secret ChatGPT plugins can be revealed by removing a parameter from an API call
> I thought that the whole point of LLMs was that you could just talk conversationally, though.

"Yes" (sometimes "no").

"I'm sorry but as a language model I am unable to..."

The "prompt engineer" meme started with DallE and Stable Diffusion and the selection of prompts, negative prompts, seeds, weights, and other knobs and dials matters a lot more for AI-generated art than for LLMs. The meme has carried over to LLM's where most of the "engineering" is hacking your way around limitations being imposed on the models. "Prompt engineers" are the people carefully crafting "jailbreaks" like DAN or Emojitative Conjunctivitis (I forget what it actually was - but it was telling ChatGPT that you suffer from a medical condition where you experience polite talk as pain and so it should talk more meanly to you) and other such adversarial cat & mouse game silliness.

Nadya··on Secret ChatGPT plugins can be revealed by removing a parameter from an API call
It's half tongue-in-cheek and half reality. Knowing how to search Google properly, using keywords, using limiters like site: or type:, etc. is a genuine skill. Writing prompts is a different kind of search - but is also a genuine skill for being able to "navigate" the latent space. "Prompt engineers" know how to craft prompts in such a way to get to guide GPT or models like Stable Diffusion into delivering what they want. The results by someone who writes a very basic prompt vs one who is experienced at writing prompts are night and day. It's like knowing how to play a video game vs knowing how to speedrun the game. Sure a person who knows how to play the game might beat it after 6-7 hours but the person who knows how to speedrun the game just beat it in 19 minutes. There's a marked difference in skill and knowledge between the two people - even if "given enough time - both people are capable of beating the same game".
Nadya··on Show HN: Get a Professional Headshot in Minutes with AI
My profile picture has never once been me. When I see other people's profile pictures - the time it is them it is often a heavily edited photograph - either professional or through the use of app filters or digital editing software. The pictures that people present of themselves so rarely are representative of what they look like in normal situations and day-to-day life. I am completely unphased by this. Then again, my profile picture for the longest time was a picture of three pairs of thigh high socks. So maybe I don't give the same weight to someone's profile picture or chosen avatar as other people seem to do.
Nadya··on Emulating Pokemon Emerald on GPT-4
Horses, unlike humans, are incapable of specializing in new or complex tasks and have a very narrow set of tasks they can accomplish even with a lifetime of training. The argument holds almost no water unless you assume humans are only good for a single, maybe two, tasks and are incapable of learning or being trained on other tasks if the task they were performing was made redundant.

We didn't cull switchboard operators and calculators when we automated their jobs through technology. They found new jobs.

> Leaders can extract value without worrying about the people's wellbeing.

Historically this has had limits. After those limits have been reached - leaders quickly find themselves 6' under ground if people even gave them that courtesy. There are parts of the world where this has already happened - this century, maybe even this decade. Consider yourself quite privileged if you live in a part of the world where the mere thought of this seems outlandishly absurd and unrealistic.

Nadya··on Emulating Pokemon Emerald on GPT-4
> What happens in an economy when machines can do most tasks?

We invent new things for people to do. As we have time immemorial. What happens to clergymen when nobody has faith in a religion? They find other things to do than preach.

> What happens to power structures when people become a cost rather than a benefit?

If you want to look at this pessimistically - a good portion of the world's population can already be considered a cost and are a net economic negative on the privileged people's ability to hoard even more insane amounts of wealth. We've, thankfully, decided that mass genocide of impoverished people is inhumane and humanitarian efforts are instead created to try and improve their lives. Even a pessimistic take that the humanitarian efforts only being done to create more workers doesn't hold up given a cost/benefit analysis. More money is invested than could ever be extracted again - and yet we continue investing.

Maybe instead of filling our lives being paid to dig holes so that others can be paid to fill them we could turn more attention and efforts to improving people's lives without having to worry about sustaining society through work?

Nadya··on NordVPN library and client code open-sourced
None of them. No really read that again: None. Of. Them. https://gist.github.com/joepie91/5a9909939e6ce7d09e29

Especially not after Kape Technology bought up review sites and VPNs and updated reviews to shill the ones they own.

Kape Technologies was formerly known as Crossrider before it was acquired by Teddy Sagi, an Israeli billionaire that has spent time in jail for insider trading. Crossrider itself never had that great a reputation itself, what with their primary product being a development platform through which they were frequently used by third parties to invade ad platforms to serve up malware. They are now the owners of ExpressVPN, PIA, CyberGhost, and Zenmate.

https://restoreprivacy.com/kape-technologies-owns-expressvpn...

And then j2 global owns a bunch of others.

https://www.techradar.com/news/pc-mag-owner-j2-global-buys-s...

I'm 99% sure every VPN on the market is a honeypot or data broker at this point.

Nadya··on How Python virtual environments work
I'd argue three. Namespace import is really just giving a name to the idea that "you must provide an alias to be used as a namespace if trying to do a wildcard import to avoid naming conflicts" because executing JS in a browser would otherwise not be able to detect naming conflicts - you'd end up overriding values of the same name with the most recent import which is almost never desired behavior. Think about how you might resolve the issue of two different modules exporting a function with the same name otherwise. "Mandatory namespacing" fixes the problem.

The "weird one" of the remaining three is side effect imports which isn't all that weird when you realize you're not assigning it to anything. Functionally this is the same as calling a function rather than assigning a function to a value. eg `myFunction = function myfunction() { //stuff }` vs `myFunction()` and when you think about it like that it becomes significantly less weird but also something you rarely want to do - it's mostly used for polyfills. Good to know it exists but you can probably ignore that it does.

So now you're left with two: Default and Named. Use Default when you want the entire library - or almost the entire library. Used Named when you want specific pieces of the library. That's all there is too it really. If I want a specific function from a library - there's no reason to import the entire library. For a while you'd mix both Default and Named exports for React due to how transpiling worked - this React blog post explains it well: https://reactjs.org/blog/2020/09/22/introducing-the-new-jsx-... but you don't really have a reason to mix the two in modern codebases.

Named imports tend to be preferred because Default imports means giving a name to it which can result in inconsistencies across a codebase when many people are working on it. (eg: `import SumTwo from 'sumtwoNumbers.js'` vs `import AddTwo from 'sumTwoNumbers.js'`. A named import `import {SumTwoNumbers} from 'sumtwoNumbers.js'` solves this problem)

There's still one final little "gotcha" - there can only be a single Default export. Generally it's an object that contains "everything" but it doesn't need to be and those times are the only edge cases you'll run into though I can't say I ever have encountered this so it is a "theoretical" reason to avoid Default imports but I can't say it's ever been an issue in practice.

I guess I avoided a lot of this weirdness by basically only ever using the ES6 syntax and preferring Named imports (and not being stuck in the React ecosystem). The CommonJS got to avoid some of the "weirdness" because it could pretend the Browser doesn't exist (and leave handling it to bundling tools). So I guess I'll capitulate and say it's a little weird but you can basically ignore it and used Named imports as the "One True Style".

Nadya··on How Python virtual environments work
Weirdness? `require` was Node weirdness because Javascript lacked imports/exports at the time. The ES6 syntax is remarkably better, allows imports to be async, and doesn't need to run the code to see what should be assigned to `module.exports` allowing it to be statically analyzed which allows tree-shaking. Node's CJS syntax will only work for Node requiring that you transpile and bundle it for browsers. The ES6 syntax will work for Node and the browser.

I see anyone sticking with CJS syntax the same way I see Python devs who continue writing 2.7 code by choice in new projects and not because they are maintaining older projects.

Nadya··on How Python virtual environments work
Personally, zero complaints about Cargo (Rust) and very minimal complaints about NuGet (C#/.NET). My issues around NuGet are probably self-created because I refuse to learn the CLI [0] for it and I've had occasional issues with Visual Studio's UI for managing things.

https://learn.microsoft.com/en-us/nuget/reference/nuget-exe-...

Nadya··on Vivaldi co-founder: Advertisers 'stole the internet from us'
I'm on desktop now so can explain a bit more in depth. Also a minor correction. Projects are often times funded out of pocket by the creator. Though due to that nature these products cannot scale or eventually must adopt a profit model - often in the form of advertisements as it is both the laziest and one of the most successful models.

Not only will ad-driven models avoid saying anything that might harm profits - people who profit from ads are incentivized to have the ads been seen by as many Consumers as possible. The Producer/Content Creator's job is no longer to produce worthwhile content but to try and capture and retain as many eyeballs (views) as possible. Producing worthwhile content and capturing+retaining eyeballs are only loosely intertwined. The issue that presents itself later is that garbage content is both cheaper and often easier/faster to make and is also better at capturing+retaining eyeballs. So the quality of the content inevitably declines which results in issues later on for other people not only the Content Creator and the Advertiser - more on this later.

Anything that results in more views is thus encouraged by the model. Clickbait? There would still be some because some people want to go viral or be the center of attention - but most clickbait is incentivized due to the ad model. Ragebait? Same thing - incentivized by the ad model. Gamified products that give Consumers a brief hit of dopamine so they'll keep coming back for more? Incentivized by the ad model. Simplifying or watering down complex/niche content to cater to a broader audience at the expense of the original/niche audience? Incentivized by the ad model. Showing back-to-back ads? The model incentivizes showing as many ads as a user base will tolerate watching. In fact an ad model's ideal world is one where people sit and watch a channel that is nothing but 24/7 non-stop advertisements and occasionally make purchases.

Why are ads an issue? (#1) in modern times ads are often tied at the waist with invasive user tracking and (#2) Ads are rarely ever designed to enrich a Consumer's life but instead to extract value from the Consumer by convincing them to purchase a product or service even if they are not in need of the product or service. This includes abusive tactics such as making the Consumer feel worse about themselves or their lives and that buying the advertised product or service will make them feel better! Or by associating the product with good feelings. Hundreds of billions of dollars have gone into researching how to make advertisements as effective as possible - and the results of that research is that advertisements work best when they "plant seeds" in a Consumer's subconscious and bias later decisions or alter the Consumer's behavior without them ever having realized it. Issue #1 is an issue of privacy but the larger issue is that it feeds into Issue #2. The data collected is sold to other Businesses & Advertisers to better extract value by being able to target their advertisements at a more vulnerable or susceptible population.

Remember the decline of quality mentioned earlier? There is a certain level of "garbage" that the general population will not only tolerate but will choose over a higher quality product if the higher quality product comes with a higher cost. This disincentivizes producing any higher quality content if the "garbage" is acceptable enough and can be produced more cheaply. Why is investigative and long form journalism a dying art? Not necessarily that people don't want to fund it but that people don't want to fund it when they can keep getting garbage. Garbage also isn't free to produce - it's cheaper to produce. So if you can produce more garbage and the people seem to accept it - why would anyone ever spend more to earn less? You wouldn't. This applies to more than monetary costs too - time spent on creation is another factor that gets perverted. If the monetary cost to produce garbage or quality is the same but you can churn out garbage x3 faster - you're going to churn out garbage. And much like throwing stuff at the wall until something sticks - inevitably there will be some quality things that are ad funded but it will come alongside a plethora of garbage (this is a way to say "Yes, there are some rare exceptions." but you can probably only count them on your hands.)

TL;DR The ad model creates perverse incentives that harms Consumers and almost inevitably results in lower quality content by Content Creators.

Nadya··on Vivaldi co-founder: Advertisers 'stole the internet from us'
>They'll avoid saying anything that could harm profits.

I'm on mobile so won't respond as well as I'd like to. But 1000000% this is why I'm vehemently against advertisements as a primary model of income.

Want money? Ask for donations or sell your content. Nobody pays you? You aren't worth being paid in the eyes of the public. It's your job to convince the public that you are worth paying!

All of my favorite websites and content creators are 100% funded by donations from supporters. It works because the value is high enough to be worth paying for. If the donations ever stop rolling in that speaks more about the quality - it stopped being worth financially supporting.

Nadya··on Show HN: Doublespeak.chat, a text-based AI escape game
I'll do so but being honest my email provider is often understandably blocked due to its roots and affiliations with 4chan so I'm not usually surprised when it is blocked - but I found it ironic that I'd have to create a throwaway email to avoid using a throwaway email. :)

The game was pretty fun! I think I ended up finding a prompt that could be re-used to break every level but I wasn't able to figure out one that broke it from the start. :(

Nadya··on Show HN: Doublespeak.chat, a text-based AI escape game
"Disposable emails are not allowed." for my primary, personal email.

Ironically I'd need to make a disposable email to even register.

Nadya··on Word-processor idiot (Japanese expression)
This Japanese is (just barely) legible and makes for a great example of what the OP is talking about. And since Japanese is a surprisingly popular language for HN posters - if you are able to read Japanese - I challenge you read this: https://imgur.com/a/lse8JR0

It was written by a JP native - using a mouse - but her handwriting is typically this bad so having to write using a mouse only made it very slightly worse than usual.

It made me feel better about my own handwriting. I don't sweat the details at all - writing better than natives might get me minor praise but doesn't really benefit me in the long run vs expanding my vocabulary or learning how to read more kanji by spending less time focusing on writing them. I only write kanji nowadays to help with memorization of new kanji and to make sure I can still write the first few "grade levels" of kanji for how natives learn.

Nadya··on Word-processor idiot (Japanese expression)
I have a fancy fountain pen and was taught Gregg shorthand by my grandmother and have used it for note taking for most of my life. I still type 50%-75% faster than I write and can type for significantly longer than I can write.

If I learned how to use a stenotype I can imagine the discrepancy would be even larger.

Nadya··on How Duolingo reignited user growth
If you wish to learn grammar, especially more advanced grammar not grammar that is often not covered by many of the more popular "JP Learning Guides" online I highly recommend imabi.net

I have a very negative view of most language learning apps. Learning a language is more than vocabulary memorization and memorizing phrasebooks which is what most language apps devolve into. Consume JP media, use Anki to help build vocab/memorize kanji, and study grammar from a book dedicated to explaining grammar and not a "generalist" book that tries to dip its toes into everything.

Nadya··on Git branches are named sequences of commits
I use Git daily and literally couldn't tell you how to use it because I've aliased every single command it has. I basically have a wrapper over it and to teach anyone how to use Git I have to peel my layer away and check what I have things aliased to.

It feels like terrible ad hoc user design built over an otherwise extremely elegant and clean data model.

Nadya··on Forth: The programming language that writes itself
And make it a fun ASM. Like 6502 [0].

[0] https://skilldrick.github.io/easy6502/

Nadya··on Show HN: While painting this, I had nothing in mind
Seems better presented and quite adjacent to my own photography project: https://everythingcanbe.art/gallery although the intent is clearly different as the statement made by me is a very pro-AI stance towards what "art" is.

The angle I was coming from was not only the aesthetics/purpose behind the art but more so about the "effort" put into it by removing any effort from the creation. "Effort" being thinking about good composition or finding an interesting subject matter or waiting for the perfect time of day for the lighting to be just right. Instead I show up, press a button, and because I call it art it is even if I agree it isn't very good art (and that's also kind of the point - I would argue the act of curation is in and of itself an art form...)

Also - you should make thumbnails of the art and link out to the larger pictures. Currently you're loading 2000~ px width images as 300~ px thumbnails and it is very slow to load due to that at the gallery near the bottom. This being HN I'm actually shocked nobody has mentioned the completely bloated and unnecessary file size of the images.

← PreviousPage 3 of 34Next →