HNHacker News
TopNewBestAskShowJobs

LordGrey

369 karma · joined December 16, 2019

submissionscomments
LordGrey··on Why Does My 'Efficient' Dishwasher Take a Zillion Minutes for a Load?
While it depends on brand, the detergents and other additives are often better in higher-octane fuels. They help keep fuel injectors and other parts of the fuel system clean, which reduces potential problems down the road (ha ha).
LordGrey··on How to help someone use a computer (1996)
I worked for Apple back in the day (the Sculley/Spindler years). They put a lot of thought into interfaces. The Human Interface Group had hard-to-get-into classes on the psychology behind human thought and behavior, and how to write software that catered to that. It was an eye-opening experience, and I still use some of that knowledge today.

I don't know if they still stress such things today, but based on my own experience as a user over the decades, I suspect that Apple does not stress this as much anymore. Obviously they do, to a certain extent, but I suspect they've lowered the bar on what is acceptable in shipping software.

LordGrey··on How to help someone use a computer (1996)
Your #2 is one of the most important items, I think.

I've been coding for -- holy crap I just did the math -- 46 years. I've been around computers almost my entire life, and like anyone with a similar background, I have a very deep understanding of what goes on behind the scenes and a strong intuition of how to use unfamiliar interfaces.

My wife, on the other hand, uses computers only because she has to. Whenever she has a problem, I always coach her through the solution if I can. I only take over if the solution is so arcane that she will never need to remember it (e.g. driver configurations). Coaching her reinforces her memory of the solution, and I also explain why she is doing each step if I can.

It's really basic learning theory: Providing background information on the problem and solution will help them understand. Allowing them to perform the task instead of just watching someone else reinforces learning as well. For bonus points, they also feel much more in control of the situation and they won't feel "talked down to" (at least not as much, or as often).

LordGrey··on Ask HN: Are there valid Google Search alternatives?
I had switched from Google to DDG years. DDG seemed to be marginally better at the time, but I really switched because DDG was not Google. Google had become annoying.

About six months ago I tried Kagi, then I signed up with them. Kagi delivers what I want: Fast, accurate search results that I can tweak. I'm a huge fan at this point.

The only time I don't use Kagi is if I'm running incognito over VPN, so I use another search engine (DDG or Bing) that I don't have to sign in to.

LordGrey··on Y Combinator removes Indian startup from batch over 'irregularities'
I agree, at least statistically. The last paragraph of the article has this line:

> It’s very rare for Y Combinator, which selects a few hundred startups from tens of thousands of applications, to remove a firm from its coveted batch.

I would love to see actual numbers, if they are published anywhere.

LordGrey··on Speakers of different languages remember visual scenes differently
I wonder how a group of aphantasics would affect the results. Everyones' mechanisms for remembering things is undoubtedly different, but aphantasia means you don't have mental imagery to consult. Does this mean that aphantasics rely more on linguistic cues and connections?
LordGrey··on Can we please just go back to using smaller wheels and tires?
Yeah, every car other than the Camaro I've owned has had a donut spare tire. I forgot to address that my original comment.

The challenge with a donut on my car is trying to fit over/around the brake calipers associated hardware.

I've been lucky so far: in the 13 years I've own the car, I've had only one slow leak due to a nail. I haven't needed a spare yet.

LordGrey··on Can we please just go back to using smaller wheels and tires?
I own a 2010 Camaro SS and it doesn't have a spare. Part of that because those tires are HUGE -- I doubt I could fit one into my trunk -- but also because the front and rear tires are of different sizes. Which size should you carry?

Chevy also put my battery in the trunk for weight distribution reasons, which makes the available space there even less. Maybe they felt they could do that because there was no spare.

I love my Camaro but it is definitely a "pay to play" vehicle.

LordGrey··on Apple I operation manual (1976) [pdf]
The system is fully expandable to 65K, with the entire data and address busses, clocks, control signals ( i. e. IRQ, NMI, DMA, RDY, etc.), and power sources available at the connector.

Were any of those (few) sold boards ever expanded to the maximum possible RAM? That would be a beast of a machine, for cheap, in 1976.

Also: 65K of memory? Not 64K?

LordGrey··on What happened to the first cryogenically frozen humans?
Trust funds: Pierce the Checker (Peersa) said, "The dead cannot own money. The courts decided that long ago."

"Corsicles" had to pay The State back for storage and resurrection, as you mentioned, which was the reasoning behind the Bussard Ramjet training Corbell received.

