HN user

npsimons

4,272 karma

Previously a programmer in the DoD world, now a solo software developer. Before that, I used to hack on RTLinux until FSMLabs couldn't afford to pay me any more. My personal interests include search and rescue and musical groups. Also tried my hand at consulting around 2000-2001, failed; tried another startup based on a GPS logger concept that never got off the ground. Would like to contribute to open source, but the aforementioned extra-curricular activities get in the way. Run my own email/web for personal stuff at hardcorehackers.com; can be reached at the usual (RFC) addresses there.

I despise Apple fanboys and Microsoft shills, but I'm getting better (mostly by laughing at the former and ignoring the latter).

I used to be what I considered a master of C++; nowadays I'm an unabashed Lisp elitist, but mainly I putter along working on personal projects. Not currently looking for work, but if your project is interesting enough . . .

Still of the opinion that Emacs is the last editor on the last OS (Debian GNU/Linux).

Posts0
Comments1,828
View on HN
No posts found.

Also, serious off-topic question to the motorcycle enthusiasts here: how do you cope with the fact that your weekend leisure ride is often a massive noise disturbance for hundreds of people and animals?

AFAICT, the noise is the point. The people with loud vehicles (and this includes the rattling bass and coffee can mufflers on low-end econoboxes) are selfish assholes, desperate for attention, often compensating for a failure in another part of their lives. "Loud pipes save lives" has zero data to back it up.

Holy crap! It's the "Loving Common Lisp" author! Haven't had a chance to finish it yet, but it's awesome and I really appreciate the updates!

a cruise, but a cruise with ~30 other people, not ~6000.

This is the sort of thing that tempts me - an enchanting vision, like something out of "Death on the Nile", only minus the death. Just a small floating hotel that takes you to interesting places, not a floating amusement park combined with buffet.

I don't want half finished changes forever committed to history.

This is exactly why I hew to squash+rebase. As I like to put it "I don't care about every little sneeze a developer had." Git has spoiled me with this, where I have the power to commit to my private repo anything I damn well please, but in the end I can clean things up and keep the central repo clean and bisectable[0].

Any VCS that doesn't offer these (squash, rebase, bisect) is a complete non-starter for me.

[0] https://blog.carbonfive.com/always-squash-and-rebase-your-gi...

Do Skis Get Blunt? 2 years ago

Most definitely sharp edges, and your bevels, matter when you are really pushing it, especially if you are racing, and most especially if you are on extremely hard or even water-injected snow.

I have to ask, as someone into alpine touring and ski mountaineering (but not racing), what difference would backcountry skiing make to this advice? I imagine you'd need sharpening more often, due to twin factors of A) more rock and hard ice and B) really wanting that control on ungroomed (ie, icy) slopes at high angles.

I don't consider myself "really pushing it", but would like to have every ounce of control I can get when heading downhill. I'm enough of a beginner that I will often side-slip or even just hike completely down a slope I don't like the looks of.

Do Skis Get Blunt? 2 years ago

So what people do is instead of carving perfectly, they deliberately slip to create some friction and slow themselves down.

As an amateur alpine tourist who is deathly afraid of that feeling of "loss of control" from incredible downhill speeds, this is exactly what I do.

That said, I'm here reading because I want to know if the heuristic for sharpening changes when A) one is mostly off-piste (rock, hard ice, etc) and B) really want those edges sharp for ungroomed (ie, icy) slopes.

I think interesting take on the same idea I saw lately was "Every Dead Body on Mt. Everest Was Once a Highly Motivated Person". It seems not that new but still.

I mean, everyone dies. Not that I'm elevating Mt. Everest climbers, but at least they're aspiring for something.

Now, if the message you're trying to get across is it takes more than motivation, and life is rife with failure, that I can get behind. But "don't try, there's no point" is the laziest, most self-serving twaddle ever to be uttered (and no, it's not Nihilism either).

It's not short, but I was introduced to the concept in a video series on FLOSS Linux audio tools: https://www.youtube.com/watch?v=hdPPPeq82hw&list=PLf_MTToSAx...

Specifically, you can play with it yourself with a tool like ZynAddSubFX's (https://zynaddsubfx.sourceforge.io/) virtual keyboard, where you can enable microtonal under scale settings and tweak to whatever tuning you want (see https://www.youtube.com/watch?v=hdPPPeq82hw&t=669s for where the video above starts showing this).

A simpler and shorter video discussing the history of just intonation and equal temperament, with examples: https://www.youtube.com/watch?v=bCYcS57eCqs

Honestly, for public facing read-only websites, it's perfectly fine to redirect HTTP to HTTPS. There's just too many cases where you aren't going to get everyone to put "https://" on the front of URIs when they put them in docs, flyers, etc. You're lucky if you get "http://"!

The API security thing, yes, that makes sense. Personally, I run a number of servers for small groups where the sensitive stuff is SSL only - you won't even get an error going to port 80, other than the eventual timeout. But for reasons above, I cannot just turn port 80 off, and it's perfectly safe redirecting to 443.

Show me a program that has no bugs and I'll show you a program that does nothing at all!

"Every program has at least one bug and can be shortened by at least one instruction -- from which, by induction, one can deduce that every program can be reduced to one instruction which doesn't work."

I find some people just give feedback poorly and equate that to others not taking feedback.

Too true! I find it helps if I think of it as an engineering problem: "what can I say that will make these people not commit the same error again?" A bit dehumanizing and manipulative, but can be super effective at shifting away from blaming and belittling (almost never works), and towards mentoring.

