HN user

necheffa

412 karma

Professional bit wrangler.

Posts0
Comments140
View on HN
No posts found.

The economic motivation just simply isn't there. I'm sure we could cherry pick a few examples of companies where things like quality and security really are part of the culture, not just feel-good lip services. The reality is that companies are in business to make money and corner cutting is the easiest way to pad the margins.

Partially. Being gifted is special needs education. And the average K-12 in the US is not equipped to provide that for that special need, especially in a post No Child Left Behind era.

A lot of adults conflate giftedness with maturity and expect the kid to act like an adult, combined with the pressure to perform and an identity built around being gifted...it fucks with development.

There is a reason why depression and suicide in adults can be correlated with formerly gifted children.

This is very much a big compromise where you decide for yourself that storage capacity and maybe throughput are more important than anything else.

The md metadata is not adequately protected. Btrfs checksums can tell you when a file has gone bad but not self-heal. And I'm sure there are going to be caching/perf benefits left on the table not having btrfs manage all the block storage itself.

This is what LVM/btrfs/ZFS snapshots were invented for.

Windows is using Volume Shadow Copies, which for the purposes of this discussion, you can think of as roughly equivalent.

What slice of my mortality pie was radon before and after spending $5000?

You'll never know. The same way people in the exclusion zone will never know if their thyroid cancer was always destined to be or if it really was related to the Chernobyl meltdown.

But spending (closer to $1000) to mitigate some risk from a known threat vector does seem thrifty.

Why hire an intern or a recent college-grad when they lack both the expertise and experience to do what an AI could probably do?

AI can barely provide the code for a simple linked list without dropping NULL pointer dereferences every other line...

Been interviewing new grads all week. I'd take a high performing new grad that can be mentored into the next generation of engineer any day.

If you don't want to do constant hand holding with a "meh" candidate...why would you want to do constant hand holding with AI?

I often find myself choosing to just use an AI for work I would have delegated to them, because I need it fast and I need it now.

Not sure what you are working on. I would never prioritize speed over quality - but I do work in a public safety context. I'm actually not even sure of the legality of using an AI for design work but we have a company policy that all design analysis must still be signed off on by a human engineer in full as if it were 100% their own.

I certainly won't be signing my name on a document full of AI slop. Now an analysis done by a real human engineer with the aid of AI - sure, I'd walk through the same verification process I'd walk through for a traditional analysis document before signing my name on the cover sheet. And that is something a jr. can bring to me to verify.

What an average person wants in their desktop is Windows - not Linux and certainly not some obscure independent distro. And this is still not a problem of that distro or Linux.

The average person doesn't even want Windows. They want to click a button and not be bothered with the implementation details.

That is why mobile/tablet is such a popular form of compute these days. People don't even have to learn the basics of interfacing with a file system most of the time. Want to look at pictures you've taken? You can be oblivious to the fact that your camera app puts picture files in a specific directory and embeds a date code in the file name, the photo viewer app takes care of that for you.

Leaving Google 1 year ago

You’re also at the mercy of the libraries you use, no?

To a certain extent. No one says you must use the, presumably newer, version of a library using generics or even use libraries at all. Although for any non-trivial program this is probably not how things are going to shake out for you.

Which likely makes this an increasingly niche case?

This assumes that dependencies in general will on average converge on using generics. If your assertion is that this is the case, I'm going to have to object on the basis that there are a great many libraries out there today that were feature-complete before generics existed and therefore are effectively only receiving bug fix updates, no retrofit of generics in sight. And there is no rule that dictates all new libraries being written _must_ use generics.

Leaving Google 1 year ago

GCC Go does not support generics, so it's currently not very useful.

I don't think a single one of the Go programs I use (or have written) use generics. If generics is the only sticking point, then that doesn't seem to be much of a problem at all.

In general, no. Most of the coal companies went bust and the rights are owned by gas and/or fracking companies or consolidated by one of the surviving companies.

Also 60fps is pretty low, certainly isn't "high fps" anyway

Uhhhhhmmmmmm....what are you smoking?

Almost no one is playing competitive shooters and such at 4k. For those games you play at 1080p and turn off lots of eye candy so you can get super high frame rates because that does actually give you an edge.

People playing at 4k are doing immersive story driven games and consistent 60fps is perfectly fine for that, you don't really get a huge benefit going higher.

People that want to split the difference are going 1440p.

These are the companies you want to be at IMHO. Provided the compensation is adequate, slow and stable > fast and pivot-y.

Absolutely...not.

Slow does not mean stable. Slow means the floor is rotting out from under you constantly.

Being prudent about when and where to upgrade is a very active, intentional process that the typical company simply don't have the stomach or skill for.

I don’t think it’s fair to compare a workflow that is designed for sed/awk.

If your position is that we should not be writing bash but instead Python, then yes, it is absolutely fair.

the benefit of which is that I can actually read it.

And you couldn't read the command pipeline I put together?

What happens if you want to retry a line if it fails?

Put the thing you want to do in a function, execute it on a line, if the sub-shell returns a failure status, execute it again. It isn't like bash does not have if-statements or while-loops.

I have a lot of scripts that started as me automating/documenting a manual process I would have executed interactively. The script format is more amenable to putting up guardrails. A few even did get complex enough that I either rewrote them from the ground up or translated them to a different language.

For me, the "line in the sand" is not so much whether something is "safer" in a different language. I often find this to be a bit of a straw-man that stands in for skill issues - though I won't argue that shell does have a deceptively higher barrier to entry. For me, it is whether or not I find myself wanting to write a more robust test suite, since that might be easier to accomplish with Ginkgo or pytest or `#include <yourFavorateTestLibrary.h>`.

I stopped caring about POSIX shell when I ported the last bit of software off HP-UX, Sun OS, and AIX at work. All compute nodes have been running Linux for a good long while now.

What good is trading away the benefits of bash extensions just to run the script on a homogeneous cluster anyways?

The only remotely relevant alternative operating systems all have the ability to install a modern distribution of bash. Leave POSIX shell in the 1980s where it belongs.

Strategies for attracting and retaining tech talent in a non-tech industry

As someone who is a tech lead at a non-tech company that does software in house for a niche product in a niche market...

You can either treat the software as a product in it of itself (as opposed to bolting it on to other projects for your core business) or you should expect to include some hazard pay to compensate for the mental and spiritual trauma caused by trying to pretend you can treat the software like a line item in non-software projects that "just" need software support, ending up with 4-5 project managers trying to oversee/status a single software release.

We do the latter and if some of the other benefits were not as good as they are, it would absolutely be a deal breaker.

I suspect most other non-tech companies also operate in a similarly sub-optimal way (the blind leading the blind), but why would I put up with that level of ass-hattery for anything less than what the market can bear?

Not sure. But I have recently discovered that some NVMe drives do support self-tests and I was able to start and monitor the test from smartmontools, may be worth looking in to an extended self test.

TVB specifically is exclusive to the i9 product line, but K SKUs in the i7 line have also experienced a heightened occurrence of stability issues.

So you kind of have to go all in on Turbo boost 3.0 as the issue and then explain why the non-K variants of the i7 and i9 don't seem to have the same frequency of occurrence.

Is this just an informational statement or were you trying to highlight a perceived shortcoming of what I had said?

If the latter, I am afraid I don't see the point you are hinting at and need more clarification.

It isn't "overclocking" if you conform to the Intel specification.

What you are getting at is Turbo boost, which is not a new thing. We can split hairs over the incremental enhancements to Turbo boost over the years of course.