Niven sidestepped the whole "how to correctly resurrect a frozen person" problem by claiming that Corbell's memory/personality were somehow extracted from his corpse (destroying the body completely), and then used to reanimate a convicted felon. If Corbell failed his training, the felon's mind would be wiped and another corpsicle's personality would be tried.

That book introduced so many big ideas to the young me. It was the first Niven book I'd read; Ringworld was the second.

LordGrey··on Diffoscope – In-depth comparison of files, archives, and directories
MacPorts also has the package:

  :~ $ port search diffoscope
  diffoscope @222 (sysutils, python)
      in-depth comparison of files, archives, and directories
LordGrey··on Ask HN: What was being a software developer like about 30 years ago?
Around 30 years ago, I was working for Apple and writing software for internal consumption. I was coding C/C++ in MPW/MacApp and even Lisp using Macintosh Common Lisp. I was also writing some stuff in HyperCard, if I remember correctly. The documentation I had access to was awesome, and I could even talk to the developers who wrote those tools if I needed to (especially the MCL team).

While I did have a lot of information at hand, it was really very little compared to what is available to a coder today when it came to algorithms. But that freed me to experiment. I could step back and consider a problem that was (to me) unique, formulate a possible solution, and test. It was fantastic! I felt like I was always just around the corner from inventing a New Way Of Doing Things, something that would be simply amazing.

Today, you just search StackOverflow, implement something, then move on. Maybe it is more productive, but it is certainly a hell of a lot less fun.

Work life balance? I coded all the time, and I wanted to. I look back on those times and shake my head; I would never put those hours in like that, now that I'm in my 50s.

Compensation was comparable, considering the economy, I think. I was well paid, and I'm well paid now.

Processes? HAHAHA. Build it, test it, ship it. But then again, my team and target audience were small and I could literally walk over to another building to find out what I needed. I think today's processes are much, much better for overall code quality.

LordGrey··on Why companies are interested in Myers-Briggs types
Apple went through the Myers-Briggs phase in the 90's, along with a lot of the other tech giants.

It was a half-day seminar. "Professionals" gave the tests and told everyone their type. That took only an hour. The rest of the time was spent doing role-playing, where you were supposed to use your coworkers' MB types to adjust your interaction with them in various settings.

It was a waste of time then and I bet it still is.

LordGrey··on It’s time to let the five stages of grief die (2019)
My strategy:

I know I'm going to get over this eventually. I might as well start now.

It helps that I have aphantasia and a very poor autobiographical memory.

LordGrey··on Lisp can be “hard” real time [pdf] (2000)
Thanks, I'll check out your links.
LordGrey··on Lisp can be “hard” real time [pdf] (2000)
I love lisp and I currently use SBCL now that CCL is fading away, but I'm a bit skeptical of your claim. Can you provide sources to back that up?

(This is aside from the assertion that "faster than language x" is not the same as "adheres to hard realtime constraints" which is what the overall topic is about.)

LordGrey··on Ask HN: As a dev manager, how do you deal with a prima donna?
You may be right. The developer does, objectively, write good code. Was it so much better than the old code that it was a worthwhile endeavor? That is debatable. Some of it was style change, some of it was idiomatic changes. There was, as far as I know, no performance change or refactoring that eased code maintenance or anything like that.

Rather than being a "bad dev" he may be simply a "bad value" -- good, but not worth the pain.

LordGrey··on Ask HN: As a dev manager, how do you deal with a prima donna?
I think your approach to this situation is fine. There are poor ways to handle it, though.

A recent example: The developer maintains a tool that communicates with another internal system maintained by another group. That system is being migrated from a suite of applications running on internal blades to something that runs on kubernetes. The migration affects how processes are accessed (IP addresses and ports), and changes are required on our end.

This developer does not know anything about kubernetes and does not know anything about the changes in the other system. He does not understand why any access methods may have changed, and he is irritated that an external system is pushing a new requirement onto his task list when it worked perfectly fine before. To be fair, he does not need to know anything about kubernetes to make this change, but his resistance to the modification almost demanded an explanation of why it is necessary, and then it devolved into the situation I just described.

LordGrey··on BBEdit is 30 years old today
BBEdit is the only application besides the Finder that is always running, on all of Mac systems. I've been a paying user since v2 or thereabouts.

BBEdit just rocks.

LordGrey··on SymSpell: 1M times faster spelling correction
Very much so.

Edit: To determine the number of records created from permuting a single string, use this:

  for (r = 1; r <= e; r++)
     numRecs += (fact(n) / (fact(r) * fact(n - r)));
