HNHacker News
TopNewBestAskShowJobs

allyourhorses

96 karma · joined June 3, 2021

submissionscomments
allyourhorses··on Alphafold
Prior to this model, protein folding hadn't seen significant advancements in a decade or more. Worrying about the lack of tests in a first of its kind model is very much akin to complaining about the choice of font in a user manual for the world's first warp drive. I understand you're attempting to frame the problem in terms in things you know, but trying to weigh down pioneering research with professional development ceremony is very much counterproductive. The 'missing' ceremony would not have contributed to the strength of AlphaFold's result, the model's only purpose was to compete within the context of an existing validation framework.
allyourhorses··on Sundar Pichai warns of threats to internet freedom
Parent comment is classical old guard mentality Googler who thinks if something sounds big and impressive it automatically is big and impressive. It was a marketing trick that weirdly infected employees throughout the org, glad to see here the trick has all but completely lost its effect.
allyourhorses··on Sundar Pichai warns of threats to internet freedom
> However, it was also an experiment from day 1, not "the next big thing"

Not sure I understand that distinction. If I label all my projects as experiments, do I also get to escape culpability for their failure while loading on the self-praise when they succeed?

allyourhorses··on SVG favicons have some cool benefits
> Do you really want to spend that limited bandwidth on your favicon that you might have already sent to the user before, maybe even in the same browsing session?

That's a really going point, but if the site's coming down over classic HTTP then still possibly yes, as separate requests are liable to require additional rounds of cold start. The other detail is that I don't think I've worked with a favicon much exceeding 1500 bytes before.

Another option would be pushing the <link> into the footer, but HTML 5 seems to require <link rel="icon"> only in the header. I wonder if browsers really enforce that.

allyourhorses··on SVG favicons have some cool benefits
re: cacheability of favicons, this is basically a non-issue as the bandwidth-delay product of even a 10mbit/50ms connection is already 62 kB. Anything below this size on such a connection is likely to render faster than a separate request round-trip.

This raises to almost 1.2 MB with a 100mbit/100ms connection.

allyourhorses··on Leaving Google
> At the time I left, out of ~150k employees, only ~300 had worked there longer than me.

This one really stuck out for me, I don't think that stat has ever been public before. This probably means most (if not all) of the folk who built Google's most successful services are no longer with the company. Like a successful open source project where the originators have aged out, and all that's left are hundreds of folk making incremental changes spanning years

allyourhorses··on Ask HN: How to stop download.cnet.com from hosting my app?
I can see how they ended up with an attribute that did not duplicate a potentially private URL. Consider downloading from an Intranet and copying to a USB pen that is then handed over to a customer

It also freezes in place the network policy active at the time of download.

Would personally still prefer the URL!

allyourhorses··on Where are we going from here? Software engineering needs formal methods
(1990)
allyourhorses··on Ask HN: How to stop download.cnet.com from hosting my app?
For the future, and as a Windows/OSX-specific hack, there are HFS/NTFS extended attributes attached to any downloaded file indicating the domain/URL it came from. You could introspect this and refuse to run the installer with a suitably angry message.

edit: ah sucks, seems on Windows this only gives you the network zone the file came from, not the URL. I think on OS X it is definitely the URL though https://superuser.com/questions/1513910/windows-extended-att...

allyourhorses··on Treat Kubernetes clusters as cattle, not pets
Because it let me replace Ansible playbooks with a sensibly designed YAML syntax usually needing 40% the number of lines, and got my deploys down to a roughly constant 6 seconds regardless of the size of the application. Kubernetes let me finally stop thinking about deployment, I can get new apps online in 5-10 minutes or less.

Don't even get me started on monitoring.. k8s murders everything else here

allyourhorses··on Don't encode POST bodies like GitHub Copilot, use URLSearchParams
https://caniuse.com/urlsearchparams
allyourhorses··on IBM's 18-month company-wide email system migration has been a disaster: sources
Presumably they're at least 15 years away from integrating their email after the merger, going by typical dinosaur corp schedules
allyourhorses··on Goldman seems to be running networking software from 2008
Serious question for fashionistas.. which of the modern frameworks integrate 'properly' with Closure Compiler? Not just minification, but structured so the compilation/code removal/constant replacement/inlining/obfuscation steps work correctly.

