I'll make up another one to pile on. Perhaps the police would have had a visible, deterrent presence if they weren't lazily relying on cameras, and that would have prevented the assault in the first place.
Anyhow, if you read the flock database, they're overwhelmingly not using them for the purposes of public safety or random crime.
It's even worse when you start finding you're staffing specialized skills. You have the Postgres person, and they're not quite busy enough, but nobody else wants to do what they do. But then you have an issue while they're on vacation, and that's a problem. Now I have a critical service but with a bus factor problem. So now I staff two people who are now not very busy at all. One is a bit ambitious and is tired of being bored. So he's decided we need to implement something new in our Postgres to solve a problem we don't really have. Uh oh, it doesn't work so well, the two spend the next six months trying to work out the kinks with mixed success.
This would be a strange scenario because why would you keep these people employed? If someone doesn't want to do the job required, including servicing Postgres, then they wouldn't be with me any longer, I'll find someone who does.
No doubt. Reading this thread leads me to believe that almost no one wants to take responsibility for anything anymore, even hiring the right people. Why even hire someone who isn't going to take responsibility for their work and be part of a team? If an org is worried about the "bus factor" they are probably not hiring the right people and/or the org management has poor team building skills.
Exactly, I just don't understand the grandparent's point, why have a "Postgres person" at all? I hire an engineer who should be able to do it all, no wonder there's been a proliferation of full stack engineers over specialized ones.
And especially having worked in startups, I was expected to do many different things, from fixing infrastructure code one day to writing frontend code the next. If you're in a bigger company, maybe it's understandable to be specialized, but especially if you're at a company with only a few people, you must be willing to do the job, whatever it is.
Because working now at what used to be startup size, not having X Person leads to really bad technical debt problems as that person Handling X was not really skilled enough to be doing so but it was illusion of success. Those technical debt problems are causing us massive issues now and costing the business real money.
I'm finding that the newer GPT models are much more willing to leverage tools/skills than Claude, reducing interventions requesting approval. Just an observation.
There are firmware updates that improve picture quality, address compatibility issues that are discovered after release, and even increase the lifetime of the TV.
You'll need to spend an additional $1500 over 10 years for Rivian Connect+ to use music streaming services on their infotainment system. No additional cellular costs for using CarPlay or Android Auto.
In my organization we've worked hard for several years to insulate ourselves from Oracle.
We've implemented aggressive desktop monitoring and blocked downloads from Oracle to avoid the Java subscription. Where it's needed, an OpenJDK distribution is used.
Where we must still use Oracle database, in some small, bespoke legacy use cases (heavy PL/SQL), we've moved to RDS with license included to avoid the direct relationship with Oracle. I get it, a big RAC customer will have a harder time, but they'll also likely have alternatives (e.g. SAP implementation to HANA).
I know of at least one vendor (Hyland) who's dropping Oracle support and providing a migration path to MS SQL. Shame not a FOSS database, but still a trend away from Oracle.
I watched from the sidelines with grim interest as my organization tried to decide between Oracle and SAP.
The team defined requirements, ran an RFP and demo process and did site visits to clients of each company. The SAP reference clients weren't exactly thrilled with SAP, the product was too complex and too expensive, but it was rock solid and SAP was a reliable partner. The Oracle reference clients had the usual complaints about features and flexibility, but their real beefs were that Oracle was a predatory and untrustworthy partner.
Oracle made claims in their RFP response that were proven false in the demos and site visits, confirming the claims from reference clients about the company's ethics. In contrast, SAP's RFP responses were validated by the team's due diligence.
So management decided to go with SAP. In response, a senior Oracle person tracked down all of the company's board members and made outrageous claims of incompetence against the company's executives, and alluded ominously about bad faith and conflicts of interest.
Oracle was completely hostile and off the rails when they figured out they lost the deal. I will never, ever do business with Oracle.
Unfortunately, while the SAP application seemed solid, the organization went with their HANA database which was astronomically expensive, and had a bad habit of returning different and provably incorrect results to the same deterministic SQL query every time it ran, and then the entire database would crash for all users.
It's wild dealing with Oracle. They are an adversary to their customers. They'll repeatedly try and setup meetings where they begin off-topic asking questions about how many cores/sockets you're deployed on (Answer: Fewer than we're paying for). When we declined their Java subscription (after thorough preparation on our part), they repeatedly threatened us with audits and ominous threats of download monitoring.
If anyone has to deal with this, I highly recommend Palisade Compliance for consulting. Ex-Oracle people who do not sell licenses, only consult on compliance and represent you during an audit.
> If anyone has to deal with this, I highly recommend Palisade Compliance for consulting. Ex-Oracle people who do not sell licenses, only consult on compliance and represent you during an audit.
Oof. That's a new standard for shitty company: when ex-employees build a business around protecting customers from their former employer.
Nvidia is adversarial too, and a giant pain to deal with. But then since the 1980s there's been a slow pendulum move to suppliers having more actual and self-perceived power over customers. I'm a big proponent of respectfully letting the supplier know when needed I tell them they don't me if I am satisfied or whether its worth the $ spent on them. Always have options. Without options there's no choice. Internal suppliers (in a corp) periodically need to be told the same thing. Mishandling one's customer power in the relationship is an error i don't like to make.
You’re going to have to elaborate on that last bit! SAP HANA is used by enormous organisations as the core database for their entire operations, so pervasive data corruption bugs would be rather… concerning.
This was in the early days of HANA, I'm sure they've fixed the defects by now, but it was shocking to pay nose-bleed prices for every 64gb shard, and then have basic SQL return provably incorrect results. It was a catastrophe, and after spending heavily on consultants to work around the defects, the organization eventually switched to SQL Server.
It's like the Linux fanboi stating without evidence that Windows will just accept any user name without a password, and then refusing to elaborate on that claim. Like... wat?
SAP HANA may have its faults, but I've never heard of pervasive data corruption as one of them.
> It's like the Linux fanboi stating without evidence that Windows will just accept any user name without a password, and then refusing to elaborate on that claim. Like... wat?
I took an ASIC design class in college, unfortunately with a heavy course load that didn't allow me to focus on it. For our final project we were given a numbered dictionary and asked to design a chip that would accept the characters on a 7 bit interface (ASCII), one character per clock cycle and output the dictionary number on an output interface but I can't remember how wide. We were graded on the size of the resulting ASIC and how many clock cycles it took from the last character in to the number on the output.
I started designing my modules, a ROM, a register with a ROM pointer, etc, etc, writing the Verilog and working out the clock sync between modules. Then I got 'lazy' and wrote a trie tree like implementation in Java, and have it spit out the whole tree in Verilog. It worked and just one clock cycle after the last letter my number would output. Fastest in the class! Also the most number of gates in the class. Surprised I got a 90 grade given I didn't use any of the advanced ASIC design the class taught. The TA didn't know what the hell they were looking at.
Yep! Something a bit counterintuitive on circuit design is that dedicated transistors will always beat reusing existing components. If we do reuse existing components like ALUs, multipliers, or state machines, we save on chip area but pay the penalty in clock cycles. Your approach was the extreme version of this tradeoff. You essentially unrolled the entire dictionary lookup into pure combinatorial logic (well, with registers for the input characters). One clock cycle latency because you weren't doing any sequential searching, comparing, or state machine transitions just racing electrons through logic gates.
It's akin to a compiler unrolling a loop. Uses more RAM (area) but fewer cycles to execute. Hardware synthesis uses many of the same techniques as compilers use to optimize code.
It's a common pitfall for those learning hardware description languages like Verilog, when they think about them like programming languages. If you go "if (calc) res <= a * b;" If res is 32 bits wide then you have instantiated a 32 bit fast multiplier circuit dedicated just to that one operation. This is often not what was intended.
Despite how leaning on the analogy too closely can mislead in that way, the analogy between hardware and software is not a shallow one. A combinatorial circuit is akin to the pure function of functional programming. Anything that can be described as a pure function working on fixed integers or floating point or other discrete data types, can be transformed into a combinatorial circuit. And there are algorithms to do so automatically and often with reasonable efficiency.
Free software synthesis has come a long way in recent years, by the way. There's even several hobbyist projects that can take VHDL or Verilog and produce layouts using TTL chips or even discrete transistor logic with automatic circuit board layout. You can now compile your code directly to circuit board copper masks and a part list.
I find it easier to drive my wife's modern car with all that than my 2005 car which has barely any internal lights (dim light around the speedo, dim light on the radio)
You're not wrong, but it's a minor contribution at most.
Anyhow, if you read the flock database, they're overwhelmingly not using them for the purposes of public safety or random crime.
reply