where e = edit distance and n = length of string. fact() is your standard factorial function.
LordGrey··on SymSpell: 1M times faster spelling correction
What they are calling "Symmetric Delete" seems to be the same as an older concept called "deletion neighborhoods". It is a term coined in an academic paper written by Thomas Bocek, Ela Hunt, and Burkhard Stiller from the University of Zurich, titled "Fast Similarity Search in Large Dictionaries"[1]. The work described there was expanded in a paper written by Daniel Karch, Dennis Luxen, and Peter Sanders from the Karlsruhe Institute of Technology, titled "Improved Fast Similarity Search in Dictionaries"[2]. Both of these papers deal with efficient searching for similar string values, given a query string.

LookupCompound and WordSegmentation, algorithms built on Symmetric Delete/Deletion Neighborhoods, are pretty interesting.

[1]https://fastss.csg.uzh.ch/ifi-2007.02.pdf [2]https://arxiv.org/abs/1008.1191v2

LordGrey··on Cargo cult programming (2020)
Cargo cult programming, as defined in the Wikipedia article referenced in the blog[1], is bad.

The blog post asserts ways to identify cargo cult programming but, unfortunately, they are probably even worse. Forcing code authors to eloquently describe code that they may have written long ago, then judging the code based on that eloquence, strikes me as a cargo cult method all by itself.

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

LordGrey··on The Method of Loci: Build Your Memory Palace
Thank you for the link.

I have tried to use memory palaces. The result is that now I have to remember two things rather than one (the memory palace location and the thing I'm trying to remember).

To be fair, I also seem to have Severely Deficient Autobiographical Memory (SDAM) and that will impact personal memory recovery quite a bit. SDAM is common in conjunction with Aphantasia, and perhaps the two combined are conspiring against me in this instance.

LordGrey··on The Method of Loci: Build Your Memory Palace
Like all things, there is apparently a whole spectrum of visualization: Aphantasia (the black wall) and Hyperphantasia (AR-like superimposition of images upon reality).

What I find interesting is that every single one of us is somewhere on that scale, and we don't quite understand the perspective of someone who is on a different place on the scale. Your own question highlights that ("Is it actually possible to see anything else?").

We are all trained from birth to deal with our senses and mental capabilities as they come, barring an injury. What each of us perceives is the de-facto normal. Learning that others don't have senses just like ours is something of an eye-opener.

LordGrey··on The Method of Loci: Build Your Memory Palace
Those of us with Aphantasia[1] are jealous of people that can visualize anything at all, let alone a memory palace.

Not all of us are "jealous" of course, but a memory palace seems like an incredibly useful technique if you can master it. I wind up just taking a lot of notes and relying on a Reminders app.

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

LordGrey··on Simple test reveals if your mental images are more vivid than other people's
Watching that for 10 minutes was really irritating. I saw nothing but red and black flickers the entire time.

I learned about six months ago that Aphantasia was a thing, and that I seem to have it. For me, this was a cool (if massively annoying) confirmation.

LordGrey··on Fully Homomorphic Encryption (FHE)
The github repo has benchmark versions of most of their examples that include built-in timers. I just checked both versions the "reverse a string" example (a single-core and a multi-core version) in an Ubuntu 20.04 VM:

Single core: 2838.660s (47.31 minutes) Multi-core: 843.828s (14.06 minutes)

The multi-core version was using four CPU cores, so slightly worse than a linear performance increase. Both versions lit up the fans in my MacBook Pro pretty hard.

The string in question, by the way, was "hello" -- five characters long.

Does this terrible performance match your previous findings? It is so bad I'm wondering if there is something wrong with my dev environment.

LordGrey··on Computing the number of digits of an integer even faster
Thank you!
LordGrey··on Computing the number of digits of an integer even faster
Is there a version of this that would tell you the number of bytes an integer would use? If so, how would it differ with signed versus unsigned integers?
LordGrey··on Using Kubernetes to rethink your system architecture and ease technical debt
With apologies to Jamie Zawinski:

> Some people, when confronted with a problem, think "I know, I'll use Kubernetes." Now they have two problems.

Kubernetes can be a great solution to a set of problems, but it is not automatically that way. My company is in the midst of adding k8s support to a large legacy application and that work has turned into a deep dive into madness in some places. To be fair, we're making it hard on ourselves by supporting both k8s and the legacy environment, but the point stands.

And Helm doesn't help.

← PreviousPage 3 of 4Next →