I've seen a few with instructions to compile with Closure Compiler, but of the (approximately one) I've checked, the output was barely even minified, never mind optimized

allyourhorses··on Ask HN: How to learn how to sell?
Selling is a horrible misnomer, the process is entirely about understanding that you have something the other party might want, and communicating this effectively. You could take a shit hot salesperson and give them a garbage product, and force them to work an idiotic market segment and they'll sell nothing. On the other hand, you could take a person (like me!) with almost no interpersonal skills whatsoever with a solution to a very specific issue faced by people they're already in contact with, and they'll sell like champions.

So the whole framing of product and market, and communication media is way more interesting (IMHO) than 'selling' as an explicit skill. (And yes, I do "sell", but I'm not "good at selling", because my skillset is tied to a tiny handful of niches where I have this framing figured out)

edit: there's another bit that annoyed me about this post, and it's the idea of explicit 'selling' before having a solution to sell. It's something akin to putting the cart before the horse. Any selling opportunities I've discovered have always been in the pursuit of solving some other problem. I suppose basically if you have a genuinely good solution to any problem, selling is barely a skill worth worrying about. This is as true in interviews as in product marketing

allyourhorses··on Mumble: Open-Source, Low Latency, High Quality Voice Chat
This gave me a giggle, perfect sentiment IMHO. Discord is basically saying "fuck you" at least 4 times each time you login, and the only appropriate response absolutely should be "no, fuck you"
allyourhorses··on Crypto Fund III
ZH is largely critical of crypto
allyourhorses··on Brave Search beta
> Fully private. No profiles.

> Brave Search doesn't track you or your queries. Ever. It's impossible for us to share, sell, or lose your data, because we don't collect it in the first place

So eh, Brave's search is actually running through Amazon CloudFront load balancers. This wasn't quite my first idea of privacy. At the very least, it means searches are likely being logged at least once, and stored using some policies set by Amazon, not Brave

Some pretty curious internal API here: https://search.brave.com/api/state/independence , found in the copious amounts of duplicate JS on the page

allyourhorses··on Show HN: I made a new kind of Bible app
Came here to ask this. Most obvious guess as to where the app's bible texts come from.

Would much prefer to see this as a new UI for Crosswire than an independent effort. I know tons of people using Crosswire

allyourhorses··on Brave Search beta
Based on the principles in the blog post alone ( https://brave.com/brave-search-beta/ ), this will obviously be my new default search until it's proven sufficiently unusable.

DDG's usability has always been a bit of a problem for me, it feels more like a perl wrapper over some search bookmarks than an engine in its own right. Will give this one a go for a while, there is literally every reason to try and few reasons not to.

edit: holy crap Brave, c'mon, 13 CSS files and 15 JS files for the search result page? Cold cache case absolutely matters when you're trying to grow, sort it out!

allyourhorses··on What's Inside the EU Green Pass QR Code?
The certificate expires after 1 hour, so this is still an online process.
allyourhorses··on There are at least 10 different Microsoft design conventions in Windows 11
Windows 3.1 had something like 5 built-in widgets. CTL3D.DLL (dating myself here!) IIRC added a bunch more. IMHO somewhere between CTL3D and XP was when design topped out.

I still love elements of 7 and 10, but honestly would have been totally fine if 2K or XP were the final themes. Imagine if after all this time, the only way to date a Windows installation was by subtle design variations of the window title bar. Such bliss! Although of course, I am glad for many of the changes made during the mobile/touch revolution.

I wonder if the tide will ever turn on UX ideologists. Chased out of the industry like the witches and warlocks they are :)

allyourhorses··on There are at least 10 different Microsoft design conventions in Windows 11
Moral: the UX "sector" needs to shrink by about 98%, and what remains should be contractors or agencies
allyourhorses··on Kelly Criterion – how to calculate optimal bet sizes
This is beta hedging, it works on the assumption that when SPY performs positively, your risky basket will outperform SPY, but if there is some systemic risk-off event, your SPY short will at least dampen if not fully cover any losses made in your risky basket

Good day, you lose -0.5% on SPY but gain +2% on AMC

Bad day, you maybe gain 0.5-1%% on SPY and lose -2% on AMC

allyourhorses··on Launch HN: Explo (YC W20) – Customer-facing dashboards and reports
Easily solved by a user configurable staleness value with some reasonable default. Google don't crawl the entire web in response to every query because for the vast majority of queries it's unnecessary. For those where it might be necessary (like news), they instead crawl at a higher frequency or use some special flow (like they do for tweets), either way the result is seamless, involves no progress spinners and is well suited for the vast majority of users.
allyourhorses··on Launch HN: Explo (YC W20) – Customer-facing dashboards and reports
It knew which queries to run before I clicked, because those queries are baked in. Why did I have to wait for the app to do something it knew it had to do if someone clicked? Of course we can't make e.g. protein folding an instantaneous task, that doesn't mean common workflows and request patterns can't be. I guess it's the difference between "did I ask the computer a hard question?" and "did I simply ask the computer to do its job?"

In the example dashboards, I'm guessing something like 100% of requests make exactly the same queries. Maybe in a typical corporate dashboard, 70% of users will pull up the default view before leaving. These cases easy to optimize for and definitely worth optimizing for

allyourhorses··on Launch HN: Explo (YC W20) – Customer-facing dashboards and reports
Thanks for replying.

Precompute whatever you can I guess, but I'm guessing the app has parameterized queries and stuff like that which are hard to precompute. In that case even a cache or LRU list is fine, say precomputing the handful of most common views people will encounter most often.

Imagine even if only Jira's new ticket page and 'open tickets' search result were pre-rendered so loading them took <200ms. The amount of hate would probably drop by 90%

Separately if you can reduce the workflow for a page from being a task in its own right (most of which is waiting around) to something as simple as a click, it can increase user confidence a lot. If something that took 5 seconds (+4 of which is just waiting) suddenly completes in 200/300ms, folk learn new tricks for your tool, like middle-clicking open a bunch of screens, or noticing they can open and close it much more easily. It makes the whole experience feel more agile, which definitely has an effect on loyalty

allyourhorses··on Launch HN: Explo (YC W20) – Customer-facing dashboards and reports
Clicked into one of the demos, was greeted by around 10 progress spinners, possibly more. This instantly reminded me of some combination of Google Cloud's deeply mediocre console and waiting for a Jira page to render. I'd simply never prefer a tool like this or see it fit to force someone else to use it, and I don't understand why anyone would intentionally design an app to behave like this.

Please kill those progress spinners, the app is only rendering little bits of 2d art. Count each one as an individual statement of "you asked me for something but I haven't done my job yet, and now I'll make you pay for my laziness, and I promise if you click anything I'm just going to show you a million more progress spinners because I hate you and don't value your time"

Also please don't shoot the messenger, spinners were briefly an acceptable UI cue sometime around 2 decades ago, nobody honestly likes seeing them any more. If you explicitly design an app UI around the expectation of delays, it gives endless room to cut corners and add more delays. In other words it is optimizing the whole user experience for intentional mediocrity.

allyourhorses··on Firefox 89 Tab Appearance
This is some of the disastrous Android rewrite leaking out into desktop, it's no small issue. Check out the Play Store reviews for evidence by now Mozilla's primary mission appears to be self-destruction
allyourhorses··on Firefox 89 Tab Appearance
Because they retain oversized permanent UX teams with insufficient work to go around. The result is endless user punishment. Mozilla could improve their browser and save money in one simple step
allyourhorses··on Firefox 89 Tab Appearance
The solution at this point is Microsoft Edge. RIP Firefox, 2004-2021. The new UI on desktop AND Android is a total disaster. You won't be missed