you just don't see how

Always, always assume this is the case - it might frustrate you to no end, but until you have conclusive evidence something is "wrong", it's best to ignore it and toodle along with whatever you're supposed to be working on (I always encounter these head scratchers when working on legacy code, my tasking being something unrelated).

To play Devil's advocate, I'd like to point out that many of these egotistical assholes are "trying" to "help" - by "trying" I mean their communication skills are poor, and by "help" I mean they are trying to encourage people to improve. I know, I've been one of these assholes. What I've tried to do to be less of an asshole is leverage my empathy and hone my communication skills. But I also recognize the anger and frustration with things that seem like they should be no-brainers - and recognize that what we despise in ourselves is often what we attack others for.

Nobody's perfect, but there are ways people can get better. Or just take advantage of tools that can help automatically catch these sorts of errors. This is precisely why people create regression tests and set them up to run in the CI/CD, to reject changes that break them.

As for being less of an asshole, no shortcuts with that - just exercise your empathy, put yourself in their shoes, take a deep breath, then go to bed. Tomorrow morning, if you still feel the need to pen a blog post, maybe write out a technical solution without assigning blame.

This is awesome! While I'm nowhere near being able to leverage this right now, I am currently going through the painful process of "databasing" raw documents into SQL, and I can tell you that perhaps the hardest part is getting the schema correct; as you put it "natural language can often be ambiguous". Even worse, is just the squishiness of things never originally intended to be specified for software.

Communication always has been, and continues to be, the hardest part of software development.

it sounds like you're describing the possibility of calculating his expected weight gain based on how much he ate and how much he exercised, and I don't think that's possible.

This is a joke right? This is exactly how you calculate expected weight gain/loss.

Remarkable the hand waving people go through to excuse dishonesty because they want to believe it so badly.

What I find remarkable is how badly people want to ignore just how bad fast food is for you. They'll use anything to dismiss completely the whole debate.

It read like a ban to me.

Then you need to increase your reading comprehension. I nowhere said or implied "ban".

Or you need to examine your biases; are you perchance a libertarian? Or really right-leaning in any way. If you're American, chances are very good the answer is 'yes'.

I haven't tried those, but surely it is easier to overeat on fries and hamburgers compared to a salad?

This reads like someone who might not have been in America much. Friend, let me introduce you to ranch "dressing": https://www.flickr.com/photos/rachelannpoling/7797400016

And yeah, the vegetables aren't the problem here - the problem is everything has to be sugar-coated (yes, even "savory" things like ranch dressing) for people to eat it, and then they drench everything from wings to burgers in it.

But I did remember thinking it was weird he puked so early in the film. I brushed it off as "everyone is different", and forgot about it.

That's one of the few things I still remember from it, and the takeaway I had was "well, he's eating past the point of nausea, of course he's going to puke." And the fact that he accepted any time they offered to "supersize", just pointing out how hard fast food pushes excess calories. Kind of the point of the documentary, really, that fast food is out of control in this country and needs to be regulated.

The simple fact is that no amount of alcohol is good for you. Same goes for smoking anything, marijuana included. Also, processed meats are definitely carcinogens.

Yeah, cancer can "just happen" to anyone, but there are undeniable factors that can significantly increase your chances of getting it, such as poor diet or being overweight.

You might not like it, but those are the facts.

That said, I'll also put out there that I think a a lot of people are overly dismissive of "Supersize Me" by pointing to Spurlock's alcoholism, completely ignoring how bad fast food is, on every level.

i guess that means you can't write security bugs in lisp, right?

I know this is sarcasm, but there's a reason Greenspun's tenth rule holds true.

Cooler screens 3 years ago

From testbench to fitting 10k screens across 700 stores, without intermediate testrun in a few stores?!?

People often forget that when "moving fast and breaking things", some parts are more frangible than others.

Take the parts that work for your team and scrap the ones that don't.

Precisely. Any time someone utters the descriptor "best practice", at best, you do yourself a favor by examining it with a critical eye and judge whether it is a good practice to follow (and a good fit for your project) or not. At worst, you beat back the consultants framing it as "the one and only way to do things (with the implication that everything else is wrong)."

There should be a Tell HN that is just an 800-comment-long thread full of these stories because I love them.

As gratifying as they are, they get repetitive. Once you've heard one, you've heard them all.

I'd much rather hear about the place that fixed a policy problem that was blocking such progress in the first place. Software is easy, getting people (and orgs) to change is hard, tedious, boring, but absolutely necessary, and more enduring than a lot of software fixes.

but I would say the decline has strictly been a failure of software.

I would argue it's a failure of policy, and more specifically certain people enforcing a policy top-down on an industry they have little, if any, competence in.

The tools are still out there, and those of us who know what we are doing balk at those managers (not programmers, BTW), telling us "you don't need that."

We need to wrest control back from the managers, at all levels, and tell them to fuck off while we get real work done.

There's a lot of water in the bilge, and I'd really love it if I saw someone holding a bucket.

Here's the depressing reality: there are a lot of people in the bilge with buckets, quietly bailing like mad so they don't drown. I'm not just talking IT personnel here, there are legions of under-appreciated, underpayed essential workers (more than just healthcare professionals) that keep our civilization afloat. You don't hear from them, because they are a) too busy getting shit done, and b) disenfranchised (this includes not getting time off work to vote).

The irony is you are distracted by the peacocks strutting about on deck debating whether we should even admit the bilge is filling up.