HNHacker News
TopNewBestAskShowJobs

web007

1,519 karma · joined March 11, 2011

http://twitter.com/web007

[ my public key: https://keybase.io/007; my proof: https://keybase.io/007/sigs/5Y1h_Iqgejv7vg5oSLOmaS6TepzFsQ3Hbf_5xoG9i74 ]

submissionscomments
web007··on Updates to Google Cloud’s infrastructure capabilities and pricing
Appears to be https://github.com/rapiz1/rathole

"rathole proxy" search will find it, vs "rathole software".

web007··on Year 2038 problem is still alive and well
Samesies for 2038consulting.com and epochalypse.consulting - that's only a few years short of my estimated retirement,so maybe I can make a few bucks and get out early.
web007··on Buy things, not experiences
IMO this is the difference between "nice art" and having a connection to whatever you're displaying.

We have a few things hanging that are nice, and they do, indeed, disappear. We also have a few that aren't as nice but where we have a connection to them. A couple travel posters as a reminder of an amazing vacation, a map of Paris where we visited and loved the experience, and a fancy triptych concert poster for a destination concert my wife attended all have meaning beyond "nice art", and I notice them at least once a week.

web007··on Opensubtitles.org breached – Email addresses, IP addresses, Passwords, Usernames
Mostly A. Why bother with ever getting a password and having to deal with it in any way, versus delegating that aspect of security to a FAANG-level company with a > $1m security budget?

You can store your password yourself, sure, but how certain are you that you're doing it "right" and that "right" today will be good enough tomorrow? 15 years ago MD5 wasn't perfect, but it was good enough versus the other common/stupid methods of storing the password directly or storing it encrypted vs hashed. How certain are you that Argon2 is going to stand the test of time for another couple decades?

web007··on Ask HN: I suck at math, where to start?
Seconding this.

I went through precalc in school, then promptly forgot most of it once I started working. All of the bits I had learned felt rushed, so a lot of them fell out of my brain even while in school. I only had a basic understanding of most of what I "learned".

About a year ago I decided to go back to basics, and start over from zero on Khan Academy. I've been v.e.r.y slow, maybe a lesson a month on average, but have been grinding through the lowest level math to really understand and remember it. Down to addition, subtraction and multiplication even - I've relearned how to multiply small numbers in my head, and gotten much better at quick mental addition and subtraction.

I have scheduled and dedicated more time for it this year, so I hope to catch up to my original math basis. This time, hopefully, remembering all of it instead of skimming. That should set me up well for linear algebra, and then calculus next year and beyond.

One thing that may help regardless of how you choose to learn: pick a problem you want to tackle that needs Fancy Maths. It doesn't need to be anything useful, or anything difficult like "prove this unproven theorem". It will motivate you as long as it keeps your brain engaged. For me it's factoring and primality proving, where I can't even read the equations / algorithms because I don't have the basic tools. As I get further along I keep looking back to those problems and seeing how the bits I'm learning apply around the edges or to simpler factoring algorithms. It keeps me motivated to learn more to be able to dive deeper into the juicy parts.

web007··on UUIDs are popular, but bad for performance (2019)
This article talks about random IDs leading to page thrashing, and MySQL b-tree indexes not handling them well. They are bad for _MySQL performance_.

It doesn't talk about NoSQL or sharding, where random IDs usually perform much better than sequential due to a lack of hot shards.

If you distribute your reads and writes at random across N machines you can get ~Nx performance vs one machine. If you make your writes sequential, you'll usually get ~1x performance because every insert goes to the same machine for this second/minute/day, then rolls to a new one for the next period. There are sharding schemes that can counter this, but they require insight into your data design before implementation.

web007··on Against 3x Speed
The argument against 3x seems to be a false dichotomy. I'd like to see a comparison of the author's recommendation of spaced repetition combined with "Mike's" 3x speed-listening. Increase your intake density and still get the superpowers of retention that SR proffers.

Per the author's charts you can increase the information density by either switching languages or speeding up the current language, so find the maxima of the information density-vs-syllabic-speed graph and make your chosen language match either / both parameters. That may not end up at 3x, but human perception and understanding is certainly greater than 2x common speed for English speech. I don't have a citable reference at hand, but a motivational speaker from my youth made this point. He said he speaks at about double the standard rate because nearly everyone can still understand him, and it lets him give twice as much detail in a story, or tell a story twice as long as he otherwise could.

web007··on Ask HN: Why doesn't anyone create a search engine comparable to 2005 Google?
That's Common Crawl, they do the spidering of some billions of webpages but that's still a tiny percentage of the web versus Google or Bing.
web007··on Web4 Should Run on LaTeX
I would be much more likely to believe the author if they didn't embed multiple videos in their screed against multimedia.

You can provide a plaintext experience if you think it's better, but clearly you don't.

web007··on Never update anything
Corollary: Do hard things more often, per Martin Fowler - https://martinfowler.com/bliki/FrequencyReducesDifficulty.ht...

Upgrade everything all the time and it will never be hard. You'll have full context for breaking changes, and the diff from A to B is always smaller than from A to Q, and less likely to break in strange and confusing ways.

web007··on I couldn't debug the code because of my name
TIL, https://en.wikipedia.org/wiki/Han_unification#Examples_of_la...

It looks like there's no general solution possible with Han unification. If you have any two of ZH and JA and KO and VI in a page, you will fail to display one of them correctly for certain characters unless (as in that wiki page) you add a LANG attribute for each element they are contained within.

Personally, I would use the browser's language or user locale to set the page language and give up. Then in Japan the local (Japanese) names would look fine, and same for China, Korea and Vietnam. Local consistency versus complicated perfection (tracking the input language as well as tokens and using them everywhere), and I could blame the browser for doing poorly at its impossible job.

One possible "perfect" fix would be to store the token and <span lang=...>$token</span> as well. The only place the non-wrapped version would be used is plaintext email or SMS, either of which are beyond lost causes for other reasons. Doing it with an embedded SPAN tag presents its own problems with sanitization, as well as guaranteeing it's always wrong if the input language was specified incorrectly when the token was populated, versus as above where it would be corrected to the local-optimal version if the user locale overrides it.

web007··on I couldn't debug the code because of my name
I believe that library / service is called UTF-8.

These days everything should be stored as bare UTF-8 data (or utf8mb4 if you're MySQL) and presented without anything else. Don't parse it, don't slice-and-dice it, don't prepend or append titles or honorifics or suffixes, don't make assumptions about length or content beyond "must be > 0 as a whole" and DEFINITELY don't use it as an identifier. Treat it as a non-unique opaque token and you'll be fine greater than 99% of the time.

There are people with no last name. There are people with two or three or twelve middle names. There are people with a number for a last name. There are people with a symbol for their entire name.

Take what they give you and use it and be done with it.

web007··on Ask HN: How should I back up data on devices if I'm not smart?
You have Dropbox and it's no-config required. What's wrong with that? Is it that you have to configure it for it to do what you want, and you don't want to take the time to do so?

You don't want to set up a VPS, even though I mentioned nothing about one. I said to buy an appliance, same as a Time Capsule or whatever that Apple thing used to be called.

You think rsync+SSH+snapshot is complicated, but you don't know that Time Machine is exactly that, just hidden from you so if anything goes wrong it's a black box that you can't recover from.

You think rsync is too much scripting - what are you trying to do that requires scripting beyond `rsync -aP src dest`?

web007··on Ask HN: How should I back up data on devices if I'm not smart?
You have a very particular list, so it's not at all surprising that you're having trouble finding something.

> It needs to run on linux

That right there is going to imply some level of knowledge from the user. Expecting a zero-config install for Linux is pushing it to begin with.

> It needs to backup files in arbitrary locations, including spanning several partitions (one NTFS, one ext3)

And

> It needs good filtering / curation capabilities

And

> it needs to be easy to setup. I don't want to setup my own instance or mess with config files.

Are pretty much mutually exclusive. If you want it to be powerful you'll need to do the work to configure it. If you don't want to do the work it's not going to meet your needs, period. No product exists that will meet all of these criteria, even for Windows. I don't think a product exists that would meet half of them, and certainly if it does it's not open source.

What you really want is rsync over SSH to a ZFS volume with encryption enabled, or some other CoW filesystem that lets you do snapshots and access them online.

If you want to get close, go buy a Synology NAS and set up a nightly rsync cron to it, then set it up to archive to AWS Glacier. That'll get you most of the way to your ideal, and it'll be done instead of perfect.

web007··on Are software engineering “best practices” just developer preferences?
Short answer: No, they're not.

Longer answer: I'm confused by the examples given. Nothing there is a best practice IMO, they are only opinions.

This writer is confusing "use git" or more basically "use version control" with the how's and why's underneath. Everything beyond "use it" is an opinion, with multiple "best" options depending on your desired workflow or requirements.

Same for Java - the senior explained why this version of "best" is best for them, but the real best practice of "define your interface as a contract" is hidden behind these opinions.

Contrast this with the civil engineer used as an example, who might say "use a safety factor of 3x rated weight for all fasteners" as their best practice. Using fasteners rated at 2x is a violation of that, but using screws vs bolts vs adhesive are all opinions and depend on the particulars and preferences of whoever is doing the work.

web007··on Major nuclear fusion milestone reached as 'ignition' triggered in a lab
> The results from the experiment on 8 August indicate an energy output of over one mega-joule, which marks the threshold agreed for the onset of 'ignition' and is six times the previous highest energy achieved.

They got 1Mj output from > 500TW input - this is a "major milestone" but only a small step on the path to fusion.

NIF is fascinating, and has been promising for the past decade. The idea of kick-starting fusion with lasers sounds awesome, and then more awesome when you realize just how much energy you need for fusion. They're shooting terawatts of laser at a target the size of a hollow grain of rice, and they're not there yet!

web007··on My small revenge on Apple
You clearly don't understand how social logins work, nor their benefits for users and site owners. Both of your assertions are wrong, and both "bad" things are exactly the opposite.

You don't get anything beyond what you ask for AND are granted access to by the user.

FB login gives email and name AFAIK, but you can ask for lots of other stuff and be denied. Google defaults to email, not sure about name, and has separate requests and grants for any additional information. They don't have nearly as much of a profile as FB does, but can give address and some other details. Apparently Apple doesn't even provide a real email, so that seems even better for "collecting [your] personal information" than using... your personal email address!

Social login is much better than storing passwords in any form (plaintext, encrypted, hashed), and gives both the user and site owner the benefit of FAANG security.

web007··on New in Git: switch and restore
Imagine git required you to manually craft TCP packets... That's what you're comparing to.

You're doing it really really wrong if you spend more time learning git than writing your code. Even with its bad UX it's just not that hard.

web007··on New in Git: switch and restore
> I am not paid to know GIT inside out. I am paid to deliver and fix code and to not step on other people's feet.

Your argument is still the same as the other git detractors, and is still wrong.

It _is_ part of your job, it _is_ part of delivering and fixing code. It's the same as anything else you're using. It may be a larger surface area that you're exposed to, but it's no different from CI/CD, build systems or something like a package manager. You don't need to understand how pip or npm or maven works to deliver software effectively, but if you get into trouble you have no alternative to rm-rf.

> As if I care what an index, staging area, reflog etc. are. I don't.

If you don't want to learn it then stop complaining about how difficult it is to use. That's your problem, not git's.

All of those things are important to the power of git. If you don't want / refuse to learn about them then you're trying to build your software with a car stuck in first gear and complaining about how slow it is. STFU and RTFM.

None of this detracts from your final point, which is valid! Just because the UX is mediocre (at best) doesn't mean you can't learn it.

web007··on New in Git: switch and restore
Don't use it blindly. Learn it enough that you understand those mystical incantations and aren't summoning Cthulhu by accident, only on purpose

Don't cookbook it, understand what the thing you're typing means. Don't use a GUI to abstract it away, be familiar with the CLI and what it's doing. Don't default to rm-rf when you get stuck, check git reflog and see if you can unfuck yourself first. Ask someone who doesn't have your problems how they're using it - it's possible you're "holding it wrong" in some obvious way, but in a way that masks the true problem that's biting you.

Some of my coworkers regularly have problems with git - I don't, and some other coworkers also don't. We all use roughly the same workflow, it's the people familiar with "what does pull --rebase really do?" that don't get into trouble and/or can get themselves back out of trouble, and the ones who always type the same command regardless of the situation that have problems.

Learn your tools, inside and out.

web007··on Zip – How not to design a file format
You got an invalid ZIP file, so behavior is inherently undefined.

Per the blog + spec:

A ZIP file MUST have only one "end of central directory record".

web007··on Ask HN: Should I sell my house to fund my startup? Anyone with the same story?
> I don't have customers > I can't explain that it will be more than this single product > It's impossible to make this startup without a weird path

What the hell is wrong with you?

You have no customers and an idea you can't explain. What makes you think you can build this unexplainable cusomerless thing into a business, let alone LITERALLY mortgage your future for it?

As others have said: No. Under no circumstances should you sell your house to fund... whatever this is. Bootstrap it nights and weekends if you feel passionate, maybe go find a co-founder if you can explain it coherently.

web007··on Show HN: Unlimited, free intraday stock data API
https://www.styvio.com/api/ shows a Django debug page. Launching this way is pretty ridiculous, and persisting after several hours is worse.

I will probably try and take advantage of this API, but I would want a list function of some sort to know what stocks are available. How do I know what's going up / down or sentiment is rising / falling without knowing where to look?

web007··on Twitter has lost liability protection in India, government says
> If you are a global MNC with multi billion dollar valuation,

What if you're none of those?

Is it still fair to require a local presence for every single site / app / network to have access to a population?

web007··on A Docker footgun led to a vandal deleting NewsBlur's MongoDB database
I don't see how NewsBlur is getting a pass on this and Docker is taking all of the blame. Would they still get sympathy if they had "password" as their DB password and were hacked that way?

I would blame MongoDB for its default-insecure configuration. There's no excuse. It's been like that for at least a decade (when I last used it) and it was a bad choice even then. At a _minimum_ when they upgraded the engine to integrate WiredTiger they should have pushed that through as part of the breaking change.

web007··on Once Dataset: One Million Scenes for Autonomous Driving
I wish academics and practitioners would talk more often or have better interfaces to prevent things like "our dataset is published on Google Drive". Every one of the files is now rate-limited (blocked) for 24 hours because Drive is not designed to be used this way.

If this was published as one or more torrents it would be ideal: all of those who have downloaded the full set would be able to contribute bandwidth to help newcomers, and could spare the source from having to serve multiple TBs of content directly. Uploading to Archive.org and/or the Chinese equivalent would be even better, since they provide mirroring plus torrents plus direct downloads automatically and for free.

web007··on Fizzygum
Then the submitter (or probably the maintainer) should include a description of what this thing is. "FizzyGum: No-Code Data Visualizations" would be great!
web007··on Gemini's "uselessness" is its killer feature
I was treating "extracting value" as my ability to get value out of something that is "delivering value". Your definition is probably better as a more complete spectrum, so my question becomes "How does Gemini deliver value relative to the effort I need to exert in order to use it?" Essentially, how does it overcome its own learning curve?
web007··on Gemini's "uselessness" is its killer feature
> Those who use Gemini find value in it.

The fact that your primary answer is a tautology is telling.

I'm asking what value I should find from it, what value I get from going down this bespoke, inaccessible, poorly tooled path versus using the web with it's widely-used tools, billions of users and a million onramps?

> Nothing compels people to use Gemini aside from their own personal interest.

Nothing compels me to use it, but nothing incentivizes me to use it, either. I'd like a static site generator for my blog. Why would I pick Gemini over Jekyll, Hugo, etc.? That's the missing part of the story.

> And why paint it in terms of negatives? People tend to compare Gemini to a crippled version of the web simply because that's what most of the world uses, but is more accurate to claim it is a modernized version of Gopher.

People tend to compare Gemini to a crippled version of the web simply because that's what it is. All of your arguments on how it's better than Gopher ignore the fact that the web has all of those same features.

It's negative because the web already did that, it's already a modernized version of Gopher. That's why we use it and not Gopher. That battle was lost when either NCSA Mosaic or Netscape Navigator was released 20something years ago.

web007··on Gemini's "uselessness" is its killer feature
I think you misunderstand my argument, and actually are reinforcing it with this comment.

If I take effort to go and visit a park then I get some kind of value from it. I get to relax in nature, see some pretty trees, have a space to play on a playground, etc. Those uses are evident even if I personally prefer concrete and steel, have pollen allergies or don't have kids.

This project sounds more like a single tree on a tiny island. You can go and sit under it, but you need to swim out to the island. It has no low branches, so you can't do anything except sit under it. It's scraggly, so it doesn't provide any shade, so sitting under it isn't very pleasant in the hot sun. Oh, and no boats are allowed on the lake, so you have to swim the half-mile each way.

It's the opposite of your story, the only possible reason someone could have in visiting the island is to log the tree, or just to say they've been there.

And my argument is more about the practicality. Why am I going to go from writing my blog about how fluffy alpacas are on the HT(TP|ML) web to writing it on Gemini? What do I get for my effort and for the restrictions that are now placed on my writing?

I could appreciate a text file on my local disk about as much as a gemtext page because nobody will see it. Network effects are really real.

Using Gemini is building an enormous mountain, and the only reason to climb it is "because it's there".

← PreviousPage 3 of 16Next →